@charset "utf-8";
@import url(https://use.fontawesome.com/releases/v5.12.0/css/all.css);
html {
  font-size: 62.5%;
  scroll-behavior: smooth;
  scroll-padding-top: 128px;
}
a {
  text-decoration: none;
  color: inherit;
}
a:hover {
  opacity: 0.8;
  text-decoration: none;
}
i {
  margin-right: 5px;
}
img, iframe {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}
p {
  text-align: justify;
  line-height: 2;
}
.flex {
  display: flex;
}
body {
  background-color: #fff;
  color: #646464;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.2rem;
  font-family: 'Noto Sans JP', sans-serif, -apple-system, BlinkMacSystemFont, "游ゴシック体", YuGothic, "Yu Gothic M", "游ゴシック Medium", "Yu Gothic Medium", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN W3", HiraKakuProN-W3, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "Helvetica Neue", HelveticaNeue, Helvetica, Arial, "Segoe UI", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
}
h1, h2, h3, h4, h5, h6 {
  letter-spacing: 0;
}
.pc {
  display: block;
}
.sp {
  display: none;
}
.kiwi {
  font-family: 'Kiwi Maru', serif;
  font-weight: bold;
}
.bold {
  font-weight: 700;
}
.wh {
  color: #fff;
}
.gr {
  color: #0e7a40;
}
.container {
  max-width: 998px;
  margin: 0 auto;
}
article img {
  display: block;
  margin: 0 auto;
  max-width: 100%;
  height: auto;
}
/* iOSでのデフォルトスタイルをリセット */
input[type="submit"], input[type="button"] {
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration, input[type="button"]::-webkit-search-decoration {
  display: none;
}
input[type="submit"]::focus, input[type="button"]::focus {
  outline-offset: -2px;
}
input, button, textarea, select, .entry input[type="url"], input[type="email"], .entry input[type="text"] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border-radius: 0;
  border: solid 1px #999;
  padding: 15px 0;
}
/* ------------------drawer------------------ */
.drawer--right .drawer-nav {
  width: 100%;
  right: -100%;
  z-index: 500;
  margin-top: 0;
  background: #f1f2f2;
  padding: 30px 4% 100px;
  height: 100%;
}
.drawer-menu {
  height: 100%;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  overflow-x: auto !important;
  overflow-y: scroll !important;
}
.drawer-hamburger, .drawer-hamburger:hover {
  width: 3rem;
  padding: 18px 1.3rem 25px;
  z-index: 9999;
}
.drawer--right.drawer-open .drawer-hamburger {
  right: 0;
}
.drawer-hamburger-icon, .drawer-hamburger-icon:after, .drawer-hamburger-icon:before {
  background: #007f41;
}
.drawer--right .drawer-nav h1 img {
  width: 177px;
  margin-bottom: 30px;
}
.drawer--right .drawer-nav li a {
  color: #646464;
  font-size: 1.4rem;
  letter-spacing: 0.25em;
  font-weight: 500;
  border-bottom: 1px solid;
  text-decoration: none;
  display: block;
}
.drawer--right .drawer-nav li.cotoyado a, .drawer--right .drawer-nav li.flex a {
  color: #fff;
}
.drawerlogo {
  text-align: center;
}
.drawer-nav .headermenu {
  justify-content: center;
  margin-right: 0;
}
.drawer--right.drawer-open .drawer-nav {
  right: 0;
}
.drawer--right .drawer-hamburger, .drawer--right.drawer-open .drawer-navbar .drawer-hamburger {
  right: 15px;
  top: 15px;
}
.drawer-menu .flex {
  margin-top: 20px;
  justify-content: center;
}
.drawer-menu .flex a:first-child {
  margin-right: 20px;
}
.drawer-menu .flex a {
  border: 1px solid;
  padding: 10px;
  background: #4c4948;
}
.headmenu {
  margin-top: 10px;
}
.menu__item {
  background: #4c4948;
  color: #fff;
  cursor: pointer;
  display: block;
  margin-bottom: 1px;
  position: relative;
}
.menu__item a {
  color: #fff;
}
.menu__item__link {
  color: #fff;
  display: block;
  padding: 1rem;
}
.submenu {
  background: #fff;
  display: none;
}
.submenu__item {
  color: #222;
  padding: 1rem;
}
.drawer--right .drawer-nav .headmenu .menu__item__link.js-menu__item__link {
  color: #fff;
  display: flex;
  justify-content: space-between;
  padding: 10px;
}
.menu__item i {
  margin-left: 10%;
  transform: rotate(90deg);
}
/* ------------------header------------------ */
header {
  position: fixed;
  width: 100%;
  height: 78px;
  top: 0;
  left: 0;
  z-index: 8888;
  background: #fff;
}
.hdr_inner {
  justify-content: space-between;
  align-items: center;
  padding: 15px 30px;
}
.hdr_inner ul li:not(:last-child) {
  margin-right: 35px;
}
.hdr_inner ul li a {
  font-size: 1.4rem;
  font-weight: bold;
  color: #231815;
}
.hdr-sub-Menu {
  position: fixed;
  right: 0;
  height: 50px;
  z-index: 8000;
  top: 78px;
}
.hdr-sub-Menu ul li {
  background: #688f65;
  height: 50px;
  line-height: 50px;
  flex: 1;
  width: 160px;
}
.hdr-sub-Menu ul li:nth-child(odd) {
  background: #1b7344;
}
.hdr-sub-Menu ul li a {
  display: block;
  color: #fff;
  text-align: center;
  font-size: 1.4rem;
  font-weight: bold;
}
/*under-page*/
.under-hdr-sub-Menu {
  color: #fff;
  background: #4c4948;
  height: 50px;
  line-height: 50px;
}
.under-hdr-sub-Menu ul {
  align-items: center;
}
.under-hdr-sub-Menu ul li:nth-child(1) {
  margin-left: 2.5%;
}
.under-hdr-sub-Menu ul li:nth-child(2) {
  margin-left: auto;
}
.under-hdr-sub-Menu ul li:not(:last-child) {
  margin-right: 35px;
}
.under-hdr-sub-Menu ul li:nth-child(9), .under-hdr-sub-Menu ul li:nth-child(10) {
  width: 160px;
}
.under-hdr-sub-Menu ul li:nth-child(9) {
  background: #898989;
  margin-right: 0;
}
.under-hdr-sub-Menu ul li:nth-child(10) {
  background: #727171;
}
.under-hdr-sub-Menu ul li a {
  display: flex;
  font-size: 1.4rem;
  font-weight: bold;
  align-items: center;
  justify-content: center;
}
/* ------------------footter------------------ */
footer {
  background: #7fb87e;
  padding: 50px 0 30px;
  position: relative;
  z-index: 1;
}
footer::before {
  content: "";
  background-image: url("../images/common/footer-pattern.svg");
  background-repeat: no-repeat;
  background-position: center top;
  background-size: cover;
  height: 395px;
  position: absolute;
  width: 100%;
  top: -6%;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
}
footer > * {
  color: #fff;
}
footer address {
  font-size: 1.2rem;
  text-align: center;
  margin-top: 160px;
}
footer p.copy {
  text-align: center;
}
footer p.copy small {
  font-size: 1rem;
}
footer .col {
  width: 30%;
  margin-right: 4.5%;
  flex: 1;
}
footer .col:first-child {
  flex: 1.5;
}
footer .col:last-child {
  margin-right: 0;
}
footer .col .company-name {
  font-size: 2.2rem;
  font-weight: bold;
  margin-bottom: 30px;
  text-align: left;
  line-height: 1.6;
}
footer .col .company-name + p {
  font-size: 1.4rem;
  margin-bottom: 25px;
}
footer p.linkBT-round {
  background: #fff;
  height: 50px;
  line-height: 50px;
  border-radius: 30px;
  margin-bottom: 10px;
  width: 63%;
}
footer p.linkBT-round a {
  display: block;
  text-align: center;
  color: #7fb87e;
  font-size: 1.8rem;
}
footer .sns {
  width: 63%;
  margin-top: 25px;
  align-items: center;
}
footer .sns p {
  line-height: 1;
}
footer .sns p:not(:first-child) {
  font-size: 2.2rem;
}
footer .sns p:nth-child(1) {
  letter-spacing: 0.5rem;
}
footer .sns p:nth-child(2) {
  margin-left: auto;
}
footer .sns p:nth-child(2), footer .sns p:nth-child(3), footer .sns p:nth-child(4) {
  margin-right: 10px;
}
footer .col h3 {
  position: relative;
  font-size: 1.8rem;
  font-weight: bold;
  border-bottom: solid 1px;
  margin-bottom: 25px;
  padding-bottom: 5px;
}
footer .col h3::after {
  content: "\02192";
  display: inline-block;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 0;
}
footer .col ul {
  margin-left: 1em;
  margin-bottom: 40px;
}
footer .col ul li {
  list-style-type: disc;
  line-height: 2;
}
/* ------------------cotoyado------------------ */
.bottom-cotoyado-Area {
  background: #4c4948;
  padding: 50px 0 70px;
}
.bottom-cotoyado-Area p.free-price {
  color: #f39800;
  margin-bottom: 45px;
  font-size: 1.6rem;
}
.bottom-cotoyado-Area p.free-price + .flex {
  margin-bottom: 75px;
  justify-content: space-between;
}
.bottom-cotoyado-Area .col > * {
  color: #fff;
}
.bottom-cotoyado-Area .col h2 {
  font-size: 3.1rem;
  letter-spacing: 0.8rem;
  line-height: 1.2;
  margin-bottom: 40px;
}
.bottom-cotoyado-Area .col h2 span {
  font-size: 1.9rem;
  letter-spacing: 0.4rem;
}
.bottom-cotoyado-Area .col address {
  font-size: 1.4rem;
  line-height: 2;
}
.bottom-cotoyado-Area p.operation {
  color: #fff;
  margin-bottom: 75px;
  font-size: 1.4rem;
  text-align: center;
}
.bottom-cotoyado-Area .col:last-child {
  width: 25%;
}
.bottom-cotoyado-Area p.tel {
  font-size: 3.6rem;
  margin-top: -20px;
}
.bottom-cotoyado-Area p.tel img {
  margin-right: 10px;
  position: relative;
  top: -20px;
}
.bottom-cotoyado-Area p.time {
  font-size: 1.6rem;
  line-height: 1.6;
}
.bottom-cotoyado-Area p.time span {
  font-size: 1.4rem;
  margin-left: -0.5em;
}
.bottom-cotoyado-Area p.contact-link a {
  font-size: 2.1rem;
  margin-top: 25px;
}
.bottom-cotoyado-Area ul li {
  padding-bottom: 5px;
  border-bottom: solid 1px;
  margin-bottom: 10px;
  position: relative;
}
.bottom-cotoyado-Area ul li::after {
  content: "\02192";
  display: inline-block;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 0;
}
.bottom-cotoyado-Area ul li a {
  font-size: 1.3rem;
}
.bottom-cotoyado-Area .sns {
  align-items: center;
}
.bottom-cotoyado-Area .sns p {
  line-height: 1;
}
.bottom-cotoyado-Area .sns p:not(:first-child) {
  font-size: 2.2rem;
}
.bottom-cotoyado-Area .sns p:nth-child(1) {
  letter-spacing: 0.5rem;
  font-size: 1.3rem;
}
.bottom-cotoyado-Area .sns p:nth-child(2) {
  margin-left: auto;
}
.bottom-cotoyado-Area .sns p:nth-child(2), .bottom-cotoyado-Area .sns p:nth-child(3), .bottom-cotoyado-Area .sns p:nth-child(4) {
  margin-right: 10px;
}
@media screen and (max-width:1366px) {}
@media screen and (max-width:1240px) {
  .container {
    width: 100%;
  }
}
@media screen and (max-width:768px) {}
@media screen and (max-width:1024px) {}
@media screen and (max-width:959px) {
  .pc {
    display: none;
  }
  .sp {
    display: none;
  }
}
@media screen and (max-width:559px) {
  .pc {
    display: none;
  }
  .sp {
    display: block;
  }
  img {
    width: auto;
    max-width: 100%;
    height: auto;
  }
}
@media screen and (max-width:375px) {}
@media screen and (max-width:351px) {}