body {
  font-family: "Zen Maru Gothic", sans-serif;
  max-width: 100%;
  overflow-x: hidden;
  font-weight: 400;
}

body.navOn {
  overflow: hidden;
  width: 100%;
  height: 100%;
}

body * {
  letter-spacing: 0.04em;
  line-height: 1.7;
}

#mainContent {
  max-width: 100%;
  overflow-x: hidden;
}

a {
  color: #3E3A39;
}
.commonWidth {
  margin: 0 auto;
}

.inWidth {
  margin: 0 auto;
}

.noLink {
  opacity: 0.5;
  pointer-events: none;
  cursor: inherit;
}

.contentArea {
  padding-top: 250px;
}

.fMedium {
  line-height: 180%;
  letter-spacing: 0.1em;
}

@media only screen and (max-width: 767px) {
  .commonWidth {
    width: min(88vw, 390px);
  }
  .commonWidthSp {
    width: min(88vw, 390px);
    margin: 0 auto;
  }
  .contentArea {
    padding-top: 80px;
  }
}
@media print, screen and (min-width: 768px) {
  .commonWidth {
    width: min(92vw, 1140px);
  }
  .commonWidthPc {
    width: min(92vw, 1140px);
    margin: 0 auto;
  }
  .contentArea {
    min-height: calc(100vh - 200px - 100px);
    padding-top: 250px;
  }
}
.secCommonHeader .headerIn {
  display: flex;
  align-items: center;
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 clamp(20px, 2.8vw, 40px);
  box-sizing: border-box;
}
.secCommonHeader .headerIn .hNav {
  background-color: #ffffff;
  border-radius: 40px;
  position: relative;
}
.secCommonHeader .headerIn .hNav .hTree {
  position: absolute;
  aspect-ratio: 115/132;
}
.secCommonHeader .headerIn .hNav .hNavHead {
  display: flex;
  align-items: center;
  -moz-column-gap: 14px;
       column-gap: 14px;
}
.secCommonHeader .headerIn .hNav .hNavHead .hNavDot {
  flex: 1;
  background: url(../images/nav_border.svg) center center no-repeat;
  height: 2px;
}
.secCommonHeader .headerIn .hNav .hNavHead .hNavLabel {
  font-weight: 700;
  color: #282828;
  white-space: nowrap;
}
.secCommonHeader .headerIn .hNav .hNavList .hNavLink {
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-radius: 20px;
  border: 2px solid transparent;
}
.secCommonHeader .headerIn .hNav .hNavList .hNavLink .navContent {
  display: flex;
  flex-direction: column;
  font-weight: 700;
}
.secCommonHeader .headerIn .hNav .hNavList .hNavLink .navArrow {
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: url(../images/arrow_white_right.png) center center no-repeat;
  background-size: 11px 8px;
  aspect-ratio: 1/1;
}
.secCommonHeader .headerIn .hNav .hNavList .hNavLink.kodomoen {
  background-color: #FFF4A1;
  border-color: #F2E898;
}
.secCommonHeader .headerIn .hNav .hNavList .hNavLink.kodomoen .navArrow {
  background-color: #F6CD19;
}
.secCommonHeader .headerIn .hNav .hNavList .hNavLink.jidou {
  background-color: #FFE7ED;
  border-color: #F0D2D5;
}
.secCommonHeader .headerIn .hNav .hNavList .hNavLink.jidou .navArrow {
  background-color: #EE86A0;
}
.secCommonHeader .headerIn .hNav .hNavList .hNavLink.waiwai {
  background-color: #DDF5D4;
  border-color: #B5D6BA;
}
.secCommonHeader .headerIn .hNav .hNavList .hNavLink.waiwai .navArrow {
  background-color: #93CF9C;
}

@media only screen and (max-width: 1199px) {
  .secCommonHeader .headerIn {
    height: 60px;
    padding-top: 20px;
  }
  .secCommonHeader .headerIn .hLogo {
    width: min(80%, 260px);
  }
  .secCommonHeader .headerIn .hNav {
    display: none;
  }
}
@media print, screen and (min-width: 1200px) {
  .secCommonHeader .headerIn {
    height: 200px;
    justify-content: space-between;
    align-items: flex-start;
    padding-top: 40px;
  }
  .secCommonHeader .headerIn .hLogo {
    width: clamp(200px, 24vw, 330px);
  }
  .secCommonHeader .headerIn .hNav {
    width: clamp(700px, 65vw, 880px);
    height: 155px;
    padding: 23px min(2.2vw, 40px) 32px min(3.2vw, 60px);
    border-radius: 40px;
    row-gap: 0;
  }
  .secCommonHeader .headerIn .hNav .hTree {
    width: clamp(80px, 9vw, 115px);
    bottom: 0;
    left: calc(clamp(80px, 9vw, 115px) * -0.6);
  }
  .secCommonHeader .headerIn .hNav .hNavHead {
    -moz-column-gap: 33px;
         column-gap: 33px;
    margin-bottom: 16px;
  }
  .secCommonHeader .headerIn .hNav .hNavHead .hNavLabel {
    font-size: 18px;
  }
  .secCommonHeader .headerIn .hNav .hNavList {
    display: flex;
    justify-content: space-between;
  }
  .secCommonHeader .headerIn .hNav .hNavList .hNavLink {
    width: min(32.4%, 240px);
    min-height: 60px;
    padding: 8px 2.6% 8px;
    -moz-column-gap: 10px;
         column-gap: 10px;
  }
  .secCommonHeader .headerIn .hNav .hNavList .hNavLink .navContent {
    width: calc(100% - min(18%, 36px) - 10px);
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
  .secCommonHeader .headerIn .hNav .hNavList .hNavLink .navContent .navSub {
    font-size: 13px;
    margin-bottom: 2px;
    letter-spacing: -0.03em;
  }
  .secCommonHeader .headerIn .hNav .hNavList .hNavLink .navContent .navName {
    font-size: clamp(13px, 1.25vw, 15px);
    letter-spacing: -0.03em;
    line-height: 1.2;
  }
  .secCommonHeader .headerIn .hNav .hNavList .hNavLink .navArrow {
    width: min(18%, 36px);
  }
}
.menuBtnWrap {
  position: fixed;
  z-index: 200;
  top: 18px;
  right: 12px;
}
.menuBtnWrap .menuBtn {
  width: 42px;
  height: 42px;
  border-radius: 4px;
  background: #3c8b6f;
  position: relative;
  cursor: pointer;
}
.menuBtnWrap .menuBtn span {
  position: absolute;
  display: block;
  width: 24px;
  height: 2px;
  left: 9px;
  background: #ffffff;
  transition: 0.4s;
}
.menuBtnWrap .menuBtn span:nth-of-type(1) {
  top: 30%;
}
.menuBtnWrap .menuBtn span:nth-of-type(2) {
  top: 50%;
}
.menuBtnWrap .menuBtn span:nth-of-type(3) {
  top: 70%;
}

body.navOn .menuBtnWrap .menuBtn {
  background-color: transparent;
}
body.navOn .menuBtnWrap .menuBtn span:nth-of-type(1) {
  transform: translateY(8px) rotate(-45deg);
}
body.navOn .menuBtnWrap .menuBtn span:nth-of-type(2) {
  opacity: 0;
}
body.navOn .menuBtnWrap .menuBtn span:nth-of-type(3) {
  transform: translateY(-8px) rotate(45deg);
}

@media print, screen and (min-width: 1200px) {
  .menuBtnWrap {
    display: none;
  }
}
.globalNavWrap {
  pointer-events: none;
}
.globalNavWrap .globalNav {
  background: #3c8b6f;
  max-height: 100vh;
}
.globalNavWrap .globalNav .globalNavInner {
  position: relative;
  margin: 0 auto;
  width: min(90%, 280px);
}
.globalNavWrap .globalNav .globalNavInner .naviListArea {
  display: flex;
  flex-direction: column;
  padding: 100px 0 60px 0;
}
.globalNavWrap .globalNav .globalNavInner .naviListArea .naviList {
  padding: 16px 0;
  border-bottom: solid 1px #ffffff;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  -moz-column-gap: 8px;
       column-gap: 8px;
}
.globalNavWrap .globalNav .globalNavInner .naviListArea .naviList .navIcon {
  width: 42px;
  height: 32px;
}
.globalNavWrap .globalNav .globalNavInner .naviListArea .naviList .linkItem {
  color: #ffffff;
  font-weight: 500;
  font-size: clamp(14px, 4.62vw, 18px);
}
.globalNavWrap .globalNav .globalNavInner .naviListArea .btnCol {
  display: flex;
  flex-direction: column;
  row-gap: 10px;
  padding: 20px 0 0 0;
}
.globalNavWrap .globalNav .globalNavInner .naviListArea .btnCol .btnWrap {
  width: min(90%, 150px);
  margin: 0 auto;
}
.globalNavWrap .globalNav .globalNavInner .navContact {
  padding: 40px 0 100px 0;
  display: flex;
  flex-direction: column;
  row-gap: 15px;
}

body.navOn .globalNavWrap {
  pointer-events: all;
}
body.navOn .globalNavWrap .globalNav {
  width: min(100vw, 400px);
}

.secCommonFooter {
  position: relative;
  background-color: #F9F7F0;
  background-image: url(../images/footer_bg.png);
  background-position: center bottom;
  background-repeat: no-repeat;
}
.secCommonFooter .footerIn .fLogo {
  display: inline-block;
}
.secCommonFooter .footerIn .fInfo .fInfoRow {
  display: flex;
  align-items: baseline;
}
.secCommonFooter .footerIn .fInfo .fInfoRow .infoIcon {
  width: 12px;
  text-align: center;
}
.secCommonFooter .footerIn .fInfo .fInfoRow .infoText {
  font-weight: 500;
}
.secCommonFooter .footerIn .fNav .fNavList {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  padding: 0;
  margin: 0;
}
.secCommonFooter .footerIn .fNav .fNavList .fNavItem {
  display: flex;
  align-items: center;
}
.secCommonFooter .footerIn .fNav .fNavList .fNavItem::before {
  content: "";
  display: block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background-color: #09AC80;
  flex-shrink: 0;
  margin-right: 10px;
}
.secCommonFooter .footerIn .fNav .fNavList .fNavLink {
  font-weight: 500;
  text-decoration: underline;
}
.secCommonFooter .fCopy {
  text-align: center;
  color: #ffffff;
  font-weight: bold;
}

@media only screen and (max-width: 767px) {
  .secCommonFooter {
    margin: 80px 0 0 0;
    padding: 0px 0 24px;
    background-size: 2200px;
  }
  .secCommonFooter .footerIn .fLogo {
    width: min(80%, 260px);
  }
  .secCommonFooter .footerIn .fInfo {
    padding: 20px 0 24px 0;
  }
  .secCommonFooter .footerIn .fInfo .fInfoRow {
    -moz-column-gap: 10px;
         column-gap: 10px;
    padding: 0px 0;
  }
  .secCommonFooter .footerIn .fInfo .fInfoRow .infoText {
    font-size: clamp(14px, 3.85vw, 15px);
  }
  .secCommonFooter .footerIn .fNav .fNavList {
    -moz-column-gap: 14px;
         column-gap: 14px;
    row-gap: 10px;
  }
  .secCommonFooter .footerIn .fNav .fNavList .fNavLink {
    font-size: 14px;
  }
  .secCommonFooter .fCopy {
    margin-top: 200px;
    font-size: 14px;
  }
}
@media print, screen and (min-width: 768px) {
  .secCommonFooter {
    margin: 20px 0 0 0;
    padding: 0px 0 35px;
    background-size: 4320px;
  }
  .secCommonFooter .footerIn .fInfo {
    padding: 32px 0 28px 0;
  }
  .secCommonFooter .footerIn .fInfo .fInfoRow {
    -moz-column-gap: 10px;
         column-gap: 10px;
    padding: 6px 0;
  }
  .secCommonFooter .footerIn .fInfo .fInfoRow .infoText {
    font-size: clamp(13px, 1.25vw, 15px);
  }
  .secCommonFooter .footerIn .fNav .fNavList {
    -moz-column-gap: 40px;
         column-gap: 40px;
  }
  .secCommonFooter .footerIn .fNav .fNavList .fNavLink {
    font-size: 15px;
  }
  .secCommonFooter .fCopy {
    margin-top: 338px;
    font-size: 15px;
  }
}/*# sourceMappingURL=common.css.map */