@charset "UTF-8";
@import url("https://fonts.googleapis.com/earlyaccess/hannari.css");
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block;
}

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after {
  content: '';
  content: none;
}

q:before, q:after {
  content: '';
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

img {
  max-width: 100%;
  height: auto;
}

.clearfix {
  *zoom: 1;
}
.clearfix:after {
  content: "";
  display: table;
  clear: both;
}

@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 100;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 200;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 300;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 400;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Bold");
  font-weight: bold;
}
html {
  font-size: 62.5%;
  box-sizing: border-box;
}

*, *:before, *:after {
  box-sizing: inherit;
}

a, a *, span *,
a:before, a *:before, span *:before,
a:after, a *:after, span *:after {
  transition: 0.3s;
}

body {
  color: #575858;
  font-size: 14px;
  font-size: 1.4rem;
  margin: 0 auto;
  line-height: 1.875;
  word-break: break-all;
  font-family: "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
  min-width: 1000px;
}

a {
  color: #575858;
  text-decoration: none;
}
a:hover img {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=75);
  opacity: 0.75;
}
a:not(.btn):hover {
  color: #7d7e7e;
  text-decoration: underline;
}

img {
  vertical-align: bottom;
}

h1, h2, h3 {
  line-height: 1.5;
}

b, .bold {
  font-weight: bold;
}

.alC {
  text-align: center;
}

.alL {
  text-align: left;
}

.alR {
  text-align: right;
}

.flL {
  float: left;
}

.flR {
  float: right;
}

.full {
  max-width: none;
  width: 100%;
}

.clear {
  clear: both;
}

.min {
  font-family: "Hannari", "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", "HG明朝B", "MS Mincho", serif;
}

.gothic {
  font-family: "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
}

.bg-white {
  background: #fff;
}

.fc-accent {
  color: #283981;
}

.fc-white {
  color: #fff;
}

.fs-12 {
  font-size: 12px;
  font-size: 1.2rem;
}

.fs-13 {
  font-size: 13px;
  font-size: 1.3rem;
}

.fs-14 {
  font-size: 14px;
  font-size: 1.4rem;
}

.fs-15 {
  font-size: 15px;
  font-size: 1.5rem;
}

.fs-16 {
  font-size: 16px;
  font-size: 1.6rem;
}

.fs-18 {
  font-size: 18px;
  font-size: 1.8rem;
}

.fs-19 {
  font-size: 19px;
  font-size: 1.9rem;
}

.fs-20 {
  font-size: 20px;
  font-size: 2rem;
}

.fs-21 {
  font-size: 21px;
  font-size: 2.1rem;
}

.fs-22 {
  font-size: 22px;
  font-size: 2.2rem;
}

.fs-23 {
  font-size: 23px;
  font-size: 2.3rem;
}

.fs-24 {
  font-size: 24px;
  font-size: 2.4rem;
}

.fs-25 {
  font-size: 25px;
  font-size: 2.5rem;
}

.fs-26 {
  font-size: 26px;
  font-size: 2.6rem;
}

.fs-28 {
  font-size: 28px;
  font-size: 2.8rem;
}

.fs-29 {
  font-size: 29px;
  font-size: 2.9rem;
}

.fs-30 {
  font-size: 30px;
  font-size: 3rem;
}

.fs-31 {
  font-size: 31px;
  font-size: 3.1rem;
}

.fs-32 {
  font-size: 32px;
  font-size: 3.2rem;
}

.fs-36 {
  font-size: 36px;
  font-size: 3.6rem;
}

.fs-40 {
  font-size: 40px;
  font-size: 4rem;
}

.fs-45 {
  font-size: 41px;
  font-size: 4.1rem;
}

.wrap {
  width: 100%;
  position: relative;
}

.container {
  *zoom: 1;
  width: 1000px;
  margin-left: auto;
  margin-right: auto;
}
.container:after {
  content: "";
  display: table;
  clear: both;
}

.inner {
  padding: 10px;
}

.flexbox {
  display: -webkit-flex;
  display: flex;
}

.flex-reverse {
  -webkit-flex-direction: row-reverse;
  flex-direction: row-reverse;
}

.footer {
  background: #0a2e88;
  color: #fff;
}

.copy {
  padding: 1em;
}

#pageTop {
  width: 74px;
  height: 86px;
  display: block;
  cursor: pointer;
  background: url(../images/theme/gotop.png) center top no-repeat;
  transition: background 0.3s ease;
  position: fixed;
  right: 20px;
  bottom: 8%;
  z-index: 10;
}

#pageTop:hover {
  background-position: center bottom;
}

.sec {
  position: relative;
  width: 100%;
  padding: 0 0;
}
.sec p:not(:last-child) {
  margin-bottom: 1em;
}

.circle-list li {
  padding-left: 1.5em;
}
.circle-list li:before {
  content: "●";
  margin-left: -1.5em;
  margin-right: 0.5em;
}

.site-main {
  position: relative;
}

.header .container {
  background: url(../images/theme/head-tel-bg.png) right bottom no-repeat;
  height: 100px;
  padding: 10px 0;
}

.header-left {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  margin-top: 10px;
}
.header-left .logo:after {
  content: "";
  display: inline-block;
  height: 50px;
  width: 2px;
  background: #d3d4d4;
  transform: rotate(30deg);
  margin: 0 26px;
  vertical-align: sub;
}
.header-left h1 {
  line-height: 1.25;
}

.header-tel {
  padding-right: 66px;
  padding-top: 2px;
}

.navbar {
  background: url(../images/theme/navbar-bg.png) center center repeat-x;
  height: 60px;
  width: 100%;
  overflow: hidden;
  position: relative;
  z-index: 1;
  -moz-box-shadow: rgba(0, 0, 0, 0.5) 0 6px 10px -3px;
  -webkit-box-shadow: rgba(0, 0, 0, 0.5) 0 6px 10px -3px;
  box-shadow: rgba(0, 0, 0, 0.5) 0 6px 10px -3px;
}
.navbar .container {
  margin: -1px auto;
}

#svgnav {
  height: 62px;
  overflow: hidden;
  background: url(../images/theme/nav-bg.png) -102px center repeat-x;
  width: 928px;
}

#topIntro {
  background: linear-gradient(90deg, #0a2e88 0%, #0a2e88 50%, #ffffff 50%, #ffffff 100%);
}
#topIntro .container {
  background: url(../images/top/sec-1-bg.png) -100px center no-repeat;
}
#topIntro h2 {
  margin: 65px auto 30px;
}

#topService .container {
  padding: 90px 0 34px;
}
#topService .flexbox {
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
#topService .flexbox + .flexbox {
  margin-top: 20px;
}
#topService .service-box {
  border-width: 10px;
  border-style: solid;
  padding: 20px;
  position: relative;
  line-height: 1.42857;
}
#topService .service-box h3 {
  border-bottom: 10px;
}
#topService .service-box ul {
  margin-top: 10px;
}
#topService .service-box .img-bottom {
  margin-top: 15px;
}
#topService .service-box.box-wide {
  width: 655px;
}
#topService .service-box.service-air {
  border-color: #0a2e88;
}
#topService .service-box.service-air h3 {
  color: #0a2e88;
}
#topService .service-box.service-air .circle-list li:before {
  color: #0a2e88;
}
#topService .service-box.service-equip {
  border-color: #619d52;
}
#topService .service-box.service-equip h3 {
  color: #619d52;
}
#topService .service-box.service-equip .circle-list li:before {
  color: #619d52;
}
#topService .service-box.service-survey {
  border-color: #00b3ed;
}
#topService .service-box.service-survey h3 {
  color: #00b3ed;
}
#topService .service-box.service-survey .circle-list li:before {
  color: #00b3ed;
}
#topService .service-box.service-pest {
  border-color: #905b8a;
}
#topService .service-box.service-pest h3 {
  color: #905b8a;
}
#topService .service-box.service-pest .circle-list li:before {
  color: #905b8a;
}

#topRec {
  background: linear-gradient(90deg, #ffffff 0%, #ffffff 80%, #bf000a 80%, #bf000a 100%);
  margin-bottom: 30px;
}
#topRec .container {
  padding: 60px 0 76px;
  background: url(../images/top/sec-3-bg.png) right center no-repeat #fff;
}
#topRec h2 {
  font-size: 43.34px;
  margin-bottom: 20px;
}
#topRec .flL {
  width: 500px;
}
#topRec .flL p {
  line-height: 2.14285714286;
  padding-right: 10px;
  margin-bottom: 1em;
}

.bnr-recruit {
  background: url(../images/top/bnr-recruit.png) center center no-repeat;
  width: 100%;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-justify-content: space-around;
  justify-content: space-around;
  height: 213px;
  color: #fff;
  padding: 20px 0;
  margin: 20px auto;
}

.contact-top {
  background: #0a2e88;
  color: #fff;
  padding: 30px 0 15px;
}
.contact-top h2 {
  font-size: 43.34px;
  margin-bottom: 45px;
}
.contact-top .text {
  width: 360px;
  line-height: 2.14286;
}

.contact-bottom {
  background: url(../images/theme/footer-top.png) center top no-repeat;
  padding: 50px 0 40px;
}

.contact-top {
  background: #0a2e88;
  color: #fff;
  padding: 30px 0 15px;
}

.contact-top h2 {
  font-size: 43.34px;
  margin-bottom: 45px;
}

.contact-top .text {
  width: 360px;
  line-height: 2.14286;
}

.contact-bottom {
  background: url(../images/theme/footer-top.png) center top no-repeat;
  padding: 50px 0 40px;
}

/*company*/
.company {
  text-align: center;
}

#toppath {
  background: url(../images/company/bg-toppath-company.png) center center repeat-x;
  width: 100%;
  height: 130px;
  margin-bottom: 40px;
  padding: 17px 0;
}

.Info-area {
  margin: 65px 138px 95px 133px;
  text-align: left;
}

#tb {
  width: 100%;
  display: inline-block;
}

#tb .row {
  overflow: hidden;
}

#tb .th {
  border-bottom: 1px solid #173179;
  color: #173179;
  font-weight: bold;
  padding: 10px;
  width: 20%;
  margin-right: 3%;
  float: left;
}

#tb .td {
  color: #666;
  padding: 10px 15px 10px 15px;
  border-bottom: 1px solid #cdcdcd;
  width: 77%;
  float: left;
}

#tb .detail-area .th {
  min-height: 911px;
}

#tb .detail .td {
  border-bottom: 0 none;
  color: #173179;
  float: none;
  padding-left: 0;
}

#tb .detail {
  border-bottom: 1px dotted #cdcdcd;
  margin-left: 23%;
  padding-left: 20px;
  padding-bottom: 10px;
}

#tb .r9 .th {
  min-height: 74px;
}

#tb .row:last-of-type .th, #tb .row:last-of-type .td {
  border-bottom: 0 none;
}
