@charset "UTF-8";
.spview {
  display: none!important;
}
.pcview {
  display: inherit!important;
}
@media (max-width:768px) {
  .spview {
    display: inherit!important;
  }
  .pcview {
    display: none!important;
  }
}
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent
}
.slick-list {
  position: relative;
  display: block;
  overflow: hidden;
  margin: 0;
  padding: 0
}
.slick-list:focus {
  outline: 0
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand
}
.slick-slider .slick-list,
.slick-slider .slick-track {
  -webkit-transform: translate3d(0,0,0);
  -moz-transform: translate3d(0,0,0);
  -ms-transform: translate3d(0,0,0);
  -o-transform: translate3d(0,0,0);
  transform: translate3d(0,0,0)
}
.slick-track {
  position: relative;
  top: 0;
  left: 0;
  display: block;
  margin-left: auto;
  margin-right: auto
}
.slick-track:after,
.slick-track:before {
  display: table;
  content: ''
}
.slick-track:after {
  clear: both
}
.slick-loading .slick-track {
  visibility: hidden
}
.slick-slide {
  display: none;
  float: left;
  height: 100%;
  min-height: 1px
}
[dir=rtl] .slick-slide {
  float: right
}
.slick-slide img {
  display: block
}
.slick-slide.slick-loading img {
  display: none
}
.slick-slide.dragging img {
  pointer-events: none
}
.slick-initialized .slick-slide {
  display: block
}
.slick-loading .slick-slide {
  visibility: hidden
}
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent
}
.slick-arrow.slick-hidden {
  display: none
}
.slick-dots {
  position: absolute;
  bottom: -25px;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center
}
.slick-dots li {
  position: relative;
  display: inline-block;
  width: 20px;
  height: 20px;
  margin: 0 5px;
  padding: 0;
  cursor: pointer
}
.slick-dots li button {
  font-size: 0;
  line-height: 0;
  display: block;
  width: 20px;
  height: 20px;
  padding: 5px;
  cursor: pointer;
  color: transparent;
  border: 0;
  outline: 0;
  background: 0 0
}
.slick-dots li button:focus,
.slick-dots li button:hover {
  outline: 0
}
.slick-dots li button:focus:before,
.slick-dots li button:hover:before {
  opacity: 1
}
.slick-dots li button:before {
  font-family: slick;
  font-size: 6px;
  line-height: 20px;
  position: absolute;
  top: 0;
  left: 0;
  width: 20px;
  height: 20px;
  content: '•';
  text-align: center;
  opacity: .25;
  color: #000;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale
}
.slick-dots li.slick-active button:before {
  opacity: .75;
  color: #000
}
@font-face {
  font-family: swiper-icons;
  src: url("data:application/font-woff;charset=utf-8;base64, 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");
  font-weight: 400;
  font-style: normal
}
:root {
  --swiper-theme-color: #007aff
}
:host {
  position: relative;
  display: block;
  margin-left: auto;
  margin-right: auto;
  z-index: 1
}
.swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  z-index: 1;
  display: block
}
.swiper-vertical > .swiper-wrapper {
  flex-direction: column
}
.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  transition-timing-function: var(--swiper-wrapper-transition-timing-function,initial);
  box-sizing: content-box
}
.swiper-android .swiper-slide,
.swiper-ios .swiper-slide,
.swiper-wrapper {
  transform: translate3d(0,0,0)
}
.swiper-horizontal {
  touch-action: pan-y
}
.swiper-vertical {
  touch-action: pan-x
}
.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
  display: block
}
.swiper-slide-invisible-blank {
  visibility: hidden
}
.swiper-autoheight,
.swiper-autoheight .swiper-slide {
  height: auto
}
.swiper-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform,height
}
.swiper-backface-hidden .swiper-slide {
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden
}
.swiper-3d.swiper-css-mode .swiper-wrapper {
  perspective: 1200px
}
.swiper-3d .swiper-wrapper {
  transform-style: preserve-3d
}
.swiper-3d {
  perspective: 1200px
}
.swiper-3d .swiper-cube-shadow,
.swiper-3d .swiper-slide {
  transform-style: preserve-3d
}
.swiper-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  -ms-overflow-style: none
}
.swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none
}
.swiper-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start
}
.swiper-css-mode.swiper-horizontal > .swiper-wrapper {
  scroll-snap-type: x mandatory
}
.swiper-css-mode.swiper-vertical > .swiper-wrapper {
  scroll-snap-type: y mandatory
}
.swiper-css-mode.swiper-free-mode > .swiper-wrapper {
  scroll-snap-type: none
}
.swiper-css-mode.swiper-free-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: none
}
.swiper-css-mode.swiper-centered > .swiper-wrapper::before {
  content: '';
  flex-shrink: 0;
  order: 9999
}
.swiper-css-mode.swiper-centered > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: center center;
  scroll-snap-stop: always
}
.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {
  margin-inline-start: var(--swiper-centered-offset-before)
}
.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper::before {
  height: 100%;
  min-height: 1px;
  width: var(--swiper-centered-offset-after)
}
.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {
  margin-block-start: var(--swiper-centered-offset-before)
}
.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper::before {
  width: 100%;
  min-width: 1px;
  height: var(--swiper-centered-offset-after)
}
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10
}
.swiper-3d .swiper-slide-shadow {
  background: rgba(0,0,0,.15)
}
.swiper-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(to left,rgba(0,0,0,.5),rgba(0,0,0,0))
}
.swiper-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(to right,rgba(0,0,0,.5),rgba(0,0,0,0))
}
.swiper-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(to top,rgba(0,0,0,.5),rgba(0,0,0,0))
}
.swiper-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(to bottom,rgba(0,0,0,.5),rgba(0,0,0,0))
}
.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color,var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent
}
.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader,
.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader {
  animation: swiper-preloader-spin 1s infinite linear
}
.swiper-lazy-preloader-white {
  --swiper-preloader-color: #fff
}
.swiper-lazy-preloader-black {
  --swiper-preloader-color: #000
}
@keyframes swiper-preloader-spin {
  0% {
    transform: rotate(0)
  }
  100% {
    transform: rotate(360deg)
  }
}
.swiper-virtual .swiper-slide {
  -webkit-backface-visibility: hidden;
  transform: translateZ(0)
}
.swiper-virtual.swiper-css-mode .swiper-wrapper::after {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none
}
.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after {
  height: 1px;
  width: var(--swiper-virtual-size)
}
.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after {
  width: 1px;
  height: var(--swiper-virtual-size)
}
:root {
  --swiper-navigation-size: 44px
}
.swiper-button-next,
.swiper-button-prev {
  position: absolute;
  top: var(--swiper-navigation-top-offset,50%);
  width: calc(var(--swiper-navigation-size)/ 44 * 27);
  height: var(--swiper-navigation-size);
  margin-top: calc(0px - (var(--swiper-navigation-size)/ 2));
  z-index: 10;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--swiper-navigation-color,var(--swiper-theme-color))
}
.swiper-button-next.swiper-button-disabled,
.swiper-button-prev.swiper-button-disabled {
  opacity: .35;
  cursor: auto;
  pointer-events: none
}
.swiper-button-next.swiper-button-hidden,
.swiper-button-prev.swiper-button-hidden {
  opacity: 0;
  cursor: auto;
  pointer-events: none
}
.swiper-navigation-disabled .swiper-button-next,
.swiper-navigation-disabled .swiper-button-prev {
  display: none!important
}
.swiper-button-next svg,
.swiper-button-prev svg {
  width: 100%;
  height: 100%;
  object-fit: contain;
  transform-origin: center
}
.swiper-rtl .swiper-button-next svg,
.swiper-rtl .swiper-button-prev svg {
  transform: rotate(180deg)
}
.swiper-button-prev,
.swiper-rtl .swiper-button-next {
  left: var(--swiper-navigation-sides-offset,10px);
  right: auto
}
.swiper-button-next,
.swiper-rtl .swiper-button-prev {
  right: var(--swiper-navigation-sides-offset,10px);
  left: auto
}
.swiper-button-lock {
  display: none
}
.swiper-button-next:after,
.swiper-button-prev:after {
  font-family: swiper-icons;
  font-size: var(--swiper-navigation-size);
  text-transform: none!important;
  letter-spacing: 0;
  font-variant: initial;
  line-height: 1
}
.swiper-button-prev:after,
.swiper-rtl .swiper-button-next:after {
  content: 'prev'
}
.swiper-button-next,
.swiper-rtl .swiper-button-prev {
  right: var(--swiper-navigation-sides-offset,10px);
  left: auto
}
.swiper-button-next:after,
.swiper-rtl .swiper-button-prev:after {
  content: 'next'
}
.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: .3s opacity;
  transform: translate3d(0,0,0);
  z-index: 10
}
.swiper-pagination.swiper-pagination-hidden {
  opacity: 0
}
.swiper-pagination-disabled > .swiper-pagination,
.swiper-pagination.swiper-pagination-disabled {
  display: none!important
}
.swiper-horizontal > .swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal,
.swiper-pagination-custom,
.swiper-pagination-fraction {
  bottom: var(--swiper-pagination-bottom,8px);
  top: var(--swiper-pagination-top,auto);
  left: 0;
  width: 100%
}
.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transform: scale(.33);
  position: relative
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
  transform: scale(1)
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  transform: scale(1)
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  transform: scale(.66)
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  transform: scale(.33)
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  transform: scale(.66)
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  transform: scale(.33)
}
.swiper-pagination-bullet {
  width: var(--swiper-pagination-bullet-width,var(--swiper-pagination-bullet-size,8px));
  height: var(--swiper-pagination-bullet-height,var(--swiper-pagination-bullet-size,8px));
  display: inline-block;
  border-radius: var(--swiper-pagination-bullet-border-radius,50%);
  background: var(--swiper-pagination-bullet-inactive-color,#000);
  opacity: var(--swiper-pagination-bullet-inactive-opacity,.2)
}
button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  -webkit-appearance: none;
  appearance: none
}
.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer
}
.swiper-pagination-bullet:only-child {
  display: none!important
}
.swiper-pagination-bullet-active {
  opacity: var(--swiper-pagination-bullet-opacity,1);
  background: var(--swiper-pagination-color,var(--swiper-theme-color))
}
.swiper-pagination-vertical.swiper-pagination-bullets,
.swiper-vertical > .swiper-pagination-bullets {
  right: var(--swiper-pagination-right,8px);
  left: var(--swiper-pagination-left,auto);
  top: 50%;
  transform: translate3d(0,-50%,0)
}
.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: var(--swiper-pagination-bullet-vertical-gap,6px) 0;
  display: block
}
.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top: 50%;
  transform: translateY(-50%);
  width: 8px
}
.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  transition: .2s transform,.2s top
}
.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 var(--swiper-pagination-bullet-horizontal-gap,4px)
}
.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  left: 50%;
  transform: translateX(-50%);
  white-space: nowrap
}
.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: .2s transform,.2s left
}
.swiper-horizontal.swiper-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: .2s transform,.2s right
}
.swiper-pagination-fraction {
  color: var(--swiper-pagination-fraction-color,inherit)
}
.swiper-pagination-progressbar {
  background: var(--swiper-pagination-progressbar-bg-color,rgba(0,0,0,.25));
  position: absolute
}
.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: var(--swiper-pagination-color,var(--swiper-theme-color));
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  transform: scale(0);
  transform-origin: left top
}
.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  transform-origin: right top
}
.swiper-horizontal > .swiper-pagination-progressbar,
.swiper-pagination-progressbar.swiper-pagination-horizontal,
.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,
.swiper-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
  width: 100%;
  height: var(--swiper-pagination-progressbar-size,4px);
  left: 0;
  top: 0
}
.swiper-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite,
.swiper-pagination-progressbar.swiper-pagination-vertical,
.swiper-vertical > .swiper-pagination-progressbar {
  width: var(--swiper-pagination-progressbar-size,4px);
  height: 100%;
  left: 0;
  top: 0
}
.swiper-pagination-lock {
  display: none
}
.swiper-scrollbar {
  border-radius: var(--swiper-scrollbar-border-radius,10px);
  position: relative;
  touch-action: none;
  background: var(--swiper-scrollbar-bg-color,rgba(0,0,0,.1))
}
.swiper-scrollbar-disabled > .swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-disabled {
  display: none!important
}
.swiper-horizontal > .swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-horizontal {
  position: absolute;
  left: var(--swiper-scrollbar-sides-offset,1%);
  bottom: var(--swiper-scrollbar-bottom,4px);
  top: var(--swiper-scrollbar-top,auto);
  z-index: 50;
  height: var(--swiper-scrollbar-size,4px);
  width: calc(100% - 2 * var(--swiper-scrollbar-sides-offset,1%))
}
.swiper-scrollbar.swiper-scrollbar-vertical,
.swiper-vertical > .swiper-scrollbar {
  position: absolute;
  left: var(--swiper-scrollbar-left,auto);
  right: var(--swiper-scrollbar-right,4px);
  top: var(--swiper-scrollbar-sides-offset,1%);
  z-index: 50;
  width: var(--swiper-scrollbar-size,4px);
  height: calc(100% - 2 * var(--swiper-scrollbar-sides-offset,1%))
}
.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: var(--swiper-scrollbar-drag-bg-color,rgba(0,0,0,.5));
  border-radius: var(--swiper-scrollbar-border-radius,10px);
  left: 0;
  top: 0
}
.swiper-scrollbar-cursor-drag {
  cursor: move
}
.swiper-scrollbar-lock {
  display: none
}
.swiper-zoom-container {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center
}
.swiper-zoom-container > canvas,
.swiper-zoom-container > img,
.swiper-zoom-container > svg {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain
}
.swiper-slide-zoomed {
  cursor: move;
  touch-action: none
}
.swiper .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000
}
.swiper-free-mode > .swiper-wrapper {
  transition-timing-function: ease-out;
  margin: 0 auto
}
.swiper-grid > .swiper-wrapper {
  flex-wrap: wrap
}
.swiper-grid-column > .swiper-wrapper {
  flex-wrap: wrap;
  flex-direction: column
}
.swiper-fade.swiper-free-mode .swiper-slide {
  transition-timing-function: ease-out
}
.swiper-fade .swiper-slide {
  pointer-events: none;
  transition-property: opacity
}
.swiper-fade .swiper-slide .swiper-slide {
  pointer-events: none
}
.swiper-fade .swiper-slide-active {
  pointer-events: auto
}
.swiper-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto
}
.swiper-cube {
  overflow: visible
}
.swiper-cube .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1;
  visibility: hidden;
  transform-origin: 0 0;
  width: 100%;
  height: 100%
}
.swiper-cube .swiper-slide .swiper-slide {
  pointer-events: none
}
.swiper-cube.swiper-rtl .swiper-slide {
  transform-origin: 100% 0
}
.swiper-cube .swiper-slide-active,
.swiper-cube .swiper-slide-active .swiper-slide-active {
  pointer-events: auto
}
.swiper-cube .swiper-slide-active,
.swiper-cube .swiper-slide-next,
.swiper-cube .swiper-slide-prev {
  pointer-events: auto;
  visibility: visible
}
.swiper-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  opacity: .6;
  z-index: 0
}
.swiper-cube .swiper-cube-shadow:before {
  content: '';
  background: #000;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  filter: blur(50px)
}
.swiper-cube .swiper-slide-next + .swiper-slide {
  pointer-events: auto;
  visibility: visible
}
.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-bottom,
.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-left,
.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-right,
.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-top {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden
}
.swiper-flip {
  overflow: visible
}
.swiper-flip .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1
}
.swiper-flip .swiper-slide .swiper-slide {
  pointer-events: none
}
.swiper-flip .swiper-slide-active,
.swiper-flip .swiper-slide-active .swiper-slide-active {
  pointer-events: auto
}
.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-bottom,
.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-left,
.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-right,
.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-top {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden
}
.swiper-creative .swiper-slide {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  overflow: hidden;
  transition-property: transform,opacity,height
}
.swiper-cards {
  overflow: visible
}
.swiper-cards .swiper-slide {
  transform-origin: center bottom;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  overflow: hidden
}
body.page-campaign {
  --color-bg: #F4F5F5;
  --color-bg-rgb: 244,245,245;
  --color-text: #1F2F37;
  --color-primary: #3C6A84;
  --color-sub1: #3C5284;
  --color-sub2: #63747E;
  font-size: 16px;
  line-height: 1.8;
  padding-top: 0;
  font-family: "Noto Sans JP",sans-serif;
  overflow-x: hidden
}
body.page-campaign p {
  margin: 0
}
body.page-campaign .globalFooter {
  z-index: 3
}
body.page-campaign h1,
body.page-campaign h2,
body.page-campaign h3,
body.page-campaign h4,
body.page-campaign p {
  opacity: 0;
  transform: translateY(.7em);
  transition: opacity 1s,transform .9s
}
body.page-campaign h1.is-inview,
body.page-campaign h2.is-inview,
body.page-campaign h3.is-inview,
body.page-campaign h4.is-inview,
body.page-campaign p.is-inview {
  opacity: 1;
  transform: translateY(0)
}
body.page-campaign section {
  position: relative;
  background-color: var(--color-bg);
  color: var(--color-text)
}
body.page-campaign section.theme-white {
  --color-bg: #F4F5F5;
  --color-bg-rgb: 244,245,245;
  --color-text: #1F2F37;
  --color-primary: #3C6A84;
  --color-sub1: #3C5284;
  --color-sub2: #63747E
}
body.page-campaign section.theme-yellow {
  --color-bg: #E8DFD4;
  --color-bg-rgb: 232,223,212;
  --color-text: #352C22;
  --color-primary: #B19470;
  --color-sub1: #B1AA70;
  --color-sub2: #7E7263
}
body.page-campaign section.theme-red {
  --color-bg: #E4DAD8;
  --color-bg-rgb: 228,218,216;
  --color-text: #3B231E;
  --color-primary: #76453B;
  --color-sub1: #76593B;
  --color-sub2: #7E6763
}
body.page-campaign section.theme-green {
  --color-bg: #D9E4E2;
  --color-bg-rgb: 217,228,226;
  --color-text: #1F2F37;
  --color-primary: #43766C;
  --color-sub1: #436F76;
  --color-sub2: #637E78
}
body.page-campaign section .inner {
  max-width: 960px;
  margin: 0 auto;
  padding-bottom: 40px;
  position: relative;
  z-index: 2
}
@media (max-width:768px) {
  body.page-campaign section .inner {
    max-width: 100%;
    padding: 0 5% 64px
  }
}
@media (max-width:480px) {
  body.page-campaign section .inner {
    padding-bottom: 40px
  }
}
body.page-campaign section.has-h2::before {
  background-image: url(/campaign/common_v2/img/heading-bg1.jpg);
  content: '';
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-size: cover;
  background-position: top center;
  display: block;
  pointer-events: none;
  height: var(--deco-bg-height)
}
body.page-campaign section.has-h2::after {
  background: linear-gradient(180deg,rgba(var(--color-bg-rgb),0) 0,rgba(var(--color-bg-rgb),1) 100%);
  content: '';
  left: 0;
  height: var(--deco-bg-height);
  position: absolute;
  top: 0;
  width: 100%
}
body.page-campaign section.has-h2:nth-child(odd) {
  --deco-bg-height: 431px
}
@media (max-width:768px) {
  body.page-campaign section.has-h2:nth-child(odd) {
    --deco-bg-height: 300px
  }
}
@media (max-width:480px) {
  body.page-campaign section.has-h2:nth-child(odd) {
    --deco-bg-height: 135px
  }
}
body.page-campaign section.has-h2:nth-child(odd)::before {
  background-image: url(/campaign/common_v2/img/heading-bg1.jpg)
}
body.page-campaign section.has-h2:nth-child(even) {
  --deco-bg-height: 600px
}
@media (max-width:768px) {
  body.page-campaign section.has-h2:nth-child(even) {
    --deco-bg-height: 400px
  }
}
@media (max-width:480px) {
  body.page-campaign section.has-h2:nth-child(even) {
    --deco-bg-height: 130px
  }
}
body.page-campaign section.has-h2:nth-child(even)::before {
  background-image: url(/campaign/common_v2/img/heading-bg2.png);
  z-index: 1;
  opacity: .9
}
body.page-campaign section.has-h2:nth-child(even).theme-white:after {
  background: linear-gradient(180deg,#e1ddd6 0,rgba(244,245,245,0) 100%)
}
.memo-heading1 {
  padding: 16px 40px;
  background-color: #000;
  color: #fff;
  font-weight: 700
}
.memo-heading2 {
  padding: 16px 40px;
  background-color: #e9e9e9;
  font-weight: 700
}
.campaign-header {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 9999;
  padding-top: 40px;
  padding-left: 40px
}
@media (max-width:768px) {
  .campaign-header {
    padding-left: 5%;
    padding-right: 5%;
  }
}
.campaign-header a {
  display: inline-block
}
.campaign-header .logo {
  height: 44px;
  width: auto;
  object-fit: cover
}
@media (max-width:768px) {
  .campaign-header .logo {
    height: 36px;
    object-fit: contain;
  }
}
.campaign-kv {
  position: relative
}
.campaign-kv::after {
  background: linear-gradient(180deg,rgba(0,0,0,0) 0,rgba(0,0,0,.5) 100%);
  content: '';
  left: 0;
  height: 100%;
  position: absolute;
  top: 0;
  width: 100%
}
.campaign-kv .title {
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  position: absolute;
  z-index: 2;
  width: 100%;
  text-align: center
}
.campaign-kv .title h1 {
  font-family: "Noto Serif JP",serif;
  font-size: 48px;
  font-size: calc(48px + .9vw);
  color: #fff;
  font-weight: 600;
  width: 100%;
  padding: 0 5%
}
@media (max-width:768px) {
  .campaign-kv .title h1 {
    font-size: 34px
  }
}
.campaign-kv .gallery {
  position: relative
}
.campaign-kv .gallery .slick-dots {
  position: absolute;
  bottom: 40px;
  left: 0;
  z-index: 5
}
.campaign-kv .gallery .slick-dots li {
  width: auto;
  height: auto;
  margin: 0 4px
}
.campaign-kv .gallery .slick-dots li button {
  width: auto;
  height: auto
}
.campaign-kv .gallery .slick-dots li button::before {
  background-color: #fff!important;
  width: 8px;
  height: 8px;
  border-radius: 50%
}
.campaign-kv .gallery__image {
  height: 80vh;
  width: 100%;
  min-height: 640px
}
@media (max-width:768px) {
  .campaign-kv .gallery__image {
    height: 70vh
  }
}
@media (max-width:480px) {
  .campaign-kv .gallery__image {
    height: 80vh;
    min-height: auto
  }
}
.campaign-kv .gallery__image img {
  width: 100%;
  height: 100%;
  object-fit: cover
}
.campaign-kv .campaign-kv__movie {
  position: relative;
  z-index: 1;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  overflow: hidden;
  height: 80vh;
  min-height: 640px
}
@media (max-width:480px) {
  .campaign-kv .campaign-kv__movie {
    height: 80vh;
    min-height: auto
  }
}
.campaign-kv .campaign-kv__movie #ytPlayer {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%) scale(1.12);
  width: 177.77777778vh;
  height: 56.25vw;
  min-height: 100%;
  min-width: 100%
}
@media (max-width:480px) {
  .campaign-kv .campaign-kv__movie #ytPlayer {
    top: 45%
  }
}
.campaign-kv .campaign-kv__movie .ytPlayer-mask {
  position: absolute;
  z-index: 2;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: #fff;
  transition: background-color .1s
}
#videoPlay {
  height: 80vh;
  width: 100%;
  min-height: 640px
}
@media (max-width:480px) {
  #videoPlay {
    height: 80vh;
    min-height: auto
  }
}
.campaign-breadcrumb {
  font-family: "Noto Serif JP",serif;
  max-width: 1152px;
  font-weight: 600;
  margin: 0 auto;
  padding: 0 5%
}
@media (max-width:768px) {
  .campaign-breadcrumb {
    max-width: 100%
  }
}
.campaign-breadcrumb__list {
  align-items: center;
  display: flex;
  justify-content: center;
  padding: 40px 0;
  row-gap: 16px;
  margin: 0;
  flex-wrap: wrap
}
@media (max-width:768px) {
  .campaign-breadcrumb__list {
    padding-top: 24px;
    padding-bottom: 64px;
    flex-direction: column;
    row-gap: 0
  }
}
.campaign-breadcrumb__item {
  align-items: center;
  display: flex;
  position: relative
}
@media (max-width:768px) {
  .campaign-breadcrumb__item {
    width: 100%
  }
}
.campaign-breadcrumb__item:not(:first-of-type)::before {
  content: "";
  display: block;
  height: 20px;
  border-left: 1px solid #000;
  opacity: .15;
  margin: 0 26px
}
@media (max-width:768px) {
  .campaign-breadcrumb__item:not(:first-of-type)::before {
    display: none;
    visibility: hidden
  }
}
.campaign-breadcrumb__item a {
  align-items: center;
  display: flex;
  text-decoration: none
}
@media (max-width:768px) {
  .campaign-breadcrumb__item a {
    border-bottom: 1px solid rgba(0,0,0,.15);
    padding: 24px 0 16px;
    width: 100%
  }
}
.campaign-breadcrumb__item a::after {
  background-image: url(/campaign/common_v2/img/icon-anchor-link.svg);
  content: '';
  width: 16px;
  height: 16px;
  background-size: cover;
  background-position: center;
  display: block;
  margin-left: 4px
}
@media (max-width:768px) {
  .campaign-breadcrumb__item a::after {
    margin-left: 8px
  }
}
.campaign-section-h2 {
  padding: 200px 0 40px;
  margin-bottom: 40px;
  position: relative
}
@media (max-width:768px) {
  .campaign-section-h2 {
    padding-top: 160px
  }
}
.campaign-section-h2.is-center {
  text-align: center
}
.campaign-section-h2.is-left {
  text-align: left
}
.campaign-section-h2 > h2 {
  font-family: "Noto Serif JP",serif;
  letter-spacing: 3.2px;
  font-weight: 600;
  font-size: 40px;
  position: relative;
  z-index: 2;
  margin: 0
}
@media (max-width:768px) {
  .campaign-section-h2 > h2 {
    font-size: 32px
  }
}
.campaign-section-h3 {
  font-family: "Noto Serif JP",serif;
  letter-spacing: 2px;
  font-size: 26px;
  font-weight: 600;
  position: relative;
  margin: 64px 12px 40px
}
.campaign-section-h3.is-center {
  text-align: center
}
.campaign-section-h3.is-left {
  text-align: left
}
@media (max-width:768px) {
  .campaign-section-h3 {
    font-size: 24px;
    margin: 40px 0 36px
  }
}
@media (max-width:480px) {
  .campaign-section-h3 {
    font-size: 18px;
    margin: 40px 0 36px
  }
}
.campaign-section-h3 h3 {
  position: relative;
  margin: 0;
  padding: 0 24px
}
.campaign-section-h3 h3::after,
.campaign-section-h3 h3::before {
  background-color: var(--color-primary);
  border-radius: 50%;
  width: 8px;
  height: 8px;
  content: "";
  display: block;
  top: 50%;
  position: absolute;
  transform: translateY(-50%)
}
.campaign-section-h3 h3::before {
  left: 0
}
.campaign-section-h3 h3::after {
  right: 0
}
.campaign-section-h4 {
  margin: 24px 0 16px;
  font-size: 18px;
  font-weight: 700
}
@media (max-width:480px) {
  .campaign-section-h4 {
    margin: 20px 0 12px;
    font-size: 16px
  }
}
.campaign-section-h4.is-center {
  text-align: center
}
.campaign-section-h4.is-left {
  text-align: left
}
.campaign-section-h4.is-left h3::before {
  display: none;
  visibility: hidden
}
.campaign-text {
  margin-top: 24px;
  margin-bottom: 16px
}
.campaign-text.is-center {
  text-align: center
}
.campaign-note {
  font-size: 14px;
  opacity: .7;
  margin-top: 24px;
  margin-bottom: 16px
}
.campaign-note.is-center {
  text-align: center
}
.campaign-button-small {
  background-color: var(--color-primary);
  color: #fff;
  width: 400px;
  max-width: 100%;
  font-weight: 700;
  padding: 14px 54px;
  position: relative;
  display: block;
  border-radius: 4px;
  text-align: center;
  text-decoration: none;
  margin-top: 40px;
  margin-bottom: 24px
}
.campaign-button-small.is-center {
  margin: 40px auto 24px
}
.campaign-button-small.is-border {
  background-color: var(--color-base)!important;
  color: var(--color-primary);
  border: 1px solid var(--color-primary)
}
.campaign-button-small.is-border:hover {
  background-color: var(--color-primary)!important;
  color: #fff
}
.campaign-button-small.is-border:hover .icon svg {
  color: #fff
}
.campaign-button-small.is-border .icon svg {
  color: var(--color-primary);
  transition: color .5s ease
}
.campaign-button-small.is-external .icon svg {
  width: 20px
}
.campaign-button-small.is-pdf .icon svg {
  width: 20px
}
@media (max-width:768px) {
  .campaign-button-small {
    width: 400px;
    max-width: 80%;
    padding: 16px 54px
  }
}
.campaign-button-small .icon {
  display: block;
  top: 50%;
  position: absolute;
  transform: translateY(-50%);
  right: 24px;
  z-index: 1
}
.campaign-button-small .icon svg {
  color: #fff;
  width: 24px;
  display: block
}
.campaign-button-big {
  background-color: var(--color-sub2);
  color: #fff;
  width: 100%;
  font-weight: 700;
  padding: 24px 40px;
  position: relative;
  display: block;
  border-radius: 4px;
  text-align: center;
  text-decoration: none;
  margin-top: 80px;
  margin-bottom: 40px
}
@media (max-width:480px) {
  .campaign-button-big {
    margin-top: 64px;
    margin-bottom: 32px
  }
}
.campaign-button-big.is-border {
  background-color: var(--color-base);
  color: var(--color-text);
  border: 1px solid var(--color-text)
}
.campaign-button-big.is-border .icon svg {
  color: var(--color-text)
}
.campaign-button-big.is-external .icon svg {
  width: 16px;
  height: 16px
}
.campaign-button-big.is-pdf .icon svg {
  width: 16px;
  height: 16px
}
.campaign-button-big .icon {
  display: block;
  top: 50%;
  position: absolute;
  transform: translateY(-50%);
  right: 24px;
  z-index: 1
}
.campaign-button-big .icon svg {
  color: #fff;
  width: 33px;
  height: 9px;
  display: block
}
.campaign-linktext {
  display: flex;
  align-items: center;
  column-gap: 6px;
  text-decoration: none;
  margin: 16px 0
}
.campaign-linktext.is-center {
  justify-content: center
}
.campaign-linktext .icon svg {
  width: 12px;
  height: 12px;
  color: var(--color-primary)
}
.campaign-list {
  list-style: none;
  padding-left: 0
}
.campaign-list .campaign-text {
  align-items: center;
  display: flex;
  position: relative
}
.campaign-list .campaign-text p {
  padding-left: .4em
}
.campaign-list .campaign-text::before {
  background-color: var(--color-primary);
  border-radius: 50%;
  width: 4px;
  height: 4px;
  display: block;
  content: "";
  flex-shrink: 0
}
.campaign-list .campaign-text.is-center {
  justify-content: center
}
.campaign-list-number {
  padding-left: 0;
  list-style: none;
  counter-reset: campaign_list_count
}
.campaign-list-number li .campaign-text {
  display: flex
}
.campaign-list-number li .campaign-text.is-center {
  justify-content: center
}
.campaign-list-number li .campaign-text::before {
  flex-shrink: 0;
  color: var(--color-primary);
  margin-right: .7em;
  counter-increment: campaign_list_count;
  content: counter(campaign_list_count) "."
}
.campaign-detail {
  padding-bottom: 80px
}
.campaign-detail .campaign-detail__container {
  display: flex;
  width: 100%
}
@media (max-width:768px) {
  .campaign-detail .campaign-detail__container {
    flex-direction: column-reverse
  }
}
.campaign-detail .campaign-detail__container:first-of-type {
  margin-top: 80px
}
.campaign-detail .campaign-detail__container:not(:first-of-type) {
  margin-top: 120px
}
.campaign-detail .campaign-detail__left {
  width: 50%;
  padding-right: 40px;
  display: flex;
  flex-direction: column;
  justify-content: space-between
}
@media (max-width:768px) {
  .campaign-detail .campaign-detail__left {
    flex-direction: column;
    width: 100%;
    padding-right: 0
  }
}
.campaign-detail .campaign-detail__left .title {
  font-size: 24px;
  font-weight: 700;
  border-top: 4px solid var(--color-primary);
  padding-top: 24px;
  margin: 0
}
@media (max-width:768px) {
  .campaign-detail .campaign-detail__left .title {
    display: none;
    visibility: hidden
  }
}
.campaign-detail .campaign-detail__left .text {
  padding-top: 48px
}
@media (max-width:768px) {
  .campaign-detail .campaign-detail__left .text {
    padding-top: 40px
  }
}
.campaign-detail .campaign-detail__left .buttons {
  display: flex;
  flex-direction: column;
  row-gap: 16px;
  margin-top: 40px
}
@media (max-width:768px) {
  .campaign-detail .campaign-detail__left .buttons {
    margin-top: 40px;
    align-items: center
  }
}
.campaign-detail .campaign-detail__left .buttons a {
  background-color: var(--color-primary);
  margin-top: 0;
  margin-bottom: 0
}
.campaign-detail .campaign-detail__left .buttons a:nth-child(2) {
  --color-primary: var(--color-sub1)
}
.campaign-detail .campaign-detail__right {
  width: 50%
}
@media (max-width:768px) {
  .campaign-detail .campaign-detail__right {
    width: 100%
  }
}
@media (max-width:768px) {
  .campaign-detail .campaign-detail__right .images {
    margin-top: 35px
  }
}
.campaign-detail .campaign-detail__right .images img {
  width: 100%;
  border-radius: 8px
}
.campaign-detail .campaign-detail__right .images__row1 .image {
  width: 100%
}
@media (max-width:768px) {
  .campaign-detail .campaign-detail__right .images__row1 .image img {
    border-radius: 12px
  }
}
.campaign-detail .campaign-detail__right .images__row2 {
  margin-top: 16px;
  align-items: center;
  display: flex;
  justify-content: space-between
}
.campaign-detail .campaign-detail__right .images__row2 .image {
  width: calc(100% / 2 - 8px);
  aspect-ratio: 16/9
}
.campaign-detail .campaign-detail__right .images__row2 .image img {
  height: 100%
}
.campaign-detail .button-area {
  margin-top: 80px
}
@media (max-width:768px) {
  .campaign-detail .button-area {
    margin-top: 64px
  }
}
.campaign-detail .title--sp {
  font-size: 20px;
  padding-left: 24px;
  border-left: 4px solid var(--color-primary);
  display: none;
  visibility: hidden;
  font-weight: 700;
  margin: 0
}
@media (max-width:768px) {
  .campaign-detail .title--sp {
    visibility: visible;
    display: block
  }
}
@media (max-width:480px) {
  .campaign-detail .title--sp {
    font-size: 16px
  }
}
.campaign-summary {
  padding-bottom: 80px
}
.campaign-summary .images {
  padding-top: 40px;
  justify-content: center;
  align-items: flex-start;
  display: flex;
  width: 100%;
  column-gap: 32px
}
@media (max-width:768px) {
  .campaign-summary .images {
    display: block
  }
}
.campaign-summary .image {
  width: calc(100% / 2 - 32px);
  aspect-ratio: 3/2;
  height: auto
}
@media (max-width:768px) {
  .campaign-summary .image {
    width: 100%
  }
  .campaign-summary .image:not(:first-of-type) {
    margin-top: 64px
  }
}
.campaign-summary .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 8px
}
.campaign-summary .image figcaption {
  font-size: 14px;
  padding-top: 24px;
  text-align: center
}
.campaign-1col-image {
  padding-bottom: 80px
}
.campaign-1col-image .image {
  width: 100%
}
.campaign-1col-image .image img {
  width: 100%;
  height: auto;
  object-fit: cover;
  border-radius: 12px
}
.campaign-1col-image .text {
  padding-top: 40px;
  text-align: center
}
.campaign-1col-image .button-area {
  margin-top: 64px
}
@media (max-width:768px) {
  .campaign-1col-image .button-area {
    margin-top: 24px
  }
}
.campaign-1col-image .button-area a {
  margin: 0 auto
}
.campaign-table {
  padding-bottom: 80px
}
.campaign-table .table {
  border-radius: 8px;
  overflow: hidden
}
.campaign-table .table td,
.campaign-table .table th {
  border: none
}
.campaign-table tr .td,
.campaign-table tr .th {
  border-top: 1px dashed rgba(0,0,0,.15)!important
}
.campaign-table tr:first-of-type .td,
.campaign-table tr:first-of-type .th {
  border-top: 1px solid rgba(0,0,0,.15)!important
}
.campaign-table tr:last-of-type .td,
.campaign-table tr:last-of-type .th {
  border-bottom: 1px solid rgba(0,0,0,.15)
}
@media (max-width:768px) {
  .campaign-table .td,
  .campaign-table .th {
    display: block;
    border-top: none!important;
    border-bottom: none!important
  }
}
.campaign-table .th {
  background-color: var(--color-sub2);
  text-align: center;
  padding: 24px;
  font-weight: 700;
  width: 30%;
  color: #fff
}
@media (max-width:768px) {
  .campaign-table .th {
    width: 100%!important;
    text-align: left;
    padding: 16px 24px
  }
}
.campaign-table .td {
  background-color: rgba(255,255,255,.25);
  padding: 24px
}
.campaign-table .td ol,
.campaign-table .td ul {
  padding-left: 0
}
@media (max-width:768px) {
  .campaign-table .td {
    padding: 16px 24px
  }
}
.campaign-menuset {
  padding-bottom: 80px
}
.campaign-menuset li,
.campaign-menuset ul {
  list-style: none;
  margin: 0;
  padding: 0
}
.campaign-menuset .menus {
  padding-top: 64px;
  display: flex;
  column-gap: 16px;
  row-gap: 16px;
  flex-wrap: wrap
}
@media (max-width:768px) {
  .campaign-menuset .menus {
    padding-top: 40px;
    flex-direction: column;
    column-gap: 0;
    row-gap: 40px
  }
}
.campaign-menuset .menu {
  background-color: rgba(255,255,255,.35);
  padding: 24px 16px;
  border: 1px solid var(--color-primary);
  border-radius: 6px;
  width: calc(100% / 3 - 11px)
}
@media (max-width:768px) {
  .campaign-menuset .menu {
    border-radius: 12px;
    width: 100%;
    padding: 7%
  }
}
.campaign-menuset .menu__title {
  margin: 0;
  font-size: 16px;
  font-weight: 700;
  text-align: center
}
.campaign-menuset .menu__thumbnail {
  margin-top: 24px;
  width: 100%;
  aspect-ratio: 3/2
}
.campaign-menuset .menu__thumbnail img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 4px
}
.campaign-menuset .menu__desc {
  padding-top: 24px;
  font-size: 14px
}
.campaign-menuset .button-area {
  margin-top: 40px
}
@media (max-width:768px) {
  .campaign-menuset .button-area {
    margin-top: 36px
  }
}
.campaign-menuset .button-area a {
  width: 100%;
  max-width: 100%;
  margin-bottom: 0
}
.campaign-point {
  padding-bottom: 80px
}
@media (max-width:768px) {
  .campaign-point {
    padding-bottom: 64px
  }
}
.campaign-point li,
.campaign-point ul {
  list-style: none;
  margin: 0;
  padding: 0
}
.campaign-point .points {
  border-radius: 8px;
  border: 1px solid var(--color-text)
}
.campaign-point .point {
  display: flex;
  width: 100%;
  padding: 24px 40px
}
@media (max-width:768px) {
  .campaign-point .point {
    flex-direction: column;
    row-gap: 12px;
    padding-left: 7%;
    padding-right: 7%
  }
}
.campaign-point .point:not(:first-of-type) {
  border-top: 1px dashed rgba(0,0,0,.25)
}
.campaign-point .point__title {
  color: var(--color-primary);
  font-size: 18px;
  font-weight: 600;
  font-family: "Noto Serif JP",serif;
  width: 25%
}
@media (max-width:768px) {
  .campaign-point .point__title {
    font-size: 16px;
    width: 100%
  }
}
.campaign-point .point__text {
  width: 75%;
  padding-left: 24px
}
.campaign-point .point__text .campaign-text {
  margin-top: 0;
  margin-bottom: 0
}
@media (max-width:768px) {
  .campaign-point .point__text {
    width: 100%;
    padding-left: 0
  }
}
.campaign-youtube {
  padding-bottom: 80px
}
.campaign-youtube .movie {
  width: 720px;
  height: 405px;
  margin: 0 auto;
  margin-top: 64px;
  border-radius: 8px;
  overflow: hidden
}
@media (max-width:768px) {
  .campaign-youtube .movie {
    margin: 64px calc(50% - 50vw) 0;
    padding: 4px calc(50vw - 50% + 8px);
    width: 100vw;
    border-radius: 0;
    aspect-ratio: 16/9;
    height: auto
  }
}
.campaign-youtube .movie iframe {
  width: 100%;
  height: 100%
}
.campaign-accordion {
  padding-bottom: 80px
}
.campaign-accordion .items {
  padding-top: 40px
}
.campaign-accordion details:not(:first-of-type) {
  margin-top: 16px
}
.campaign-accordion details[open] .icon {
  transform: rotate(-180deg)
}
.campaign-accordion summary::-webkit-details-marker {
  display: none
}
.campaign-accordion summary {
  background-color: rgba(0,0,0,.05);
  align-items: center;
  border-radius: 8px;
  display: flex;
  cursor: pointer;
  padding: 24px
}
.campaign-accordion .title {
  font-weight: 500;
  padding-left: 24px
}
.campaign-accordion .icon {
  transition: transform .3s
}
.campaign-accordion .icon svg {
  color: var(--color-primary);
  width: 24px
}
@media (max-width:768px) {
  .campaign-accordion .icon svg {
    width: 20px
  }
}
.campaign-accordion .inner-text {
  padding-top: 24px;
  padding-bottom: 40px
}
.campaign-history {
  padding-bottom: 80px;
  flex-shrink: 0
}
@media (max-width:768px) {
  .campaign-history {
    padding-left: 12px
  }
}
.campaign-history ol,
.campaign-history ul {
  list-style: none;
  margin: 0;
  padding: 0
}
.campaign-history .flow__item {
  border-left: 1px solid rgba(0,0,0,.15);
  padding-top: 40px;
  border-top: 1px dashed rgba(0,0,0,.15);
  padding-bottom: 80px
}
.campaign-history .flow__item:first-child {
  border-top: none;
  padding-top: 0
}
.campaign-history .head {
  padding-left: 92px;
  align-items: center;
  display: flex;
  position: relative
}
@media (max-width:768px) {
  .campaign-history .head {
    padding-left: 40px;
    flex-direction: column;
    row-gap: 8px;
    align-items: flex-start
  }
}
.campaign-history .head::before {
  content: "";
  width: 24px;
  height: 24px;
  background-color: var(--color-primary);
  border-radius: 50%;
  top: 50%;
  position: absolute;
  transform: translateY(-50%);
  left: -12px
}
@media (max-width:768px) {
  .campaign-history .head::before {
    top: 45px
  }
}
.campaign-history .content {
  padding-left: 92px
}
@media (max-width:768px) {
  .campaign-history .content {
    padding-left: 40px
  }
}
.campaign-history .date {
  color: var(--color-primary);
  font-family: "Noto Serif JP",serif;
  font-size: 52px;
  font-weight: 600
}
@media (max-width:768px) {
  .campaign-history .date {
    font-size: 48px
  }
}
.campaign-history .title {
  font-weight: 700;
  padding-left: 40px;
  font-size: 20px
}
@media (max-width:768px) {
  .campaign-history .title {
    padding-left: 0
  }
}
.campaign-history .text {
  padding-top: 24px;
  margin: 0
}
@media (max-width:768px) {
  .campaign-history .text {
    padding-top: 40px
  }
}
.campaign-history .images {
  padding-top: 40px;
  display: flex;
  column-gap: 24px
}
@media (max-width:768px) {
  .campaign-history .images {
    padding-top: 24px;
    column-gap: 12px
  }
}
.campaign-history .image {
  width: 388px;
  height: 259px
}
@media (max-width:768px) {
  .campaign-history .image {
    width: calc(100% / 2 - 12px);
    height: auto;
    aspect-ratio: 3/2
  }
}
.campaign-history .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 8px
}
.campaign-slider {
  padding-bottom: 80px
}
.campaign-slider .swiper {
  width: 100%
}
.campaign-slider .slider img {
  aspect-ratio: 3/2;
  border-radius: 12px;
  object-fit: cover
}
.campaign-slider .slider-thumbnail {
  margin-top: 40px
}
@media (max-width:768px) {
  .campaign-slider .slider-thumbnail {
    margin-top: 24px
  }
}
.campaign-slider .slider-thumbnail .swiper-wrapper {
  display: flex;
  column-gap: 16px;
  justify-content: center
}
@media (max-width:768px) {
  .campaign-slider .slider-thumbnail .swiper-wrapper {
    max-width: 60%;
    margin: 0 auto;
    column-gap: 8px
  }
}
.campaign-slider .slider-thumbnail .swiper-slide {
  cursor: pointer;
  max-width: 147px;
  border-radius: 4px;
  overflow: hidden
}
@media (max-width:768px) {
  .campaign-slider .slider-thumbnail .swiper-slide {
    max-width: calc(100% / 5);
    width: calc(100% / 5);
    aspect-ratio: 3/2
  }
}
.campaign-slider .slider-thumbnail .swiper-slide::after {
  border: 4px solid var(--color-primary);
  background-color: rgba(0,0,0,.3);
  content: '';
  left: 0;
  height: 100%;
  position: absolute;
  top: 0;
  width: 100%;
  opacity: 0;
  z-index: 1;
  transition: opacity .2s
}
.campaign-slider .slider-thumbnail .swiper-slide.swiper-slide-thumb-active::after {
  opacity: 1
}
.campaign-slider .slider-thumbnail .swiper-slide img {
  width: 147px;
  height: 97px;
  object-fit: cover;
  position: relative;
  display: block
}
@media (max-width:768px) {
  .campaign-slider .slider-thumbnail .swiper-slide img {
    width: 100%;
    height: 100%
  }
}
.campaign-slider .swiper-slide img {
  height: auto;
  width: 100%
}
.campaign-slider .swiper-button-next::after,
.campaign-slider .swiper-button-prev::after {
  display: none;
  visibility: hidden
}
.campaign-slider .swiper-button-next img,
.campaign-slider .swiper-button-prev img {
  width: 24px;
  height: 48px;
  object-fit: cover
}
.campaign-slider .slider-text {
  padding-top: 40px
}
@media (max-width:768px) {
  .campaign-slider .slider-text {
    padding-top: 24px
  }
}
.campaign-slider .slider-text .swiper-slide {
  text-align: center
}