html {
  font-size: clamp(10px, 2.5445292621vw, 20px);
  color: #333;
  font-weight: 400;
  font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
}

body {
  background-color: #FBFEFF;
  font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
}

.body__inner {
  width: 100%;
  display: flex;
  justify-content: center;
}
@media screen and (min-width: 767px) {
  .body__inner {
    -moz-column-gap: 5vw;
         column-gap: 5vw;
  }
}

.content__wrapper {
  width: 100%;
  max-width: 786px;
  background-color: #FBFEFF;
  position: relative;
}

header {
  width: 100%;
}

main {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  row-gap: clamp(50px, 12.7226463104vw, 100px);
}

.side-menu {
  width: 100vw;
  height: 100dvh;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  opacity: 0;
  pointer-events: none;
  transform: translate3d(100%, 0, 0);
  position: fixed;
  left: 0;
  top: 0;
  z-index: 21;
  transition: all 0.5s;
  background-color: #FBFEFF;
}
@media screen and (min-width: 1387px) {
  .side-menu {
    width: clamp(150px, 38.1679389313vw, 300px);
    position: sticky;
    opacity: 1;
    display: block;
    height: 100vh;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    transform: translate3d(0, 0, 0);
    pointer-events: initial;
    z-index: 19;
  }
}

.side-menu.is-show {
  opacity: 1;
  pointer-events: initial;
  transform: translate3d(0, 0, 0);
}
@media screen and (min-width: 767px) {
  .side-menu.is-show {
    opacity: 1;
  }
}

.top__wrapper {
  width: 100%;
  padding: clamp(100px, 25.4452926209vw, 200px) 3.1% 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  row-gap: clamp(36px, 9.1603053435vw, 72px);
  z-index: 0;
  position: relative;
  overflow: hidden;
}

.top__wrapper.wide {
  padding: clamp(100px, 25.4452926209vw, 200px) 0 0;
}

.top__wrapper.no-pad {
  padding-top: 40px;
  padding-bottom: clamp(40px, 10.1781170483vw, 80px);
}

.top__wrapper.concept {
  margin-top: clamp(100px, 25.4452926209vw, 200px);
}

.top__wrapper.wave {
  padding: clamp(68px, 17.3027989822vw, 136px) 3.1% clamp(76px, 19.3384223919vw, 152px);
  margin-top: clamp(50px, 12.7226463104vw, 100px);
  background-color: #D9EFF3;
  position: relative;
  z-index: 0;
}
.top__wrapper.wave::before, .top__wrapper.wave::after {
  content: "";
  background-image: url("../../assets/img/bg_wave_17.svg");
  background-size: cover;
  background-repeat: repeat;
  background-position: left;
  width: 100%;
  height: clamp(21px, 5.3435114504vw, 42px);
  position: absolute;
  z-index: 1;
  overflow: hidden;
}
.top__wrapper.wave::before {
  top: 0;
  left: 0;
}
.top__wrapper.wave::after {
  bottom: 0;
  left: 0;
  transform: rotate(180deg);
}

.top__wrapper--inner {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  row-gap: clamp(8px, 2.0356234097vw, 16px);
}

.top__block-text {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  row-gap: clamp(24px, 6.106870229vw, 48px);
}

.sp-only {
  display: block;
}
@media screen and (min-width: 767px) {
  .sp-only {
    display: none;
  }
}

.common__button {
  display: flex;
  justify-content: center;
  align-items: center;
  width: clamp(181px, 46.0559796438vw, 226.25px);
  height: clamp(44px, 11.1959287532vw, 55px);
  background-color: #56BED0;
  color: #FBFEFF;
  font-weight: 600;
  font-size: clamp(16px, 4.0712468193vw, 17.6px);
  line-height: 2;
  border-radius: clamp(22px, 5.5979643766vw, 27.5px);
  margin: clamp(14px, 3.5623409669vw, 15.4px) auto 0;
}

.common__tag {
  display: flex;
  align-items: center;
  justify-content: center;
}
.common__tag a {
  display: inline-block;
  width: 100%;
  height: 100%;
  font-size: clamp(12px, 3.0534351145vw, 13.2px);
  font-weight: 600;
  line-height: 2;
  background-color: #56BED0;
  color: #000;
  padding: clamp(8px, 2.0356234097vw, 8.8px) clamp(24px, 6.106870229vw, 26.4px);
  border-radius: clamp(8px, 2.0356234097vw, 8.8px) 0 clamp(8px, 2.0356234097vw, 8.8px) 0;
  color: #FBFEFF;
}

.button-control {
  width: clamp(120px, 30.534351145vw, 180px);
  display: flex;
  justify-content: center;
  position: fixed;
  bottom: 20px;
  right: 20px;
  z-index: 20;
  opacity: 1;
  pointer-events: initial;
  transform: translate(0, 0);
  transition: all 0.3s;
}
@media screen and (min-width: 767px) {
  .button-control {
    right: calc((100vw - 786px) / 2 * 0.3);
  }
}

.button-control.hidden {
  opacity: 0;
  pointer-events: none;
  transform: translate(100px, 0);
}

.button-menu {
  width: 38%;
  margin-top: 20px;
}
@media screen and (min-width: 1387px) {
  .button-menu {
    display: none;
  }
}
.button-menu img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.button-top {
  width: 62%;
}
.button-top img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.scr-target {
  opacity: 0;
  transform: translate3d(0, 20px, 0);
}

.scr-target.is-active {
  opacity: 1;
  transform: translate3d(0, 0, 0);
  transition: 0.5s;
}

.common-footer {
  margin-top: clamp(100px, 25.4452926209vw, 200px);
  width: 100%;
  background-color: #D9EFF3;
  padding: clamp(51px, 12.9770992366vw, 102px) 5.6% clamp(22px, 5.5979643766vw, 44px);
  display: flex;
  flex-direction: column;
  position: relative;
  z-index: 0;
}
.common-footer::before {
  content: "";
  background-image: url("../../assets/img/bg_wave_17.svg");
  background-size: cover;
  background-repeat: repeat;
  background-position: left;
  width: 100%;
  height: clamp(21px, 5.3435114504vw, 42px);
  position: absolute;
  z-index: 1;
  overflow: hidden;
}
.common-footer::before {
  top: 0;
  left: 0;
}

.footer__h2 {
  padding-left: 1.6rem;
  margin-top: clamp(24px, 6.106870229vw, 48px);
  margin-bottom: clamp(16px, 4.0712468193vw, 32px);
  position: relative;
}
.footer__h2::before {
  content: "";
  background-image: url("../../assets/img/flower_05.svg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  width: clamp(18px, 4.5801526718vw, 27px);
  height: clamp(18px, 4.5801526718vw, 27px);
  position: absolute;
  left: clamp(-6px, -1.5267175573vw, -9px);
  top: clamp(0px, 0vw, 0px);
}

.footer__h2.search img {
  width: clamp(120px, 30.534351145vw, 180px);
}

.footer__h2.sitemap img {
  width: clamp(120px, 30.534351145vw, 180px);
}

.footer__h2.links img {
  width: clamp(160px, 40.7124681934vw, 240px);
}

.common-footer__block-search {
  width: 100%;
  padding-left: 3.1%;
  display: flex;
  justify-content: space-between;
}
.common-footer__block-search input {
  width: 80%;
  height: clamp(40px, 10.1781170483vw, 50px);
  border: solid 1px #333;
  border-radius: 4px;
  background-color: #FBFEFF;
  font-size: clamp(16px, 4.0712468193vw, 17.6px);
  line-height: 1;
  padding: clamp(8px, 2.0356234097vw, 16px) 3.4%;
}
.common-footer__block-search button {
  width: 18%;
  height: clamp(40px, 10.1781170483vw, 50px);
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: clamp(16px, 4.0712468193vw, 17.6px);
  line-height: 1;
  background-color: #56BED0;
  color: #FBFEFF;
  border-radius: 4px;
}
.common-footer__block-search label {
  width: 0;
  overflow: hidden;
  opacity: 0;
}

.common-footer__list {
  width: 100%;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  padding-left: 3.1%;
  row-gap: clamp(12px, 3.0534351145vw, 24px);
  margin-bottom: clamp(12px, 3.0534351145vw, 24px);
}

.common-footer__item {
  width: 50%;
}
.common-footer__item a {
  display: block;
  width: 100%;
  height: 100%;
  font-size: clamp(14px, 3.5623409669vw, 16.8px);
  line-height: 2;
  text-decoration: underline;
}

.common__footer--link {
  width: 100%;
  margin-bottom: clamp(12px, 3.0534351145vw, 24px);
}
.common__footer--link a {
  display: block;
  width: 100%;
  height: 100%;
}
.common__footer--link img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.common-footer__copy {
  width: 100%;
  margin-top: clamp(28px, 7.1246819338vw, 56px);
  text-align: center;
  font-size: clamp(12px, 3.0534351145vw, 18px);
  line-height: 2;
}

.menu__h2 {
  width: 100%;
  height: clamp(20px, 5.0890585242vw, 25px);
  text-align: center;
  position: relative;
  z-index: 0;
}
.menu__h2::after {
  content: "";
  background-color: #333;
  width: 10vw;
  height: 1px;
  left: 0;
  right: 0;
  margin: auto;
  bottom: clamp(-28px, -7.1246819338vw, -35px);
  position: absolute;
  z-index: 1;
}
@media screen and (min-width: 767px) {
  .menu__h2::after {
    width: clamp(20px, 5.0890585242vw, 25px);
  }
}
.menu__h2 img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.side-menu-closer {
  display: block;
  width: 46px;
  height: 59px;
  position: fixed;
  right: 30px;
  top: 30px;
  z-index: 2;
}
.side-menu-closer img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (min-width: 767px) {
  .side-menu-closer {
    display: none;
  }
}

.side-menu .side-menu__list {
  width: 100%;
  text-align: center;
  margin-top: clamp(48px, 12.213740458vw, 60px);
  display: flex;
  flex-direction: column;
  align-items: center;
  row-gap: clamp(28px, 7.1246819338vw, 35px);
}

.side-menu__item {
  width: 100%;
  height: clamp(36px, 9.1603053435vw, 45px);
}
.side-menu__item a {
  display: inline-block;
  height: 100%;
}
.side-menu__item img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.side-menu__item.more {
  margin-top: clamp(12px, 3.0534351145vw, 18px);
}

.mura_banner {
  display: block;
  width: 0;
  height: 0;
  opacity: 0;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: 0;
}

.mura_banner img {
  max-width: 0 !important;
  max-height: 0 !important;
  opacity: 0 !important;
  position: fixed;
  top: 0;
  left: 0;
}

ol,
ul {
  font-size: clamp(16px, 4.0712468193vw, 24px);
  line-height: 2;
}

.adsbygoogle {
  max-width: 100% !important;
}

.mura {
  width: 100%;
  display: flex;
  justify-content: flex-end;
}/*# sourceMappingURL=common.css.map */