@charset "utf-8";

body{font-size: 16px;}

.respo-mt1{margin-top: 60px;}
.respo-mt2{margin-top: 30px;}
.respo-mt3{margin-top: 15px;}
.respo-mt10{margin-top: 10px;}

#pc-head,.pc-only,.sp-only{display: none;}
.br-blook-tb{ display:block}
/*スマホの時だけ改行させるクラス*/
.br-sp {
    display: none;
}
.br-pc {
    display: none;
}
.tb-img100{width: 100%;}
.img100{width: 100%;}
.img150{max-width: 150px;}

.contact-text{text-align: center;}

/*page　ID*/
#top-page{}
#naka-page1{}
#page-service1{}/*サービス1.2.3共通*/
#page-support{}
#page-companyprofile{}
#page-contact{}
#page-pp{}
#seisanrakusu{}
#meisairakusu{}

/*------------------------ベースレイアウト------------------------*/
.wrap1200{
  width: 100%;
  padding-right:25px;
  padding-left:25px;
  margin-right:auto;
  margin-left:auto;
}
/*------セクション------*/
.section-common{padding: 100px 0px;}
.section-common2{padding: 100px 0px;}
.section-common3{padding: 0px 0px 100px 0px;}
.section-common4{padding: 0px 0px 100px 0px;background-color:rgba(0,160,233,0.05); }

.section-bg1{background-color: rgba(0,0,0,0.03);}

.section-bg2{background-color: rgba(69,176,53,0.1);}
.section-topbnr{padding: 30px 0px 10px 0px;background-color: rgba(0,0,0,0.02); border-top:1px solid #e6e6e6; border-bottom:1px solid #e6e6e6; }

.section-service2,.section-line{padding: 100px 0px 100px 0px;border-top: 1px dashed #ccc;}
.section-service2 i{font-size: 2em;}

/*------きじ------*/
#top-news{padding: 30px 0px 50px 0px;}

.read{font-size: 1.4em;font-weight: 700;margin-bottom: 30px;}
.read2{font-size: 1.4em;font-weight: 700;margin-bottom: 0px;text-align: center;}
.pc-center{text-align: center;}

/*------------------------h1------------------------*/
h1{font-size: 2em;color: #fff;}
h2{font-size: 2em; margin-bottom: 50px;}

#naka-page1 h2{font-size: 1.6em; margin-bottom: 50px;}

#h1-wrap{
 height: 150px;
background: linear-gradient(5deg, rgba(69,176,53,0.85) 80%, rgba(69,176,53,0.8) 20%)
}

#h1-wrap h1{font-size: 1.2em; 
text-align: center!important;padding-top:85px;}

h3{font-size: 1.2em;margin:30px 0px 10px 0px;font-weight: 700; }
h4{font-size: 1.1em;margin:20px 0px 10px 0px;font-weight: 600; }



/*------------------------サービスページ------------------------*/
.flex-service1{display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  flex-direction: row;
  align-items:center;}
.flex-service1-l{width: 45%;}
.flex-service1-r{width: 45%;}
.flex-service1-l img{width: 100%;}

/*------------------------概要------------------------*/
.googlemap iframe{width:100%; height:450px;}

/*-----------------------楽々会計------------------------*/
  .iframe-responsive {
    position: relative;
    width: 100%;
    padding: calc(297 / 420 * 100%) 0 0;
  }
  .iframe-responsive iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }


/*------------------------ボタン------------------------*/
.btn-box1{text-align: right;margin-top: 30px;}
.btn-box2{text-align: center;margin-top: 30px;}
.btn-box3{text-align: right;}
.btn-box4{text-align: center;margin-top: 30px;}
.btn-box1 .common-btn01,.btn-box1 .common-btn01:visited{max-width: 200px; /* ボタン幅 */}
.btn-box2 .common-btn01,.btn-box2 .common-btn01:visited{max-width: 200px; /* ボタン幅 */}
.btn-box4 .common-btn01,.btn-box4 .common-btn01:visited{max-width: 400px; /* ボタン幅 */}
.btn-box4 .common-btn02,.btn-box4 .common-btn02:visited{max-width: 400px; /* ボタン幅 */}
.btn-box4 .common-btn03,.btn-box4 .common-btn03:visited{max-width: 400px; /* ボタン幅 */}
.gocontactbtn,.gocontactbtn:visited{max-width: 300px; /* ボタン幅 */}

.btn-box5{text-align: center;margin-top: 15px;}
.btn-box5 .common-btn01,.btn-box5 .common-btn01:visited{max-width: 400px; /* ボタン幅 */}

.kakomi2{text-align: center}
/*------------------------flex共通------------------------*/
.flex-common1{display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  flex-direction: row;
  align-items:stretch;}
.flex-common1-l{width: 60%;}
.flex-common1-r{width: 30%;}
.flex-common1-r img{width: 100%;}

.flex-line{display: block;
  border-bottom: 1px solid #e6e6e6;}
.flex-line-c1{width: 100%;padding: 10px; border-top: 1px solid #e6e6e6; background-color:rgba(69,176,53,0.1) }
.flex-line-c2{width: 100%;padding: 10px; }

.flex-common-aisatu{display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  flex-direction: row;
  align-items:stretch;}
.flex-common-aisatu-l{width: 60%;}
.flex-common-aisatu-r{width: 30%;}
.flex-common-aisatu-r img{width: 100%;}

/*------------------------flextopアバウト end------------------------*/
.flex-topabout{display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  flex-direction: row;
  align-items:stretch;}
.flex-topabout-l{width: 60%;}
.flex-topabout-r{width: 35%;position: relative}
.flex-topabout-r img{width: 100%;margin-bottom: 20px;position: absolute;top:-100px;}

/*------------------------flextopアバウト end------------------------*/
.flex-topabout{display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  flex-direction: row;
  align-items:stretch;}
.flex-topabout-l{width: 60%;}
.flex-topabout-r{width: 35%;position: relative}
.flex-topabout-r img{width: 100%;margin-bottom: 20px;position: absolute;top:-100px;}


/*------------------------トップページ------------------------*/
/*メインイメージ end*/
#mainimg-wrap{margin-top: 60px; width: 100%;text-align: center;}
#mainimg-wrap img{width: 100%;}

/*top　ブロックサービス　　end*/
.flex-servicelist{display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  flex-direction: row;
  align-items:stretch;}
.flex-servicelist-c{width: 30%; margin-bottom: 30px;}
.flex-servicelist-c img{width: 100%; border: 1px #e6e6e6 solid;}

.servicelist-title{font-size: 1em;font-weight: 700;color: #FFF;padding: 8px 10px 10px 10px;line-height: 140%}
.servicelist-text{line-height: 180%;margin-top: 10px;}

/*フッター上コンタクト　end*/
.freedial{font-size: 40px;margin-top: 30px;font-weight: 700;text-align: center;}
.freedial a,.freedial a:visited{color: #333;text-decoration: none;}
.freedial a:hover{color: #333;text-decoration: underline;}

/*ユーザーサポート end*/
.flex-user{display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  flex-direction: row;
  align-items:stretch;
}
.flex-user-l{width: 50%; border-right: 1px solid #e6e6e6;padding: 30px 50px 10px 50px;}
.flex-user-r{width: 50%; padding: 30px 50px 10px 50px;}

.flex-user-l .flex-user-title{text-align: center;font-size: 1.4em;color:#f6ab00;font-weight: 700; }
.flex-user-r .flex-user-title{text-align: center;font-size: 1.4em;color:#00A0E9;font-weight: 700;}
.flex-user-text{text-align: center;margin-top: 20px;}

/*バナー end*/
.flex-bnr{display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  flex-direction: row;
  align-items:stretch;
}
.flex-bnr-c{width: 18%;margin-bottom:20px;margin-left: 1%;margin-right: 1%; }
.flex-bnr-c img{width: 100%;}
.flex-bnr-c img:hover {
	opacity: .6;
	-webkit-opacity: .6;
	-moz-opacity: .6;
	filter: alpha(opacity=60);
	-ms-filter: "alpha(opacity=60)";
}
/*flexお知らせ　end*/
.flex-news{display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  flex-direction: row;
  align-items:stretch;
  border-bottom: 1px #e6e6e6 solid;}
.flex-news-day{width: 15%;  border-top: 1px #e6e6e6 solid;padding: 10px;}
.flex-news-text{width:85%;  border-top: 1px #e6e6e6 solid;padding: 10px;}

/*------------------------ヘッダー------------------------*/
#head-sp{ 
	background-color: #ffffff;
	height: 60px;
	width: 100vw;
	z-index: 5;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 100;
}
#headlogosp{
	position: fixed;
	margin-top: 5px;
    	margin-bottom: 5px;
	left: 10px;
	height: 50px;
}
#headlogosp img{height: 100%;}
#spbtn{
	position: fixed;
	height: 40px;
	margin-top: 10px;
	right: 10px;
width: 40px;
}
#spbtn img{
	float: right;
    height: 40px;
}
/*------spmenu------*/

#spmenu{
	background-color:#00913a;
	font-size: 0.9em;
display: none;
	line-height: 250%;
	top:60px;
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 100;
	overflow: auto;
      color: #FFF;
}
#spmenu a,#spmenu a:visited,#spmenu a:hover,#spmenu a:active, #spmenu i {
	color: #FFFFFF;
	text-decoration: none;
}
#spmenu .spmenu1{
	padding: 5px 20px;
    border-top-width: 1px;
	border-top-style: solid;
	border-top-color: #ffffff;
    }
#spmenu .spmenu2{
	padding: 5px 20px;
    border-top-width: 1px;
	border-top-style: dashed;
	border-top-color: #ffffff;
    background-color: rgba(255,255,255,0.1)!important;
    }
#spmenu a:last-child .spmenu1{
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #ffffff;
}
.spnavi-line{
    border-top-width: 1px;
	border-top-style: solid;
	border-top-color: #ffffff;
    }
    
.spmenu-l{float: left;width: 90%;padding: 5px 20px;}
.spmenu-r{float: left;width:10%;padding: 5px 0px ;margin: 0px; text-align: center;background-color: rgba(255,255,255,0.1);}
.spmenu-aco{
	display: none;
}
/*------------------------プルダウン　pulldown------------------------*/
.pulldown1,.pulldown2{display: none;}


/*------------------------footer end------------------------*/
#footer{padding: 60px 0px;
}
.copname{font-size: 1.2em;font-weight: 700;margin-bottom: 15px;}


.flex-footer{display: flex;
  width: 100%; 
  justify-content: space-between;
  flex-wrap: wrap;
  flex-direction: row;
  align-items:stretch;}
.flex-footer-c1{width: 80%;}
.flex-footer-c2{display: none;}
.flex-footer-c3{display: none;}
.flex-footer-c4{width: 20%; text-align: right;}
.flex-footer-c4 img{width: 100%;max-width: 85px;}
.fotnavi2{margin-left: 1em;}

.fotnavi1 a,.fotnavi2 a{
position: relative; /*アンダーラインの位置を決めるための基準 */
color:#333;
text-decoration: none;
}
.fotnavi1 a:hover,.fotnavi2 a:hover{color:#333;}

.fotnavi1 a::after,.fotnavi2 a::after {
position: absolute;
left: 0;
content: '';
width: 100%;
height: 1px;
background: #333;
bottom: 10px; /*アンダーラインが現れ始める位置（aタグの下辺からの高さ）*/
opacity: 0;
visibility: hidden;
transition: 0.3s;
}
.fotnavi1 a:hover::after,.fotnavi2 a:hover::after  {
visibility: visible;
bottom: -2px; /*アニメーションが止まる位置*/
opacity: 1;
}
/*------copy　end------*/
.copy{color: #00913a;font-size: 0.8em;
  margin-top: 30px;}


/*------gotop end------*/
.gotop{
	height: 40px;
	width: 40px;
	position: fixed;
	right: 0px;
	bottom: 0px;
	margin-right: 10px;
	margin-bottom: 10px;
}
.gotop img{	width: 100%;}


a.anchor{
    display: block;
    padding-top: 0px;
    margin-top: 0px;
}
