@charset "UTF-8";
@media screen and (min-width: 769px) {
  div#wrapper header.nav {
    position: fixed;
    top: 0;
    z-index: 100;
    background-color: #fff;
    width: 100%;
  }
  div#wrapper header.nav div.guronavi {
    padding: 10px 10px 0;
    position: relative;
    margin: 0 auto;
    max-width: 1000px;
    box-sizing: border-box;
  }
  div#wrapper header.nav div.guronavi div.menu {
    display: table;
    border-spacing: 5px 0;
    width: 100%;
  }
  div#wrapper header.nav div.guronavi div.menu h1 {
    display: table-cell;
    vertical-align: middle;
  }
  div#wrapper header.nav div.guronavi div.menu h1 a {
    display: block;
  }
  div#wrapper header.nav div.guronavi div.menu h1 a i {
    height: 67px;
    display: table;
    border-spacing: 10px 0;
    padding-left: 62px;
    background: url(../images/logo_icon.svg) 0% 50%/62px 67px no-repeat;
  }
  div#wrapper header.nav div.guronavi div.menu h1 a i::before {
    display: table-cell;
    vertical-align: middle;
    width: 198px;
    height: 43px;
    background: url(../images/logo_text1.svg) 50% 50%/contain no-repeat;
    content: "";
  }
  div#wrapper header.nav div.guronavi div.menu h1 a i::after {
    display: table-cell;
    vertical-align: middle;
    width: 209px;
    height: 11px;
    background: url(../images/logo_text2.svg) 50% 64%/contain no-repeat;
    content: "";
  }
}
@media screen and (min-width: 769px) and (max-width: 939px) {
  div#wrapper header.nav div.guronavi div.menu h1 a i::before, div#wrapper header.nav div.guronavi div.menu h1 a i::after {
    margin: 0 auto;
    display: block;
  }
  div#wrapper header.nav div.guronavi div.menu h1 a i::after {
    margin-top: 6px;
  }
}
@media screen and (min-width: 769px) {
  div#wrapper header.nav div.guronavi div.menu ul {
    display: table-cell;
    vertical-align: middle;
    width: 405px;
  }
  div#wrapper header.nav div.guronavi div.menu ul li {
    display: table-cell;
    vertical-align: middle;
  }
  div#wrapper header.nav div.guronavi div.menu ul li.tel {
    padding-left: 217px;
    position: relative;
  }
  div#wrapper header.nav div.guronavi div.menu ul li.tel a {
    display: block;
    width: 46px;
    height: 46px;
    background: url(../images/icon_tel.svg) 50% 50%/contain no-repeat;
  }
  div#wrapper header.nav div.guronavi div.menu ul li.tel i {
    position: absolute;
    top: 50%;
    left: 0;
    display: block;
    width: 207px;
    height: 46px;
    -webkit-transform: translateY(-60%);
    -ms-transform: translateY(-60%);
    transform: translateY(-60%);
    content: '';
  }
  div#wrapper header.nav div.guronavi div.menu ul li.tel a:hover + i {
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-transition: all 0.2s !important;
    -ms-transition: all 0.2s !important;
    transition: all 0.2s !important;
    background: url(../images/head_tel.svg) 50% 50%/contain no-repeat;
  }
  div#wrapper header.nav div.guronavi div.menu ul li.form {
    padding-right: 96px;
    position: relative;
  }
  div#wrapper header.nav div.guronavi div.menu ul li.form a {
    display: block;
    width: 46px;
    height: 46px;
    background: url(../images/icon_form.svg) 50% 50%/contain no-repeat;
  }
  div#wrapper header.nav div.guronavi div.menu ul li.form i {
    position: absolute;
    top: 50%;
    right: 0;
    display: block;
    width: 86px;
    height: 46px;
    -webkit-transform: translateY(-60%);
    -ms-transform: translateY(-60%);
    transform: translateY(-60%);
    content: '';
  }
  div#wrapper header.nav div.guronavi div.menu ul li.form a:hover + i {
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-transition: all 0.2s !important;
    -ms-transition: all 0.2s !important;
    transition: all 0.2s !important;
    background: url(../images/head_form.svg) 50% 50%/contain no-repeat;
  }
  div#wrapper header.nav div.guronavi nav.nav-content {
    margin: 10px auto 5px;
    display: block;
    width: 100%;
    -webkit-font-smoothing: antialiased;
  }
  div#wrapper header.nav div.guronavi nav.nav-content ul.parent {
    margin: 0 auto;
    padding: 0 5px;
    box-sizing: border-box;
    table-layout: fixed;
    display: table;
    width: 100%;
  }
  div#wrapper header.nav div.guronavi nav.nav-content ul.parent > li {
    position: relative;
    border-left: 1px solid #ccc;
    display: table-cell;
    vertical-align: middle;
  }
  div#wrapper header.nav div.guronavi nav.nav-content ul.parent > li:last-child {
    border-right: 1px solid #ccc;
  }
  div#wrapper header.nav div.guronavi nav.nav-content ul.parent > li > a {
    position: relative;
    z-index: 1;
    margin: 0 auto;
    display: block;
    height: 48px;
    line-height: 2;
    text-align: center;
    font-size: 15px;
    pointer-events: none;
  }
  div#wrapper header.nav div.guronavi nav.nav-content ul.parent > li.home > a {
    pointer-events: auto;
  }
  div#wrapper header.nav div.guronavi nav.nav-content ul.parent > li ul.child {
    visibility: hidden;
    margin-left: -1px;
    border-left: 1px solid #ccc;
    border-right: 1px solid #ccc;
    position: absolute;
    z-index: 0;
    opacity: 0;
    width: 100%;
    max-height: 0;
    background-color: #fff;
  }
  div#wrapper header.nav div.guronavi nav.nav-content ul.parent > li ul.child > li {
    border-bottom: 1px solid #f2f2f2;
  }
  div#wrapper header.nav div.guronavi nav.nav-content ul.parent > li ul.child > li:first-child {
    border-top: 1px solid #f2f2f2;
  }
  div#wrapper header.nav div.guronavi nav.nav-content ul.parent > li ul.child > li:last-child {
    border-bottom: 1px solid #ccc;
  }
  div#wrapper header.nav div.guronavi nav.nav-content ul.parent > li ul.child > li > a {
    padding: 12px 0;
    text-align: center;
    margin: 0 auto;
    display: block;
    font-size: 14px;
    line-height: 1.5;
  }
  div#wrapper header.nav div.guronavi nav.nav-content ul.parent > li:hover > a {
    pointer-events: auto;
  }
  div#wrapper header.nav div.guronavi nav.nav-content ul.parent > li:hover > ul.child {
    visibility: visible;
    max-height: 200px;
    opacity: 1;
    -webkit-transition: opacity 0.2s, visibility 0.2s, max-height 0.1s;
    -ms-transition: opacity 0.2s, visibility 0.2s, max-height 0.1s;
    transition: opacity 0.2s, visibility 0.2s, max-height 0.1s;
  }
}
@media screen and (min-width: 769px) and (max-width: 768px) {
  div#wrapper header.nav div.guronavi nav.nav-content ul.parent > li:hover > a {
    pointer-events: none;
  }
  div#wrapper header.nav div.guronavi nav.nav-content ul.parent > li:hover.home > a {
    pointer-events: auto;
  }
}
@media screen and (min-width: 769px) {
  div#wrapper header.nav div.guronavi nav.nav-content ul.parent > li.home > a::after {
    margin: 0 auto;
    display: block;
    width: 28px;
    height: 7.7px;
    background-image: url(../images/nav_home.svg);
    background-position: 50% 50%;
    background-size: 100% 100%;
    background-repeat: no-repeat;
    content: '';
  }
  div#wrapper header.nav div.guronavi nav.nav-content ul.parent > li.concept > a::after {
    margin: 0 auto;
    display: block;
    width: 44px;
    height: 7.7px;
    background-image: url(../images/nav_concept.svg);
    background-position: 50% 50%;
    background-size: 100% 100%;
    background-repeat: no-repeat;
    content: '';
  }
  div#wrapper header.nav div.guronavi nav.nav-content ul.parent > li.works > a::after {
    margin: 0 auto;
    display: block;
    width: 36px;
    height: 7.7px;
    background-image: url(../images/nav_works.svg);
    background-position: 50% 50%;
    background-size: 100% 100%;
    background-repeat: no-repeat;
    content: '';
  }
  div#wrapper header.nav div.guronavi nav.nav-content ul.parent > li.voice > a::after {
    margin: 0 auto;
    display: block;
    width: 35px;
    height: 7.7px;
    background-image: url(../images/nav_voice.svg);
    background-position: 50% 50%;
    background-size: 100% 100%;
    background-repeat: no-repeat;
    content: '';
  }
  div#wrapper header.nav div.guronavi nav.nav-content ul.parent > li.staff > a::after {
    margin: 0 auto;
    display: block;
    width: 56px;
    height: 7.7px;
    background-image: url(../images/nav_staff.svg);
    background-position: 50% 50%;
    background-size: 100% 100%;
    background-repeat: no-repeat;
    content: '';
  }
  div#wrapper header.nav div.guronavi nav.nav-content ul.parent > li.company > a::after {
    margin: 0 auto;
    display: block;
    width: 49px;
    height: 7.7px;
    background-image: url(../images/nav_company.svg);
    background-position: 50% 50%;
    background-size: 100% 100%;
    background-repeat: no-repeat;
    content: '';
  }
  div#wrapper header.nav div.guronavi nav.nav-content ul.parent > li.news > a::after {
    margin: 0 auto;
    display: block;
    width: 28px;
    height: 7.7px;
    background-image: url(../images/nav_news.svg);
    background-position: 50% 50%;
    background-size: 100% 100%;
    background-repeat: no-repeat;
    content: '';
  }
}
@media screen and (max-width: 768px) {
  div#wrapper header.nav {
    position: fixed;
    top: 0;
    z-index: 100;
    width: 100%;
    height: 60px;
  }
  div#wrapper header.nav div#js-cover {
    display: none;
    position: absolute;
    top: 0;
    z-index: -1;
    opacity: 0;
    width: 100vw;
    height: 100vh;
    background: rgba(0, 0, 0, 0.5);
  }
  div#wrapper header.nav div.guronavi {
    padding: 0 0 0 10px;
    box-sizing: border-box;
  }
  div#wrapper header.nav div.guronavi div.menu {
    display: table;
    width: 100%;
  }
  div#wrapper header.nav div.guronavi div.menu h1 {
    display: table-cell;
    vertical-align: middle;
  }
  div#wrapper header.nav div.guronavi div.menu h1 a {
    display: block;
  }
  div#wrapper header.nav div.guronavi div.menu h1 a i {
    height: 36px;
    display: table;
    border-spacing: 10px 0;
    padding-left: 36px;
    background: url(../images/logo_icon.svg) 0% 50%/34px 36px no-repeat;
  }
  div#wrapper header.nav div.guronavi div.menu h1 a i::before, div#wrapper header.nav div.guronavi div.menu h1 a i::after {
    margin: 0 auto;
    display: block;
  }
  div#wrapper header.nav div.guronavi div.menu h1 a i::before {
    width: 107px;
    height: 24px;
    background: url(../images/logo_text1.svg) 50% 50%/contain no-repeat;
    content: "";
  }
  div#wrapper header.nav div.guronavi div.menu h1 a i::after {
    margin-top: 6px;
    width: 109px;
    height: 6px;
    background: url(../images/logo_text2.svg) 50% 64%/contain no-repeat;
    content: "";
  }
  div#wrapper header.nav div.guronavi div.menu ul {
    display: table-cell;
    vertical-align: middle;
    width: 85px;
  }
  div#wrapper header.nav div.guronavi div.menu ul li {
    display: table-cell;
    vertical-align: middle;
  }
  div#wrapper header.nav div.guronavi div.menu ul li.tel {
    padding-right: 5px;
    position: relative;
  }
  div#wrapper header.nav div.guronavi div.menu ul li.tel a {
    display: block;
    width: 40px;
    height: 40px;
    background: url(../images/icon_tel.svg) 50% 50%/40px 40px no-repeat;
  }
  div#wrapper header.nav div.guronavi div.menu ul li.tel i {
    display: none;
  }
  div#wrapper header.nav div.guronavi div.menu ul li.form {
    position: relative;
  }
  div#wrapper header.nav div.guronavi div.menu ul li.form a {
    display: block;
    width: 40px;
    height: 40px;
    background: url(../images/icon_form.svg) 50% 50%/40px 40px no-repeat;
  }
  div#wrapper header.nav div.guronavi div.menu ul li.form i {
    display: none;
  }
  div#wrapper header.nav div.guronavi nav.nav-content {
    margin: 0 auto;
    display: block;
    position: absolute;
    width: 100vw;
    top: -1000%;
    z-index: 1;
    opacity: 0;
    background-color: #fff;
    -webkit-transition: opacity 0.2s linear;
    -ms-transition: opacity 0.2s linear;
    transition: opacity 0.2s linear;
  }
  div#wrapper header.nav div.guronavi nav.nav-content ul.parent {
    margin: 0 auto;
    width: 100%;
  }
  div#wrapper header.nav div.guronavi nav.nav-content ul.parent > li {
    border-bottom: 1px solid #ccc;
  }
  div#wrapper header.nav div.guronavi nav.nav-content ul.parent > li:first-child {
    border-top: 1px solid #cac8c7;
  }
  div#wrapper header.nav div.guronavi nav.nav-content ul.parent > li > a {
    padding: 3px 0;
    position: relative;
    z-index: 1;
    margin: 0 auto;
    display: block;
    height: 48px;
    line-height: 2;
    text-align: center;
    font-size: 15px;
    color: #747474;
    pointer-events: none;
    background-color: #f0f0f0;
  }
  div#wrapper header.nav div.guronavi nav.nav-content ul.parent > li > a::before {
    position: absolute;
    top: 50%;
    right: 10px;
    width: 30px;
    height: 30px;
    line-height: 30px;
    background-color: #fff;
    color: #534741;
    box-sizing: border-box;
    text-align: center;
    display: block;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    content: "+";
  }
  div#wrapper header.nav div.guronavi nav.nav-content ul.parent > li.home > a {
    pointer-events: auto;
    background-color: #fff;
  }
  div#wrapper header.nav div.guronavi nav.nav-content ul.parent > li.home > a::before {
    display: none;
  }
  div#wrapper header.nav div.guronavi nav.nav-content ul.parent > li ul.child {
    overflow: hidden;
    height: 0;
  }
  div#wrapper header.nav div.guronavi nav.nav-content ul.parent > li ul.child li {
    border-top: 1px solid #ccc;
  }
  div#wrapper header.nav div.guronavi nav.nav-content ul.parent > li ul.child li a {
    padding: 3px 0;
    position: relative;
    z-index: 1;
    margin: 0 auto;
    display: block;
    height: 48px;
    line-height: 48px;
    text-align: center;
    font-size: 15px;
    background-color: #fff;
    pointer-events: none;
  }
  div#wrapper header.nav div.guronavi nav.nav-content ul.parent > li ul.child li a br {
    display: none;
  }
  div#wrapper header.nav div.guronavi nav.nav-content ul.parent > li ul.child li a:hover {
    pointer-events: auto;
  }
  div#wrapper header.nav div.guronavi nav.nav-content ul.parent > li ul.child li:hover a {
    pointer-events: auto;
  }
  div#wrapper header.nav div.guronavi nav.nav-content ul.parent > li:hover > a::before {
    content: "-";
  }
  div#wrapper header.nav div.guronavi nav.nav-content ul.parent > li:hover > ul.child {
    height: auto;
  }
  div#wrapper header.nav div.guronavi nav.nav-content ul.parent > li:hover > ul {
    opacity: 1;
    height: auto;
    -webkit-transition: all 0.2s !important;
    -ms-transition: all 0.2s !important;
    transition: all 0.2s !important;
  }
  div#wrapper header.nav div.guronavi nav.nav-content ul.parent > li.home > a::after {
    margin: 0 auto;
    display: block;
    width: 28px;
    height: 7.7px;
    background-image: url(../images/nav_home.svg);
    background-position: 50% 50%;
    background-size: contain;
    background-repeat: no-repeat;
    content: '';
  }
  div#wrapper header.nav div.guronavi nav.nav-content ul.parent > li.concept > a::after {
    margin: 0 auto;
    display: block;
    width: 44px;
    height: 7.7px;
    background-image: url(../images/nav_concept.svg);
    background-position: 50% 50%;
    background-size: contain;
    background-repeat: no-repeat;
    content: '';
  }
  div#wrapper header.nav div.guronavi nav.nav-content ul.parent > li.works > a::after {
    margin: 0 auto;
    display: block;
    width: 36px;
    height: 7.7px;
    background-image: url(../images/nav_works.svg);
    background-position: 50% 50%;
    background-size: contain;
    background-repeat: no-repeat;
    content: '';
  }
  div#wrapper header.nav div.guronavi nav.nav-content ul.parent > li.voice > a::after {
    margin: 0 auto;
    display: block;
    width: 35px;
    height: 7.7px;
    background-image: url(../images/nav_voice.svg);
    background-position: 50% 50%;
    background-size: contain;
    background-repeat: no-repeat;
    content: '';
  }
  div#wrapper header.nav div.guronavi nav.nav-content ul.parent > li.staff > a::after {
    margin: 0 auto;
    display: block;
    width: 56px;
    height: 7.7px;
    background-image: url(../images/nav_staff.svg);
    background-position: 50% 50%;
    background-size: contain;
    background-repeat: no-repeat;
    content: '';
  }
  div#wrapper header.nav div.guronavi nav.nav-content ul.parent > li.company > a::after {
    margin: 0 auto;
    display: block;
    width: 49px;
    height: 7.7px;
    background-image: url(../images/nav_company.svg);
    background-position: 50% 50%;
    background-size: contain;
    background-repeat: no-repeat;
    content: '';
  }
  div#wrapper header.nav div.guronavi nav.nav-content ul.parent > li.news > a::after {
    margin: 0 auto;
    display: block;
    width: 28px;
    height: 7.7px;
    background-image: url(../images/nav_news.svg);
    background-position: 50% 50%;
    background-size: contain;
    background-repeat: no-repeat;
    content: '';
  }
  div#wrapper header.nav div.guronavi {
    display: table;
    width: 100%;
    background-color: #fff;
  }
  div#wrapper header.nav div.guronavi div {
    display: table-cell;
    vertical-align: top;
    width: 50px;
    min-width: 50px;
    height: 60px;
  }
  div#wrapper header.nav div.guronavi span.menu-button {
    display: block;
    position: relative;
    width: 60px;
    min-width: 60px;
    height: 60px;
    box-sizing: border-box;
    background: url(../images/head_menu_sp.svg) 50% 90%/60% auto no-repeat;
  }
  div#wrapper header.nav div.guronavi span.menu-button i {
    margin-top: -4px;
    display: block;
    width: 70%;
    height: 3px;
    border-radius: 3px;
    background: #333;
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transition: background 0.2s;
    -ms-transition: background 0.2s;
    transition: background 0.2s;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
  }
  div#wrapper header.nav div.guronavi span.menu-button i:before, div#wrapper header.nav div.guronavi span.menu-button i:after {
    content: "";
    display: block;
    width: 100%;
    height: 3px;
    border-radius: 3px;
    background: #333;
    position: absolute;
    z-index: 100;
    -webkit-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: all 0.2s !important;
    -ms-transition: all 0.2s !important;
    transition: all 0.2s !important;
  }
  div#wrapper header.nav div.guronavi span.menu-button i:before {
    -webkit-transform: translateY(10px);
    -ms-transform: translateY(10px);
    transform: translateY(10px);
  }
  div#wrapper header.nav div.guronavi span.menu-button i:after {
    -webkit-transform: translateY(-10px);
    -ms-transform: translateY(-10px);
    transform: translateY(-10px);
  }
  div#wrapper.is-open header.nav div.guronavi nav.nav-content {
    margin-right: 0;
    top: 100%;
    right: 0;
    opacity: 1;
  }
  div#wrapper.is-open header.nav div.guronavi span.menu-button i {
    background: none;
  }
  div#wrapper.is-open header.nav div.guronavi span.menu-button i:after {
    background: #333;
    -webkit-transform: translateY(0px) rotate(-45deg);
    -ms-transform: translateY(0px) rotate(-45deg);
    transform: translateY(0px) rotate(-45deg);
  }
  div#wrapper.is-open header.nav div.guronavi span.menu-button i:before {
    background: #333;
    -webkit-transform: translateY(0px) rotate(45deg);
    -ms-transform: translateY(0px) rotate(45deg);
    transform: translateY(0px) rotate(45deg);
  }
}

footer {
  position: relative;
  background-color: #fff;
  min-width: 320px;
}
footer p.copy {
  width: 100%;
  height: 50px;
  background: url(../images/foot_bg.gif) 0 0/20px 1px repeat;
  overflow: hidden;
  text-indent: -1000%;
  white-space: nowrap;
}
footer p.copy::before {
  width: 100%;
  height: 50px;
  display: block;
  background: url(../images/foot_copy.svg) 50% 50%/384px 14px no-repeat;
  content: '';
}
footer nav {
  border-bottom: 1px solid #009841;
}
footer nav ul {
  margin: 0 auto;
  padding: 20px 10px;
  display: table;
  width: 100%;
  max-width: 1000px;
  box-sizing: border-box;
}
footer nav ul li {
  border-left: 1px solid #534741;
  display: table-cell;
  vertical-align: middle;
  text-align: center;
  line-height: 1;
}
footer nav ul li:first-child {
  border-left: none;
}
footer nav ul li a {
  font-size: 14px;
}
footer > ul {
  padding-right: 60px;
  box-sizing: border-box;
  margin: 0 auto;
  display: table;
  border-spacing: 10px 0;
  width: 100%;
  max-width: 1000px;
  height: 100px;
}
footer > ul li {
  display: table-cell;
  vertical-align: middle;
}
footer > ul li.logo a {
  display: table;
  border-spacing: 10px 0;
}
footer > ul li.logo a i {
  display: table-cell;
  vertical-align: middle;
  height: 67px;
  padding-left: 72px;
  background: url(../images/logo_icon.svg) 0% 50%/62px 67px no-repeat;
}
footer > ul li.logo a i::before {
  display: block;
  width: 198px;
  height: 43px;
  background: url(../images/logo_text1.svg) 50% 50%/contain no-repeat;
  content: "";
}
@media screen and (max-width: 939px) {
  footer > ul li.logo a i::before, footer > ul li.logo a i::after {
    margin: 0 auto;
    display: block;
  }
  footer > ul li.logo a i::after {
    margin-top: 6px;
  }
}
footer > ul li.tel {
  min-width: 218px;
}
footer > ul li.tel a {
  display: block;
  width: 218px;
  height: 43px;
  background: url(../images/foot_tel.svg) 50% 50%/100% 100% no-repeat;
}
footer > ul li.tel i {
  display: none;
}
footer > ul li.form {
  min-width: 226px;
}
footer > ul li.form a {
  display: block;
  width: 226px;
  height: 50px;
  background: url(../images/foot_form.png) 50% 50%/100% 100% no-repeat;
}
footer > ul li.form i {
  display: none;
}
@media screen and (max-width: 939px) {
  footer nav ul {
    margin-bottom: -10px;
    display: block;
    text-align: center;
    font-size: 0;
  }
  footer nav ul li {
    margin-left: -1px;
    margin-bottom: 10px;
    display: inline-block;
    border-right: 1px solid #534741;
  }
  footer nav ul li:first-child {
    border-left: 1px solid #534741;
  }
  footer nav ul li a {
    padding: 0 10px;
  }
  footer > ul li.tel {
    min-width: auto;
    width: 62px;
    height: 62px;
  }
  footer > ul li.tel a {
    width: 62px;
    height: 62px;
    background: url(../images/icon_tel.svg) 50% 50%/contain no-repeat;
  }
  footer > ul li.form {
    min-width: auto;
    width: 62px;
    height: 62px;
  }
  footer > ul li.form a {
    width: 62px;
    height: 62px;
    background: url(../images/icon_form.svg) 50% 50%/contain no-repeat;
  }
}
@media screen and (max-width: 767px) {
  footer p.copy {
    height: 38px;
  }
  footer p.copy::before {
    height: 38px;
    margin: 0 auto;
    width: 98%;
    max-width: 294px;
    background-size: contain;
    content: '';
  }
  footer > ul {
    height: 60px;
    border-spacing: 0 0;
  }
  footer > ul li.logo {
    min-width: 170px;
  }
  footer > ul li.logo a i {
    height: 32px;
    padding-left: 36px;
    background: url(../images/logo_icon.svg) 0% 50%/32px 36px no-repeat;
  }
  footer > ul li.logo a i::before {
    display: block;
    width: 107px;
    height: 24px;
    background: url(../images/logo_text1.svg) 50% 50%/contain no-repeat;
    content: "";
  }
}
@media screen and (max-width: 767px) and (max-width: 939px) {
  footer > ul li.logo a i::before, footer > ul li.logo a i::after {
    margin: 0 auto;
    display: block;
  }
  footer > ul li.logo a i::after {
    margin-top: 6px;
  }
}
@media screen and (max-width: 767px) {
  footer > ul li.tel {
    padding-right: 10px;
    width: 40px;
    height: 40px;
  }
  footer > ul li.tel a {
    width: 40px;
    height: 40px;
  }
  footer > ul li.form {
    width: 40px;
    height: 40px;
  }
  footer > ul li.form a {
    width: 40px;
    height: 40px;
  }
}

div.division {
  padding-bottom: 25px;
}
div.division.bgDark {
  background-color: #534741;
}
div.division h2 {
  margin: 0 auto;
  height: 50px;
  position: relative;
  max-width: 1100px;
}
div.division h2 > img {
  position: absolute;
  top: 50%;
  left: 2vw;
  z-index: 1;
  max-width: 98vw;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
div.division h3 {
  margin: 0 auto 10px;
  padding: 5px 10px;
  max-width: 1000px;
  text-align: left;
  color: #fff;
  box-sizing: border-box;
}
div.division h3.gn {
  background-color: #507c4c;
}
div.division div.content {
  margin-bottom: 0;
}
div.division div.pala {
  table-layout: fixed;
  border-spacing: 10px 0;
}
@media screen and (max-width: 767px) {
  div.division div.pala > div {
    margin-bottom: 10px;
  }
  div.division div.pala > div:last-child {
    margin-bottom: 0;
  }
}

div.content.flink {
  margin-top: 25px;
  margin-bottom: 0;
}
div.content.flink div.pala {
  border-spacing: 10px 0;
  margin-top: 10px;
}
div.content.flink div.pala:first-child {
  margin-top: 0;
}
@media screen and (max-width: 767px) {
  div.content.flink div.pala > div {
    margin-bottom: 10px;
  }
  div.content.flink div.pala > div:last-child {
    margin-bottom: 0;
  }
}

#pageTop {
  position: fixed;
  bottom: 18px;
  right: 10px;
  width: 62px;
  height: 62px;
  z-index: 50;
}
#pageTop a {
  display: block;
  width: 62px;
  height: 62px;
}
#pageTop a:before {
  display: inline-block;
  width: 100%;
  height: 100%;
  background: url(../images/pagetop_pc.svg) 50% 50%/contain no-repeat;
  content: "";
}
@media screen and (max-width: 939px) {
  #pageTop a:before {
    background: url(../images/pagetop_sp.svg) 50% 50%/contain no-repeat;
  }
}
@media screen and (max-width: 767px) {
  #pageTop {
    bottom: 10px;
    width: 40px;
    height: 40px;
  }
  #pageTop a {
    width: 40px;
    height: 40px;
  }
}

@media screen and (min-width: 768px) {
  .pc {
    display: block !important;
  }

  .sp {
    display: none !important;
  }
}
@media screen and (max-width: 767px) {
  .pc {
    display: none !important;
  }

  .sp {
    display: block !important;
  }
}
body {
  background-color: #fff;
}

div#wrapper {
  margin: 0 auto;
  width: 100%;
  min-width: 265px;
}
@media screen and (min-width: 769px) {
  div#wrapper {
    padding-top: 140px;
  }
}
@media screen and (max-width: 768px) {
  div#wrapper {
    padding-top: 60px;
  }
}

main {
  margin: 0 auto;
  box-sizing: border-box;
  display: block;
  width: 100%;
  overflow: hidden;
}
main section {
  padding-bottom: 25px;
}
main section.bgCream {
  background-color: #f5f2ed;
}
main section.bgCork {
  background: url(../images/bg_cork.png) 0 0/288px 288px repeat;
  background-color: #f5f2ed;
}
main div.content {
  margin: 0 auto 25px;
  padding: 0 20px;
  max-width: 1040px;
  box-sizing: border-box;
}
@media screen and (max-width: 767px) {
  main div.content {
    padding: 0 10px;
  }
}

a:hover {
  opacity: 0.7;
}

h2 {
  margin: 25px auto 0;
}
h2.bgImg {
  margin-top: 0;
  position: relative;
  max-width: 1000px;
}
h2.bgImg img.bg {
  width: 100%;
}
h2.bgImg img.txt {
  position: absolute;
  top: 50%;
  left: 2vw;
  max-width: 98vw;
  height: 40px;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
h2.gn {
  height: 50px;
  position: relative;
  max-width: 1100px;
}
h2.gn > img {
  position: absolute;
  top: 50%;
  left: 2vw;
  z-index: 1;
  max-width: 98vw;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
h2.gn::before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  width: 100vw;
  height: 100%;
  display: block;
  background: url(../images/bg_ttl_green.jpg) 0 0/8px 8px repeat;
  content: "";
}
@media screen and (min-width: 265px) {
  h2.gn::before {
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
  }
}

h3 {
  margin-top: 25px;
  padding: 10px 0;
  text-align: center;
}
h3.wh {
  background-color: #fff;
}
h3 img {
  max-width: 90%;
  max-height: 42.8px;
}

div.anchor {
  line-height: 0;
  overflow: hidden;
  text-indent: -1000%;
  white-space: nowrap;
}
@media screen and (min-width: 768px) {
  div.anchor {
    padding-top: 160px;
    margin-top: -160px;
  }
}
@media screen and (max-width: 767px) {
  div.anchor {
    padding-top: 70px;
    margin-top: -70px;
  }
}

div.pala > div a {
  display: block;
}
div.pala > div a img {
  width: 100%;
}
@media screen and (min-width: 768px) {
  div.pala {
    display: table;
    width: 100%;
  }
  div.pala > div {
    display: table-cell;
    vertical-align: middle;
  }
}

div.column {
  margin-top: 25px;
  margin-bottom: -25px;
  width: 100%;
  overflow: hidden;
  display: -webkit-flex;
  -webkit-flex-wrap: wrap;
  display: flex;
  flex-wrap: wrap;
}
div.column > div {
  margin-bottom: 25px;
  vertical-align: top;
  display: inline-block;
  float: left;
}
div.column > div a {
  display: block;
}
div.column > div img {
  width: 100%;
}
@media screen and (min-width: 768px) {
  div.column > div {
    margin-left: 2%;
    width: 32%;
  }
  div.column > div:nth-child(3n-2) {
    margin-left: 0;
  }
}
@media screen and (max-width: 767px) {
  div.column > div {
    margin-left: 2%;
    width: 49%;
  }
  div.column > div:nth-child(2n-1) {
    margin-left: 0;
  }
}

a.imgBtn {
  display: inline-block;
}

div.center {
  margin: 25px auto 0;
  text-align: center;
}
div.right {
  margin: 25px auto 0;
  text-align: right;
}
div.left {
  margin: 25px auto 0;
  text-align: left;
}

ul.pankz {
  position: relative;
  margin: 0 auto;
  padding: 0 10px;
  width: 100%;
  max-width: 1000px;
  box-sizing: border-box;
  font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", sans-serif;
}
ul.pankz li {
  display: inline-block;
  font-size: 12px;
  line-height: 1;
  vertical-align: middle;
}
ul.pankz li a, ul.pankz li span {
  color: #808080;
}
ul.pankz li::before {
  color: #808080;
  padding-right: 4px;
  margin-left: 4px;
  display: inline-block;
  content: '\003e';
}
ul.pankz li:first-child::before {
  display: none;
}
@media screen and (min-width: 768px) {
  ul.pankz {
    height: 30px;
    line-height: 30px;
  }
}
@media screen and (max-width: 767px) {
  ul.pankz {
    height: 20px;
    line-height: 20px;
  }
}

div.wp-pagenavi {
  margin: 25px auto;
  text-align: center;
}
div.wp-pagenavi a, div.wp-pagenavi span {
  padding: 0 5px;
  vertical-align: middle;
}
div.wp-pagenavi a {
  text-decoration: underline;
}
div.wp-pagenavi a:hover {
  text-decoration: none;
}

@media screen and (min-width: 769px) {
  a.btnyoyaku {
    width: 50%;
    margin: 10px 0;
  }
}
@media screen and (max-width: 768px) {
  a.btnyoyaku {
    width: 226px;
    height: 50px;
    margin: 10px auto;
  }
}
