[data-ani] {
  --ani-delay: 0s;
  --ani-duration: 1s;
  pointer-events: none;
}
[data-ani].is-animated-done {
  pointer-events: auto;
}

.ani-width {
  width: 0;
  -webkit-transition: width var(--ani-duration) cubic-bezier(0.42, 0, 0.58, 1) var(--ani-delay);
  transition: width var(--ani-duration) cubic-bezier(0.42, 0, 0.58, 1) var(--ani-delay);
}
.ani-width.is-animated {
  width: 100%;
}

.ani-fade, .ani-fade-left, .ani-fade-right, .ani-fade-down-full, .ani-fade-down, .ani-fade-up {
  opacity: 0;
  -webkit-transition: opacity var(--ani-duration) cubic-bezier(0.42, 0, 0.58, 1) var(--ani-delay), -webkit-transform var(--ani-duration) cubic-bezier(0.42, 0, 0.58, 1) var(--ani-delay);
  transition: opacity var(--ani-duration) cubic-bezier(0.42, 0, 0.58, 1) var(--ani-delay), -webkit-transform var(--ani-duration) cubic-bezier(0.42, 0, 0.58, 1) var(--ani-delay);
  transition: opacity var(--ani-duration) cubic-bezier(0.42, 0, 0.58, 1) var(--ani-delay), transform var(--ani-duration) cubic-bezier(0.42, 0, 0.58, 1) var(--ani-delay);
  transition: opacity var(--ani-duration) cubic-bezier(0.42, 0, 0.58, 1) var(--ani-delay), transform var(--ani-duration) cubic-bezier(0.42, 0, 0.58, 1) var(--ani-delay), -webkit-transform var(--ani-duration) cubic-bezier(0.42, 0, 0.58, 1) var(--ani-delay);
}
.ani-fade.is-animated, .is-animated.ani-fade-left, .is-animated.ani-fade-right, .is-animated.ani-fade-down-full, .is-animated.ani-fade-down, .is-animated.ani-fade-up {
  opacity: 1;
}
.ani-fade-up {
  -webkit-transform: translateY(30px);
          transform: translateY(30px);
}
.ani-fade-up.is-animated {
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
.ani-fade-down {
  -webkit-transform: translateY(-10px);
          transform: translateY(-10px);
}
.ani-fade-down.is-animated {
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
.ani-fade-down-full {
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
}
.ani-fade-down-full.is-animated {
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
.ani-fade-right {
  -webkit-transform: translateX(-10px);
          transform: translateX(-10px);
}
.ani-fade-right.is-animated {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
.ani-fade-left {
  -webkit-transform: translateX(10px);
          transform: translateX(10px);
}
.ani-fade-left.is-animated {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}

.ani-scale {
  -webkit-transform: scale(0.6);
          transform: scale(0.6);
  -webkit-transform-origin: center;
          transform-origin: center;
  -webkit-transition: opacity var(--ani-duration) cubic-bezier(0.42, 0, 0.58, 1) var(--ani-delay), -webkit-transform var(--ani-duration) cubic-bezier(0.42, 0, 0.58, 1) var(--ani-delay);
  transition: opacity var(--ani-duration) cubic-bezier(0.42, 0, 0.58, 1) var(--ani-delay), -webkit-transform var(--ani-duration) cubic-bezier(0.42, 0, 0.58, 1) var(--ani-delay);
  transition: opacity var(--ani-duration) cubic-bezier(0.42, 0, 0.58, 1) var(--ani-delay), transform var(--ani-duration) cubic-bezier(0.42, 0, 0.58, 1) var(--ani-delay);
  transition: opacity var(--ani-duration) cubic-bezier(0.42, 0, 0.58, 1) var(--ani-delay), transform var(--ani-duration) cubic-bezier(0.42, 0, 0.58, 1) var(--ani-delay), -webkit-transform var(--ani-duration) cubic-bezier(0.42, 0, 0.58, 1) var(--ani-delay);
}
.ani-scale.is-animated {
  -webkit-transform: scale(1);
          transform: scale(1);
}

.ani-zoom {
  -webkit-transform: scale(1.2);
          transform: scale(1.2);
  -webkit-transform-origin: center;
          transform-origin: center;
  -webkit-transition: -webkit-transform var(--ani-duration) cubic-bezier(0.07, 0.09, 0.09, 0.62) var(--ani-delay);
  transition: -webkit-transform var(--ani-duration) cubic-bezier(0.07, 0.09, 0.09, 0.62) var(--ani-delay);
  transition: transform var(--ani-duration) cubic-bezier(0.07, 0.09, 0.09, 0.62) var(--ani-delay);
  transition: transform var(--ani-duration) cubic-bezier(0.07, 0.09, 0.09, 0.62) var(--ani-delay), -webkit-transform var(--ani-duration) cubic-bezier(0.07, 0.09, 0.09, 0.62) var(--ani-delay);
}
.ani-zoom.is-animated {
  -webkit-transform: scale(1);
          transform: scale(1);
}

.ani-clip, .ani-clip-full {
  clip-path: inset(0 100% 0 0);
  opacity: 0;
  -webkit-transition: all var(--ani-duration) ease-in-out var(--ani-delay);
  transition: all var(--ani-duration) ease-in-out var(--ani-delay);
  will-change: clip-path;
}
@media (max-width: 768px) {
  .ani-clip-full {
    -webkit-transition: all calc(var(--ani-duration) / 2) cubic-bezier(0.07, 0.09, 0.09, 0.62) calc(var(--ani-delay) / 2);
    transition: all calc(var(--ani-duration) / 2) cubic-bezier(0.07, 0.09, 0.09, 0.62) calc(var(--ani-delay) / 2);
  }
}
.ani-clip.is-animated, .is-animated.ani-clip-full {
  opacity: 1;
  clip-path: inset(0);
}

@media (min-width: 768px) {
  .u-content {
    width: min(90%, 1280px);
    position: relative;
    display: block;
    margin: clamp(25px, 17.7777777778px + 1.8518518519vw, 40px) auto;
    padding: clamp(25px, 17.7777777778px + 1.8518518519vw, 40px) clamp(15px, 2.962962963px + 3.0864197531vw, 40px);
    background: #fff;
  }
}
.child__mv {
  position: relative;
}
@media (max-width: 768px) {
  .child__mv {
    height: 60vh;
    width: 100%;
  }
  .child__mv .c-imgBox {
    height: 100%;
  }
  .child__mv .c-imgBox img {
    height: 100%;
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
}
.child__mv .mainH2 {
  position: absolute;
  top: 63%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  z-index: 10;
  width: 17vw;
}
@media (max-width: 768px) {
  .child__mv .mainH2 {
    width: 47vw;
    top: 55%;
  }
}

.child-h3 {
  font-size: 30px;
  line-height: 1.6;
  margin-bottom: 30px;
  text-align: center;
}
@media (max-width: 768px) {
  .child-h3 {
    font-size: 5vw;
    line-height: 1.8;
    margin-bottom: 15px;
  }
}

.child-h4 {
  font-size: 18px;
  text-align: center;
  letter-spacing: 3px;
  margin: 0px 0 20px;
  padding-top: 16px;
  border-top: 1px solid #000;
  position: relative;
}
.child-h4:after {
  content: "";
  width: 200px;
  height: 2px;
  background: #000;
  position: absolute;
  top: 0px;
  left: 50%;
  margin-left: -100px;
}
@media (max-width: 768px) {
  .child-h4 {
    font-size: 13px;
    margin-bottom: 13px;
  }
  .child-h4:after {
    content: "";
    width: 120px;
    height: 2px;
    background: #000;
    position: absolute;
    top: 0px;
    left: 50%;
    margin-left: -60px;
  }
}

.c-txt {
  font-size: 16px;
}
@media (max-width: 768px) {
  .c-txt {
    font-size: 12px;
  }
}
.c-txt.-cen {
  text-align: center;
}

.f-cap {
  position: relative;
}

figcaption {
  position: absolute;
  bottom: 3px;
  right: 3px;
  text-shadow: 0 0 10px #000, 0 0 10px #000, 0 0 10px #000;
  font-size: 11px;
  color: #FFF;
}
@media (max-width: 768px) {
  figcaption {
    font-size: 10px;
  }
}

.-img01 {
  margin: 40px auto 0;
  width: 80%;
}
@media (max-width: 768px) {
  .-img01 {
    width: 100%;
    margin-top: 20px;
  }
}

.his-row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: 40px;
}
@media (max-width: 768px) {
  .his-row {
    margin-top: 20px;
  }
}
.his-row.-n2 .his-img {
  width: 48%;
}
@media (max-width: 768px) {
  .his-row.-n2 .his-img {
    width: 100%;
    margin-bottom: 30px;
  }
}

.his-img {
  width: 32%;
}
@media (max-width: 768px) {
  .his-img {
    width: 48%;
  }
}

.his-img h5 {
  font-size: 22px;
  margin: 20px 0 15px;
  text-align: center;
  border-bottom: 1px solid #666;
  letter-spacing: 2px;
}
@media (max-width: 768px) {
  .his-img h5 {
    font-size: 16.5px;
    margin: 10px 0 10px;
  }
}
.his-img h5 span {
  display: block;
  font-size: 13px;
  letter-spacing: 0.5px;
}
@media (max-width: 768px) {
  .his-img h5 span {
    font-size: 10px;
    line-height: 1.6;
  }
}
.his-img p {
  font-size: 14px;
  line-height: 1.7;
}
@media (max-width: 768px) {
  .his-img p {
    font-size: 11.3px;
  }
}

@media (max-width: 768px) {
  .u-note {
    margin-top: 0;
    padding-top: 0;
    padding-bottom: 0;
  }
}