@import url(https://fonts.googleapis.com/css2?family=BIZ+UDPGothic:wght@400;700&display=swap);
@media screen and (min-width: 1081px) {
  .fz40 {
    font-size: 4rem;
  }
}
@media screen and (max-width: 1080px) and (min-width: 577px) {
  .fz40 {
    font-size: 3.2rem;
  }
}
@media screen and (max-width: 576px) {
  .fz40 {
    font-size: 2.4rem;
  }
}

@media screen and (min-width: 1081px) {
  .fz30 {
    font-size: 3rem;
  }
}
@media screen and (max-width: 1080px) and (min-width: 577px) {
  .fz30 {
    font-size: 2.4rem;
  }
}
@media screen and (max-width: 576px) {
  .fz30 {
    font-size: 2rem;
  }
}

@media screen and (min-width: 1081px) {
  .fz28 {
    font-size: 2.8rem;
  }
}
@media screen and (max-width: 1080px) and (min-width: 577px) {
  .fz28 {
    font-size: 2.2rem;
  }
}
@media screen and (max-width: 576px) {
  .fz28 {
    font-size: 1.8rem;
  }
}

@media screen and (min-width: 577px) {
  .fz24-22 {
    font-size: 2.4rem;
  }
}
@media screen and (max-width: 576px) {
  .fz24-22 {
    font-size: clamp(1.8rem, 5.8666666667vw, 2.2rem);
  }
}

@media screen and (min-width: 577px) {
  .fz24-20 {
    font-size: clamp(2rem, 2.9268292683vw, 2.4rem);
  }
}
@media screen and (max-width: 576px) {
  .fz24-20 {
    font-size: clamp(1.6rem, 5.3333333333vw, 2rem);
  }
}

@media screen and (min-width: 1081px) {
  .fz24-18 {
    font-size: 2.4rem;
  }
}
@media screen and (max-width: 1080px) and (min-width: 577px) {
  .fz24-18 {
    font-size: 2rem;
  }
}
@media screen and (max-width: 576px) {
  .fz24-18 {
    font-size: 1.8rem;
  }
}

@media screen and (min-width: 1081px) {
  .fz24-16 {
    font-size: 2.4rem;
  }
}
@media screen and (max-width: 1080px) and (min-width: 577px) {
  .fz24-16 {
    font-size: 2rem;
  }
}
@media screen and (max-width: 576px) {
  .fz24-16 {
    font-size: 1.6rem;
  }
}

@media screen and (min-width: 577px) {
  .fz22-20 {
    font-size: clamp(2rem, 2.6829268293vw, 2.2rem);
  }
}
@media screen and (max-width: 576px) {
  .fz22-20 {
    font-size: clamp(1.6rem, 5.3333333333vw, 2rem);
  }
}

@media screen and (min-width: 1081px) {
  .fz22-18 {
    font-size: 2.2rem;
  }
}
@media screen and (max-width: 1080px) and (min-width: 577px) {
  .fz22-18 {
    font-size: 2rem;
  }
}
@media screen and (max-width: 576px) {
  .fz22-18 {
    font-size: 1.8rem;
  }
}

@media screen and (min-width: 1081px) {
  .fz22-16 {
    font-size: 2.2rem;
  }
}
@media screen and (max-width: 1080px) and (min-width: 577px) {
  .fz22-16 {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 576px) {
  .fz22-16 {
    font-size: 1.6rem;
  }
}

@media screen and (min-width: 1081px) {
  .fz22-14 {
    font-size: 2.2rem;
  }
}
@media screen and (min-width: 577px) {
  .fz22-14 {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 576px) {
  .fz22-14 {
    font-size: 1.4rem;
  }
}

@media screen and (min-width: 577px) {
  .fz20-18 {
    font-size: clamp(1.8rem, 2.4390243902vw, 2rem);
  }
}
@media screen and (max-width: 576px) {
  .fz20-18 {
    font-size: clamp(1.6rem, 4.8vw, 1.8rem);
  }
}

@media screen and (min-width: 1081px) {
  .fz20-16 {
    font-size: 2rem;
  }
}
@media screen and (max-width: 1080px) and (min-width: 577px) {
  .fz20-16 {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 576px) {
  .fz20-16 {
    font-size: 1.6rem;
  }
}

@media screen and (min-width: 1081px) {
  .fz20-15 {
    font-size: 2rem;
  }
}
@media screen and (max-width: 1080px) and (min-width: 577px) {
  .fz20-15 {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 576px) {
  .fz20-15 {
    font-size: 1.5rem;
  }
}

@media screen and (min-width: 1081px) {
  .fz20-14 {
    font-size: 2rem;
  }
}
@media screen and (max-width: 1080px) and (min-width: 577px) {
  .fz20-14 {
    font-size: 1.7rem;
  }
}
@media screen and (max-width: 576px) {
  .fz20-14 {
    font-size: 1.4rem;
  }
}

@media screen and (min-width: 1081px) {
  .fz18-16 {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 1080px) and (min-width: 577px) {
  .fz18-16 {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 576px) {
  .fz18-16 {
    font-size: 1.6rem;
  }
}

@media screen and (min-width: 577px) {
  .fz18-14 {
    font-size: clamp(1.6rem, 2.1951219512vw, 1.8rem);
  }
}
@media screen and (max-width: 576px) {
  .fz18-14 {
    font-size: clamp(1.2rem, 3.7333333333vw, 1.4rem);
  }
}

@media screen and (min-width: 577px) {
  .fz18-13 {
    font-size: clamp(1.6rem, 2.1951219512vw, 1.8rem);
  }
}
@media screen and (max-width: 576px) {
  .fz18-13 {
    font-size: clamp(1.2rem, 3.4666666667vw, 1.3rem);
  }
}

@media screen and (min-width: 577px) {
  .fz18-12 {
    font-size: clamp(1.6rem, 2.1951219512vw, 1.8rem);
  }
}
@media screen and (max-width: 576px) {
  .fz18-12 {
    font-size: clamp(1.1rem, 3.2vw, 1.3rem);
  }
}

@media screen and (min-width: 1081px) {
  .fz16 {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 1080px) and (min-width: 577px) {
  .fz16 {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 576px) {
  .fz16 {
    font-size: 1.3rem;
  }
}

@media screen and (min-width: 577px) {
  .fz14 {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 576px) {
  .fz14 {
    font-size: clamp(1.2rem, 3.4666666667vw, 1.3rem);
  }
}

.c-btn_org {
  margin-inline: auto;
}
@media screen and (min-width: 577px) {
  .c-btn_org {
    width: min(62.7906976744%, 54rem);
  }
}
@media screen and (max-width: 576px) {
  .c-btn_org {
    width: min(89.3333333333%, 33.5rem);
  }
}

.c-btn_blw {
  margin-inline: auto;
}
@media screen and (min-width: 577px) {
  .c-btn_blw {
    width: min(62.7906976744%, 54rem);
  }
}
@media screen and (max-width: 576px) {
  .c-btn_blw {
    width: min(89.3333333333%, 33.5rem);
  }
}

.c-blc {
  color: var(--c-blc);
}

html {
  font-size: 62.5%;
  word-wrap: break-word;
  margin: 0;
  padding: 0;
}

body {
  position: relative;
  width: 100%;
  height: 100%;
  margin: 0 auto;
  color: var(--c-primary);
  background-color: var(--c-white);
  font-size: 1.6rem;
  font-family: var(--f-primary);
  font-weight: 400;
  line-height: 1.2;
  text-align: left;
  letter-spacing: 0px;
  -webkit-text-size-adjust: 100%;
}
@media screen and (max-width: 576px) {
  body {
    font-size: 1.4rem;
  }
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: middle;
  font-style: italic;
  background-repeat: no-repeat;
  background-size: cover;
  shape-margin: 0.75rem;
}

a {
  color: var(--c-primary);
  text-decoration: none;
}

:root {
  --c-primary: #000;
  --c-blc: #000;
  --c-wht: #fff;
  --c-red: #ff0000;
  --c-grn: #049849;
  --c-grn-li: #cee7d7;
  --c-yel: #ffec00;
  --c-org: #ed6d34;
  --c-nvy: #000121;
  --c-gold: #c6b86d;
  --c-pink: #f798c3;
  --f-primary: "BIZ UDPGothic", sans-serif;
  --z-index-opening: 9999;
}

@media screen and (min-width: 768px) {
  .pc-only {
    display: block;
  }
}
@media screen and (max-width: 767px) {
  .pc-only {
    display: none;
  }
}

@media screen and (min-width: 768px) {
  .pc-escape {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .pc-escape {
    display: block;
  }
}

@media screen and (min-width: 768px) {
  .tab-only {
    display: none;
  }
}
@media screen and (max-width: 767px) and (min-width: 577px) {
  .tab-only {
    display: block;
  }
}
@media screen and (max-width: 576px) {
  .tab-only {
    display: none;
  }
}

@media screen and (min-width: 768px) {
  .tab-escape {
    display: block;
  }
}
@media screen and (max-width: 767px) and (min-width: 577px) {
  .tab-escape {
    display: none;
  }
}
@media screen and (max-width: 576px) {
  .tab-escape {
    display: block;
  }
}

@media screen and (min-width: 577px) {
  .sp-only {
    display: none;
  }
}
@media screen and (max-width: 576px) {
  .sp-only {
    display: block;
  }
}

@media screen and (min-width: 577px) {
  .sp-escape {
    display: block;
  }
}
@media screen and (max-width: 576px) {
  .sp-escape {
    display: none;
  }
}

.header {
  background-color: var(--c-wht);
  padding: 0;
  position: relative;
  top: 0;
  left: 0;
  z-index: 20;
  width: min(100%, 108rem);
  margin-inline: auto;
}
.headerInner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
  max-width: 1200px;
  height: 80px;
  margin: 0 auto;
  padding: 0 32px 0 39px;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .headerInner {
    flex-direction: column-reverse;
    align-items: flex-start;
    height: auto;
    padding: 0.8rem 1.25rem;
  }
}
.headerInner h1 {
  width: 18.7rem;
}
@media screen and (max-width: 767px) {
  .headerInner h1 {
    width: 11.5rem;
  }
}
.headerInner p {
  display: block;
  width: 100%;
  text-align: right;
}
@media screen and (min-width: 768px) {
  .headerInner p {
    max-width: 26.3rem;
  }
}
@media screen and (max-width: 767px) {
  .headerInner p {
    max-width: 21.9rem;
    margin-left: auto;
  }
}

.openingAnimation {
  position: fixed;
  inset: 0;
  z-index: var(--z-index-opening);
  opacity: 1;
  visibility: visible;
  -webkit-animation: fade-hidden 1.4s ease 6.4s forwards;
          animation: fade-hidden 1.4s ease 6.4s forwards;
}
@-webkit-keyframes fade-hidden {
  0% {
    opacity: 1;
    visibility: visible;
  }
  100% {
    opacity: 0;
    visibility: hidden;
  }
}
@keyframes fade-hidden {
  0% {
    opacity: 1;
    visibility: visible;
  }
  100% {
    opacity: 0;
    visibility: hidden;
  }
}
.openingAnimation .mask,
.openingAnimation .ball,
.openingAnimation .kansaimiraiTtl,
.openingAnimation .buffalosTtl {
  position: fixed;
}
.openingAnimation .ball,
.openingAnimation .kansaimiraiTtl,
.openingAnimation .buffalosTtl {
  top: 50%;
  left: 50%;
}
.openingAnimation .mask {
  inset: 0;
  background-color: var(--c-nvy);
}
.openingAnimation .ball {
  will-change: transform;
}
@media screen and (min-width: 1081px) {
  .openingAnimation .ball {
    width: 100vw;
    transform: translate(-50%, -50%) scale(0.05) rotate(0deg);
    -webkit-animation: ballReset 0.001s, ballZoom 4s ease-in forwards;
            animation: ballReset 0.001s, ballZoom 4s ease-in forwards;
  }
}
@media screen and (max-width: 1080px) {
  .openingAnimation .ball {
    width: 120vw;
    transform: translate(-50%, -50%) scale(0.1) rotate(0deg);
    -webkit-animation: ballReset 0.001s, ballZoomMd 4s linear forwards;
            animation: ballReset 0.001s, ballZoomMd 4s linear forwards;
  }
}
@-webkit-keyframes ballZoom {
  0% {
    transform: translate(-50%, -50%) scale(0.05) rotate(0deg);
  }
  100% {
    transform: translate(-50%, -50%) scale(4.5) rotate(400deg);
  }
}
@keyframes ballZoom {
  0% {
    transform: translate(-50%, -50%) scale(0.05) rotate(0deg);
  }
  100% {
    transform: translate(-50%, -50%) scale(4.5) rotate(400deg);
  }
}
@-webkit-keyframes ballZoomMd {
  0% {
    transform: translate(-50%, -50%) scale(0.1) rotate(0deg);
  }
  100% {
    transform: translate(-50%, -50%) scale(6.6) rotate(360deg);
  }
}
@keyframes ballZoomMd {
  0% {
    transform: translate(-50%, -50%) scale(0.1) rotate(0deg);
  }
  100% {
    transform: translate(-50%, -50%) scale(6.6) rotate(360deg);
  }
}
@-webkit-keyframes ballReset {
  0%, 100% {
    transform: translate(-50%, -50%) scale(0.05) rotate(0deg);
  }
}
@keyframes ballReset {
  0%, 100% {
    transform: translate(-50%, -50%) scale(0.05) rotate(0deg);
  }
}
.openingAnimation .kansaimiraiTtl {
  opacity: 0;
  transform: translate(-50%, -50%);
  width: min(72%, 55rem);
  -webkit-animation: fade 1.8s ease 2.9s forwards;
          animation: fade 1.8s ease 2.9s forwards;
}
@-webkit-keyframes fade {
  0% {
    opacity: 0;
  }
  45% {
    opacity: 1;
  }
  60% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes fade {
  0% {
    opacity: 0;
  }
  45% {
    opacity: 1;
  }
  60% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
.openingAnimation .buffalosTtl {
  transform: translate(-50%, -50%);
  width: min(85.8666666667%, 60rem);
}
.openingAnimation .buffalosTtl .top {
  width: 100%;
  opacity: 0;
  transform: translateY(-25px);
  -webkit-animation: fade-in 0.4s ease 4.4s forwards;
          animation: fade-in 0.4s ease 4.4s forwards;
}
@-webkit-keyframes fade-in {
  0% {
    opacity: 0;
    transform: translateY(-25px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes fade-in {
  0% {
    opacity: 0;
    transform: translateY(-25px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.openingAnimation .buffalosTtl .bottom {
  width: 94.099378882%;
  margin-inline: auto;
  margin-top: 2.4rem;
  opacity: 0;
  transform: scale(0.75);
  -webkit-animation: bounce 0.5s cubic-bezier(0.68, -0.55, 0.265, 1.55) 4.7s forwards;
          animation: bounce 0.5s cubic-bezier(0.68, -0.55, 0.265, 1.55) 4.7s forwards;
}
@-webkit-keyframes bounce {
  0% {
    opacity: 0;
    transform: scale(0.75);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}
@keyframes bounce {
  0% {
    opacity: 0;
    transform: scale(0.75);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}

.main .campaign {
  position: relative;
}
@media screen and (min-width: 768px) {
  .main .campaign {
    margin-top: clamp(0rem, 21.2962962963vw, 23rem);
    background: url(/kojin/cam/detail/buffaloesouencp/common/images/index_bg_campaign_pc.png) center top/cover no-repeat;
  }
}
@media screen and (max-width: 767px) {
  .main .campaign {
    margin-top: clamp(0rem, 29.3333333333vw, 22rem);
    background: url(/kojin/cam/detail/buffaloesouencp/common/images/index_bg_campaign_sp.png) center top/cover no-repeat;
  }
}
.main .campaign .wrapper {
  position: relative;
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .main .campaign .wrapper {
    width: min(90%, 90rem);
  }
}
@media screen and (max-width: 767px) {
  .main .campaign .wrapper {
    width: min(94.9333333333%, 65rem);
  }
}
.main .campaign__ttl {
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (min-width: 768px) {
  .main .campaign__ttl {
    width: min(92%, 82.6rem);
    transform: translate(4.8426150121%, -36.4583333333%);
  }
}
@media screen and (max-width: 767px) {
  .main .campaign__ttl {
    width: pcT(350, 375);
    transform: translateY(-32.5732899023%);
  }
}
.main .campaign__ttl picture {
  display: block;
  max-width: 86.4rem;
  margin-inline: auto;
}
.main .campaign__ttl .pink {
  position: absolute;
  top: 0;
  left: 0;
  display: grid;
  place-items: center;
  font-weight: 300;
  line-height: 0;
  letter-spacing: 0.05em;
  background-color: #fdcee4;
}
@media screen and (min-width: 768px) {
  .main .campaign__ttl .pink {
    font-size: clamp(0rem, 1.3671875vw, 1.4rem);
    transform: translateX(-23.125%);
    width: clamp(0rem, 15.625vw, 16rem);
    height: clamp(0rem, 2.44140625vw, 2.5rem);
    border-radius: clamp(0rem, 1.7578125vw, 1.8rem);
  }
}
@media screen and (max-width: 767px) {
  .main .campaign__ttl .pink {
    font-size: clamp(0rem, 3.2vw, 2rem);
    width: clamp(0rem, 34.6666666667vw, 22rem);
    height: clamp(0rem, 5.3333333333vw, 3.2rem);
    border-radius: clamp(0rem, 4.8vw, 3.6rem);
  }
}
@media screen and (max-width: 767px) {
  .main .campaign__image01, .main .campaign__image02 {
    margin-inline: auto;
  }
}
@media screen and (min-width: 768px) {
  .main .campaign__image01 .desc, .main .campaign__image02 .desc {
    padding: clamp(0rem, 2.9296875vw, 3rem) clamp(0rem, 2.44140625vw, 2.5rem) clamp(0rem, 2.1484375vw, 2.2rem);
  }
}
@media screen and (max-width: 767px) {
  .main .campaign__image01 .desc, .main .campaign__image02 .desc {
    padding: clamp(0rem, 2vw, 1.5rem) clamp(0rem, 4.6666666667vw, 3.5rem) clamp(0rem, 2.9333333333vw, 2.2rem);
  }
}
.main .campaign__image01 .desc__title, .main .campaign__image02 .desc__title {
  font-weight: 700;
  text-align: center;
  color: var(--c-wht);
  border-bottom: 0.2rem solid var(--c-wht);
}
@media screen and (min-width: 768px) {
  .main .campaign__image01 .desc__title, .main .campaign__image02 .desc__title {
    font-size: clamp(0rem, 1.85546875vw, 1.9rem);
    padding-bottom: clamp(0rem, 0.9765625vw, 1rem);
    padding-bottom: clamp(0rem, 0.9765625vw, 1rem);
  }
}
@media screen and (max-width: 767px) {
  .main .campaign__image01 .desc__title, .main .campaign__image02 .desc__title {
    font-size: clamp(0rem, 3.2vw, 2.4rem);
    padding-bottom: clamp(0rem, 12.1621621622vw, 0.9rem);
  }
}
@media screen and (max-width: 767px) {
  .main .campaign__image01 .desc__title span, .main .campaign__image02 .desc__title span {
    display: none;
  }
}
.main .campaign__image01 .desc__text, .main .campaign__image02 .desc__text {
  font-size: clamp(0rem, 3.4666666667vw, 2.4rem);
  font-weight: 700;
  color: var(--c-wht);
  margin-top: clamp(0.5rem, 1.3333333333vw, 1rem);
  line-height: 1.3;
}
.main .campaign__image01 .desc__list, .main .campaign__image02 .desc__list {
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .main .campaign__image01 .desc__list, .main .campaign__image02 .desc__list {
    padding-top: clamp(0rem, 1.953125vw, 2rem);
    padding-bottom: clamp(0rem, 1.953125vw, 2rem);
    width: min(89.4117647059%, 76rem);
  }
}
@media screen and (max-width: 767px) {
  .main .campaign__image01 .desc__list, .main .campaign__image02 .desc__list {
    padding-top: clamp(0rem, 4vw, 3rem);
    padding-bottom: clamp(0rem, 4vw, 3rem);
  }
}
.main .campaign__image01 .desc__list li, .main .campaign__image02 .desc__list li {
  display: flex;
  align-items: center;
  font-weight: 700;
  color: var(--c-nvy);
  line-height: 1.3;
}
@media screen and (min-width: 768px) {
  .main .campaign__image01 .desc__list li, .main .campaign__image02 .desc__list li {
    -moz-column-gap: clamp(0rem, 0.9765625vw, 1rem);
         column-gap: clamp(0rem, 0.9765625vw, 1rem);
    font-size: clamp(0rem, 1.953125vw, 2rem);
  }
}
@media screen and (max-width: 767px) {
  .main .campaign__image01 .desc__list li, .main .campaign__image02 .desc__list li {
    -moz-column-gap: clamp(0rem, 2.6666666667vw, 2rem);
         column-gap: clamp(0rem, 2.6666666667vw, 2rem);
    font-size: clamp(0rem, 3.7333333333vw, 2.6rem);
  }
}
@media screen and (min-width: 768px) {
  .main .campaign__image01 .desc__list li:not(:first-of-type), .main .campaign__image02 .desc__list li:not(:first-of-type) {
    margin-top: clamp(0rem, 0.9765625vw, 1rem);
  }
}
@media screen and (max-width: 767px) {
  .main .campaign__image01 .desc__list li:not(:first-of-type), .main .campaign__image02 .desc__list li:not(:first-of-type) {
    margin-top: clamp(0rem, 2.4vw, 1.8rem);
  }
}
.main .campaign__image01 .desc__list li::before, .main .campaign__image02 .desc__list li::before {
  flex-shrink: 0;
  content: "";
  display: block;
  aspect-ratio: 1/1;
  background: center/contain no-repeat;
}
@media screen and (min-width: 768px) {
  .main .campaign__image01 .desc__list li::before, .main .campaign__image02 .desc__list li::before {
    width: clamp(0rem, 4.4921875vw, 4.6rem);
  }
}
@media screen and (max-width: 767px) {
  .main .campaign__image01 .desc__list li::before, .main .campaign__image02 .desc__list li::before {
    width: clamp(0rem, 8vw, 5.6rem);
  }
}
.main .campaign__image01 .desc__note, .main .campaign__image02 .desc__note {
  color: var(--c-nvy);
  border-top: 0.1rem solid var(--c-nvy);
}
@media screen and (min-width: 768px) {
  .main .campaign__image01 .desc__note, .main .campaign__image02 .desc__note {
    font-size: clamp(0rem, 3.7333333333vw, 1.4rem);
    text-align: center;
    padding-top: clamp(0rem, 0.9765625vw, 1rem);
  }
}
@media screen and (max-width: 767px) {
  .main .campaign__image01 .desc__note, .main .campaign__image02 .desc__note {
    font-size: clamp(0rem, 3.2vw, 2.2rem);
    padding-top: clamp(0rem, 1.3333333333vw, 1rem);
    text-indent: -1em;
    padding-left: 1em;
  }
}
@media screen and (min-width: 768px) {
  .main .campaign__image01 {
    padding-top: clamp(0rem, 40.5555555556vw, 43.8rem);
  }
}
@media screen and (max-width: 767px) {
  .main .campaign__image01 {
    width: min(91.2921348315%, 62rem);
    padding-top: clamp(0rem, 60vw, 45rem);
  }
}
.main .campaign__image01 .container {
  position: relative;
}
.main .campaign__image01 .bag {
  position: absolute;
  z-index: 1;
}
@media screen and (min-width: 1281px) {
  .main .campaign__image01 .bag {
    right: -4.8rem;
    width: 48.8rem;
  }
}
@media screen and (min-width: 768px) {
  .main .campaign__image01 .bag {
    top: clamp(0rem, 1.1111111111vw, 1.2rem);
  }
}
@media screen and (max-width: 1280px) and (min-width: 768px) {
  .main .campaign__image01 .bag {
    right: -2.4rem;
    width: clamp(0rem, 41.6666666667vw, 45rem);
  }
}
@media screen and (max-width: 767px) {
  .main .campaign__image01 .bag {
    top: clamp(0rem, 19.2vw, 14rem);
    right: clamp(-4.6rem, -5.3333333333vw, 0rem);
    width: clamp(0rem, 47.2vw, 35rem);
  }
}
.main .campaign__image01 .desc {
  background-color: var(--c-gold);
}
.main .campaign__image01 .desc__list li:first-of-type::before {
  background-image: url(/kojin/cam/detail/buffaloesouencp/common/images/index_ico_campaign01_ball01.png);
}
.main .campaign__image01 .desc__list li:nth-of-type(2)::before {
  background-image: url(/kojin/cam/detail/buffaloesouencp/common/images/index_ico_campaign01_ball02.png);
}
.main .campaign__image01 .desc__list li:nth-of-type(3)::before {
  background-image: url(/kojin/cam/detail/buffaloesouencp/common/images/index_ico_campaign01_ball03.png);
}
.main .campaign__image02 {
  position: relative;
  margin-top: 1.6rem;
}
@media screen and (max-width: 767px) {
  .main .campaign__image02 {
    width: min(94.3820224719%, 62rem);
    transform: translateX(1.8%);
  }
}
.main .campaign__image02 .desc {
  background-color: var(--c-pink);
}
@media screen and (max-width: 767px) {
  .main .campaign__image02 .desc {
    width: min(96.3%, 62rem);
  }
}
.main .campaign__image02 .desc__list li:first-of-type::before {
  background-image: url(/kojin/cam/detail/buffaloesouencp/common/images/index_ico_campaign02_ball01.png);
}
.main .campaign__image02 .desc__list li:nth-of-type(2)::before {
  background-image: url(/kojin/cam/detail/buffaloesouencp/common/images/index_ico_campaign02_ball02.png);
}
.main .campaign__image02 .desc__note {
  text-align: left;
}
.main .flow {
  background-color: var(--c-grn);
  margin-top: -0.1rem;
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 1081px) {
  .main .flow {
    padding-top: 3.2rem;
    padding-bottom: 4.8rem;
  }
}
@media screen and (max-width: 1080px) {
  .main .flow {
    padding-top: clamp(2.2rem, 5.8666666667vw, 4.8rem);
    padding-bottom: clamp(2.8rem, 7.4666666667vw, 5.6rem);
  }
}
.main .flow .wrapper {
  max-width: 151rem;
  margin-inline: auto;
}
@media screen and (min-width: 1081px) {
  .main .flow .wrapper {
    width: min(96%, 151rem);
  }
}
.main .flow__title {
  font-weight: 700;
  color: var(--c-wht);
  text-align: center;
}
@media screen and (min-width: 768px) {
  .main .flow__title {
    font-size: clamp(2.6rem, 2.4074074074vw, 2.6rem);
    line-height: 1.8;
  }
}
@media screen and (max-width: 767px) {
  .main .flow__title {
    font-size: clamp(1.8rem, 5.3333333333vw, 3.2rem);
    line-height: 1.2;
  }
}
.main .flow__title .yellow {
  color: var(--c-yel);
}
@media screen and (min-width: 768px) {
  .main .flow__title .yellow {
    font-size: clamp(3.4rem, 3.1481481481vw, 3.4rem);
  }
}
@media screen and (max-width: 767px) {
  .main .flow__title .yellow {
    font-size: clamp(2.4rem, 6.9333333333vw, 4.4rem);
  }
}
.main .flow__title .small {
  font-weight: 500;
}
@media screen and (min-width: 768px) {
  .main .flow__title .small {
    font-size: clamp(2rem, 1.8518518519vw, 2rem);
  }
}
.main .flow__list {
  list-style: none;
}
.main .flow__list__item {
  position: relative;
}
@media screen and (max-width: 1080px) {
  .main .flow__list__item:not(:last-of-type)::after {
    display: none;
  }
}
.main .flow__list__item .qrBtn {
  position: absolute;
  left: 50%;
  bottom: 5.8823529412%;
  transform: translateX(-50%);
  width: 88.2352941176%;
  transition: opacity 0.4s ease;
  box-shadow: 0px 0px 10px rgba(0, 0, 10, 0.16);
}
@media screen and (max-width: 1080px) {
  .main .flow__list__item .qrBtn {
    display: none;
  }
}
@media (hover: hover) and (pointer: fine) {
  .main .flow__list__item .qrBtn:hover {
    opacity: 0.8;
  }
}
.main .flow__list__item .dlBtns {
  position: absolute;
  bottom: 5.8333333333%;
  left: 50%;
  transform: translateX(-50%);
  width: 67.9245283019%;
}
@media screen and (min-width: 1081px) {
  .main .flow__list__item .dlBtns {
    display: none;
  }
}
.main .flow__list__item .dlBtns a {
  display: block;
  transition: opacity 0.4s ease;
}
@media (hover: hover) and (pointer: fine) {
  .main .flow__list__item .dlBtns a:hover {
    opacity: 0.7;
  }
}
.main .flow__list__item .dlBtns a:nth-of-type(2) {
  margin-top: 0.5rem;
}
.main .flow__text {
  font-size: clamp(0.9rem, 2.9333333333vw, 2.2rem);
  font-weight: 500;
  color: var(--c-wht);
  line-height: 1.3;
  margin-top: clamp(1.6rem, 4.2666666667vw, 2rem);
}
@media screen and (min-width: 768px) {
  .main .flow__text {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .main .flow__text {
    width: 86.6666666667%;
    margin-inline: auto;
  }
}
.main .flow .container {
  position: relative;
}
@media screen and (min-width: 1081px) {
  .main .flow .container {
    max-width: 55rem;
    margin-inline: auto;
  }
}
.main .flow .swiper {
  position: relative;
  margin-top: clamp(2.2rem, 5.8666666667vw, 3rem);
}
@media screen and (min-width: 1081px) {
  .main .flow .swiper {
    max-width: 55rem;
    margin-inline: auto;
  }
}
.main .flow .swiper-button-prev,
.main .flow .swiper-button-next {
  all: unset;
  position: absolute;
  top: 50%;
  aspect-ratio: 30/60;
  cursor: pointer;
  z-index: 1;
}
@media screen and (min-width: 1081px) {
  .main .flow .swiper-button-prev,
.main .flow .swiper-button-next {
    width: 4rem;
  }
}
@media screen and (max-width: 1080px) {
  .main .flow .swiper-button-prev,
.main .flow .swiper-button-next {
    display: block;
  }
}
@media screen and (max-width: 1080px) and (min-width: 577px) {
  .main .flow .swiper-button-prev,
.main .flow .swiper-button-next {
    width: 3.2rem;
  }
}
@media screen and (max-width: 576px) {
  .main .flow .swiper-button-prev,
.main .flow .swiper-button-next {
    width: 1.4rem;
  }
}
.main .flow .swiper-button-prev::after,
.main .flow .swiper-button-next::after {
  content: "";
  display: inline-block;
  background: url(/kojin/cam/detail/buffaloesouencp/common/images/index_ico_arrow_right_yellow.svg) center/contain no-repeat;
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 1080px) {
  .main .flow .swiper-button-prev::after,
.main .flow .swiper-button-next::after {
    width: 100%;
  }
}
.main .flow .swiper-button-prev {
  transform: translateY(-50%) rotate(180deg);
}
@media screen and (min-width: 1081px) {
  .main .flow .swiper-button-prev {
    left: -6.4rem;
  }
}
@media screen and (max-width: 1080px) and (min-width: 768px) {
  .main .flow .swiper-button-prev {
    left: 10.7%;
  }
}
@media screen and (max-width: 767px) and (min-width: 577px) {
  .main .flow .swiper-button-prev {
    left: 9.4%;
  }
}
@media screen and (max-width: 576px) and (min-width: 441px) {
  .main .flow .swiper-button-prev {
    left: 9.5%;
  }
}
@media screen and (max-width: 440px) {
  .main .flow .swiper-button-prev {
    left: 8.3%;
  }
}
.main .flow .swiper-button-next {
  transform: translateY(-50%);
}
@media screen and (min-width: 1081px) {
  .main .flow .swiper-button-next {
    right: -6.4rem;
  }
}
@media screen and (max-width: 1080px) and (min-width: 768px) {
  .main .flow .swiper-button-next {
    right: 10.7%;
  }
}
@media screen and (max-width: 767px) and (min-width: 577px) {
  .main .flow .swiper-button-next {
    right: 9.4%;
  }
}
@media screen and (max-width: 576px) and (min-width: 441px) {
  .main .flow .swiper-button-next {
    right: 9.5%;
  }
}
@media screen and (max-width: 440px) {
  .main .flow .swiper-button-next {
    right: 8.3%;
  }
}
@media screen and (min-width: 768px) {
  .main .reservation {
    padding-top: 1.5rem;
    padding-bottom: 3rem;
  }
}
@media screen and (max-width: 767px) {
  .main .reservation {
    padding-top: clamp(1.5rem, 4vw, 3rem);
    padding-bottom: clamp(1.8rem, 4.8vw, 3.6rem);
  }
}
.main .reservation .wrapper {
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .main .reservation .wrapper {
    width: min(90%, 85rem);
  }
}
@media screen and (max-width: 767px) {
  .main .reservation .wrapper {
    width: min(86.6666666667%, 65rem);
  }
}
.main .reservation__list {
  list-style: none;
}
.main .reservation__list li {
  font-size: clamp(1.2rem, 3.2vw, 1.5rem);
  font-weight: 500;
  line-height: 1.3;
  color: var(--c-grn);
  letter-spacing: 0em;
}
@media screen and (min-width: 768px) {
  .main .reservation__list li {
    display: flex;
    align-items: flex-start;
    -moz-column-gap: 0.3em;
         column-gap: 0.3em;
  }
}
.main .reservation__list li::before {
  content: "";
  display: inline-block;
  width: 0.7rem;
  aspect-ratio: 1/1;
  background-color: var(--c-grn);
  border-radius: 50%;
  margin-top: 0.6rem;
}
@media screen and (max-width: 767px) {
  .main .reservation__list li::before {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .main .reservation__list li.pc-only {
    display: none;
  }
}
@media screen and (min-width: 768px) {
  .main .reservation__list li.pc-escape {
    display: none;
  }
}
.main .reservation__qr {
  margin-inline: auto;
  margin-top: clamp(1.6rem, 4.2666666667vw, 4.4rem);
  border: 0.3rem solid var(--c-org);
  border-radius: 0.6rem;
}
@media screen and (min-width: 768px) {
  .main .reservation__qr {
    padding: 1.6rem 3.2rem;
    width: min(94%, 65rem);
  }
}
@media screen and (max-width: 767px) {
  .main .reservation__qr {
    padding: clamp(1rem, 2.6666666667vw, 1.6rem) 2.4rem clamp(1.4rem, 3.7333333333vw, 2rem);
  }
}
.main .reservation__qr .title {
  text-align: center;
  color: var(--c-org);
}
@media screen and (min-width: 768px) {
  .main .reservation__qr .title {
    font-size: 2rem;
  }
}
@media screen and (max-width: 767px) {
  .main .reservation__qr .title {
    font-size: clamp(1.6rem, 4.8vw, 2.4rem);
  }
}
.main .reservation__qr .btn {
  display: block;
  margin-inline: auto;
  transition: opacity 0.4s ease;
}
@media (hover: hover) and (pointer: fine) {
  .main .reservation__qr .btn:hover {
    opacity: 0.8;
  }
}
@media screen and (min-width: 768px) {
  .main .reservation__qr .btn {
    width: 30rem;
    margin-top: 1.3rem;
    box-shadow: 0px 0px 10px rgba(0, 0, 10, 0.16);
  }
}
@media screen and (max-width: 767px) {
  .main .reservation__qr .btn {
    margin-top: 1rem;
    width: min(86.1538461538%, 40rem);
  }
}
.main .reservation__qr .caution {
  font-weight: 500;
  text-align: center;
  margin-top: 0.8rem;
}
@media screen and (min-width: 768px) {
  .main .reservation__qr .caution {
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 767px) {
  .main .reservation__qr .caution {
    font-size: clamp(1.4rem, 4.2666666667vw, 1.8rem);
  }
}
.main .reservation__point {
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .main .reservation__point {
    border: 0.3rem solid #00c091;
    padding: 2.2rem 3.2rem 1.6rem;
    width: min(94%, 65rem);
    border-radius: 0.6rem;
    margin-top: 2.4rem;
  }
}
@media screen and (max-width: 767px) {
  .main .reservation__point {
    margin-top: clamp(2rem, 5.3333333333vw, 3.2rem);
  }
}
.main .reservation__point__heading {
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .main .reservation__point__heading {
    width: min(92%, 32.6rem);
  }
}
.main .reservation__point__banner {
  display: block;
  margin-inline: auto;
  transition: opacity 0.4s ease;
}
@media screen and (min-width: 768px) {
  .main .reservation__point__banner {
    width: min(94%, 33.6rem);
    margin-top: 0.6rem;
  }
}
@media screen and (max-width: 767px) {
  .main .reservation__point__banner {
    margin-top: -0.1rem;
  }
}
@media (hover: hover) and (pointer: fine) {
  .main .reservation__point__banner:hover {
    opacity: 0.8;
  }
}
.main .guide {
  background-color: var(--c-grn-li);
}
@media screen and (min-width: 768px) {
  .main .guide {
    padding-top: 4rem;
    padding-bottom: 3rem;
  }
}
@media screen and (max-width: 767px) {
  .main .guide {
    padding-top: clamp(2.6rem, 6.9333333333vw, 4rem);
    padding-bottom: clamp(1.1rem, 2.9333333333vw, 2.4rem);
  }
}
.main .guide .wrapper {
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .main .guide .wrapper {
    width: min(90%, 75rem);
  }
}
.main .guide__title {
  text-align: center;
  color: var(--c-grn);
}
@media screen and (min-width: 768px) {
  .main .guide__title {
    font-size: clamp(2.8rem, 7.4666666667vw, 2.8rem);
    line-height: 1.4;
  }
}
@media screen and (max-width: 767px) {
  .main .guide__title {
    font-size: clamp(2.4rem, 6.9333333333vw, 3.2rem);
    line-height: 1.3;
  }
}
@media screen and (max-width: 767px) {
  .main .guide__title .thin {
    font-size: clamp(1.8rem, 5.3333333333vw, 2.4rem);
    font-weight: 500;
  }
}
@media screen and (min-width: 768px) {
  .main .guide__flow {
    margin-top: 0.55rem;
  }
}
@media screen and (max-width: 767px) {
  .main .guide__flow {
    width: min(88.8%, 62rem);
    margin-inline: auto;
    transform: translateX(2.4024024024%);
  }
}
.main .guide__desc {
  margin-top: clamp(1.3rem, 3.4666666667vw, 2.4rem);
}
@media screen and (max-width: 767px) {
  .main .guide__desc {
    width: min(86.6666666667%, 62rem);
    margin-inline: auto;
    transform: translateX(2.4024024024%);
  }
}
.main .guide__qr {
  margin-inline: auto;
  margin-top: clamp(2.2rem, 5.8666666667vw, 3.8rem);
  background-color: var(--c-grn);
  border-radius: 0.6rem;
}
@media screen and (min-width: 768px) {
  .main .guide__qr {
    width: min(92%, 65rem);
    padding: 1.7rem 2rem 2.5rem;
  }
}
@media screen and (max-width: 767px) {
  .main .guide__qr {
    width: 86.6666666667%;
    padding: clamp(1rem, 2.6666666667vw, 2rem) 1.6rem clamp(1.1rem, 2.9333333333vw, 2.2rem);
  }
}
.main .guide__qr .title {
  text-align: center;
  color: var(--c-wht);
}
@media screen and (min-width: 768px) {
  .main .guide__qr .title {
    font-size: 2rem;
  }
}
@media screen and (max-width: 767px) {
  .main .guide__qr .title {
    font-size: clamp(1.4rem, 4.2666666667vw, 2.4rem);
  }
}
.main .guide__qr .qrBtn {
  display: block;
  width: min(90%, 30rem);
  margin-inline: auto;
  margin-top: 1.2rem;
  box-shadow: 0px 0px 10px rgba(0, 0, 10, 0.16);
  transition: opacity 0.4s ease;
}
@media (hover: hover) and (pointer: fine) {
  .main .guide__qr .qrBtn:hover {
    opacity: 0.8;
  }
}
@media screen and (max-width: 767px) {
  .main .guide__qr .qrBtn {
    display: none;
  }
}
.main .guide__qr .dlBtns {
  display: flex;
  justify-content: space-between;
  width: 89.2307692308%;
  margin-inline: auto;
  margin-top: clamp(1.1rem, 2.9333333333vw, 2rem);
}
@media screen and (min-width: 768px) {
  .main .guide__qr .dlBtns {
    display: none;
  }
}
.main .guide__qr .dlBtns a {
  width: 48.275862069%;
}
.main .guide__text {
  font-size: clamp(0.9rem, 2.9333333333vw, 2.2rem);
  font-weight: 500;
  line-height: 1.3;
  margin-top: clamp(1rem, 2.6666666667vw, 2rem);
}
@media screen and (min-width: 768px) {
  .main .guide__text {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .main .guide__text {
    width: 86.6666666667%;
    margin-inline: auto;
  }
}

@media screen and (min-width: 768px) {
  .note {
    padding-top: 2rem;
    padding-bottom: 4.8rem;
  }
}
@media screen and (max-width: 767px) {
  .note {
    padding-top: clamp(2rem, 5.3333333333vw, 4rem);
    padding-bottom: clamp(2rem, 5.3333333333vw, 4rem);
  }
}
.note summary {
  list-style: none;
}
.note .wrapper {
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .note .wrapper {
    width: min(90%, 75rem);
  }
}
@media screen and (max-width: 767px) {
  .note .wrapper {
    width: min(86.6666666667%, 65rem);
  }
}
@media screen and (min-width: 1081px) {
  .note_risona_block {
    padding-right: 4.6296296296%;
    padding-left: 4.6296296296%;
  }
}
.note_risona input {
  display: none;
  border: none;
}
.note_risona ul li .red {
  font-weight: 700;
  color: var(--c-red);
}
.note_risona ul li:not(.note_risona ul li.content_unordered_title) {
  position: relative;
}
.note_risona ul li:not(.note_risona ul li.content_unordered_title)::before {
  display: inline-block;
  position: absolute;
  left: 0;
  aspect-ratio: 1/1;
  height: auto;
  border-radius: 1rem;
  background-color: var(--c-blc);
  content: "";
}
@media screen and (min-width: 577px) {
  .note_risona ul li:not(.note_risona ul li.content_unordered_title)::before {
    top: clamp(0.7rem, 1.0975609756vw, 0.9rem);
    width: clamp(1rem, 1.4634146341vw, 1.2rem);
  }
}
@media screen and (max-width: 576px) {
  .note_risona ul li:not(.note_risona ul li.content_unordered_title)::before {
    top: clamp(0.2rem, 0.6097560976vw, 0.5rem);
    width: clamp(0.4rem, 2.1333333333vw, 0.8rem);
  }
}
@media screen and (min-width: 577px) {
  .note_risona ul li:not(.note_risona ul li.content_unordered_title) {
    padding-left: clamp(1.6rem, 2.1951219512vw, 1.8rem);
    line-height: 1.56;
  }
}
@media screen and (max-width: 576px) {
  .note_risona ul li:not(.note_risona ul li.content_unordered_title) {
    padding-left: clamp(1.2rem, 3.4666666667vw, 1.3rem);
    line-height: 1.385;
  }
}
.note_risona ul li.content_unordered_title {
  font-weight: 700;
  text-align: center;
  margin-bottom: 0.5rem;
  padding-bottom: 0.5rem;
  border-bottom: 0.2rem solid var(--c-primary);
}
@media screen and (min-width: 577px) {
  .note_risona ul li.content_unordered_title.second, .note_risona ul li.content_unordered_title.third {
    margin-top: 1.6rem;
  }
}
@media screen and (max-width: 576px) {
  .note_risona ul li.content_unordered_title.second, .note_risona ul li.content_unordered_title.third {
    margin-top: 1.2rem;
  }
}
.note_risona ul li.content_unordered_list .flex {
  display: flex;
  -moz-column-gap: 0.6rem;
       column-gap: 0.6rem;
  margin-top: 0.5rem;
}
.note_risona ul li.content_unordered_list .flex .heading {
  flex-shrink: 0;
}
.note_risona ul li a {
  transition: opacity 0.4s ease;
}
@media (hover: hover) and (pointer: fine) {
  .note_risona ul li a:hover {
    opacity: 0.7;
  }
}
@media screen and (max-width: 1080px) and (min-width: 577px) {
  .note_risona {
    margin-bottom: 0.5rem;
  }
}
.note_risona_acd:first-of-type label {
  background-color: var(--c-nvy);
}
.note_risona_acd:first-of-type label .circle::before, .note_risona_acd:first-of-type label .circle::after {
  background-color: var(--c-nvy);
}
.note_risona_acd h2 {
  width: auto;
  font-weight: 700;
}
.note_risona_acd h2 label {
  display: flex;
  align-items: center;
  justify-content: space-between;
  -moz-column-gap: 1.2rem;
       column-gap: 1.2rem;
  position: relative;
  width: 100%;
  color: var(--c-wht);
  background-color: var(--c-grn);
  cursor: pointer;
}
@media screen and (min-width: 577px) {
  .note_risona_acd h2 label {
    margin-top: 0.3rem;
    padding: 1.3rem 2rem 1.3rem;
    margin-bottom: 0.3rem;
  }
}
@media screen and (max-width: 576px) {
  .note_risona_acd h2 label {
    display: flex;
    align-items: center;
    min-height: 4.4rem;
    margin-top: 0.1rem;
    margin-bottom: 0.1rem;
    padding-right: min(3.6923076923%, 2rem);
    padding-left: min(3.6923076923%, 2rem);
    line-height: 1.25;
  }
}
.note_risona_acd h2 label .circle {
  position: relative;
  aspect-ratio: 1/1;
  background-color: var(--c-wht);
  border-radius: 50%;
}
@media screen and (min-width: 577px) {
  .note_risona_acd h2 label .circle {
    width: 3.2rem;
  }
}
@media screen and (max-width: 576px) {
  .note_risona_acd h2 label .circle {
    width: 2.4rem;
  }
}
.note_risona_acd h2 label .circle::before, .note_risona_acd h2 label .circle::after {
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 50%;
  background-color: var(--c-grn);
  content: "";
}
@media screen and (min-width: 577px) {
  .note_risona_acd h2 label .circle::before, .note_risona_acd h2 label .circle::after {
    width: 1.6rem;
    height: 0.3rem;
  }
}
@media screen and (max-width: 576px) {
  .note_risona_acd h2 label .circle::before, .note_risona_acd h2 label .circle::after {
    width: 1.2rem;
    height: 0.2rem;
  }
}
.note_risona_acd h2 label .circle::before {
  transform: translate(-50%, -50%);
}
.note_risona_acd h2 label .circle::after {
  transition: transform ease 0.4s;
  transform: translate(-50%, -50%) rotate(90deg);
}
.note_risona_acd input:checked ~ h2 label .circle::after {
  transform: translate(-50%, -50%) rotate(180deg);
}
.note_risona_acd input:checked ~ .content {
  grid-template-rows: 1fr;
  opacity: 1;
  visibility: visible;
}
@media screen and (min-width: 577px) {
  .note_risona_acd input:checked ~ .content {
    padding-top: 2rem;
    padding-bottom: 2rem;
  }
}
@media screen and (max-width: 576px) {
  .note_risona_acd input:checked ~ .content {
    padding-top: 1rem;
    padding-bottom: 1rem;
  }
}
.note_risona_acd .content {
  display: grid;
  grid-template-rows: 0fr;
  opacity: 0;
  visibility: hidden;
  transition: grid-template-rows ease 0.4s;
}
@media screen and (min-width: 577px) {
  .note_risona_acd .content {
    padding-right: 3.2rem;
    padding-left: 3.2rem;
  }
}
@media screen and (max-width: 576px) {
  .note_risona_acd .content {
    padding-right: min(2.6666666667%, 2rem);
    padding-left: min(2.6666666667%, 2rem);
  }
}
.note_risona_acd .content_unordered {
  overflow: hidden;
  transition: opacity ease 0.4s, visibility ease 0.4s;
}

.footer {
  padding: 15px;
  background-color: var(--c-grn);
  text-align: center;
}
@media screen and (min-width: 577px) {
  .footer {
    margin-bottom: clamp(0rem, 10.4302477184vw, 8rem);
  }
}
@media screen and (max-width: 576px) {
  .footer {
    margin-top: 0.1rem;
    margin-bottom: clamp(0rem, 12.5vw, 7.2rem);
    padding-bottom: clamp(0rem, 13.3680555556vw, 7.7rem);
  }
}
.footer small {
  color: var(--c-wht);
}

.fixedBtn {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 99;
  background-color: var(--c-nvy);
}
.fixedBtn a {
  display: block;
}
@media (hover: hover) and (pointer: fine) {
  .fixedBtn a:hover .ball {
    transform: scale(1.05);
  }
  .fixedBtn a:hover .arrow {
    transform: translateX(15%);
  }
}
.fixedBtn__content {
  display: flex;
  align-items: center;
  overflow: hidden;
}
@media screen and (min-width: 577px) {
  .fixedBtn__content {
    justify-content: center;
    -moz-column-gap: clamp(0rem, 5.2151238592vw, 4rem);
         column-gap: clamp(0rem, 5.2151238592vw, 4rem);
  }
}
@media screen and (max-width: 576px) {
  .fixedBtn__content {
    justify-content: space-between;
    padding-right: clamp(2rem, 5.3333333333vw, 4rem);
  }
}
.fixedBtn__content .ball {
  transition: transform 0.4s ease;
}
@media screen and (min-width: 577px) {
  .fixedBtn__content .ball {
    width: clamp(0rem, 17.4706649283vw, 13.4rem);
  }
}
@media screen and (max-width: 576px) {
  .fixedBtn__content .ball {
    width: 17.0666666667%;
  }
}
@media screen and (min-width: 577px) {
  .fixedBtn__content .title {
    width: clamp(0rem, 44.1981747066vw, 33.9rem);
  }
}
@media screen and (max-width: 576px) {
  .fixedBtn__content .title {
    width: 56.5333333333%;
  }
}
.fixedBtn__content .arrow {
  transition: transform 0.4s ease;
}
@media screen and (min-width: 577px) {
  .fixedBtn__content .arrow {
    width: clamp(0rem, 4.4328552803vw, 3.4rem);
  }
}
@media screen and (max-width: 576px) {
  .fixedBtn__content .arrow {
    width: 6.1333333333%;
  }
}

.fixedPageTop {
  position: fixed;
  right: 2.4rem;
  bottom: 9.8rem;
  z-index: 999;
  width: 6rem;
  cursor: pointer;
  transition: transform 0.4s ease;
}
@media (hover: hover) and (pointer: fine) {
  .fixedPageTop:hover {
    transform: scale(1.1);
  }
}
@media screen and (max-width: 576px) {
  .fixedPageTop {
    width: 4rem;
    right: 0.8rem;
    bottom: clamp(0rem, 14.5833333333vw, 8.4rem);
  }
}

.modal {
  z-index: 999;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 60px 10px;
  text-align: center;
}
.modal::after {
  display: inline-block;
  height: 100%;
  margin-left: -0.05em;
  vertical-align: middle;
  content: "";
}
.modal:target {
  opacity: 1;
  visibility: visible;
  transition: opacity ease 0.4s, visibility ease 0.4s;
}
.modal:not(:target) {
  opacity: 0;
  visibility: hidden;
  transition: opacity ease 0.3s, visibility ease 0.3s;
}
.modal_layer {
  z-index: 10;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.8);
  transition: none;
}
.modal_layer:hover {
  opacity: 1;
}
.modal_block {
  display: inline-block;
  z-index: 20;
  position: relative;
  width: min(100%, 30rem);
  padding: 3rem 2.4rem 2rem;
  border-radius: 2px;
  background: #fff;
  vertical-align: middle;
}
.modal_block_unit {
  max-height: 80vh;
  overflow-y: auto;
}
@media screen and (min-width: 1081px) {
  .modal_block_unit {
    border-bottom: solid 1px #dedede;
  }
}
@media screen and (min-width: 1081px) {
  .modal_block_unit figure {
    margin-top: 2.4rem;
  }
}
.modal_block_close {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 18.4rem;
  height: 6rem;
  margin-top: 1.8rem;
  font-size: 1.8rem;
  text-decoration: none;
  border: 1px solid #d3d3d3;
  border-radius: 0.3rem;
  box-shadow: rgba(0, 0, 0, 0.1) 0px 8px 2px -5px;
  color: #333;
}
/*# sourceMappingURL=style.css.map */