@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Zen+Kaku+Gothic+New:wght@300;400;500;700;900&display=swap");
:root {
  --color-white: #fff;
  --color-blue: #006AB9;
  --color-light-blue: #F0F8FF;
  --color-primary: var(--color-blue);
  --color-text: #333;
  --color-text-light: #737373;
  --color-bg: var(--color-white);
  --text-primary: 'Noto Sans JP', sans-serif;
  --text-secondary: 'Zen Kaku Gothic New', sans-serif;
  --text-size-regular: clamp(1.6rem, 1.6rem + 0vw, 1.6rem);
  --text-weight-regular: 500;
  --text-weight-medium: 700;
  --content-width-size: 130.4rem;
  --content-width: min(100%, var(--content-width-size));
  --content-padding: clamp(2.4rem, 1.1383399209rem + 1.581027668vw, 3.2rem);
  --header-height: clamp(6rem, 2.2150197628rem + 4.743083004vw, 8.4rem);
  --trd-duration: 0.5s;
  --trd-timing: cubic-bezier(.165, .84, .44, 1);
  --header-index: 900;
  --footer-index: 800;
  --nav-index: 500;
  --main-index: 400;
}
@media (max-width: 768px) {
  :root {
    --content-padding: 8vw;
    --text-size-regular: 4.2666666667vw;
    --header-height: 16vw;
  }
}

:where(:not(:is(ul, ol, li))) {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  box-sizing: border-box;
  background-color: transparent;
}

html, body {
  font-size: 62.5%;
}

:where(:is(article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, main)) {
  display: block;
}

:where(:is(ul, ol):not(.is-list-normal)) {
  padding: 0;
  margin: 0;
  list-style-type: none;
}
:where(:is(ul, ol):not(.is-list-normal)) li {
  margin: 0;
  padding: 0;
}

:where(ul.is-list-normal) {
  padding-left: 1em;
  list-style: disc;
}

:where(:is(blockquote, q)) {
  quotes: none;
}
:where(:is(blockquote, q))::before, :where(:is(blockquote, q))::after {
  content: none;
}

:where(a) {
  text-decoration: none;
  color: inherit;
}

:where(img) {
  display: inline-flex;
  vertical-align: bottom;
  max-width: 100%;
}

:where(input) {
  vertical-align: middle;
}

:where(label) {
  cursor: pointer;
}

:where(picture) {
  max-width: 100%;
}

:where(input, select) {
  vertical-align: middle;
}

:where(br) {
  line-height: 0;
}

:where(input, textarea, select, button) {
  font: inherit;
  font-size: 16px;
}

:where(:is(button)) {
  color: var(--color-text);
  cursor: pointer;
}

:where(:is(input:is([type=checkbox][type=radio]), select, button)) {
  cursor: pointer;
}

:where(:is(input[type=submit], input[type=button])) {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  -moz-appearance: button;
       appearance: button;
  border: none;
  box-sizing: border-box;
}
:where(:is(input[type=submit], input[type=button]))::-webkit-search-decoration {
  display: none;
}
:where(:is(input[type=submit], input[type=button])):focus {
  outline-offset: -2px;
}

:where(:is(h1, h2, h3, h4, h5, h6)) {
  font-size: inherit;
  font-weight: inherit;
}

[data-simplebar] {
  position: relative;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-content: flex-start;
  align-items: flex-start;
}

.simplebar-wrapper {
  overflow: hidden;
  width: inherit;
  height: inherit;
  max-width: inherit;
  max-height: inherit;
}

.simplebar-mask {
  direction: inherit;
  position: absolute;
  overflow: hidden;
  padding: 0;
  margin: 0;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  width: auto !important;
  height: auto !important;
  z-index: 0;
}

.simplebar-offset {
  direction: inherit !important;
  box-sizing: inherit !important;
  resize: none !important;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  padding: 0;
  margin: 0;
  -webkit-overflow-scrolling: touch;
}

.simplebar-content-wrapper {
  direction: inherit;
  box-sizing: border-box !important;
  position: relative;
  display: block;
  height: 100%;
  width: auto;
  max-width: 100%;
  max-height: 100%;
  overflow: auto;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

.simplebar-content-wrapper::-webkit-scrollbar, .simplebar-hide-scrollbar::-webkit-scrollbar {
  display: none;
  width: 0;
  height: 0;
}

.simplebar-content:after, .simplebar-content:before {
  content: " ";
  display: table;
}

.simplebar-placeholder {
  max-height: 100%;
  max-width: 100%;
  width: 100%;
  pointer-events: none;
}

.simplebar-height-auto-observer-wrapper {
  box-sizing: inherit !important;
  height: 100%;
  width: 100%;
  max-width: 1px;
  position: relative;
  float: left;
  max-height: 1px;
  overflow: hidden;
  z-index: -1;
  padding: 0;
  margin: 0;
  pointer-events: none;
  flex-grow: inherit;
  flex-shrink: 0;
  flex-basis: 0;
}

.simplebar-height-auto-observer {
  box-sizing: inherit;
  display: block;
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  height: 1000%;
  width: 1000%;
  min-height: 1px;
  min-width: 1px;
  overflow: hidden;
  pointer-events: none;
  z-index: -1;
}

.simplebar-track {
  z-index: 1;
  position: absolute;
  right: 0;
  bottom: 0;
  pointer-events: none;
  overflow: hidden;
}

[data-simplebar].simplebar-dragging {
  pointer-events: none;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}

[data-simplebar].simplebar-dragging .simplebar-content {
  pointer-events: none;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}

[data-simplebar].simplebar-dragging .simplebar-track {
  pointer-events: all;
}

.simplebar-scrollbar {
  position: absolute;
  left: 0;
  right: 0;
  min-height: 10px;
}

.simplebar-scrollbar:before {
  position: absolute;
  content: "";
  background: #000;
  border-radius: 7px;
  left: 2px;
  right: 2px;
  opacity: 0;
  transition: opacity 0.2s 0.5s linear;
}

.simplebar-scrollbar.simplebar-visible:before {
  opacity: 0.5;
  transition-delay: 0s;
  transition-duration: 0s;
}

.simplebar-track.simplebar-vertical {
  top: 0;
  width: 11px;
}

.simplebar-scrollbar:before {
  top: 2px;
  bottom: 2px;
  left: 2px;
  right: 2px;
}

.simplebar-track.simplebar-horizontal {
  left: 0;
  height: 11px;
}

.simplebar-track.simplebar-horizontal .simplebar-scrollbar {
  right: auto;
  left: 0;
  top: 0;
  bottom: 0;
  min-height: 0;
  min-width: 10px;
  width: auto;
}

[data-simplebar-direction=rtl] .simplebar-track.simplebar-vertical {
  right: auto;
  left: 0;
}

.simplebar-dummy-scrollbar-size {
  direction: rtl;
  position: fixed;
  opacity: 0;
  visibility: hidden;
  height: 500px;
  width: 500px;
  overflow-y: hidden;
  overflow-x: scroll;
  -ms-overflow-style: scrollbar !important;
}

.simplebar-dummy-scrollbar-size > div {
  width: 200%;
  height: 200%;
  margin: 10px 0;
}

.simplebar-hide-scrollbar {
  position: fixed;
  left: 0;
  visibility: hidden;
  overflow-y: scroll;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

:where(:root, body) {
  overflow-x: clip;
}

:target {
  scroll-margin-top: var(--header-height);
}

html {
  scroll-behavior: smooth;
  font-size: 62.5%;
}

body {
  font-family: var(--text-primary);
  color: var(--color-text);
  background-color: var(--color-bg);
  font-size: var(--text-size-regular);
  line-height: 1.75;
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

.container {
  width: var(--content-width);
  margin-inline: auto;
  padding-inline: var(--content-padding);
}

.header {
  position: relative;
  z-index: var(--header-index);
}

.main {
  flex: 1;
  position: relative;
  z-index: var(--main-index);
}

.footer {
  position: relative;
  z-index: var(--footer-index);
  margin-top: auto;
}

@media (min-width: 769px) {
  .sp-only {
    display: none;
  }
}
@media (max-width: 768px) {
  .pc-only {
    display: none;
  }
}
.js-inview {
  transition: opacity var(--trd-duration) var(--trd-timing), transform var(--trd-duration) var(--trd-timing);
}
.js-inview.is-inview-fade:not(.is-active) {
  opacity: 0;
}
.js-inview.is-inview-fade.is-active {
  animation: inview-fade 1.8s ease both;
}
.js-inview.is-inview-up:not(.is-active) {
  opacity: 0;
  transform: translateY(100px);
}
.js-inview.is-inview-up.is-active {
  animation: inview-up 1.8s ease both;
}
.js-inview.is-inview-down:not(.is-active) {
  opacity: 0;
  transform: translateY(-100px);
}
.js-inview.is-inview-down.is-active {
  animation: inview-down 1.8s ease both;
}
.js-inview.is-inview-right:not(.is-active) {
  opacity: 0;
  transform: translateX(100px);
}
.js-inview.is-inview-right.is-active {
  animation: inview-right 1.8s ease both;
}
.js-inview.is-inview-left:not(.is-active) {
  opacity: 0;
  transform: translateX(-100px);
}
.js-inview.is-inview-left.is-active {
  animation: inview-left 1.8s ease both;
}
.js-inview.is-active:not(.is-inview-fade):not(.is-inview-up):not(.is-inview-down):not(.is-inview-right):not(.is-inview-left) {
  opacity: 1;
  transform: translate(0, 0);
}

@keyframes inview-fade {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes inview-up {
  0% {
    opacity: 0;
    transform: translateY(100px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes inview-down {
  0% {
    opacity: 0;
    transform: translateY(-100px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes inview-right {
  0% {
    opacity: 0;
    transform: translateX(100px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes inview-left {
  0% {
    opacity: 0;
    transform: translateX(-100px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
.section {
  margin-block: clamp(4rem, 0.2150197628rem + 4.743083004vw, 6.4rem);
}
@media (max-width: 768px) {
  .section {
    margin-block: 10.6666666667vw;
  }
}

.header {
  height: var(--header-height);
  background-color: var(--color-bg);
  position: sticky;
  top: 0;
  left: 0;
}
.header__inner {
  display: flex;
  justify-content: space-between;
  height: 100%;
  padding-right: clamp(2rem, -7.4624505929rem + 11.8577075099vw, 8rem);
}
.header__logo img {
  height: var(--header-height);
}
.header__logo-link {
  display: block;
}
.header__navigation {
  display: flex;
  align-items: center;
}
.header__navigation-button {
  flex: 0 0 auto;
  cursor: pointer;
  position: relative;
  z-index: calc(var(--nav-index) + 10);
  width: 12.8vw;
  height: 12.8vw;
  border-radius: 50%;
  background-color: var(--color-primary);
  display: none;
}
@media (max-width: 768px) {
  .header__navigation-button {
    display: block;
  }
}
.header__navigation-button-icon {
  position: absolute;
  inset: 0;
  margin: auto;
  width: 6.4vw;
  height: 2px;
  background-color: var(--color-white);
}
.header__navigation-button-icon::before, .header__navigation-button-icon::after {
  content: "";
  position: absolute;
  inset: 0;
  background-color: var(--color-white);
  transition: transform 0.3s ease, translate 0.3s ease;
}
.header__navigation-button-icon::before {
  translate: 0% -350%;
}
.header__navigation-button-icon::after {
  translate: 0% 350%;
}
.is-nav-open .header__navigation-button-icon {
  background-color: transparent;
}
.is-nav-open .header__navigation-button-icon::before {
  translate: 0 0;
  transform: rotate(45deg);
}
.is-nav-open .header__navigation-button-icon::after {
  translate: 0 0;
  transform: rotate(-45deg);
}
@media (max-width: 768px) {
  .header__navigation .navigation {
    position: absolute;
    top: var(--header-height);
    left: 0;
    width: 100vw;
    height: calc(100vh - var(--header-height));
    opacity: 0;
    transition: opacity 0.35s ease;
    background-color: var(--color-white);
    pointer-events: none;
    background-image: url(../images/navigation_bg_bottom.png), url(../images/bg_tile_sp.jpg);
    background-size: 100% auto, auto;
    background-repeat: no-repeat, repeat;
    background-position: left bottom, left top;
    padding: 26.6666666667vw 10.6666666667vw 0;
  }
}
.header__navigation .navigation__list {
  display: flex;
  flex-wrap: wrap;
  background-color: var(--color-primary);
  padding-inline: clamp(0rem, -6.3083003953rem + 7.9051383399vw, 4rem);
  border-radius: 100vh;
}
@media (max-width: 768px) {
  .header__navigation .navigation__list {
    background-color: transparent;
    border-radius: inherit;
    border-bottom: solid 1px var(--color-primary);
  }
}
.header__navigation .navigation__item {
  margin-left: clamp(0rem, -3.7849802372rem + 4.743083004vw, 2.4rem);
}
@media (max-width: 768px) {
  .header__navigation .navigation__item {
    width: 100%;
    border-top: solid 1px var(--color-primary);
  }
}
.header__navigation .navigation__item:first-child {
  margin-left: 0;
}
.header__navigation .navigation__link {
  position: relative;
  display: inline-block;
  color: var(--color-white);
  font-size: clamp(1.6rem, 1.6rem + 0vw, 1.6rem);
  font-weight: 500;
  padding-block: clamp(0rem, -1.2616600791rem + 1.581027668vw, 0.8rem);
  transition: 0.5s;
}
@media (max-width: 768px) {
  .header__navigation .navigation__link {
    display: block;
    color: var(--color-primary);
    font-size: 4vw;
    font-weight: var(--text-weight-regular);
    padding-block: 6.4vw;
  }
}
@media (max-width: 768px) {
  .header__navigation .navigation__link:after {
    content: "";
    display: block;
    width: 2.9333333333vw;
    height: 4.2666666667vw;
    background-color: var(--color-primary);
    clip-path: polygon(0 0, 0 100%, 100% 50%);
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
  }
}
.header__navigation .navigation__link:hover {
  opacity: 0.7;
}
.header__navigation .navigation__link-title {
  display: none;
}
@media (max-width: 768px) {
  .header__navigation .navigation__link-title {
    display: block;
    font-size: 6.4vw;
    font-weight: var(--text-weight-medium);
    line-height: 1.4;
  }
}
.is-nav-open .header__navigation .navigation {
  pointer-events: auto;
  animation: nav-in 1s ease forwards;
  z-index: var(--nav-index);
}
@keyframes nav-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.header__navigation .navigation__deco-1 {
  display: none;
}
@media (max-width: 768px) {
  .header__navigation .navigation__deco-1 {
    display: block;
    width: 10.6666666667vw;
    position: absolute;
    top: 5.8666666667vw;
    left: 8.5333333333vw;
  }
}
.header__navigation .navigation__deco-2 {
  display: none;
}
@media (max-width: 768px) {
  .header__navigation .navigation__deco-2 {
    display: block;
    width: 14.1333333333vw;
    position: absolute;
    top: 7.2vw;
    right: 13.1626666667vw;
  }
}
.header__navigation .navigation__deco-3 {
  display: none;
}
@media (max-width: 768px) {
  .header__navigation .navigation__deco-3 {
    display: block;
    width: 15.2vw;
    position: absolute;
    bottom: 27.7333333333vw;
    left: 4.8vw;
  }
}
.header__navigation .navigation__deco-4 {
  display: none;
}
@media (max-width: 768px) {
  .header__navigation .navigation__deco-4 {
    display: block;
    width: 9.6vw;
    position: absolute;
    bottom: 22.6266666667vw;
    right: 3.4666666667vw;
  }
}

.footer {
  background-color: var(--color-primary);
}
.footer__copyright {
  display: block;
  color: var(--color-white);
  font-size: clamp(1.2rem, 0.7268774704rem + 0.5928853755vw, 1.5rem);
  font-weight: 500;
  font-family: var(--text-primary);
  line-height: 1;
  text-align: center;
  padding: clamp(1rem, -0.4982213439rem + 1.8774703557vw, 1.95rem) 0;
}
@media (max-width: 768px) {
  .footer__copyright {
    padding: 2.6666666667vw 0;
  }
}

.kv {
  position: relative;
}
.kv__heading picture img {
  width: 100%;
  height: auto;
}
.kv__floating-wrap {
  position: absolute;
  bottom: 0;
  right: 0;
}
@media (max-width: 768px) {
  .kv__floating-wrap {
    bottom: 9.296vw;
  }
}
.kv__floating {
  width: clamp(11.1rem, -11.7675889328rem + 28.6561264822vw, 25.6rem);
  position: absolute;
  bottom: 0;
  right: 0;
}
.kv__floating.is-follow {
  position: fixed;
  bottom: clamp(3.2rem, -0.2695652174rem + 4.347826087vw, 5.4rem);
  right: 0;
  z-index: 10;
  animation: kv-floating-follow-in 0.4s ease-out forwards;
}

@keyframes kv-floating-follow-in {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.project {
  position: relative;
  background-image: url(../images/bg_tile.jpg);
  background-size: 100% auto;
  background-repeat: repeat;
  padding-block: clamp(6rem, -3.4624505929rem + 11.8577075099vw, 12rem) clamp(7.5rem, -10.4786561265rem + 22.5296442688vw, 18.9rem);
}
@media (max-width: 768px) {
  .project {
    background-image: url(../images/bg_tile_sp.jpg);
    background-size: auto;
  }
}
.project__heading {
  width: 100vw;
  margin: 0 calc(50% - 50vw) clamp(2.4rem, -2.6466403162rem + 6.3241106719vw, 5.6rem);
  text-align: center;
  color: var(--color-primary);
}
.project__heading-catch {
  display: block;
  font-size: clamp(1.6rem, 0.9691699605rem + 0.790513834vw, 2rem);
  font-weight: var(--text-weight-regular);
  line-height: 1.8;
}
.project__heading-title {
  display: inline-block;
  margin-top: clamp(1rem, 0.0537549407rem + 1.185770751vw, 1.6rem);
  font-family: var(--text-secondary);
  font-size: clamp(3rem, -1.7312252964rem + 5.9288537549vw, 6rem);
  font-weight: var(--text-weight-medium);
  line-height: 1.2;
  padding: 0 clamp(4.609rem, 1.6267509881rem + 3.7371541502vw, 6.5rem);
  background-image: url(../images/sec__title_deco_left.png), url(../images/sec__title_deco_right.png);
  background-repeat: no-repeat, no-repeat;
  background-position: left top clamp(0.6rem, 3.4347826087rem + -2.1739130435vw, 1.7rem), right top clamp(0.6rem, 3.4347826087rem + -2.1739130435vw, 1.7rem);
  background-size: clamp(3.5rem, 2.5537549407rem + 1.185770751vw, 4.1rem) auto;
}
.project__heading-title-small {
  font-size: clamp(2.4rem, -0.1233201581rem + 3.162055336vw, 4rem);
}
.project__image {
  display: flex;
  justify-content: center;
  gap: clamp(1.5rem, -4.0197628458rem + 6.9169960474vw, 5rem);
}
.project__item {
  width: clamp(11.2rem, -8.9865612648rem + 25.2964426877vw, 24rem);
}
.project__body {
  text-align: center;
}
.project__lead {
  color: var(--color-primary);
  font-size: clamp(2.4rem, 0.1920948617rem + 2.766798419vw, 3.8rem);
  font-weight: var(--text-weight-medium);
  line-height: 1.8;
  margin-top: clamp(1.6rem, -3.762055336rem + 6.7193675889vw, 5rem);
}
.project__lead small {
  display: inline-block;
  color: var(--color-text);
  font-size: clamp(2rem, 0.5806324111rem + 1.7786561265vw, 2.9rem);
}
.project__lead strong {
  display: inline-block;
  font-size: clamp(3.6rem, -0.1849802372rem + 4.743083004vw, 6rem);
  font-weight: var(--text-weight-medium);
  background-image: url(../images/project__lead_ofuro.svg);
  background-repeat: no-repeat;
  background-position: center top;
  background-size: clamp(4.7rem, -1.6083003953rem + 7.9051383399vw, 8.7rem) auto;
}
.project__paragraph {
  font-size: clamp(1.8rem, 0.8537549407rem + 1.185770751vw, 2.4rem);
  font-weight: var(--text-weight-regular);
  line-height: 2;
}
.project__paragraph sup {
  font-size: clamp(1.6rem, 0.9691699605rem + 0.790513834vw, 2rem);
  font-weight: var(--text-weight-regular);
}
.project__paragraph:nth-of-type(n+2) {
  margin-top: 1em;
}
.project__annotation {
  color: var(--color-text-light);
  font-size: clamp(1.3rem, 0.1960474308rem + 1.3833992095vw, 2rem);
  font-weight: var(--text-weight-regular);
  line-height: 2;
  margin-top: 1.2em;
}
@media (max-width: 768px) {
  .project__annotation {
    line-height: 2.3;
  }
}
.project__deco-1 {
  width: clamp(4rem, -14.1363636364rem + 22.7272727273vw, 15.5rem);
  position: absolute;
  top: clamp(6.6rem, 78.7581027668rem + -55.3359683794vw, 34.6rem);
  left: clamp(1.5rem, -4.6505928854rem + 7.7075098814vw, 5.4rem);
}
.project__deco-2 {
  width: clamp(5.7rem, -13.2249011858rem + 23.7154150198vw, 17.7rem);
  position: absolute;
  top: clamp(34.3rem, 63.9363636364rem + -22.7272727273vw, 45.8rem);
  right: clamp(1.2rem, -24.8217391304rem + 32.6086956522vw, 17.7rem);
}
.project__deco-3 {
  width: clamp(7rem, -10.5055335968rem + 21.9367588933vw, 18.1rem);
  position: absolute;
  bottom: clamp(18rem, 60.2382608696rem + -32.3913043478vw, 34.39rem);
  left: clamp(0.5rem, -14.4822134387rem + 18.7747035573vw, 10rem);
}
.project__deco-4 {
  width: clamp(3.6rem, -6.3355731225rem + 12.4505928854vw, 9.9rem);
  position: absolute;
  bottom: clamp(3.5rem, -19.8407114625rem + 29.2490118577vw, 18.3rem);
  right: clamp(0.901rem, -8.8752885375rem + 12.2509881423vw, 7.1rem);
}

.campaign {
  position: relative;
  background-color: var(--color-primary);
  padding-block: clamp(4rem, -2.3083003953rem + 7.9051383399vw, 8rem) 0;
}
.campaign::before {
  content: "";
  display: block;
  width: 100%;
  aspect-ratio: 210/13;
  background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJf44Os44Kk44Ok44O8XzEiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDE2ODAgMTA0Ij4gPHBhdGggZD0ibTAsNjYuNzljODczLjY5LTIxNC43NCw5NjYuNjIsMTc0LjA5LDE2ODAtMTcuODV2NTUuMDZIMHYtMzcuMloiIGZpbGw9IiMwMDZhYjkiIHN0cm9rZS13aWR0aD0iMCIvPjwvc3ZnPg==");
  background-repeat: no-repeat;
  position: absolute;
  top: -6.07vw;
  left: 0;
}
@media (max-width: 768px) {
  .campaign::before {
    aspect-ratio: 75/7;
    background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJf44Os44Kk44Ok44O8XzEiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDM3NSAzNC4zNiI+IDxwYXRoIGQ9Im0wLDIyLjE1YzE5NS4wOS03MS4xNywyMTUuNjksNTcuNTgsMzc1LTYuMDh2MTguMjhIMHYtMTIuMjFaIiBmaWxsPSIjMDA2YWI5IiBzdHJva2Utd2lkdGg9IjAiLz48L3N2Zz4=");
    top: -9.0666666667vw;
  }
}
.campaign::after {
  content: "";
  display: block;
  width: 100%;
  aspect-ratio: 210/13;
  background-color: var(--color-white);
  background-position: left top -1px;
  background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJf44Os44Kk44Ok44O8XzEiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDE2ODAgMTA0Ij4gPHJlY3Qgd2lkdGg9IjE2ODAiIGhlaWdodD0iMTA0IiBmaWxsPSIjZmZmIiBzdHJva2Utd2lkdGg9IjAiLz4gPHJlY3Qgd2lkdGg9IjE2ODAiIGhlaWdodD0iMTA0IiBmaWxsPSIjZmZmIiBzdHJva2Utd2lkdGg9IjAiLz4gPHBhdGggZD0ibTE2ODAsMzcuMkM4MDYuMzEsMjUxLjk1LDcxMy4zOC0xMzYuODgsMCw1NS4wNlYwaDE2ODB2MzcuMloiIGZpbGw9IiMwMDZhYjkiIHN0cm9rZS13aWR0aD0iMCIvPjwvc3ZnPg==");
  background-repeat: no-repeat;
}
@media (max-width: 768px) {
  .campaign::after {
    aspect-ratio: 375/34;
    background-image: url("data:image/svg+xml;base64,YmFja2dyb3VuZC1pbWFnZTogdXJsKCJkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBEOTRiV3dnZG1WeWMybHZiajBpTVM0d0lpQmxibU52WkdsdVp6MGlWVlJHTFRnaVB6NDhjM1puSUdsa1BTSmY0NE9zNDRLazQ0T2s0NE84WHpFaUlHUmhkR0V0Ym1GdFpUMGk0NE9zNDRLazQ0T2s0NE84SURFaUlIaHRiRzV6UFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eU1EQXdMM04yWnlJZ2RtbGxkMEp2ZUQwaU1DQXdJRE0zTlNBek5DNHpOaUkrSUR4d1lYUm9JR1E5SW0wek56VXNNVEl1TWpGRE1UYzVMamt4TERnekxqTTNMREUxT1M0ek1TMDBOUzR6Tnl3d0xERTRMakk0VmpCb016YzFkakV5TGpJeFdpSWdabWxzYkQwaUl6QXdObUZpT1NJZ2MzUnliMnRsTFhkcFpIUm9QU0l3SWk4K1BDOXpkbWMrIik7");
  }
}
.campaign__heading {
  text-align: center;
  color: var(--color-white);
}
.campaign__heading-catch {
  display: block;
  font-size: clamp(1.6rem, 0.9691699605rem + 0.790513834vw, 2rem);
  font-weight: var(--text-weight-regular);
  line-height: 1.8;
}
.campaign__heading-text {
  display: block;
  width: clamp(26.7rem, -45.2146245059rem + 90.1185770751vw, 72.3rem);
  margin: clamp(1.1rem, 0.3114624506rem + 0.9881422925vw, 1.6rem) auto 0;
}
.campaign__heading-title {
  display: block;
  width: clamp(31.5rem, -9.1885375494rem + 50.9881422925vw, 57.3rem);
  margin: clamp(1.6rem, 0.3383399209rem + 1.581027668vw, 2.4rem) auto 0;
}
.campaign__period {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  background-color: var(--color-white);
  border-radius: 100vh;
  color: var(--color-primary);
  font-feature-settings: "palt" 1;
  font-size: clamp(1.376rem, -0.2389249012rem + 2.023715415vw, 2.4rem);
  font-weight: var(--text-weight-regular);
  line-height: 1.2;
  max-width: clamp(31.5rem, -78.1067193676rem + 137.3517786561vw, 101rem);
  margin: clamp(4rem, 1.4766798419rem + 3.162055336vw, 5.6rem) auto 0;
  padding: clamp(0.7rem, -0.7193675889rem + 1.7786561265vw, 1.6rem) 0;
}
.campaign__period dt {
  display: inline-flex;
  align-items: center;
  border-right: solid 2px;
  padding-right: clamp(0rem, -2.8387351779rem + 3.557312253vw, 1.8rem);
}
@media (max-width: 768px) {
  .campaign__period dt {
    width: 100%;
    justify-content: center;
    text-align: center;
    border-right: none;
    padding-right: 0;
    padding-bottom: 2.1333333333vw;
  }
}
.campaign__period dd {
  padding-left: clamp(0rem, -2.8387351779rem + 3.557312253vw, 1.8rem);
}
@media (max-width: 768px) {
  .campaign__period dd {
    width: 100%;
    text-align: center;
  }
}
.campaign__period dd strong {
  font-size: clamp(1.95rem, -0.3367588933rem + 2.8656126482vw, 3.4rem);
}
.campaign__period dd em {
  font-style: normal;
  font-size: clamp(2.179rem, -0.3774387352rem + 3.2035573123vw, 3.8rem);
}
.campaign__body {
  margin-block: clamp(3.2rem, 1.9383399209rem + 1.581027668vw, 4rem) 0;
}
.campaign__lead {
  text-align: center;
  color: var(--color-white);
  font-size: clamp(1.8rem, 0.8537549407rem + 1.185770751vw, 2.4rem);
  line-height: 2;
}
.campaign__howto {
  margin-block: clamp(3.2rem, -0.5849802372rem + 4.743083004vw, 5.6rem) 0;
  background-color: var(--color-white);
  border-radius: 0 clamp(2rem, -4.3083003953rem + 7.9051383399vw, 6rem) 0 clamp(2rem, -4.3083003953rem + 7.9051383399vw, 6rem);
  padding: clamp(4rem, 1.4766798419rem + 3.162055336vw, 5.6rem) clamp(2.4rem, -6.4316205534rem + 11.0671936759vw, 8rem);
}
.campaign__howto-heading {
  text-align: center;
  color: var(--color-primary);
  margin-block: 0 clamp(2.4rem, -0.1233201581rem + 3.162055336vw, 4rem);
}
.campaign__howto-heading span {
  display: inline-block;
  font-family: var(--text-secondary);
  font-size: clamp(2.6rem, 1.3383399209rem + 1.581027668vw, 3.4rem);
  font-weight: var(--text-weight-medium);
  line-height: 1.2;
  padding-bottom: clamp(0.4rem, -0.8616600791rem + 1.581027668vw, 1.2rem);
  border-bottom: solid 3px;
}
@media (max-width: 768px) {
  .campaign__howto-heading span {
    line-height: 1.4;
    border-width: 2px;
  }
}
.campaign__howto-steps {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 5.5555555556%;
}
@media (max-width: 768px) {
  .campaign__howto-steps {
    gap: 14.9333333333vw;
  }
}
.campaign__howto-step {
  position: relative;
  width: 29.6296296296%;
  padding: clamp(3rem, 0.318972332rem + 3.3596837945vw, 4.7rem) 0 clamp(2.335rem, 2.5025098814rem + -0.128458498vw, 2.4rem);
  background-color: var(--color-light-blue);
  border: solid 2px var(--color-primary);
  box-sizing: border-box;
}
@media (max-width: 768px) {
  .campaign__howto-step {
    width: 100%;
    padding: 8vw 0 6.4vw;
  }
}
.campaign__howto-step::after {
  content: "";
  display: block;
  width: 9.1772151899%;
  aspect-ratio: 29/40;
  clip-path: polygon(0 0, 0 100%, 100% 50%);
  background-color: var(--color-primary);
  position: absolute;
  top: 50%;
  right: -14.5569620253%;
  transform: translateY(-50%);
}
@media (max-width: 768px) {
  .campaign__howto-step::after {
    width: 8vw;
    aspect-ratio: 10/7;
    clip-path: polygon(0 0, 100% 0%, 50% 100%);
    top: inherit;
    right: inherit;
    bottom: -10.4vw;
    left: 50%;
    transform: translateX(-50%);
  }
}
.campaign__howto-step-label {
  width: 55.3797468354%;
  background-color: var(--color-primary);
  padding: clamp(0.5rem, 0.5rem + 0vw, 0.5rem) 14.0625% clamp(0.5rem, 0.5rem + 0vw, 0.5rem) 4.0625%;
  clip-path: polygon(0 0, 100% 0%, 80% 100%, 0 100%);
  position: absolute;
  top: -1px;
  left: 0;
}
@media (max-width: 768px) {
  .campaign__howto-step-label {
    width: 33.6vw;
    padding: 1.8666666667vw 0 1.8666666667vw 2.6666666667vw;
  }
}
.campaign__howto-step-label-01 {
  width: 100%;
  height: auto;
}
@media (max-width: 768px) {
  .campaign__howto-step-label-01 {
    width: auto;
    height: 6.9333333333vw;
  }
}
.campaign__howto-step-label-02 {
  width: 100%;
  height: auto;
}
@media (max-width: 768px) {
  .campaign__howto-step-label-02 {
    width: auto;
    height: 6.9333333333vw;
  }
}
.campaign__howto-step-label-03 {
  width: 100%;
  height: auto;
}
@media (max-width: 768px) {
  .campaign__howto-step-label-03 {
    width: auto;
    height: 6.9333333333vw;
  }
}
.campaign__howto-step-icon {
  display: flex;
  justify-content: center;
  align-items: center;
  aspect-ratio: 16/7;
}
.campaign__howto-step-icon-01 {
  width: 33.5443037975%;
  height: auto;
}
@media (max-width: 768px) {
  .campaign__howto-step-icon-01 {
    width: 22.9333333333vw;
    height: auto;
  }
}
.campaign__howto-step-icon-02 {
  width: 84.4936708861%;
  height: auto;
}
@media (max-width: 768px) {
  .campaign__howto-step-icon-02 {
    width: 59.8026666667vw;
    height: auto;
  }
}
.campaign__howto-step-icon-03 {
  width: 25%;
  height: auto;
}
@media (max-width: 768px) {
  .campaign__howto-step-icon-03 {
    width: 21.0666666667vw;
    height: auto;
  }
}
.campaign__howto-step-text {
  text-align: center;
  font-size: clamp(2rem, 1.3691699605rem + 0.790513834vw, 2.4rem);
  font-weight: var(--text-weight-regular);
  line-height: 1.4;
}
.campaign__howto-step:last-of-type::after {
  display: none;
}
.campaign__howto-action {
  position: relative;
  margin: clamp(3.2rem, 0.6766798419rem + 3.162055336vw, 4.8rem) auto 0;
  max-width: clamp(26.7rem, 4.4632411067rem + 27.8656126482vw, 40.8rem);
}
.campaign__howto-action::before, .campaign__howto-action::after {
  content: "";
  position: absolute;
  z-index: 1;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  border-radius: 100vh;
  background: #b2d2ea;
  transform: translate3d(0, 0, 0);
}
.campaign__howto-action::before {
  animation: button-anime 1s ease-out infinite;
}
.campaign__howto-action::after {
  animation: button-anime 1s ease-out 1s infinite;
}
@keyframes button-anime {
  0% {
    transform: scale(0.95);
    opacity: 1;
  }
  90% {
    opacity: 0.1;
  }
  to {
    transform: scale(1.2, 1.4);
    opacity: 0;
  }
}
.campaign__howto-button {
  position: relative;
  z-index: 2;
  display: block;
  border: solid 1px var(--color-primary);
  padding: 6px;
  border-radius: 100vh;
  background-color: var(--color-white);
}
.campaign__howto-button-body {
  position: relative;
  display: block;
  background-color: var(--color-primary);
  border-radius: 100vh;
  color: var(--color-white);
  font-size: clamp(2rem, 1.0537549407rem + 1.185770751vw, 2.6rem);
  line-height: 2;
  padding-block: clamp(1rem, 1rem + 0vw, 1rem);
  padding-inline: clamp(2.35rem, -5.9296442688rem + 10.3754940711vw, 7.6rem) 0;
}
.campaign__howto-button-icon {
  position: absolute;
  top: 50%;
  right: clamp(1.6rem, 0.6537549407rem + 1.185770751vw, 2.2rem);
  transform: translateY(-50%);
  display: block;
  border-radius: 50%;
  background-color: var(--color-white);
  width: clamp(2.8rem, 0.5920948617rem + 2.766798419vw, 4.2rem);
  aspect-ratio: 1/1;
}
.campaign__howto-button-icon::after {
  content: "";
  display: block;
  width: clamp(1rem, 0.2114624506rem + 0.9881422925vw, 1.5rem);
  height: clamp(1.4rem, 0.4537549407rem + 1.185770751vw, 2rem);
  clip-path: polygon(0 0, 0 100%, 100% 50%);
  background-color: var(--color-primary);
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.campaign__prize {
  position: relative;
  margin-block: clamp(3.2rem, -0.5849802372rem + 4.743083004vw, 5.6rem) 0;
  background-color: var(--color-white);
  border-radius: 0 clamp(2rem, -4.3083003953rem + 7.9051383399vw, 6rem) 0 clamp(2rem, -4.3083003953rem + 7.9051383399vw, 6rem);
  padding: clamp(4.8rem, 3.5383399209rem + 1.581027668vw, 5.6rem) clamp(2.4rem, -6.4316205534rem + 11.0671936759vw, 8rem);
}
.campaign__prize-heading {
  text-align: center;
  color: var(--color-primary);
  margin-block: 0 clamp(2.4rem, -0.1233201581rem + 3.162055336vw, 4rem);
}
.campaign__prize-heading span {
  display: inline-block;
  font-family: var(--text-secondary);
  font-size: clamp(2.6rem, 1.3383399209rem + 1.581027668vw, 3.4rem);
  font-weight: var(--text-weight-medium);
  line-height: 1.2;
  padding-bottom: clamp(0.4rem, -0.8616600791rem + 1.581027668vw, 1.2rem);
  border-bottom: solid 3px;
}
@media (max-width: 768px) {
  .campaign__prize-heading span {
    line-height: 1.4;
    border-width: 2px;
  }
}
.campaign__prize-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 3.7037037037%;
}
@media (max-width: 768px) {
  .campaign__prize-list {
    gap: 17.0666666667vw;
  }
}
.campaign__prize-item {
  position: relative;
  width: 48.1481481481%;
}
@media (max-width: 768px) {
  .campaign__prize-item {
    width: 100%;
  }
}
.campaign__prize-item-badge {
  width: clamp(8rem, -1.7778656126rem + 12.2529644269vw, 14.2rem);
  position: absolute;
  top: clamp(-4.323rem, -9.0904980237rem + 5.9743083004vw, -1.3rem);
  left: clamp(-2.4rem, 0.4347826087rem + -2.1739130435vw, -1.3rem);
}
.campaign__prize-item-visual-annotation {
  margin-top: clamp(0.8rem, 0.8rem + 0vw, 0.8rem);
  color: var(--color-text-light);
  font-size: clamp(1.2rem, 0.5691699605rem + 0.790513834vw, 1.6rem);
  line-height: 1.2;
}
.campaign__prize-item-body {
  margin-top: clamp(1.6rem, 1.6rem + 0vw, 1.6rem);
}
.campaign__prize-item-text {
  text-align: center;
  font-size: clamp(1.8rem, 1.4845849802rem + 0.395256917vw, 2rem);
  font-weight: var(--text-weight-medium);
  line-height: 2;
}
@media (max-width: 768px) {
  .campaign__prize-item-text {
    line-height: 1.5;
  }
}
.campaign__prize-links {
  margin-top: clamp(2.4rem, 1.1383399209rem + 1.581027668vw, 3.2rem);
  text-align: center;
  color: var(--color-text-light);
  font-size: clamp(1.2rem, -0.0616600791rem + 1.581027668vw, 2rem);
  font-weight: var(--text-weight-regular);
  line-height: 2.2;
}
@media (max-width: 768px) {
  .campaign__prize-links {
    line-height: 2.4;
  }
}
.campaign__prize-links a {
  color: var(--color-primary);
  text-decoration: underline;
}
.campaign__prize-deco-1 {
  width: clamp(8.1rem, -4.3588932806rem + 15.6126482213vw, 16rem);
  position: absolute;
  bottom: clamp(-3.2rem, -1.6537549407rem + -1.185770751vw, -2.6rem);
  left: clamp(-7.8rem, 6.6316205534rem + -11.0671936759vw, -2.2rem);
}
.campaign__terms {
  position: relative;
  margin-block: clamp(3.2rem, -0.5849802372rem + 4.743083004vw, 5.6rem) clamp(8rem, 18.5660079051rem + -8.1027667984vw, 12.1rem);
  background-color: var(--color-white);
  border-radius: 0 clamp(2rem, -4.3083003953rem + 7.9051383399vw, 6rem) 0 clamp(2rem, -4.3083003953rem + 7.9051383399vw, 6rem);
  padding: clamp(4rem, 1.4766798419rem + 3.162055336vw, 5.6rem) clamp(1.6rem, -0.1347826087rem + 2.1739130435vw, 2.7rem) clamp(4rem, 1.4766798419rem + 3.162055336vw, 5.6rem) clamp(2.4rem, -6.4316205534rem + 11.0671936759vw, 8rem);
}
.campaign__terms-heading {
  text-align: center;
  color: var(--color-primary);
  margin-block: 0 clamp(2.4rem, -0.1233201581rem + 3.162055336vw, 4rem);
}
.campaign__terms-heading span {
  display: inline-block;
  font-family: var(--text-secondary);
  font-size: clamp(2.6rem, 1.3383399209rem + 1.581027668vw, 3.4rem);
  font-weight: var(--text-weight-medium);
  line-height: 1.2;
  padding-bottom: clamp(0.4rem, -0.8616600791rem + 1.581027668vw, 1.2rem);
  border-bottom: solid 3px;
}
@media (max-width: 768px) {
  .campaign__terms-heading span {
    line-height: 1.4;
    border-width: 2px;
  }
}
.campaign__terms-scroll {
  overflow-x: hidden;
  overflow-y: auto;
  height: clamp(37.5rem, 37.5rem + 0vw, 37.5rem);
  padding-right: clamp(1.2rem, -4.0043478261rem + 6.5217391304vw, 4.5rem);
}
.campaign__terms-scroll h4 {
  text-align: center;
  font-size: clamp(1.8rem, 0.8537549407rem + 1.185770751vw, 2.4rem);
  font-weight: var(--text-weight-medium);
  line-height: 1.8;
  margin-bottom: clamp(0rem, -1.2616600791rem + 1.581027668vw, 0.8rem);
}
.campaign__terms-scroll h5 {
  font-size: clamp(1.6rem, 0.9691699605rem + 0.790513834vw, 2rem);
  line-height: 1.8;
  padding-left: 1em;
}
.campaign__terms-scroll h5::before {
  content: "■";
  position: absolute;
  left: 0;
}
.campaign__terms-scroll p {
  font-size: clamp(1.6rem, 0.9691699605rem + 0.790513834vw, 2rem);
  line-height: 1.8;
}
.campaign__terms-scroll p + h5 {
  margin-top: 1em;
}
.campaign__terms-scroll p + p {
  margin-top: 1em;
}
.campaign__terms-scroll p a {
  text-decoration: underline;
  color: var(--color-primary);
}
.campaign__terms-scroll p.notes {
  margin-top: 0;
  position: relative;
  padding-left: 1em;
}
.campaign__terms-scroll p.notes::before {
  content: "※";
  position: absolute;
  left: 0;
}
.campaign__terms-scroll::-webkit-scrollbar {
  display: none;
}
.campaign__terms-scroll .simplebar-scrollbar::before {
  background: var(--color-primary);
  border-radius: clamp(0.4rem, -0.2308300395rem + 0.790513834vw, 0.8rem);
  width: clamp(0.4rem, -0.2308300395rem + 0.790513834vw, 0.8rem);
  margin-left: clamp(-0.1rem, -0.1rem + 0vw, -0.1rem);
  margin-top: clamp(-0.1rem, -0.1rem + 0vw, -0.1rem);
}
.campaign__terms-scroll .simplebar-scrollbar.simplebar-visible::before {
  opacity: 1;
}
.campaign__terms-scroll .simplebar-track {
  background: #B9DAF6;
  width: clamp(0.5rem, -0.1308300395rem + 0.790513834vw, 0.9rem) !important;
  border-radius: clamp(0.4rem, -0.2308300395rem + 0.790513834vw, 0.8rem);
}
.campaign__terms-scroll .campaign__terms-list li {
  position: relative;
  padding-left: 1em;
  font-size: clamp(1.6rem, 0.9691699605rem + 0.790513834vw, 2rem);
}
.campaign__terms-scroll .campaign__terms-list li::before {
  content: "・";
  position: absolute;
  left: 0;
}
.campaign__terms-scroll .campaign__terms-list + h5 {
  margin-top: 1em;
}
.campaign__terms-scroll .campaign__terms-num-01 {
  counter-reset: terms-num-01;
}
.campaign__terms-scroll .campaign__terms-num-01 li {
  counter-increment: terms-num-01;
  position: relative;
  padding-left: 1em;
  font-size: clamp(1.6rem, 0.9691699605rem + 0.790513834vw, 2rem);
}
.campaign__terms-scroll .campaign__terms-num-01 li::before {
  content: counter(terms-num-01) ".";
  position: absolute;
  left: 0;
}
.campaign__terms-scroll .campaign__terms-num-02 {
  padding-left: 0;
  list-style: none;
  counter-reset: terms-num-02;
}
.campaign__terms-scroll .campaign__terms-num-02 li {
  counter-increment: terms-num-02;
  position: relative;
  padding-left: 2em;
  font-size: clamp(1.6rem, 0.9691699605rem + 0.790513834vw, 2rem);
}
.campaign__terms-scroll .campaign__terms-num-02 li::before {
  content: "（" counter(terms-num-02) "）";
  position: absolute;
  left: 0;
}
.campaign__deco-1 {
  width: clamp(0rem, -20.5019762846rem + 25.6916996047vw, 13rem);
  position: absolute;
  top: clamp(-8.9rem, 14.0359683794rem + -17.5889328063vw, 0rem);
  right: clamp(0rem, -25.0754940711rem + 31.4229249012vw, 15.9rem);
}
.campaign__deco-2 {
  width: clamp(0rem, -31.6992094862rem + 39.7233201581vw, 20.1rem);
  position: absolute;
  top: clamp(0rem, -4.4158102767rem + 5.5335968379vw, 2.8rem);
  left: clamp(0rem, -12.7743083004rem + 16.0079051383vw, 8.1rem);
}
.campaign__deco-3 {
  width: clamp(0rem, -21.6059288538rem + 27.0750988142vw, 13.7rem);
  position: absolute;
  top: clamp(0rem, -48.2584980237rem + 60.4743083004vw, 30.6rem);
  right: clamp(0rem, -18.6110632411rem + 23.3221343874vw, 11.801rem);
}
.campaign__deco-4 {
  width: clamp(0rem, -17.347826087rem + 21.7391304348vw, 11rem);
  position: absolute;
  top: clamp(0rem, -170.0086956522rem + 213.0434782609vw, 107.8rem);
  left: clamp(0rem, -10.7241106719rem + 13.4387351779vw, 6.8rem);
}
.campaign__deco-5 {
  width: clamp(0rem, -15.928458498rem + 19.9604743083vw, 10.1rem);
  position: absolute;
  top: clamp(0rem, -198.3960474308rem + 248.6166007905vw, 125.8rem);
  right: clamp(0rem, -8.2007905138rem + 10.2766798419vw, 5.2rem);
}
.campaign__deco-6 {
  width: clamp(0rem, -20.1865612648rem + 25.2964426877vw, 12.8rem);
  position: absolute;
  bottom: clamp(0rem, -36.2175296443rem + 45.3853754941vw, 22.965rem);
  right: clamp(0rem, -2.2173675889rem + 2.7786561265vw, 1.406rem);
}
.campaign__deco-7 {
  display: none;
}
@media (max-width: 768px) {
  .campaign__deco-7 {
    display: block;
    width: 8.2666666667vw;
    position: absolute;
    top: 135.7226666667vw;
    right: 6.4vw;
  }
}
.campaign__deco-8 {
  display: none;
}
@media (max-width: 768px) {
  .campaign__deco-8 {
    display: block;
    width: 10.9333333333vw;
    position: absolute;
    top: 200.1013333333vw;
    left: 5.0666666667vw;
  }
}

.pickup {
  position: relative;
  padding-block: clamp(4rem, 0.8458498024rem + 3.95256917vw, 6rem) clamp(8rem, 1.6916996047rem + 7.9051383399vw, 12rem);
}
.pickup__heading {
  width: 100vw;
  text-align: center;
  color: var(--color-primary);
  margin: 0 calc(50% - 50vw) clamp(2.4rem, -2.6466403162rem + 6.3241106719vw, 5.6rem);
}
.pickup__heading-catch {
  display: block;
  font-size: clamp(1.6rem, 0.9691699605rem + 0.790513834vw, 2rem);
  font-weight: var(--text-weight-regular);
  line-height: 1.8;
}
.pickup__heading-title {
  display: inline-block;
  margin-top: clamp(1rem, 0.0537549407rem + 1.185770751vw, 1.6rem);
  font-family: var(--text-secondary);
  font-size: clamp(4rem, 0.8458498024rem + 3.95256917vw, 6rem);
  font-weight: var(--text-weight-medium);
  line-height: 1.2;
  padding: 0 clamp(5rem, 2.6343873518rem + 2.9644268775vw, 6.5rem);
  background-image: url(../images/sec__title_deco_left.png), url(../images/sec__title_deco_right.png);
  background-repeat: no-repeat, no-repeat;
  background-position: left top clamp(0.4rem, 0.0845849802rem + 0.395256917vw, 0.6rem), right top clamp(0.4rem, 0.0845849802rem + 0.395256917vw, 0.6rem);
  background-size: clamp(2.7rem, 0.4920948617rem + 2.766798419vw, 4.1rem) auto;
}
.pickup__bnr-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: clamp(3.2rem, 0.3612648221rem + 3.557312253vw, 5rem);
}
.pickup__bnr-item {
  width: clamp(31.5rem, 14.9407114625rem + 20.7509881423vw, 42rem);
}
.pickup__bnr-item-link {
  display: block;
  transition: 0.5s;
}
.pickup__bnr-item-link:hover {
  opacity: 0.7;
}
.pickup__bnr-item-text {
  margin-top: clamp(1.6rem, 1.6rem + 0vw, 1.6rem);
  font-size: clamp(1.4rem, 0.7691699605rem + 0.790513834vw, 1.8rem);
  font-weight: var(--text-weight-regular);
  line-height: 1.8;
}
.pickup__deco-1 {
  width: clamp(0rem, -21.6059288538rem + 27.0750988142vw, 13.7rem);
  position: absolute;
  top: clamp(-2.735rem, 4.3133003953rem + -5.4051383399vw, 0rem);
  left: clamp(0rem, -10.4086956522rem + 13.0434782609vw, 6.6rem);
}
@media (max-width: 768px) {
  .pickup__deco-1 {
    display: none;
  }
}
.pickup__deco-2 {
  width: clamp(4.8rem, -10.0245059289rem + 18.5770750988vw, 14.2rem);
  position: absolute;
  top: clamp(0rem, -42.5258300395rem + 53.290513834vw, 26.965rem);
  right: clamp(1rem, -16.3257470356rem + 21.7114624506vw, 11.986rem);
}
@media (max-width: 768px) {
  .pickup__deco-2 {
    top: inherit;
    bottom: 79.1386666667vw;
  }
}
.pickup__deco-3 {
  width: clamp(4.089rem, -11.3836837945rem + 19.3893280632vw, 13.9rem);
  position: absolute;
  bottom: clamp(1.769rem, -10.91856917rem + 15.8992094862vw, 9.814rem);
  left: clamp(1.5rem, -21.5899565217rem + 28.9347826087vw, 16.141rem);
}