@charset "UTF-8";

.Carousel__blockA .Button__moduleA {
  margin-top: 15px;
}

.Carousel__blockA:not(:first-child) {
  margin-top: 40px;
}

.Carousel__moduleA {
  margin: 0 calc(50% - 50vw);
  padding-bottom: 30px;
  padding-top: 30px;
}

.Carousel__moduleA:not(:first-child) {
  margin-top: 40px;
}

.Carousel__moduleA .Carousel__controller {
  width: 100%;
  max-width: 295px;
  margin-top: 22px;

  margin-inline: auto;
}

.Carousel__moduleA .splide__arrows {
  display: -ms-grid;
  display: grid;

  -ms-grid-columns: 24px 1fr 24px;
  -ms-grid-rows: 24px;
  grid-template-columns: 24px 1fr 24px;
  grid-template-rows: 24px;
}

.Carousel__moduleA .splide__pagination {
  -ms-grid-column: 2;
  grid-column: 2/3;
  -ms-grid-column-span: 1;
  -ms-grid-row: 1;
  grid-row: 1/2;
  -ms-grid-row-span: 1;
}

.Carousel__moduleA .splide__pagination>li:nth-child(n+2) {
  margin-left: 12px;
}

.Carousel__moduleA .splide__pagination .splide__pagination__page {
  height: 5px;
  width: 5px;
  background-color: #bababa;
  border-radius: 50%;
}

.Carousel__moduleA .splide__pagination .splide__pagination__page.is-active {
  background-color: #18a362;
}

.Carousel__moduleA .splide__arrow {
  height: 24px;
  width: 24px;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
}

.Carousel__moduleA .splide__arrow.splide__arrow--prev {
  background-image: url('/shared2022/images/common/ico_carousel_prev_button.svg');

  -ms-grid-column: 1;
  grid-column: 1/2;
  -ms-grid-column-span: 1;
  -ms-grid-row: 1;
  grid-row: 1/2;
  -ms-grid-row-span: 1;
}

.Carousel__moduleA .splide__arrow.splide__arrow--next {
  background-image: url('/shared2022/images/common/ico_carousel_next_button.svg');

  -ms-grid-column: 3;
  grid-column: 3/4;
  -ms-grid-column-span: 1;
  -ms-grid-row: 1;
  grid-row: 1/2;
  -ms-grid-row-span: 1;
}

.Carousel__moduleA .splide__arrow>svg {
  display: none;
}

.Carousel__moduleB {
  position: relative;
  margin: 0 calc(50% - 50vw);
}

.Carousel__moduleB .Carousel__item {
  margin: 0 auto;
  padding-left: 40px;
  padding-right: 40px;
  padding-top: 68px;
  border: solid 1px #ccc;
  border-radius: 8px;
}

.Carousel__moduleB .Carousel__heading {
  margin-bottom: 20px;
  line-height: 1.2;
  text-align: center;
}

.Carousel__moduleB .Carousel__textarea {
  margin-bottom: 20px;
}

.Carousel__moduleB .Carousel__text {
  display: flex;
  column-gap: 0.5em;

  -webkit-column-gap: 0.5em;
  -moz-column-gap: 0.5em;
}

.Carousel__moduleB .Carousel__image>img {
  margin-inline: auto;
}

.Carousel__moduleB .splide__pagination {
  position: absolute;
  top: 20px;
  z-index: 1;
  width: 100%;
  column-gap: 12px;

  -webkit-column-gap: 12px;
  -moz-column-gap: 12px;
}

.Carousel__moduleB .splide__pagination__page {
  height: 18px;
  width: 18px;
  border: solid 1px #094;
  border-radius: 50%;
  color: #07a32b;
  font-size: 1rem;
  font-weight: 600;
}

.Carousel__moduleB .splide__pagination__page.is-active {
  background-color: #094;
  color: #fff;
}

.Carousel__moduleB .Carousel__arrows {
  position: absolute;
  left: 50%;
  top: 45%;
  width: 100%;
  max-width: 800px;
  transform: translate(-50%, -50%);

  -webkit-transform: translate(-50%, -50%);
}

.Carousel__moduleB .Carousel__arrow {
  position: absolute;
  top: 0;
  display: block;
  height: 30px;
  width: 30px;
  background-color: #07a32b;
  background-repeat: no-repeat;
  background-size: 12px;
  border-radius: 50%;
}

.Carousel__moduleB .Carousel__arrow.-prev {
  left: 10px;
  background-image: url('/shared2022/images/common/ico_arrow_left_white.svg');
  background-position: left 59% center;
}

.Carousel__moduleB .Carousel__arrow.-next {
  right: 10px;
  background-image: url('/shared2022/images/common/ico_arrow_left_white.svg');
  background-position: left 59% center;
  transform: rotate(180deg);

  -webkit-transform: rotate(180deg);
}

.Carousel__blockA+.ConversionArea__block {
  margin: 0 calc(50% - 50vw) 40px;
}

.Carousel__moduleA .Image__moduleA {
  max-width: 240px;
  margin-left: auto;
  margin-right: auto;
}

.Carousel__image img {
  width: 200px;
}

.Carousel__Internet img {
  width: 250px;
}

.Carousel__moduleB .Carousel__contents {
  display: flex;
}

@media all and (min-width: 641px) {
  .Carousel__moduleA .Image__moduleA {
    max-width: none;
  }
}


@media all and (max-width: 768px) {
  .Carousel__moduleB .Carousel__contents {
    flex-direction: column-reverse;
  }

  .Carousel__image {
    margin-bottom: 20px;
  }

  .Carousel__moduleB .Carousel__arrows {
    top: 35%;
  }

  .Carousel__moduleB .splide__pagination {
    width: 40%;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    margin-bottom: 10px;
  }

  .Carousel__image {
    text-align: center;
  }

  .splide__pagination li {
    margin-bottom: 5px;
  }

  .Carousel__moduleB .Carousel__arrow.-next {
    right: 30px;
  }

  .Carousel__moduleB .Carousel__arrow.-prev {
    left: 30px;
  }

}


@media all and (max-width: 400px) {
  .Carousel__moduleB .splide__pagination {
    width: 80%;
  }
}

@media all and (min-width: 769px) {
  .Carousel__blockA .Button__moduleA {
    margin-top: 20px;
  }

  .Carousel__blockA:not(:first-child) {
    margin-top: 80px;
  }

  .Carousel__moduleA:not(:first-child) {
    margin-top: 80px;
  }

  .Carousel__moduleA {
    padding-bottom: 60px;
    padding-top: 60px;
  }

  .Carousel__moduleA.-typeButton {
    padding-bottom: 50px;
  }

  .Carousel__moduleB .Carousel__item {
    min-height: 402px;
    padding-left: 68px;
    padding-right: 68px;
    padding-top: 80px;
  }

  .Carousel__moduleB .Carousel__heading {
    margin-bottom: 41px;
    font-size: 2rem;
  }

  .Carousel__moduleB .Carousel__contents {
    justify-content: space-between;
    column-gap: 40px;
    -webkit-column-gap: 40px;
    -moz-column-gap: 40px;
  }

  .Carousel__moduleB .Carousel__image {
    flex-shrink: 0;
  }

  .Carousel__moduleB .Carousel__arrow {
    height: 36px;
    width: 36px;
    background-size: 14px;
  }

  .Carousel__moduleB .Carousel__arrow.-prev {
    left: 0;
    transform: translateX(-50%);

    -webkit-transform: translateX(-50%);
  }

  .Carousel__moduleB .Carousel__arrow.-next {
    right: 0;
    transform: translateX(50%) rotate(180deg);

    -webkit-transform: translateX(50%) rotate(180deg);
  }

  .Carousel__blockA+.ConversionArea__block {
    margin: 0 calc(50% - 50vw) 80px;
  }
}

@media (hover: hover) and (pointer: fine) {
  .Carousel__moduleA .Carousel__item>a:hover {
    opacity: 0.5;
  }

  .Carousel__moduleB .Carousel__item>a:hover {
    opacity: 0.5;
  }
}

.Carousel__moduleB .Carousel__arrow.-prev,
.Carousel__moduleB .Carousel__arrow.-next {
  cursor: pointer;
}