@font-face {
  font-family: "ZenMaruGothic-Black";
  src: url(/fonts/ZenMaruGothic/ZenMaruGothic-Black.woff) format("woff");
  font-display: swap;
}
@font-face {
  font-family: "ZenMaruGothic-Bold";
  src: url(/fonts/ZenMaruGothic/ZenMaruGothic-Bold.woff) format("woff");
  font-display: swap;
}
@font-face {
  font-family: "ZenMaruGothic-Regular";
  src: url(/fonts/ZenMaruGothic/ZenMaruGothic-Regular.woff) format("woff");
  font-display: swap;
}
/*16*1.75/2*/
/*=======*/
/* happy */
/*=======*/
.happy {
  position: relative;
  background-color: #FFE0E8;
}
.happy .il01 {
  position: absolute;
  top: 0;
  left: 0;
  width: 30.364%; /*583/1920*/
}
@media (max-width: 767px) {
  .happy .il01 {
    width: 160px;
  }
}
.happy .il02 {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 30.364%; /*583/1920*/
}
@media (max-width: 767px) {
  .happy .il02 {
    width: 160px;
  }
}
.happy .h-happy01 {
  padding: 168px 0 120px;
  text-align: center;
}
@media (max-width: 767px) {
  .happy .h-happy01 {
    max-width: 266px;
    margin: 0 auto;
    padding: 100px 0 70px;
  }
}
.happy .h-happy02 {
  margin-bottom: 32px;
  text-align: center;
}
@media (max-width: 767px) {
  .happy .h-happy02 {
    max-width: 248px;
    margin: 0 auto 24px;
  }
}
.happy .happy-list {
  margin-bottom: 160px;
}
@media (max-width: 767px) {
  .happy .happy-list {
    margin-bottom: 64px;
  }
}
.happy .happy-list li {
  padding: 112px 48px;
  border-radius: 32px;
  background: #FFF;
}
@media (max-width: 767px) {
  .happy .happy-list li {
    padding: 32px 24px 40px;
    border-radius: 24px;
  }
}
.happy .happy-list li:not(:last-child) {
  margin-bottom: 112px;
}
@media (max-width: 767px) {
  .happy .happy-list li:not(:last-child) {
    margin-bottom: 70px;
  }
}
.happy .happy-list li .wrap {
  display: flex;
  justify-content: space-between;
  align-items: center;
  max-width: 1154px;
  margin: 0 auto;
}
@media (max-width: 1023px) {
  .happy .happy-list li .wrap {
    display: block;
  }
}
.happy .happy-list li .wrap .txt {
  width: 46.793%; /*540/1154*/
}
@media (max-width: 1023px) {
  .happy .happy-list li .wrap .txt {
    width: 100%;
    margin-bottom: 24px;
  }
}
.happy .happy-list li .wrap .txt p {
  font-size: 23px;
  font-family: "ZenMaruGothic-Bold", sans-serif;
}
@media (max-width: 767px) {
  .happy .happy-list li .wrap .txt p {
    font-size: 14px;
  }
}
.happy .happy-list li .wrap .img {
  width: 49.826%; /*575/1154*/
}
@media (max-width: 1023px) {
  .happy .happy-list li .wrap .img {
    width: 100%;
  }
}
.happy .happy-list li:nth-of-type(even) .wrap {
  flex-direction: row-reverse;
}
.happy .bt-area {
  padding-bottom: 120px;
  text-align: center;
}
@media (max-width: 767px) {
  .happy .bt-area {
    padding-bottom: 130px;
  }
}
.happy .bt-area .ttl {
  margin-bottom: 60px;
  font-size: 28px;
  font-family: "ZenMaruGothic-Black", sans-serif;
}
@media (max-width: 767px) {
  .happy .bt-area .ttl {
    margin-bottom: 40px;
    font-size: 19px;
  }
}
.happy .bt-area .ttl span {
  position: relative;
  display: inline-block;
}
.happy .bt-area .ttl span::before, .happy .bt-area .ttl span::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 3px;
  height: 64px;
  background: #000;
}
@media (max-width: 767px) {
  .happy .bt-area .ttl span::before, .happy .bt-area .ttl span::after {
    width: 2px;
    height: 56px;
  }
}
.happy .bt-area .ttl span::before {
  left: -28px;
  transform: rotate(-28deg) translateY(-50%);
}
@media (max-width: 767px) {
  .happy .bt-area .ttl span::before {
    left: -16px;
  }
}
.happy .bt-area .ttl span::after {
  right: -28px;
  transform: rotate(28deg) translateY(-50%);
}
@media (max-width: 767px) {
  .happy .bt-area .ttl span::after {
    right: -16px;
  }
}
.happy .bt-area .bt {
  position: relative;
  z-index: 1;
}
.happy .bt-area .bt a {
  display: inline-block;
  transition: 0.5s all;
}
@media (max-width: 767px) {
  .happy .bt-area .bt a {
    max-width: 200px;
  }
}
.happy .bt-area .bt a:hover {
  transform: scale(1.05);
}
.happy .bt-area .bt a:hover img {
  opacity: 1;
}

/*======*/
/* news */
/*======*/
/*=======*/
/* error */
/*=======*/
.error {
  margin-bottom: -140px;
  padding-bottom: 140px;
  background: #E32E0D;
  color: #FFF;
  font-family: "ZenMaruGothic-Black", sans-serif;
  text-align: center;
}
@media (max-width: 767px) {
  .error {
    margin-bottom: -48px;
    padding-bottom: 48px;
  }
}
.error .title-area::before {
  content: none;
}
.error .error-heading01 {
  margin: 0 0 32px;
  font-size: 28px;
  line-height: 1.3;
  letter-spacing: 0.1em;
}
@media (max-width: 767px) {
  .error .error-heading01 {
    margin: 0 0 16px;
    font-size: 18px;
  }
}
.error .error-heading01 + p {
  margin-bottom: 80px;
  font-size: 18px;
  letter-spacing: 0.1em;
  line-height: 1.3;
}
@media (max-width: 767px) {
  .error .error-heading01 + p {
    margin-bottom: 40px;
    font-size: 15px;
  }
}
/*# sourceMappingURL=contents.css.map */