@charset "UTF-8";

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@500;900&display=swap');

*,
*::before,
*::after {
  box-sizing: border-box;
  font-variant-ligatures: none;
  -webkit-text-size-adjust: 100%;
}
body {
  font-family: 'Noto Sans JP', -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
  font-size: 100%;
  font-weight: 500;
  color: #000;
  line-height: 1.7;
  letter-spacing: 0.05em;
}
img {
  vertical-align: bottom;
  max-width: 100%;
}

/* FONT
***************************************************************/
.sans {
  font-family: 'Noto Sans JP', -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
  font-weight: 500;
}
.serif {
  font-family: 'Noto Serif JP', "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-weight: 400;
}
.roboto {
  font-family: 'Roboto Condensed', sans-serif;
  font-weight: 400;
}

/* LINK
***************************************************************/
a {
  transition: 0.3s ease;
  text-decoration: none;
  color: #000;
}
a:active,
a:focus {
    outline: none;
}
a img {
  transition: 0.3s ease;
}

/* NONE
***************************************************************/
.none {
  display: none;
}
.linkNone {
  pointer-events: none;
}
@media all and (min-width: 681px) {
  .nonePC {
    display: none !important;
  }
  .linkNonePC {
    pointer-events: none;
  }
}
@media all and (max-width:680px) {
  .noneSP {
    display: none !important;
  }
  .linkNoneSP {
    pointer-events: none;
  }
}

/* clearfix
***************************************************************/
.clearfix::after {
  content: "";
  display: block;
  clear: both;
}

/* Load Effect
***************************************************************/
@keyframes opacity {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
body {
  animation: opacity ease 1s forwards;
}

/* GoogleMap
***************************************************************/
.gm-style-pbt {
  text-align: center;
}
@media all and (max-width:680px) {
  .gm-style-pbt {
    font-size: 16px;
    padding-left: 30px;
    padding-right: 30px;
  }
}

/* lazyload
***************************************************************/

.lazyload{
 opacity: 0;
}
.lazyloaded{
  opacity: 1;
  transition: opacity ease 0.3s;
}

/* フェード
***************************************************************/

@media all and (min-width: 681px) {
  .action.up {
    opacity: 0;
    transform: translate(0, 100px);
    transition: opacity 1000ms ease .25s, transform 1000ms ease .25s;
  }
  .action.left {
    opacity: 0;
    transform: translate(-100px, 0);
    transition: opacity 1000ms ease .25s, transform 1000ms ease .25s;
  }
  .action.right {
    opacity: 0;
    transform: translate(100px, 0);
    transition: opacity 1000ms ease .25s, transform 1000ms ease .25s;
  }
  .action.up.scrollin,
  .action.left.scrollin,
  .action.right.scrollin {
    opacity: 1;
    transform: translate(0, 0);
  }
  .action.delay1 {
    transition: opacity 1000ms ease .5s, transform 1000ms ease .5s;
  }
  .action.delay2 {
    transition: opacity 1000ms ease .75s, transform 1000ms ease .75s;
  }
  .action.delay3 {
    transition: opacity 1000ms ease 1s, transform 1000ms ease 1s;
  }
}

@media all and (max-width:680px) {
  .action.up_sp {
    opacity: 0;
    transform: translate(0, 50px);
    transition: opacity 750ms ease .25s, transform 750ms ease .25s;
  }
  .action.left_sp {
    opacity: 0;
    transform: translate(-50px, 0);
    transition: opacity 750ms ease .25s, transform 750ms ease .25s;
  }
  .action.right_sp {
    opacity: 0;
    transform: translate(50px, 0);
    transition: opacity 750ms ease .25s, transform 750ms ease .25s;
  }
  .action.up_sp.scrollin,
  .action.left_sp.scrollin,
  .action.right_sp.scrollin {
    opacity: 1;
    transform: translate(0, 0);
  }
  .action.delay1_sp {
    transition: opacity 750ms ease .5s, transform 750ms ease .5s;
  }
  .action.delay2_sp {
    transition: opacity 750ms ease .75s, transform 750ms ease .75s;
  }
  .action.delay3_sp {
    transition: opacity 750ms ease 1s, transform 750ms ease 1s;
  }
}


@media all and (min-width: 681px) {
  body {
    min-width: 1000px;
  }
}


/* bg
***************************************************************/
.bg1 {
  background-color: #8CC11F;
  background-image: -webkit-gradient(linear, 0 0, 100% 100%,
    color-stop(.25, #99C838),
    color-stop(.25, transparent),
    color-stop(.50, transparent),
    color-stop(.50, #99C838),
    color-stop(.75, #99C838),
    color-stop(.75, transparent),
    to(transparent));
  -webkit-background-size: 16px 16px;
}
.bg2 {
  background-color: #EDF4D7;
  background-image: -webkit-gradient(linear, 0 0, 100% 100%,
    color-stop(.25, #fff),
    color-stop(.25, transparent),
    color-stop(.50, transparent),
    color-stop(.50, #fff),
    color-stop(.75, #fff),
    color-stop(.75, transparent),
    to(transparent));
  -webkit-background-size: 16px 16px;
}
@media all and (min-width: 681px) {
}
@media all and (max-width:680px) {
  .bg1 {
    -webkit-background-size: 8px 8px;
  }
  .bg2 {
    -webkit-background-size: 8px 8px;
  }
}
@media all and (max-width:370px) {
}


/* mvWrap
***************************************************************/
.siteID {
  width: 195.684px;
  position: absolute;
  top: 10px;
  left: 20px;
  display: block;
}
.siteID img {
  width: 100%;
  display: block;
}
.mvWrap {
  position: relative;
  padding: 70px 0 60px;
}
.mvWrap .mv {
  width: 900px;
  margin: 0 auto;
}
.mvWrap .ancher1 {
  width: 50px;
  height: 50px;
  position: absolute;
  left: 0;
  right: 0;
  bottom: -25px;
  margin: auto;
}
.mvWrap .ancher1 img {
  width: 100%;
  display: block;
  position: relative;
  top: 0;
  transition: top 0.2s ease;
}
@media all and (min-width: 681px) {
  .siteID:hover {
    opacity: 0.7;
  }
  .mvWrap .ancher1:hover img {
    top: 8px;
  }
}
@media all and (max-width:680px) {
  .siteID {
    width: 120px;
    top: 13px;
    left: 0;
    right: 0;
    margin: auto;
  }
  .mvWrap {
    padding: 50px 25px 30px;
  }
  .mvWrap .mv {
    width: 100%;
  }
  .mvWrap .ancher1 {
    width: 36px;
    height: 36px;
    bottom: -18px;
  }
}
@media all and (max-width:370px) {
}


/* pointWrap
***************************************************************/
.pointWrap {
  padding: 86px 0 106px;
}
.pointWrap .inner {
  width: 850px;
  margin: 0 auto;
}
.pointWrap .h2 {
  background-color: #003928;
  border-radius: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 24px;
  font-weight: 900;
  text-align: center;
  letter-spacing: 0.2em;
  line-height: 1.5;
  padding: 15px;
  position: relative;
}
.pointWrap .h2::after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 22px 13px 0 13px;
  border-color: #003928 transparent transparent transparent;
  position: absolute;
  bottom: -22px;
  left: 0;
  right: 0;
  margin: auto;
}
.pointWrap .item {
  background-color: #fff;
  border: 3px solid #8cc11f;
  border-radius: 20px;
  margin-top: 124px;
  position: relative;
}
.pointWrap .item::before {
  content: "";
  width: 98px;
  height: 3px;
  background-color: #fff;
  position: absolute;
  left: 0;
  right: 0;
  top: -3px;
  margin: auto;
}
.pointWrap .item .num {
  width: 33px;
  position: absolute;
  left: 0;
  right: 0;
  top: -52px;
  margin: auto;
}
.pointWrap .item .num img {
  width: 100%;
  display: block;
}
.pointWrap .item.type1 .num {
  right: 15px;
}
.pointWrap .item.type2 .num {
  width: 54px;
}
.pointWrap .item.type3 .num {
  width: 54px;
}
.pointWrap .item .h3 {
  font-size: 29px;
  font-weight: 900;
  text-align: center;
  letter-spacing: 0.1em;
  line-height: 1.62;
  color: #003928;
  padding: 48px 0 0;
}
.pointWrap .item .h3.type2 {
  display: flex;
  flex-flow: column;
  align-items: center;
}
.pointWrap .item .h3.type2 .s1 {
  position: relative;
  font-size: 38px;
  line-height: 1.3;
}
.pointWrap .item .h3.type2 .s1::before,
.pointWrap .item .h3.type2 .s1::after {
  content: "";
  width: 40px;
  height: 3px;
  background-color: #003928;
  position: absolute;
  top: 24px;
  left: -50px;
  transform: rotate(50deg);
}
.pointWrap .item .h3.type2 .s1::after {
  left: auto;
  right: -36px;
  transform: rotate(125deg);
}
.pointWrap .item .flx1 {
  display: flex;
  padding: 25px 46px 15px;
}
.pointWrap .item .flx1 .textBox {
  width: 380px;
}
.pointWrap .item .flx1 .textBox .p1 {
  font-size: 18px;
  font-weight: 500;
  text-align: justify;
  line-height: 2;
  letter-spacing: 0;
}
.pointWrap .item .flx1 .imgBox {
  width: calc(100% - 380px);
}
.pointWrap .item .flx1 .imgBox .img1 {
  width: 250px;
  margin: -6px auto 0;
}
.pointWrap .item.type1 .flx1 .imgBox .img1 {
  margin-top: -16px;
}
.pointWrap .item.type3 .flx1 .imgBox .img1 {
  width: 300px;
}
.pointWrap .item .arrow {
  width: 45px;
  position: absolute;
  left: 0;
  right: 0;
  bottom: -42px;
  margin: 0 auto;
}
.pointWrap .item .arrow img {
  width: 100%;
  display: block;
}
.pointWrap .item .textBox2 {
  padding: 40px 48px 52px;
}
.pointWrap .item .textBox2 .p2 {
  font-size: 18px;
  font-weight: 500;
  text-align: center;
  letter-spacing: 0;
  line-height: 1.36;
}
.pointWrap .item .textBox2 .img2_1 {
  width: 591px;
  margin: 18px auto 0;
}
.pointWrap .item .textBox2 .img2_1 img {
  width: 100%;
  display: block;
}
.pointWrap .item .textBox2 .img2_2 {
  width: 100%;
  margin-top: 25px;
}
.pointWrap .item .textBox2 .img2_2 img {
  width: 100%;
  display: block;
}
.pointWrap .item .textBox2 .p3 {
  font-size: 12px;
  text-align: justify;
  letter-spacing: 0;
  line-height: 1.33;
  margin-top: 25px;
}
@media all and (min-width: 681px) {
}
@media all and (max-width:680px) {
  .pointWrap {
    padding: 45px 0 58px;
  }
  .pointWrap .inner {
    width: 100%;
    padding: 0 6%;
  }
  .pointWrap .h2 {
    border-radius: 15px;
    font-size: 18px;
    letter-spacing: 0.15em;
    padding: 15px 0;
  }
  .pointWrap .h2::after {
    border-width: 18px 11px 0 11px;
    bottom: -18px;
  }
  .pointWrap .item {
    border-radius: 15px;
    margin-top: 80px;
  }
  .pointWrap .item::before {
    width: 50px;
  }
  .pointWrap .item .num {
    width: 22px;
    top: -32px;
  }
  .pointWrap .item.type1 .num {
    right: 12px;
  }
  .pointWrap .item.type2 .num {
    width: 35px;
  }
  .pointWrap .item.type3 .num {
    width: 35px;
  }
  .pointWrap .item .h3 {
    font-size: 18px;
    padding: 38px 0 0;
  }
  .pointWrap .item .h3.type2 .s1 {
    font-size: 24px;
    margin-bottom: 12px;
    padding-left: 6px;
  }
  .pointWrap .item .h3.type2 .s1::before,
  .pointWrap .item .h3.type2 .s1::after {
    width: 56px;
    top: 30px;
    left: -40px;
  }
  .pointWrap .item .h3.type2 .s1::after {
    left: auto;
    right: -38px;
  }
  .pointWrap .item .flx1 {
    display: block;
    padding: 15px;
  }
  .pointWrap .item .flx1 .textBox {
    width: 100%;
  }
  .pointWrap .item .flx1 .textBox .p1 {
    font-size: 16px;
  }
  .pointWrap .item .flx1 .imgBox {
    width: 100%;
  }
  .pointWrap .item .flx1 .imgBox .img1 {
    width: 220px;
    margin: 0 auto 0;
    padding-top: 10px;
  }
  .pointWrap .item.type1 .flx1 .imgBox .img1 {
    margin-top: 0;
  }
  .pointWrap .item.type3 .flx1 .imgBox .img1 {
    width: 100%;
    max-width: 300px;
  }
  .pointWrap .item .arrow {
    width: 30px;
    bottom: -32px;
  }
  .pointWrap .item .textBox2 {
    padding: 15px 15px 25px;
  }
  .pointWrap .item .textBox2 .p2 {
    font-size: 16px;
    text-align: justify;
  }
  .pointWrap .item .textBox2 .img2_1 {
    width: 100%;
    margin: 20px auto 0;
  }
  .pointWrap .item .textBox2 .img2_2 {
    width: 100%;
    margin-top: 15px;
  }
  .pointWrap .item .textBox2 .p3 {
    font-size: 14px;
    line-height: 2;
    margin-top: 20px;
  }
}
@media all and (max-width:370px) {
  .pointWrap .h2 {
    font-size: 16px;
  }
  .pointWrap .item .h3 {
    font-size: 16px;
  }
}


/* livingWrap
***************************************************************/
.livingWrap {
  background-color: #dcecbc;
  padding: 92px 0 82px;
}
.livingWrap .inner {
  width: 1000px;
  margin: 0 auto;
}
.livingWrap .h2 {
  font-size: 26px;
  font-weight: 900;
  text-align: center;
  letter-spacing: 0.1em;
  color: #003928;
  position: relative;
}
.livingWrap .h2::after {
  content: "";
  width: 885px;
  height: 13px;
  background-color: #fff;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
}
.livingWrap .h2 span {
  position: relative;
  z-index: 1;
}
.livingWrap .ul1 {
  margin-top: 68px;
  display: flex;
  flex-flow: wrap;
  justify-content: space-between;
}
.livingWrap .ul1 > li {
  width: 48.5%;
  background-color: #fff;
  border: 6px solid #8cc11f;
  border-radius: 20px;
  padding: 20px 45px 45px;
  display: flex;
  flex-flow: column;
}
.livingWrap .ul1 > li:nth-of-type(1n + 3) {
  margin-top: 25px;
}
.livingWrap .ul1 .imgBox {
  flex-grow: 1;
  display: flex;
  align-items: center;
  justify-content: center;
}
.livingWrap .ul1 .imgBox .img1 {
  width: 100%;
}
.livingWrap .ul1 .imgBox .img1 img {
  width: 100%;
  display: block;
}
.livingWrap .ul1 .textBox {
  padding-top: 10px;
}
.livingWrap .ul1 .textBox .h3 {
  font-size: 22px;
  font-weight: 900;
  text-align: center;
  letter-spacing: 0.1em;
  color: #003928;
}
.livingWrap .ul1 .textBox .p1 {
  font-size: 15px;
  font-weight: 500;
  text-align: justify;
  letter-spacing: 0;
  line-height: 2;
  margin-top: 5px;
}
.livingWrap .ul1 .textBox .p1.s {
  letter-spacing: -0.06em;
}
.livingWrap .sml1 {
  font-size: 12px;
  text-align: justify;
  line-height: 2;
  padding: 20px 80px 50px;
}
@media all and (min-width: 681px) {
}
@media all and (max-width:680px) {
  .livingWrap {
    padding: 45px 0 58px;
  }
  .livingWrap .inner {
    width: 100%;
    padding: 0 6%;
  }
  .livingWrap .h2 {
    font-size: 18px;
    letter-spacing: 0.05em;
    display: flex;
    flex-flow: column;
    align-items: center;
  }
  .livingWrap .h2::after {
    content: "";
    width: 100%;
    max-width: 330px;
    height: 7px;
    bottom: 2px;
  }
  .livingWrap .h2::before {
    content: "";
    width: 100%;
    max-width: 300px;
    height: 7px;
    background-color: #fff;
    position: absolute;
    bottom: 32px;
    left: 0;
    right: 0;
    margin: 0 auto;
  }
  .livingWrap .h2 span {
    position: relative;
    z-index: 1;
  }
  .livingWrap .ul1 {
    margin-top: 34px;
    display: block;
  }
  .livingWrap .ul1 > li {
    width: 100%;
    border: 3px solid #8cc11f;
    border-radius: 15px;
    padding: 20px 20px 25px;
    display: block;
  }
  .livingWrap .ul1 > li:nth-of-type(1n + 2) {
    margin-top: 25px;
  }
  .livingWrap .ul1 .imgBox {
    display: block;
  }
  .livingWrap .ul1 .textBox {
    padding-top: 15px;
  }
  .livingWrap .ul1 .textBox .h3 {
    font-size: 18px;
  }
  .livingWrap .ul1 .textBox .p1 {
    font-size: 15px;
    margin-top: 10px;
  }
  .livingWrap .ul1 .textBox .p1.s {
    letter-spacing: 0;
  }
  .livingWrap .sml1 {
    font-size: 14px;
    padding: 20px 10px 50px;
  }
}
@media all and (max-width:370px) {
  .livingWrap .h2 {
    font-size: 16px;
  }
  .livingWrap .h2::before {
    max-width: 250px;
    bottom: 29px;
  }
  .livingWrap .ul1 .textBox .h3 {
    font-size: 15px;
  }
  .livingWrap .ul1 .textBox .p1 {
    font-size: 13px;
  }
}


/* pickupImg
***************************************************************/
.pickupImg {
  width: 710px;
  margin: 0 auto;
  padding: 100px 0;
}
.pickupImg img {
  width: 100%;
  display: block;
}
@media all and (min-width: 681px) {
}
@media all and (max-width:680px) {
  .pickupImg {
    width: 100%;
    padding: 50px 6% 36px;
  }
}
@media all and (max-width:370px) {
}


/* floorWrap
***************************************************************/
.floorWrap .h3 {
  width: 1000px;
  margin: 0 auto;
  background-color: #8cc11f;
  border-radius: 20px 20px 0 0;
  color: #fff;
  font-size: 28px;
  font-weight: 900;
  text-align: center;
  letter-spacing: 0.1em;
  padding: 23px 0;
}
.floorWrap .inner {
  width: 1000px;
  margin: 0 auto;
  padding: 90px 0 100px;
  background-color: #fff;
  border-left: 4px solid #8cc11f;
  border-right: 4px solid #8cc11f;
  border-bottom: 4px solid #8cc11f;
  border-radius: 0 0 20px 20px;
}
.floorWrap .floorImg1 {
  width: 802px;
  margin: 0 auto;
}
.floorWrap .floorImg2 {
  width: 540px;
  margin: 0 0 0 125px;
}
.floorWrap .floorImg1,
.floorWrap .floorImg2 {
  display: block;
}
.floorWrap .floorPoint {
  width: 855px;
  margin: 0 auto;
  padding: 90px 0 100px;
}
.floorWrap .floorPoint .h4 {
  width: 356px;
  margin: 0 auto;
}
.floorWrap .floorPoint .h4 img {
  width: 100%;
  display: block;
}
.floorList1 {
  width: 100%;
  display: flex;
  flex-flow: wrap;
  justify-content: space-between;
  padding: 44px 0 0;
}
.floorList1::after {
  content: "";
  width: 258px;
}
.floorItem {
  width: 258px;
}
.floorList1 .floorItem:nth-of-type(1n + 4) {
  margin-top: 40px;
}
.floorItem .title1 {
  width: 100%;
  display: flex;
  align-items: center;
  padding: 18px 0 16px;
  background-image: url(../img/common/border2.svg);
  background-position: center bottom;
  background-repeat: repeat-x;
  background-size: contain;
}
.floorItem .title1 .num {
  width: 29px;
  height: 29px;
  background-color: #003928;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  font-weight: 900;
  text-align: center;
  letter-spacing: 0;
}
.floorItem .title1 .tit {
  flex-grow: 1;
  font-size: 18px;
  font-weight: 900;
  line-height: 1.33;
  color: #003928;
  padding-left: 12px;
}
.floorItem .title1 .tit.ls0 {
  letter-spacing: 0;
}
.floorItem .title1 .ico {
  width: 52px;
  height: 52px;
}
.floorItem .title1 .ico.type2 {
  width: 90px;
}
.floorItem .text1 {
  font-size: 15px;
  font-weight: 500;
  text-align: justify;
  letter-spacing: 0;
  line-height: 2;
  margin-top: 12px;
}
@media all and (min-width: 681px) {
  .floorWrap.type2 .floorImg2 {
    width: 627px;
    margin: 0 0 0 128px;
  }
  .floorItem {
    display: block!important;
  }
}
@media all and (max-width:680px) {
  .floorWrap .h3 {
    width: 94%;
    border-radius: 15px 15px 0 0;
    font-size: 20px;
    letter-spacing: 0.05em;
    line-height: 1.4;
    padding: 15px 0;
  }
  .floorWrap .inner {
    width: 94%;
    padding: 25px 20px 35px;
    border-left: 3px solid #8cc11f;
    border-right: 3px solid #8cc11f;
    border-bottom: 3px solid #8cc11f;
    border-radius: 0 0 15px 15px;
  }
  .floorWrap .floorImg1 {
    width: 100%;
  }
  .floorWrap .floorImg2 {
    width: 100%;
    margin: 20px 0 0;
  }
  .floorWrap .floorPoint {
    width: 100%;
    padding: 30px 0 45px;
  }
  .floorWrap .floorPoint .h4 {
    width: 245px;
  }
  .floorWrap .floorPoint .caption1 {
    font-size: 16px;
    font-weight: 500;
    text-align: center;
    letter-spacing: 0;
    margin-top: 8px;
    padding-left: 10px;
  }
  .floorPoint .modalList {
    width: 100%;
    display: flex;
    flex-flow: wrap;
    justify-content: space-between;
    padding: 20px 0 0;
  }
  .floorPoint .modalList::after {
    content: "";
    width: 31%;
  }
  .floorPoint .modalList .modalItem {
    width: 31%;
  }
  .floorPoint .modalList .modalItem:nth-of-type(1n + 4) {
    margin-top: 15px;
  }
  .floorPoint .modalList .modalItem a {
    width: 100%;
    height: 50px;
    display: block;
    position: relative;
    border: 2px solid #003928;
    border-radius: 6px;
    background-image: url(../img/common/noimage.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
  }
  .floorPoint .modalList .modalItem .num {
    width: 22px;
    height: 22px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #003928;
    color: #fff;
    font-size: 16px;
    font-weight: 900;
    text-align: center;
    position: absolute;
    top: -5px;
    left: -5px;
  }
  .floorItem {
    width: 90%;
    padding: 0;
  }
  .floorItem .spTitle {
    width: 204px;
    margin: 0 auto;
    padding: 22px 0 20px;
  }
  .floorItem .spTitle img {
    width: 100%;
    display: block;
  }
  .floorItem .title1 {
    width: 88%;
    margin: 0 auto;
    padding: 18px 0 16px;
  }
  .floorItem .text1 {
    font-size: 16px;
    width: 88%;
    margin: 12px auto 0;
    padding: 0 0 20px;
  }
  .fancybox-navigation .fancybox-button div {
    background-color: #003928;
  }
  .fancybox-navigation .fancybox-button div svg {
    color: #fff;
  }
  .fancybox-button {
    width: 54px;
    height: 54px;
  }
}
@media all and (max-width:370px) {
  .floorWrap .h3 {
    font-size: 18px;
  }
  .floorItem .spTitle {
    width: 180px;
  }
  .floorItem .title1 .tit {
    font-size: 16px;
  }
  .floorItem .text1 {
    font-size: 14px;
  }
}


/* systemWrap
***************************************************************/
.systemWrap {
  background-color: #8cc11f;
  padding: 125px 0 130px;
}
.systemWrap .inner {
  width: 1000px;
  margin: 0 auto;
}
.systemWrap .h2 {
  width: 850px;
  margin: 0 auto 120px;
  background-color: #fff;
  border-radius: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #003928;
  font-size: 24px;
  font-weight: 900;
  text-align: center;
  letter-spacing: 0.2em;
  line-height: 1.5;
  padding: 15px;
  position: relative;
}
.systemWrap .h2::after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 22px 13px 0 13px;
  border-color: #fff transparent transparent transparent;
  position: absolute;
  bottom: -22px;
  left: 0;
  right: 0;
  margin: auto;
}
.systemWrap .item {
  width: 100%;
  background-color: #fff;
  position: relative;
  padding-top: 16px;
}
.systemWrap .item + .item {
  margin-top: 70px;
}
.systemWrap .item .h3 {
  width: 950px;
  background-color: #003928;
  border-radius: 100px;
  font-size: 24px;
  text-align: center;
  letter-spacing: 0.1em;
  color: #e2e200;
  padding: 4px 0;
  position: absolute;
  left: 0;
  right: 0;
  top: -32px;
  margin: auto;
}
.systemWrap .item .h3 .s1 {
  position: relative;
  padding: 0 105px;
}
.systemWrap .item .h3 .s1::before {
  content: "";
  width: 68px;
  height: 68px;
  background-image: url(../img/common/ico_eco.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}
/* item1 */
.systemWrap .item1 .town1 {
  width: 980px;
  margin: 5px auto 0;
}
.systemWrap .item1 .town_ul1 {
  width: 900px;
  margin: 0 auto;
  padding-top: 10px;
  display: flex;
  justify-content: space-between;
}
.systemWrap .item1 .town_ul1 > li {
  width: 210px;
}
.systemWrap .item1 .town_ul1 .town_title1 {
  font-size: 18px;
  font-weight: 900;
  color: #003928;
}
.systemWrap .item1 .town_ul1 .town_text1 {
  font-size: 15px;
  font-weight: 500;
  text-align: justify;
  letter-spacing: -0.01em;
  margin-top: 5px;
}
.systemWrap .item1 .town_clean {
  width: 860px;
  margin: 0 auto;
  display: flex;
  padding: 45px 0 52px;
}
.systemWrap .item1 .clean_thumb {
  width: 293px;
  height: 114px;
  background-image: url(../img/common/img5_2.jpg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
.systemWrap .item1 .clean_textBox {
  width: calc(100% - 293px);
  background-color: #fcf3e6;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 15px;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 2;
}
.systemWrap .item1 .clean_textBox .orange {
  color: #e85513;
}
/* item2 */
.systemWrap .item2 .eco_ul1 {
  width: 910px;
  margin: 0 auto;
  padding: 30px 0 45px;
  display: flex;
  justify-content: space-between;
}
.systemWrap .item2 .eco_ul1 > li {
  width: 300px;
  padding: 0 20px;
}
.systemWrap .item2 .eco_ul1 > li + li {
  border-left: 2px dotted #003928;
}
.systemWrap .item2 .eco_ul1 .eco_h4 {
  width: 220px;
  margin: 0 auto;
  font-size: 16px;
  font-weight: 900;
  letter-spacing: 0.1em;
  text-align: center;
  line-height: 1.5;
  color: #003928;
  padding-bottom: 4px;
  background-image: url(../img/common/border2.svg);
  background-position: center bottom;
  background-repeat: repeat-x;
  background-size: contain;
}
.systemWrap .item2 .eco_ul1 .eco_h4 .s2 {
  display: block;
  font-size: 24px;
}
.systemWrap .item2 .eco_ul1 .eco_p1 {
  font-size: 15px;
  text-align: center;
  letter-spacing: 0;
  line-height: 1.5;
  padding: 6px 0 0;
}
.systemWrap .item2 .eco_ul1 .eco_img1 {
  margin-top: 15px;
}
.systemWrap .item2 .eco_ul1 .eco_p2 {
  font-size: 14px;
  text-align: center;
  letter-spacing: 0;
  line-height: 1.5;
  padding: 6px 0 0;
}
/* item3 */
.systemWrap .item3 .h3 {
  color: #fff;
}
.systemWrap .item3 .h3 .s1::before {
  background-image: url(../img/common/ico_otoku.svg);
}
.systemWrap .item .p1 {
  font-size: 15px;
  font-weight: 500;
  text-align: center;
  letter-spacing: 0;
  margin: 22px 0 0;
}
.systemWrap .item3 .supportImg {
  width: 100%;
}
.systemWrap .item3 .supportImg img {
  width: 100%;
  display: block;
}
.systemWrap .item3 .p2 {
  font-size: 15px;
  font-weight: 500;
  text-align: center;
  letter-spacing: 0;
  padding: 35px 0 25px;
}
.systemWrap .item3 .p3 {
  font-size: 15px;
  font-weight: 500;
  text-align: center;
  letter-spacing: 0;
  padding: 35px 0;
}
.systemWrap .convertionBox1 {
  margin-top: 140px;
}
@media all and (min-width: 681px) {
}
@media all and (max-width:680px) {
  .systemWrap {
    padding: 38px 0 58px;
  }
  .systemWrap .inner {
    width: 100%;
  }
  .systemWrap .h2 {
    width: 88%;
    margin: 0 auto 90px;
    border-radius: 15px;
    font-size: 18px;
    letter-spacing: 0.15em;
    padding: 15px 0;
  }
  .systemWrap .h2::after {
    border-width: 18px 11px 0 11px;
    bottom: -18px;
  }
  .systemWrap .item {
    width: 94%;
    margin: 0 auto;
    padding-top: 31px;
  }
  .systemWrap .item + .item {
    margin-top: 70px;
  }
  .systemWrap .item .h3 {
    width: 88%;
    min-height: 64px;
    display: flex;
    flex-flow: column;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    font-size: 16px;
    letter-spacing: 0.025em;
    line-height: 1.42;
    padding: 10px 0;
    position: absolute;
    left: 0;
    right: 0;
    top: -32px;
    margin: auto;
  }
  .systemWrap .item .h3 .s1 {
    padding: 0 0 0 52px;
    display: inline-block;
  }
  .systemWrap .item .h3 .s1::before {
    width: 47px;
    height: 47px;
  }
  .systemWrap .item .p1 {
    font-size: 14px;
    text-align: justify;
    margin: 15px auto 0;
    width: 88%;
  }
  /* item1 */
  .systemWrap .item1 .town1 {
    width: 980px;
    margin: 5px auto 0;
  }
  .systemWrap .item1 .town_ul1 {
    width: 88%;
    padding-top: 15px;
    display: block;
  }
  .systemWrap .item1 .town_ul1 > li {
    width: 100%;
  }
  .systemWrap .item1 .town_ul1 > li + li {
    margin-top: 25px;
  }
  .systemWrap .item1 .town_ul1 .town_title1 {
    font-size: 18px;
    text-align: center;
    margin-top: 5px;
  }
  .systemWrap .item1 .town_ul1 .town_text1 {
    font-size: 15px;
    letter-spacing: 0;
    margin-top: 10px;
  }
  .systemWrap .item1 .town_clean {
    width: 88%;
    display: block;
    padding: 45px 0 30px;
  }
  .systemWrap .item1 .clean_thumb {
    width: 100%;
    height: 36vw;
  }
  .systemWrap .item1 .clean_textBox {
    width: 100%;
    display: block;
    padding: 15px;
  }
  /* item2 */
  .systemWrap .item2 .eco_ul1 {
    width: 88%;
    padding: 20px 0 40px;
    display: block;
  }
  .systemWrap .item2 .eco_ul1 > li {
    width: 100%;
    padding: 0;
  }
  .systemWrap .item2 .eco_ul1 > li + li {
    border-left: none;
    margin-top: 40px;
  }
  .systemWrap .item2 .eco_ul1 .eco_h4 {
    width: 100%;
    padding-bottom: 15px;
    background-image: url(../img/common/border3.svg);
  }
  .systemWrap .item2 .eco_ul1 .eco_p1 {
    padding: 14px 0 0;
    text-align: justify;
  }
  .systemWrap .item2 .eco_ul1 .eco_img1 {
    margin: 15px auto 0;
  }
  .systemWrap .item2 .eco_ul1 .eco_p2 {
    text-align: justify;
  }
  /* item3 */
  .systemWrap .item3 .p2 {
    font-size: 14px;
    text-align: justify;
    margin: 15px auto 0;
    width: 88%;
    padding: 0 0 20px;
  }
  .systemWrap .item3 .p3 {
    font-size: 14px;
    text-align: justify;
    margin: 0 auto;
    width: 88%;
    padding: 20px 0 20px;
  }
  .systemWrap .convertionBox1 {
    margin-top: 50px;
    padding: 0 6%;
  }
}
@media all and (max-width:370px) {
  .systemWrap .h2 {
    font-size: 16px;
  }
  .systemWrap .item .h3 {
    font-size: 14px;
    letter-spacing: 0;
  }
  .systemWrap .item1 .clean_textBox {
    font-size: 14px;
  }
}


/* moreWrap
***************************************************************/
.moreWrap {
  padding: 156px 0 120px;
}
.moreWrap .h3 {
  width: 398px;
  margin: 0 auto;
  padding-bottom: 43px;
}
.moreWrap .moreItem {
  width: 1000px;
  margin: 0 auto;
  padding: 40px 70px;
  border-radius: 12px;
  background-color: #FBDED3;
}
.moreWrap .moreItem.type2 {
  background-color: #E0F1EA;
}
.moreWrap .moreItem + .moreItem {
  margin-top: 35px;
}
.moreWrap .moreItem .h4 {
  font-size: 28px;
  font-weight: 900;
  text-align: center;
  letter-spacing: 0.1em;
  line-height: 1.62;
  color: #003928;
}
.moreWrap .moreItem .ul1 {
  display: flex;
  justify-content: space-between;
  padding-top: 40px;
}
.moreWrap .moreItem .ul1 > li {
  width: 258px;
  position: relative;
}
.moreWrap .moreItem .ul1 .img1 {
  width: 100%;
  position: relative;
}
.moreWrap .moreItem .ul1 .img1 .ico1 {
  width: 78px;
  height: 78px;
  position: absolute;
  top: -20px;
  left: -20px;
}
.moreWrap .moreItem .ul1 .img1 .ico1 img {
  width: 100%;
  display: block;
}
.moreWrap .moreItem .ul1 .h5 {
  font-size: 18px;
  font-weight: 900;
  letter-spacing: 0.1em;
  color: #003928;
  margin-top: 25px;
}
.moreWrap .moreItem .ul1 .p1 {
  font-size: 15px;
  font-weight: 500;
  text-align: justify;
  letter-spacing: 0;
  line-height: 2;
  margin-top: 8px;
  padding-top: 14px;
  background-image: url(../img/common/border1.svg);
  background-position: center top;
  background-repeat: repeat-x;
  background-size: contain;
}
.moreWrap .convertionBox1 {
  margin-top: 107px;
}
@media all and (min-width: 681px) {
}
@media all and (max-width:680px) {
  .moreWrap {
    padding: 70px 0 58px;
  }
  .moreWrap .h3 {
    width: 75%;
    padding-bottom: 25px;
  }
  .moreWrap .moreItem {
    width: 88%;
    margin: 0 auto;
    padding: 25px 20px 35px;
    border-radius: 10px;
  }
  .moreWrap .moreItem + .moreItem {
    margin-top: 30px;
  }
  .moreWrap .moreItem .h4 {
    font-size: 18px;
  }
  .moreWrap .moreItem .ul1 {
    display: block;
    padding-top: 30px;
  }
  .moreWrap .moreItem .ul1 > li {
    width: 100%;
  }
  .moreWrap .moreItem .ul1 > li + li {
    margin-top: 35px;
  }
  .moreWrap .moreItem .ul1 .img1 .ico1 {
    width: 60px;
    height: 60px;
    top: -15px;
    left: -15px;
  }
  .moreWrap .moreItem .ul1 .h5 {
    font-size: 16px;
    margin-top: 10px;
  }
  .moreWrap .moreItem .ul1 .p1 {
    font-size: 14px;
    background-image: url(../img/common/border3.svg);
  }
  .moreWrap .convertionBox1 {
    margin-top: 50px;
    padding: 0 6%;
  }
}
@media all and (max-width:370px) {
  .moreWrap .moreItem .h4 {
    font-size: 16px;
  }
}


/* convertionBox1
***************************************************************/
.convertionBox1 {
  width: 724px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}
.convertionBox1 .link1 {
  display: block;
  position: relative;
  width: 345px;
  border: 3px solid #fff;
  border-radius: 100px;
  background-color: #003928;
  color: #fff;
  font-size: 24px;
  font-weight: 900;
  text-align: center;
  letter-spacing: 0.1em;
  padding: 30px 50px 30px 40px;
}
.convertionBox1 .link1::after {
  content: "";
  width: 25px;
  height: 15px;
  background-image: url(../img/common/ico_arrow1_w.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 4px;
  bottom: 0;
  right: 22px;
  margin: auto;
  transition: right 0.3s ease;
}
@media all and (min-width: 681px) {
  .convertionBox1 .link1:hover {
    background-color: #e69500;
  }
  .convertionBox1 .link1:hover::after {
    right: 16px;
  }
}
@media all and (max-width:680px) {
  .convertionBox1 {
    width: 100%;
    padding: 0;
    display: block;
  }
  .convertionBox1 .link1 {
    width: 100%;
    font-size: 17px;
    padding: 20px 50px;
  }
  .convertionBox1 .link1 + .link1 {
    margin-top: 15px;
  }
  .convertionBox1 .link1::after {
    width: 22px;
    height: 13px;
    top: 2px;
    right: 20px;
  }
}
@media all and (max-width:370px) {
  .convertionBox1 .link1 {
    font-size: 15px;
  }
}


/* footer
***************************************************************/
.foot {
  padding: 34px 0 14px;
  background-color: #e2e2e2;
}
.foot .fBox1 {
  width: 1000px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.foot .fBox1 .footID {
  width: 278.698px;
  display: block;
}
.foot .fBox1 .footID img {
  width: 100%;
  display: block;
}
.foot .fBox1 .telBox {
  width: 300px;
}
.foot .fBox1 .telBox .f_address {
  font-size: 14px;
  line-height: 1.57;
  letter-spacing: 0;
}
.foot .fBox1 .telBox .f_tel {
  font-size: 38px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0;
  padding-left: 30px;
  position: relative;
  display: block;
}
.foot .fBox1 .telBox .f_tel::before {
  content: "";
  width: 16.253px;
  height: 29.976px;
  position: absolute;
  top: 4px;
  bottom: 0;
  left: 0;
  margin: auto;
  background-image: url(../img/common/ico_tel1.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}
.foot .fBox1 .serchLink {
  width: 344px;
  height: 84px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #003a29;
  color: #fff;
  border-radius: 20px;
}
.foot .fBox1 .serchLink .s1 {
  font-size: 16px;
  font-weight: 700;
  text-align: center;
  letter-spacing: 0.1em;
  position: relative;
  padding-right: 26px;
  padding-left: 22px;
}
.foot .fBox1 .serchLink .s1::after {
  content: "";
  width: 19.169px;
  height: 19.17px;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  background-image: url(../img/common/ico_serch1_w.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}
.foot .fList1 {
  width: 640px;
  margin: 30px auto 0;
  display: flex;
  justify-content: space-between;
}
.foot .fList1 > li a {
  font-size: 14px;
  letter-spacing: 0;
}
.foot .cRight {
  font-size: 12px;
  text-align: center;
  letter-spacing: 0;
  margin-top: 15px;
}
@media all and (min-width: 681px) {
  .foot .fBox1 .footID:hover {
    opacity: 0.7;
  }
  .foot .fBox1 .serchLink:hover {
    background-color: #e69500;
  }
  .foot .fList1 > li a:hover {
    text-decoration: underline;
  }
}
@media all and (max-width:680px) {
  .foot {
    padding: 30px 0 14px;
  }
  .foot .fBox1 {
    width: 100%;
    flex-flow: column;
  }
  .foot .fBox1 .footID {
    width: 220px;
    margin: 0 auto;
  }
  .foot .fBox1 .telBox {
    width: auto;
    margin-top: 15px;
  }
  .foot .fBox1 .telBox .f_address {
    font-size: 14px;
    line-height: 1.57;
    letter-spacing: 0;
  }
  .foot .fBox1 .telBox .f_tel {
    font-size: 34px;
    padding-left: 26px;
    margin-top: 5px;
  }
  .foot .fBox1 .serchLink {
    width: 280px;
    height: 60px;
    border-radius: 15px;
    margin-top: 10px;
  }
  .foot .fBox1 .serchLink .s1 {
    font-size: 15px;
    padding-right: 26px;
    padding-left: 22px;
  }
  .foot .fBox1 .serchLink .s1::after {
    content: "";
    width: 19.169px;
    height: 19.17px;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    background-image: url(../img/common/ico_serch1_w.svg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
  }
  .foot .fList1 {
    width: 100%;
    margin: 20px auto 0;
    flex-flow: column;
    align-items: center;
  }
  .foot .fList1 > li a {
    padding: 5px 0;
  }
  .foot .cRight {
    font-size: 10px;
    margin-top: 20px;
  }
}
@media all and (max-width:370px) {
}


/* aaa
***************************************************************/
@media all and (min-width: 681px) {
}
@media all and (max-width:680px) {
}
@media all and (max-width:370px) {
}
