@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap");
@media screen and (min-width: 768px) {
  .pc-none {
    display: none !important;
  }
}

@media screen and (max-width: 767px) {
  .sp-none {
    display: none !important;
  }
}

body {
  min-width: 100%;
}
body .inner, body #fnav {
  width: 100%;
}
body #topicPath {
  width: 100%;
  max-width: 1024px;
  padding: 0 4%;
}
@media screen and (min-width: 768px) {
  body #topicPath {
    padding: 0 20px;
  }
}

#renewal #nav-4 .burger-menu {
  left: inherit;
  right: 15px;
  transform: inherit;
}

.c-sns {
  background: #fff;
}
@media screen and (min-width: 768px) {
  .c-sns {
    padding-top: 45px;
  }
}

article {
  font-family: "Noto Sans JP", sans-serif;
  font-feature-settings: normal;
  letter-spacing: 0.03em;
}
article .l-contents {
  padding: 0 4%;
  max-width: 1064px;
  margin: 0 auto;
  box-sizing: border-box;
}
@media screen and (min-width: 768px) {
  article .l-contents {
    padding: 0 20px;
  }
}
article .l-contents * {
  box-sizing: border-box;
}
article .l-contents .cmn-btn {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 114.2857142857%;
  font-weight: 600;
  color: #fff;
  line-height: 1.375;
  background: #333;
  min-height: 56px;
  padding: 0.6em 1.4em 0.7em 1em;
  border-radius: 4em;
  position: relative;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  article .l-contents .cmn-btn {
    text-align: center;
    width: 90%;
    max-width: 350px;
  }
}
@media screen and (min-width: 768px) {
  article .l-contents .cmn-btn {
    display: inline-flex;
    font-size: clamp(121.4285714286%, 1.7vw, 142.8571428571%);
    min-width: 320px;
    width: 100%;
    min-height: 64px;
    padding: 0.4em 3em 0.4em 2.4em;
  }
}
@media screen and (min-width: 768px) {
  article .l-contents .cmn-btn.is-wide {
    min-width: 540px;
  }
  article .l-contents .cmn-btn.is-wide::after {
    right: 1.8em;
  }
}
article .l-contents .cmn-btn::after {
  content: "";
  display: block;
  width: 1.1em;
  height: 1.1em;
  background: url(/jgbs/individual/kojinmuke/assets/img/main/renewal2025/icon_arrow_white.svg) no-repeat center bottom/contain;
  margin-left: 1em;
  transition: 0.3s;
  position: absolute;
  top: 50%;
  right: 0.8em;
  transform: translate(0, -50%);
}
@media screen and (min-width: 768px) {
  article .l-contents .cmn-btn::after {
    width: 1em;
    height: 1em;
    right: 1.2em;
  }
}
article .l-contents .cmn-btn:hover {
  opacity: 0.8;
}
article .l-contents .cmn-btn:hover::after {
  transform: translate(8px, -50%);
}
@media screen and (min-width: 768px) {
  article .l-contents .cmn-btn-list {
    display: flex;
    justify-content: center;
  }
}
@media screen and (max-width: 767px) {
  article .l-contents .cmn-btn-list li:nth-child(n+2) {
    margin-top: 1.5em;
  }
}
@media screen and (min-width: 768px) {
  article .l-contents .cmn-btn-list li {
    padding: 0 0.7em;
  }
}
@media screen and (min-width: 768px) {
  article .l-contents .cmn-btn br {
    display: none;
  }
}

div#footer {
  display: block !important;
  font-size: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: none !important;
}

.mv-txt {
  font-size: 128.5714285714%;
  font-weight: 500;
  line-height: 1.6;
  padding: 1.8em 1em 2em;
}
@media screen and (min-width: 768px) {
  .mv-txt {
    font-size: clamp(121.4285714286%, 1.7vw, 142.8571428571%);
    text-align: center;
    padding: 2.2em 1em;
  }
}

.promotion-anchor {
  position: relative;
}
.promotion-anchor::before {
  content: "";
  display: block;
  width: 100vw;
  height: 100%;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  background: #EDEDED;
}
.promotion-anchor > * {
  position: relative;
}
.promotion-anchor-list {
  display: flex;
  justify-content: center;
  width: calc(100% + 0.8em);
  padding: 1.5em 0;
  margin: 0 -0.4em;
  position: relative;
}
@media screen and (min-width: 768px) {
  .promotion-anchor-list {
    width: calc(100% + 1.3em);
    padding: 1.8em 0;
  }
}
.promotion-anchor-list li {
  position: relative;
  width: 33.3333333333%;
  max-width: 258px;
  padding: 0 0.3em;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .promotion-anchor-list li {
    padding: 0 0.65em;
  }
}
.promotion-anchor-list a {
  display: flex;
  align-items: center;
  font-size: 114.2857142857%;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1.4;
  min-height: 3.2em;
  position: relative;
  background: #fff;
  padding: 0 2.5em 0 0.8em;
  border: #707070 1px solid;
  border-radius: 4px;
  position: relative;
}
@media screen and (min-width: 768px) {
  .promotion-anchor-list a {
    font-size: clamp(100%, 1.4vw, 114.2857142857%);
    min-height: 3.2em;
    padding: 0 2.8em 0 1em;
  }
}
.promotion-anchor-list a::after {
  content: "";
  display: block;
  width: 1em;
  height: 1em;
  background: url(/jgbs/individual/kojinmuke/assets/img/main/renewal2025/icon_arrow_lightblue.svg) no-repeat 0 0/contain;
  position: absolute;
  top: 50%;
  right: 0.6em;
  transform: translateY(-50%);
}
@media screen and (min-width: 768px) {
  .promotion-anchor-list a::after {
    width: 1.01em;
    height: 1.01em;
    right: 0.8em;
  }
}

.promotion-btn {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 128.5714285714%;
  font-weight: 600;
  width: 100%;
  max-width: 240px !important;
  min-height: 2.65em;
  border: #000 1px solid;
  border-radius: 3em;
  margin-top: 1.4em;
}
@media screen and (max-width: 767px) {
  .promotion-btn {
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (min-width: 768px) {
  .promotion-btn {
    font-size: clamp(114.2857142857%, 1.6vw, 128.5714285714%);
    min-height: 2.8em;
  }
}

.promotion-section {
  position: relative;
  padding-top: 3em;
  padding-bottom: 45px;
  margin-top: 3em;
  overflow-y: clip;
}
@media screen and (min-width: 768px) {
  .promotion-section {
    padding-bottom: 120px;
    padding-top: 4em;
    margin-top: 5em;
  }
}
.promotion-section-child {
  margin-top: 30px;
}
@media screen and (min-width: 768px) {
  .promotion-section-child {
    margin-top: 55px;
  }
}
.promotion-section-child:nth-of-type(n+2) {
  margin-top: 40px;
}
@media screen and (min-width: 768px) {
  .promotion-section-child:nth-of-type(n+2) {
    margin-top: 70px;
  }
}
.promotion-section::before {
  content: "";
  display: block;
  width: 100vw;
  height: 100%;
  position: absolute;
  top: 5em;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (min-width: 768px) {
  .promotion-section::before {
    top: 6.5em;
  }
}
.promotion-section.is-odd::before {
  background: #F0F9FD;
}
.promotion-section.is-even::before {
  background: #FDF2F5;
}

.promotion-heading-01 {
  font-size: 171.4285714286%;
  font-weight: 600;
  letter-spacing: 0.05em;
  position: relative;
}
@media screen and (min-width: 768px) {
  .promotion-heading-01 {
    font-size: clamp(171.4285714286%, 2.4vw, 214.2857142857%);
  }
}
.promotion-heading-01::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: #333333;
  position: absolute;
  top: 5px;
  left: 5px;
  z-index: 0;
  border-radius: 4px;
}
@media screen and (min-width: 768px) {
  .promotion-heading-01::before {
    top: 6px;
    left: 6px;
    border-radius: 8px;
  }
}
.promotion-heading-01::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  right: 10px;
  width: 6em;
  height: 2.8em;
  background: url(/jgbs/individual/kojinmuke/assets/img/regional-promotion/2025/heading_img.svg) no-repeat 0 bottom/100% auto;
}
@media screen and (min-width: 768px) {
  .promotion-heading-01::after {
    width: 9em;
    height: 4.8em;
    right: 30px;
  }
}
.promotion-heading-01 span {
  display: block;
  background: #fff;
  padding: 0.3em 1em;
  border-radius: 4px;
  position: relative;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .promotion-heading-01 span {
    padding: 0.45em 1.5em;
    border-radius: 8px;
  }
}
.is-odd .promotion-heading-01 span {
  border: #58C2DD 2px solid;
}
.is-even .promotion-heading-01 span {
  border: #ED99AB 2px solid;
}
.promotion-heading-01 span::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 8px;
  height: 100%;
}
@media screen and (min-width: 768px) {
  .promotion-heading-01 span::before {
    width: 12px;
  }
}
.is-odd .promotion-heading-01 span::before {
  background: #58C2DD;
}
.is-even .promotion-heading-01 span::before {
  background: #ED99AB;
}

.promotion-heading-02 {
  display: flex;
  align-items: center;
  font-family: "Noto Sans JP", sans-serif !important;
  font-size: 157.1428571429% !important;
  font-weight: 600;
  letter-spacing: 0.05em;
  line-height: 1.4;
  padding-bottom: 0.25em;
  position: relative;
}
@media screen and (min-width: 768px) {
  .promotion-heading-02 {
    font-size: clamp(135.7142857143%, 1.9vw, 171.4285714286%) !important;
  }
}
.is-odd .promotion-heading-02 {
  border-bottom: 2px solid #58C2DD;
}
.is-even .promotion-heading-02 {
  border-bottom: 2px solid #ED99AB;
}
.promotion-heading-02::before {
  content: "";
  display: inline-block;
  width: 1.8em;
  height: 1.8em;
  margin-right: 0.5em;
}
@media screen and (min-width: 768px) {
  .promotion-heading-02::before {
    width: 2em;
    height: 2em;
  }
}
.promotion-heading-02.is-cm::before {
  background: url(/jgbs/individual/kojinmuke/assets/img/regional-promotion/2025/icon_cm.svg) no-repeat 0 bottom/contain;
}
.promotion-heading-02.is-poster::before {
  background: url(/jgbs/individual/kojinmuke/assets/img/regional-promotion/2025/icon_poster.svg) no-repeat 0 bottom/contain;
}
.promotion-heading-02.is-cooperation::before {
  background: url(/jgbs/individual/kojinmuke/assets/img/regional-promotion/2025/icon_cooperation.svg) no-repeat 0 bottom/contain;
}
.promotion-heading-02.is-event::before {
  background: url(/jgbs/individual/kojinmuke/assets/img/regional-promotion/2025/icon_event.svg) no-repeat 0 bottom/contain;
}

.promotion-heading-03 {
  font-size: inherit !important;
  text-align: center;
  transform: translateY(-20%);
  margin-bottom: -0.5em;
}
@media screen and (min-width: 768px) {
  .promotion-heading-03 {
    transform: translateY(-39%);
  }
}
.promotion-heading-03 > span {
  text-align: center;
  letter-spacing: 0.05em;
  line-height: 1.4;
}
.promotion-heading-03 > span:first-child {
  display: inline-block;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 257.1428571429%;
  font-weight: 300;
  letter-spacing: 0.05em;
  position: relative;
}
@media screen and (max-width: 767px) {
  .promotion-heading-03 > span:first-child {
    line-height: 1;
  }
}
@media screen and (min-width: 768px) {
  .promotion-heading-03 > span:first-child {
    font-size: clamp(357.1428571429%, 5vw, 457.1428571429%);
  }
}
.is-odd .promotion-heading-03 > span:first-child {
  color: rgba(88, 194, 221, 0.3);
}
.is-even .promotion-heading-03 > span:first-child {
  color: rgba(237, 153, 171, 0.4);
}
.promotion-heading-03 > span:first-child::before, .promotion-heading-03 > span:first-child::after {
  content: "";
  display: inline-block;
  width: 2.5em;
  height: 2.2em;
  transform: translateY(35%);
  position: absolute;
  bottom: 0;
}
@media screen and (min-width: 768px) {
  .promotion-heading-03 > span:first-child::before, .promotion-heading-03 > span:first-child::after {
    width: 3em;
    height: 2.85em;
  }
}
.promotion-heading-03 > span:first-child::before {
  left: 0;
  transform: translate(-122%, 10%);
  background: url(/jgbs/individual/kojinmuke/assets/img/regional-promotion/2025/img_koko.svg) no-repeat center bottom/contain;
}
@media screen and (max-width: 767px) {
  .promotion-heading-03 > span:first-child::before {
    background-position: right bottom;
  }
}
@media screen and (min-width: 768px) {
  .promotion-heading-03 > span:first-child::before {
    transform: translate(-105%, 25%);
  }
}
.promotion-heading-03 > span:first-child::after {
  right: 0;
  transform: translate(112%, 10%);
  background: url(/jgbs/individual/kojinmuke/assets/img/regional-promotion/2025/img_kokusai.svg) no-repeat center bottom/contain;
}
@media screen and (max-width: 767px) {
  .promotion-heading-03 > span:first-child::after {
    background-position: 0 bottom;
  }
}
@media screen and (min-width: 768px) {
  .promotion-heading-03 > span:first-child::after {
    transform: translate(102%, 25%);
  }
}
@media screen and (max-width: 767px) {
  .promotion-heading-03 > span:first-child > span {
    display: block;
  }
}
@media screen and (min-width: 768px) {
  .promotion-heading-03 > span:first-child > span:last-child {
    margin-left: 0.3em;
  }
}
.promotion-heading-03 > span:last-child {
  display: block;
  font-size: 157.1428571429%;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .promotion-heading-03 > span:last-child {
    margin-top: 0.3em;
  }
}
@media screen and (min-width: 768px) {
  .promotion-heading-03 > span:last-child {
    font-size: clamp(142.8571428571%, 2vw, 185.7142857143%);
  }
}

.promotion-cm {
  margin-top: 25px;
}
@media screen and (max-width: 767px) {
  .promotion-cm {
    padding: 0 9%;
  }
}
@media screen and (min-width: 768px) {
  .promotion-cm {
    display: flex;
    margin-top: 40px;
  }
}
.promotion-cm-img {
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .promotion-cm-img {
    width: 56%;
  }
}
.promotion-cm-box {
  position: relative;
}
@media screen and (max-width: 767px) {
  .promotion-cm-box {
    line-height: 1.5;
    padding-bottom: 30px;
    margin-top: 18px;
  }
}
@media screen and (min-width: 768px) {
  .promotion-cm-box {
    width: 44%;
    padding: 4.5% 5%;
    transform: translateY(20%);
  }
}
.promotion-cm-box::before {
  content: "";
  display: block;
  width: 115%;
  height: 150%;
  position: absolute;
  right: 50%;
  z-index: -1;
  background: #fff;
  border-radius: 16px;
}
@media screen and (max-width: 767px) {
  .promotion-cm-box::before {
    width: 120%;
    bottom: 0;
    transform: translateX(50%);
  }
}
@media screen and (min-width: 768px) {
  .promotion-cm-box::before {
    width: 150%;
    height: 100%;
    top: 0;
    right: 0;
  }
}
.promotion-cm-heading {
  font-size: 128.5714285714%;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1.5;
}
@media screen and (min-width: 768px) {
  .promotion-cm-heading {
    font-size: clamp(121.4285714286%, 1.7vw, 142.8571428571%);
    line-height: 1.6;
  }
}
.promotion-cm-list {
  display: flex;
  letter-spacing: 0.03em;
  line-height: 1.6;
  margin-top: 0.25em;
}
@media screen and (min-width: 768px) {
  .promotion-cm-list {
    margin-top: 0.4em;
  }
}
.promotion-cm-list dt, .promotion-cm-list dd {
  font-weight: 500;
}
@media screen and (min-width: 768px) {
  .promotion-cm-list dt, .promotion-cm-list dd {
    font-size: clamp(100%, 1.4vw, 114.2857142857%);
  }
}
.promotion-cm-list dd {
  padding-left: 0.5em;
}

.promotion-poster {
  min-height: 200px;
  margin-top: 20px;
  margin-bottom: 65px;
  position: relative;
}
@media screen and (min-width: 768px) {
  .promotion-poster {
    margin-top: 40px;
    margin-bottom: 75px;
  }
}
@media screen and (min-width: 768px) {
  .promotion-poster:nth-of-type(n+2) {
    margin-bottom: 90px;
  }
}
.promotion-poster .promotion-poster-carousel {
  max-width: 75%;
  padding-bottom: 50px;
  margin: 0 auto;
  opacity: 0;
  transition: 1s;
}
@media screen and (min-width: 768px) {
  .promotion-poster .promotion-poster-carousel {
    max-width: 89%;
    padding-bottom: 74px;
  }
}
.promotion-poster .promotion-poster-carousel.is-visible {
  opacity: 1;
}
.promotion-poster::before {
  content: "";
  display: block;
  width: 100%;
  height: 65%;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -1;
  background: #fff;
  border-radius: 16px;
}
.promotion-poster li {
  transition: 0.4s;
  padding: 0 0.18% !important;
  padding: 0 12px !important;
}
.promotion-poster li:hover {
  opacity: 0.7 !important;
}
.promotion-poster li img {
  max-width: 288px;
  border: #333 1px solid;
}

.promotion-event {
  margin-top: 20px;
  background: #fff;
  border-radius: 16px;
}
@media screen and (min-width: 768px) {
  .promotion-event {
    padding: 3.6em;
    margin-top: 40px;
  }
}
@media screen and (max-width: 767px) {
  .promotion-event-box {
    width: 82%;
    padding: 5% 0 9%;
    margin: 0 auto;
  }
}
.promotion-event-box:nth-child(n+2) {
  padding-top: 25px;
  margin-top: 25px;
  border-top: 1px solid #D5D5D5;
}
@media screen and (min-width: 768px) {
  .promotion-event-box:nth-child(n+2) {
    padding-top: 40px;
    margin-top: 40px;
  }
}
@media screen and (max-width: 767px) {
  .promotion-event-img {
    margin-top: 8px;
  }
}
@media screen and (min-width: 768px) {
  .promotion-event-img {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
  }
}
@media screen and (min-width: 768px) and (min-width: 768px) {
  .promotion-event-img {
    margin: 22px -15px 0;
  }
}
@media screen and (min-width: 768px) {
  .promotion-event-img > div {
    width: 33.3333333333%;
    padding: 0 15px;
  }
}
@media screen and (min-width: 768px) {
  .promotion-event-img > div:nth-child(n+4) {
    margin-top: 30px;
  }
}
.promotion-event-img img {
  max-width: 100%;
  border: #333 1px solid;
}
@media screen and (max-width: 767px) {
  .promotion-event-img img {
    max-width: 480px;
    margin-top: 15px;
    margin-left: auto;
    margin-right: auto;
  }
}
.promotion-event-date {
  font-size: 92.8571428571%;
}
@media screen and (max-width: 767px) {
  .promotion-event-date {
    margin-top: 1.6em;
  }
}
@media screen and (min-width: 768px) {
  .promotion-event-date {
    font-size: clamp(85.7142857143%, 1.2vw, 100%);
  }
}
.promotion-event-heading {
  font-size: 142.8571428571%;
  font-weight: 600;
  margin-top: 0.4em;
}
@media screen and (min-width: 768px) {
  .promotion-event-heading {
    font-size: clamp(121.4285714286%, 1.7vw, 142.8571428571%);
    margin-top: 0.8em;
  }
}
.promotion-event-txt {
  font-size: 114.2857142857%;
  margin-top: 0.5em;
}
@media screen and (min-width: 768px) {
  .promotion-event-txt {
    font-size: clamp(114.2857142857%, 1.6vw, 128.5714285714%);
    margin-top: 0.8em;
  }
}

.home-movie-box {
  max-width: inherit;
}

.slick-slide {
  opacity: 1 !important;
  margin: 0 !important;
}

.slick-arrow {
  width: 44px;
  height: 44px;
  z-index: 100;
  left: 50%;
  right: inherit !important;
  top: 100%;
  transition: 0.4s;
}
@media screen and (min-width: 768px) {
  .slick-arrow {
    width: 50px;
    height: 50px;
  }
}
.slick-arrow.slick-prev {
  background: url(/jgbs/individual/kojinmuke/assets/img/regional-promotion/2025/btn_prev.png) no-repeat 0 bottom/contain;
  left: calc(50% - 95px);
}
.slick-arrow.slick-next {
  background: url(/jgbs/individual/kojinmuke/assets/img/regional-promotion/2025/btn_next.png) no-repeat 0 bottom/contain;
  left: calc(50% + 45px);
}
.slick-arrow:hover {
  opacity: 0.7;
}

.slick-num {
  font-size: 128.5714285714%;
  font-weight: 600;
  text-align: center;
  margin-top: 50px;
  padding-bottom: 12px;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 65%);
}

.promotion-related {
  border-radius: 16px;
  padding-bottom: 40px;
  margin-top: 80px;
}
@media screen and (min-width: 768px) {
  .promotion-related {
    margin-top: 160px;
    padding-bottom: 60px;
  }
}
.promotion-related::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  background: #fff;
  border-radius: 16px;
}
.promotion-related-box {
  max-width: 620px;
  margin: 0 auto;
  position: relative;
}
@media screen and (max-width: 767px) {
  .promotion-related-box {
    padding: 0 8%;
  }
}
@media screen and (min-width: 768px) {
  .promotion-related-box {
    display: flex;
    flex-direction: row-reverse;
  }
}
.promotion-related-box img {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .promotion-related-col:first-child {
    width: 45%;
  }
}
@media screen and (max-width: 767px) {
  .promotion-related-col:last-child {
    margin-top: 15px;
  }
}
@media screen and (min-width: 768px) {
  .promotion-related-col:last-child {
    flex: 1;
    padding-right: 2em;
  }
}
.promotion-related-col:last-child img {
  width: 100%;
}
.promotion-related-heading {
  font-size: 142.8571428571%;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1.4;
  border-bottom: 1px solid #8D8D8D;
  padding-bottom: 0.8em;
}
@media screen and (min-width: 768px) {
  .promotion-related-heading {
    padding-bottom: 0.7em;
  }
}
.promotion-related-unit {
  display: flex;
  align-items: center;
  margin-top: 1em;
}
@media screen and (min-width: 768px) {
  .promotion-related-unit {
    margin-top: 1.2em;
  }
}
.promotion-related-unit-prefectures {
  font-size: 121.4285714286%;
  font-weight: 700;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  min-width: 5em;
  padding: 0.75em 0 0.8em;
  border-radius: 4px;
}
#fukushima .promotion-related-unit-prefectures {
  background: rgba(34, 152, 188, 0.2);
}
#toyama .promotion-related-unit-prefectures {
  background: rgba(146, 185, 43, 0.2);
}
#nagano .promotion-related-unit-prefectures {
  background: rgba(146, 185, 43, 0.3);
}
.promotion-related-unit-dl {
  padding-left: 1.2em;
}
.promotion-related-unit-dl dt, .promotion-related-unit-dl dd {
  font-size: 100%;
  font-weight: 500;
}
@media screen and (min-width: 768px) {
  .promotion-related-unit-dl dt, .promotion-related-unit-dl dd {
    font-size: clamp(78.5714285714%, 1.1vw, 100%);
  }
}
.promotion-related-unit-dl dt {
  letter-spacing: 0.03em;
  line-height: 1.3;
}
.promotion-related-unit-dl dd {
  line-height: 1.4;
}
.promotion-related-unit-dl dd span {
  font-size: 142.8571428571%;
  font-weight: 700;
  margin-right: 0.4em;
}
@media screen and (min-width: 768px) {
  .promotion-related-unit-dl dd span {
    font-size: clamp(114.2857142857%, 1.6vw, 142.8571428571%);
  }
}

.promotion-banner {
  margin: 70px auto;
}
@media screen and (min-width: 768px) {
  .promotion-banner {
    margin: 100px auto;
  }
}

.promotion-search {
  text-align: center;
  padding: 2.5em 0 2.2em;
  position: relative;
}
@media screen and (max-width: 767px) {
  .promotion-search {
    margin-bottom: 30px;
  }
}
@media screen and (min-width: 768px) {
  .promotion-search {
    padding: 3em 0;
  }
}
.promotion-search::before {
  content: "";
  display: block;
  width: 100vw;
  height: 100%;
  background: #DB3458;
  position: absolute;
  top: 0;
  left: 50%;
  z-index: -1;
  transform: translateX(-50%);
}
.promotion-search-txt {
  font-size: 142.8571428571%;
  font-weight: 600;
  color: #fff;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 768px) {
  .promotion-search-txt {
    font-size: 24px;
  }
}
.promotion-search-btn {
  font-size: 142.8571428571%;
  font-weight: 600;
  letter-spacing: 0.03em;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  background: #fff;
  border-radius: 3em;
  width: 100%;
  max-width: 540px;
  height: 64px;
  position: relative;
  transition: 0.4s;
  margin-top: 0.8em;
}
@media screen and (min-width: 768px) {
  .promotion-search-btn {
    margin-top: 1.1em;
  }
}
.promotion-search-btn::after {
  content: "";
  display: block;
  width: 0.9em;
  height: 0.9em;
  background: url(/jgbs/individual/kojinmuke/assets/img/regional-promotion/2025/icon_arrow.png) no-repeat center center/contain;
  transition: 0.4s;
  position: absolute;
  top: 50%;
  right: 1em;
  transform: translate(0, -50%);
}
@media screen and (min-width: 768px) {
  .promotion-search-btn::after {
    width: 1em;
    height: 1em;
    right: 2em;
  }
}
.promotion-search-btn:hover {
  opacity: 0.7 !important;
}
.promotion-search-btn:hover::after {
  transform: translate(8px, -50%);
}

.screen.is-modal-img {
  max-width: 800px !important;
}
.screen.is-modal-img img {
  display: block;
  width: 100%;
}

.slick-track img {
  width: 100%;
}
