/*-------------------- setting --------------------*/
@font-face {
  font-family: "dnp-shuei-shogomincho-std", sans-serif;
  font-weight: 700;
  font-style: normal;
}

:root {
  --font-ja: YakuHanJP, 'Noto Sans JP', sans-serif;
  --font-serif: "dnp-shuei-shogomincho-std", sans-serif;
  --color-primary: #CC0000;
}

body {
  width: 100%;
  height: auto;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.75;
  color: #ffffff;
  margin: 0;
  padding: 0;
  font-family: var(--font-ja);
  max-width: 100%;
  box-sizing: border-box !important;
}

h1,
h2,
h3,
h4,
h5,
span,
p {
  margin: 0;
  padding: 0;
}

ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

a {
  color: inherit;
  text-decoration: none;
}

a:hover {
  cursor: pointer !important;
  text-decoration: none;
}

img,
svg {
  display: inline-block;
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}

svg {
  max-width: 100%;
}

button {
  cursor: pointer;
}

.site_wrapper {
  position: relative;
}

.primary {
  color: var(--color-primary);
}

.text-left {
  text-align: left !important;
}

.text-right {
  text-align: right !important;
}

.text-center {
  text-align: center !important;
}

.text-center_pc {
  text-align: left !important;
}

@media screen and (min-width: 920px) {
  .text-center_pc {
    text-align: center !important;
  }
}

.text-center_sp {
  text-align: center !important;
}

@media screen and (min-width: 920px) {
  .text-center_pc {
    text-align: left !important;
  }
}

.br_sp {
  display: block;
}

@media screen and (min-width: 920px) {
  .br_sp {
    display: none;
  }
}

.br_pc {
  display: none;
}

@media screen and (min-width: 920px) {
  .br_pc {
    display: block;
  }
}

.br_catch {
  display: block;
}

@media screen and (min-width: 600px) {
  .br_catch {
    display: none;
  }
}

.inner_link {
  position: relative;
}

.inner_link::before {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background: #ffffff;
  position: absolute;
  bottom: -2px;
  left: 0;
  scale: 0 1;
  transition: scale 0.3s ease-out;
  transform-origin: 100% 0;
}

.inner_link:hover {
  opacity: 1;
  visibility: visible;
}

.inner_link:hover::before {
  scale: 1 1;
  transform-origin: 0 0;
}

/* 
.stream_line {
  background-image: linear-gradient(to right, #ffffff, #ffffff);
  background-size: 100% 1px;
  background-position: bottom left;
  background-repeat: no-repeat;
  line-height: 1.1;
  width: fit-content;
}

.stream_line:hover {
  animation: none;
}
@media screen and (min-width: 920px){
  .stream_line:hover {
    animation: linkLineReverse 0.5s ease forwards;
  }
}

@keyframes linkLineReverse {
  0% {
    background-size: 100% 1px;
    background-position: bottom right;
  }

  50% {
    background-size: 0 1px;
    background-position: bottom right;
  }

  51% {
    background-position: bottom left;
  }

  100% {
    background-size: 100% 1px;
  }
} */

.container-base {
  width: 100%;
  max-width: 1600px;
  padding: 0 20px;
  margin: 0 auto;
}

@media screen and (min-width: 920px) {
  .container-base {
    padding: 0;
  }
}

.icon::before,
.icon::after {
  transition: translate 0.2s ease-out, background-color 0.3s;
}

/*-------------------- setting --------------------*/
/*-------------------- contents --------------------*/
.campaign_header {
  width: 100%;
  height: 100vh;
  position: fixed;

}

@media screen and (max-width: 1200px) {
  .campaign_header {
    
    pointer-events: all;
    box-shadow: inset 3px 3px 30px rgba(25, 25, 25, 0.15), inset -3px -3px 30px rgba(25, 25, 25, 0.15);
    background: linear-gradient(180deg, #F39800 2.79%, #E60012 20.59%, #C7000B 49.63%, #E60012 79.6%, #F39800 96.46%);
  }
}

.campaign_header_left {
  display: none;
}

@media screen and (min-width: 1200px) {
  .campaign_header_left {
    background: linear-gradient(180deg, #F39800 2.79%, #E60012 20.59%, #C7000B 49.63%, #E60012 79.6%, #F39800 96.46%);
    width: calc((100% - 375px) / 2);
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    position: absolute;
    left: 0;
     z-index: 10;
  }

  .campaign_header_left_inr {
    width: 38.643vw;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    /* position: absolute; */
    padding: 48px 0 44px;
    top: 50%;
    right: 0;
    /* translate: 0 -50%; */
    box-sizing: border-box;
    /* background-image: url(../img/campaign_header_right_bg.png);
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat; */
  }

  /* .campaign_header_left_img {
    margin-bottom: 22px;
  }

  .campaign_header_left_txt {
    text-align: center;
    line-height: 1.5;
    color: #fff;
    font-size: 28px;
    font-weight: 700;
    text-shadow: 0 0 10px rgba(0, 0, 0, 0.4);
    margin-bottom: 20px;
    letter-spacing: -0.05em;
  } */
}

@media screen and (min-width: 1400px) {
  .campaign_header_left_inr {
    width: 513px;
  }
}

/* @media screen and (min-width: 1440px) {
  .campaign_header_left {
    left: 20%;
    translate: -50% -50%;
  }
} */

.campaign_header_mv {
  width: 100%;
  height: auto;
  width: min(456px, 32.57142857142858vw);
  margin-bottom: 32px;
}

/* .campaign_header_mv_catch img {
  width: 100%;
  height: 100%;
}

.campaign_header_mv_data {
  width: 242px;
  height: 31px;
}

.campaign_header_mv_data img {
  width: 100%;
  height: 100%;
}

.campaign_header_mv_present {
  width: 120px;
  height: 120px;
  display: flex;
  position: absolute;
  bottom: 40px;
  right: 31px;
}

.campaign_header_mv_present img {
  width: 100%;
  height: 100%;
} */

.campaign_header_mv_entry {
  width: 124px;
  height: 124px;
  display: flex;
  position: absolute;
  bottom: 40px;
  left: 24px;
}

.campaign_header_mv_entry img {
  width: 100%;
  height: 100%;
}

.campaign_header_entry_wrap {
  width: fit-content;
  height: auto;
  margin: 0 auto 23px;
}

.campaign_header_entry_wrap .entry_btn {
  width: 24vw;
  margin: 0;
}

@media screen and (min-width: 1400px) {
  .campaign_header_entry_wrap .entry_btn {
    width: 336px;
  }
}

.lp_container {
  width: 100%;
  max-width: 400px;
  margin: 0 auto;
  position: relative;
}

@media screen and (min-width: 1200px) {
  .lp_container {
    max-width: 375px;
    box-shadow: 0 4px 64px rgba(25, 25, 25, 0.15);
  }
}

.campaign_header_bnr {
  width: 32.286vw;
  height: 7.0714vw;
}

@media screen and (min-width: 1400px) {
  .campaign_header_bnr {
    width: 452px;
    height: 99px;
  }
}

.campaign_header_bnr img {
  width: 100%;
  height: 100%;
}

.campaign_header_right {
  display: none;

}

@media screen and (min-width: 1200px) {
  .campaign_header_right {
    background: linear-gradient(180deg, #F39800 2.79%, #E60012 20.59%, #C7000B 49.63%, #E60012 79.6%, #F39800 96.46%);
    width: calc((100% - 375px) / 2);
    height: 100%;
    display: flex;
    justify-content: center;
    position: absolute;
    right: 0;background-image: url(../img/campaign_header_right_bg.png);
    background-size: cover;
    background-position: center center;
    background-repeat: repeat-x;
    z-index: 10;
  }

  .campaign_header_right_inr {
    width: 38.643vw;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    /* position: absolute; */
    padding: 48px 0 44px;
    top: 50%;
    right: 0;
    /* translate: 0 -50%; */
    box-sizing: border-box;
    /* background-image: url(../img/campaign_header_right_bg.png);
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat; */
  }

  .campaign_header_right_img {
    margin-bottom: 22px;
  }

  .campaign_header_right_txt {
    text-align: center;
    line-height: 1.5;
    color: #fff;
    font-size: 28px;
    font-weight: 700;
    text-shadow: 0 0 10px rgba(0, 0, 0, 0.4);
    margin-bottom: 20px;
    letter-spacing: -0.05em;
  }
}

@media screen and (min-width: 1600px) {
  .campaign_header_right_inr {
    width: 513px;
  }
}

@media screen and (min-width: 1600px) {
  .campaign_header_right_inr {
    /* right: 20%;
    translate: 50% -50%; */
  }
}

/* .campaign_header_item {
  width: 100%;
  position: relative;
  padding: 18px 0 12px;
}

.campaign_header_item_first {
  padding: 0 0 20px;
}

.campaign_header_item_last {
  padding: 17px 0 0;
}

.campaign_header_item::after {
  content: "";
  position: absolute;
  background: url(../img/head_item_dots.svg);
  width: 440px;
  height: 3px;
  bottom: 0;
  left: 50%;
  translate: -50% 0;
}

.campaign_header_item_last::after {
  content: none;
}

.campaign_header_item img {
  width: 100%;
  height: 100%;
} */

.lp_bg {
  width: 100%;
  height: 100vh;
  max-width: 400px;
  margin: 0 auto;
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  /* background-attachment: fixed; */
}

@media screen and (min-width: 1200px) {
  .lp_bg {
    max-width: 375px;
    background: linear-gradient(180deg, #F39800 2.79%, #E60012 20.59%, #C7000B 49.63%, #E60012 79.6%, #F39800 96.46%);
  }
}

/* .lp_bg::before {
  content: "";
  position: absolute;
  background: url(../img/bg_pattern.svg) center center no-repeat;
  width: 100%;
  height: 82px;
  top: 0;
  left: 0;
  right: 0;
}
.lp_bg::after {
  content: "";
  position: absolute;
  background: url(../img/bg_pattern.svg) center center no-repeat;
  width: 100%;
  height: 82px;
  bottom: 0;
  left: 0;
  right: 0;
  rotate: 180deg;
} */

.lp_container_inner {
  position: relative;
  background-color: var(--color-primary);
}

.mv {
  width: 100%;
  padding: 20px 0 0;
  position: relative;
  background-image: url(../img/mv_bg.png);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}

.mv_logo {
  width: 145px;
  height: 36px;
  margin: 0 auto 11px;
}

.mv_logo img {
  width: 100%;
  height: 100%;
}

.mv_catch {
  position: relative;
}

.mv_catch_ttl {
  font-size: 16px;
  font-weight: 700;
  color: #fff;
  text-align: center;
  margin-bottom: 12px;
}

.mv_catch_main {
  width: 100%;
  display: block;
  position: relative;
  overflow: hidden;
}

.mv_catch_main img {
  width: 100%;
  height: 100%;
}

.mv_catch_main_fan {
  position: absolute;
  width: min(152px, 40.53333333333333vw);
  bottom: 158px;
  left: -20px;
}

.mv_catch_main_free {
  position: absolute;
  bottom: 234px;
  right: 10px;
  width: min(70px, 18.666666666666668vw);
}

.mv_catch_main_txt {
  color: #282828;
  font-size: min(15px, 4vw);
  font-weight: 700;
  line-height: 1.5;
  position: absolute;
  bottom: 170px;
  right: 20px;
}

.mv_catch_main_period {
  position: absolute;
  bottom: 116px;
  left: 50%;
  transform: translateX(-50%);
  width: min(320px, 85.33333333333334vw);
}

.mv_catch_data {
  text-align: right;
  padding: 0 20px;
}

.mv_catch_data img {
  width: 222px;
  height: 41px;
}

.mv_catch_present {
  width: 120px;
  height: 120px;
  position: absolute;
  bottom: 38px;
  right: 10px;
}

.mv_catch_entry {
  width: 120px;
  height: 120px;
  position: absolute;
  bottom: -16px;
  left: 10px;
}

.mv_catch_present img,
.mv_catch_entry img {
  width: 100%;
  height: 100%;
}

.mv_entry {
  width: 100%;
  position: absolute;
  bottom: 20px;
  left: 0;
}

.entry_btn {
  width: 90%;
  height: 80px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 8px;
  background: linear-gradient(180deg, #E6C487 0%, #852506 100%);
  transition: all 0.3s ease-out;
  margin: 0 auto;
}

.entry_btn:hover {
  opacity: 0.8;
}

.entry_btn span {
  font-size: 20px;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  color: #fff;
  position: relative;
  z-index: 1;
}

.entry_btn_none {
  position: relative;
  pointer-events: none;
}

.entry_btn_none::before {
  content: "";
  position: absolute;
  background: rgba(0, 0, 0, 0.5);
  width: 100%;
  height: 100%;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  border-radius: 8px;
}

.lp_contents {
  width: 100%;
  padding-top: 40px;
}

.event_bnr_section {
  padding: 0 28px;
}

.event_bnr {

  border-radius: 24px;
  padding: 5px;
  background: linear-gradient(0deg, #231815 11.04%, #595757 111.04%);
}

.event_bnr_inr {
  border-radius: 20px;
  border: 1px solid #fff;
  padding: 19px 26px 17px 26px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
}

.event_bnr_text {
  width: 100%;
  height: 124px;
  max-width: 253px;
  display: flex;
  margin: 0 auto;
}

.event_bnr_text img {
  width: 100%;
  height: 100%;
}

.ig_btn {
  /* width: fit-content; */
  height: 56px;
  max-width: 253px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  background-color: #D3232E;
  padding: 0 23px;
  margin: 0 auto;
  border-radius: 500px;
  transition: all 0.5s cubic-bezier(0.18, 0.06, 0.23, 1);
}

.ig_btn:hover {
  opacity: 0.7;
}

.ig_btn_icon {
  width: 24px;
  height: 24px;
  display: flex;
  flex: 0 1 24px;
}

.ig_btn_icon img {
  width: 100%;
  height: 100%;
}

.ig_btn_text {
  flex: 1 1 0%;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.5;
  color: #ffffff;
  letter-spacing: -0.075em;
}

.award_section {
  padding: 42px 0 105px;
  /* position: relative; */
}

/* .award_section::after {
  content: "";
  position: absolute;
  background-image: image-set(url(../img/award_also.png) 1x, url(../img/award_also@2x.png) 2x);
  background-size: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  width: 140px;
  height: 140px;
  bottom: 0;
  left: 50%;
  translate: -50% 0;
} */

.award_section_top {
  padding: 0 20px 14px 20px;
  position: relative;
}

.award_item {
  padding: 40px 20px;
  position: relative;
}

.award_item::before {
  content: "";
  position: absolute;
  background: url(../img/double-line.svg) center center no-repeat;
  width: 335px;
  height: 3px;
  top: 0;
  left: 51%;
  translate: -50% 0;
}

.award_item.first::before {
  display: none;
}

.award_example {
     padding: 12px 10px 0;
}

.award_item_img {
  position: relative;
  text-align: center;
  margin-bottom: 8px;
}

/* .award_item_img img {
  width: 100%;
  height: 100%;
} */

.award_item_special {
  padding: 0 0 40px;
}

.award_item_special .award_item_img {
  position: relative;
  left: auto;
}

.award_example_img {
  text-align: center;
  margin-bottom: 8px;
}

.award_example_catch {
  text-align: center;
  font-size: min(26px, 6.666666666666667vw);
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: -0.05em;
  margin-bottom: 32px;
}

.btn_wrap {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.btn_item {
  width: 100%;
  height: 56px;
  max-width: 320px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 4px;
  padding: 0 20px;
  border-radius: 500px;
  background-color: #FFFFFF;
  border: 1px solid #DCDCDC;
  transition: all 0.5s cubic-bezier(0.18, 0.06, 0.23, 1);
  box-sizing: border-box;
  margin: 0 auto;
}

.btn_item:hover {
  opacity: 0.8;
}

.btn_item_text {
  font-size: 15px;
  font-weight: 700;
  line-height: 1.75;
  color: #231815;
  white-space: nowrap;
}

.btn_item_icon {
  width: 24px;
  height: 24px;
  display: flex;
}

.btn_item_icon img {
  width: 100%;
  height: 100%;
}


.award_contents {
  width: 100%;
  height: auto;
  max-width: 355px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 52px 10px 0;
  margin: 0 auto;
  box-sizing: border-box;
}

.award_contents_notes li {
  font-size: 14px;
  font-weight: 500;
  line-height: 1.5;
  text-align: justify;
  color: #FCD475;
  padding-left: 18px;
  position: relative;
  margin-bottom: 6px;
}

.award_contents_notes li:last-child {
  margin-bottom: 0;
}

.award_contents_notes li::before {
  content: "";
  width: 12px;
  height: 12px;
  background-color: #FCD475;
  border-radius: 50%;
  position: absolute;
  left: 0;
  top: 4px;
}



.award_contents_entry_txt {
  font-size: 12px;
  font-weight: 400;
  line-height: 1.5;
  text-align: justify;
  margin-bottom: 8px;
}

.award_contents_entry_caution {
  font-size: 10px;
  line-height: 1.5;
}

.area_section {
  padding: 60px 20px;
  margin-bottom: 60px;
  background-image: url(../img/area_bg.png);
  background-size: cover;
  background-position: top center;
  background-repeat: no-repeat;
}

.area_section_catch {
  margin-bottom: 60px;
}

.area_section_catch_textArea {
  width: 100%;
  height: auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  margin: 0 auto 16px;
}

.area_section_catch_title {
  font-family: var(--font-serif);
  font-size: 42px;
  font-weight: 700;
  line-height: 1.35;
  text-align: center;
  color: #FFF23F;
  white-space: nowrap;
}

.area_section_catch_textArea p {
  font-family: var(--font-serif);
  font-size: 18px;
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
  color: #FFF23F;
}

.area_section_catch_kinri {
  margin-bottom: 20px;
}

.area_section_catch_kinri img {
  width: 100%;
  height: 100%;
}

.area_link {
  height: 90px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 11px 12px 13px 16px;
  background: linear-gradient(180deg, #FFFFFF 0%, #B2B2B2 100%);
  border-radius: 8px;
  transition: all 0.5s cubic-bezier(0.18, 0.06, 0.23, 1);
}

.area_link:hover {
  opacity: 0.8;
}

.area_link_textArea {
  flex: 1 1 0%;
  width: 100%;
  height: auto;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.area_link_textArea_title {
  font-size: 16px;
  font-weight: 700;
  line-height: 1.5;
  color: var(--color-primary);
}

.area_link_textArea small {
  font-size: 12px;
  font-weight: 400;
  line-height: 1.5;
  text-align: justify;
  color: #231815;
}

.area_link_icon {
  width: 24px;
  height: 24px;
  display: flex;
  flex: 0 1 24px;
}

.area_link_icon img {
  width: 100%;
  height: 100%;
}

.area_section_trip {
  position: relative;
}

.area_section_trip_top {
  width: 310px;
  position: absolute;
  top: -120px;
  left: 50%;
  translate: -50% 0;
  z-index: 1;
}

.area_section_trip_top img {
  width: 100%;
  height: 100%;
}

.area_section_trip_body {
  position: relative;
}
.area_section_trip_body_bg {
  max-width: 350px;
  margin: 0 auto;
}
.area_section_trip_body_bg img {
  width: 100%;
}

.area_section_trip_container {
  position: absolute;
  top: 0;
  left: 0;
  padding: 98px 20px 0;
}

.area_section_trip_container_item.first {
  border-bottom: 1px solid #DCDCDC;
  /* padding-bottom: 40px; */
  margin-bottom: 40px;
}

.area_section_trip_textArea {
  width: 100%;
  height: auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin-bottom: 24px;
}

.area_section_trip_textArea_catch {
  font-family: var(--font-serif);
  font-size: 16px;
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
  color: #E7242E;
  white-space: nowrap;
}

.area_section_trip_textArea_catch span {
  font-family: var(--font-serif);
  font-size: 25px;
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
  color: #E7242E;
}

.area_section_trip_textArea .area_section_trip_catch {
  font-size: 36px;
  font-weight: 700;
  line-height: 1.2;
  color: #CC0000;
  text-align: center;

  letter-spacing: -0.025em;
}

.area_section_trip_textArea .area_section_trip_catch .small {
  font-size: 24px;
}

.area_section_trip_textArea .area_section_trip_txt {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.75;
  text-align: justify;
  color: #231815;
}

.area_section_trip_textArea .area_section_trip_txt .bold {
  font-weight: 700;
}

.area_section_trip_head {
  width: fit-content;
  height: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #231815;
  border-radius: 500px;
  padding: 2px 16px 4px;
  margin: 0 auto 28px;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.25;
  text-align: center;
}

.area_section_trip_list_item {
  padding: 28px 20px;
  border-bottom: 1px dashed #282828;
}

.area_section_trip_list_item:last-child {
  border-bottom: none;
  padding-bottom: 0;
  margin-bottom: 40px;
}

.area_section_trip_list_item_first {
  padding: 0 20px 28px;
}

.area_section_trip_list_item_last {
  padding: 20px 20px 24px;
  border-bottom: 0;
}

.area_section_trip_list_item_title {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  /* gap: 4px; */
  margin: 0 auto 10px;
  color: #231815;

}

.area_section_trip_list_item_title_name {
  font-size: 20px;
  font-weight: 700;
  line-height: 1.25;
  text-align: center;
  margin-bottom: 6px;
}

.area_section_trip_list_item_title_name small {
  font-size: 12px;
  font-weight: 700;
  line-height: 1.25;
}

.area_section_trip_list_item_title_address {
  font-size: 12px;
  font-weight: 400;
  line-height: 1.5;
  text-align: center;
}

.area_section_trip_list_item_img {
  margin-bottom: 12px;
}

.area_section_trip_list_item_img img {
  width: 100%;
  height: 100%;
}

.area_section_trip_link {
  width: 100%;
  height: 44px;
  max-width: 204px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 4px;
  padding: 0 16px;
  border-radius: 500px;
  background-color: #FFFFFF;
  border: 1px solid #DCDCDC;
  transition: all 0.5s cubic-bezier(0.18, 0.06, 0.23, 1);
  box-sizing: border-box;
  margin: 0 auto;
}

.area_section_trip_link_wide {
  max-width: 226px;
}

.area_section_trip_link:hover {
  opacity: 0.8;
}

.area_section_trip_link_text {
  font-size: 14px;
  font-weight: 700;
  line-height: 1.75;
  color: #231815;
  white-space: nowrap;
}

.area_section_trip_link_icon {
  width: 20px;
  height: 20px;
  display: flex;
}

.area_section_trip_link_icon img {
  width: 100%;
  height: 100%;
}

.area_section_trip_notes {
  font-size: 12px;
  font-weight: 400;
  line-height: 1.5;
  text-align: center;
  color: #231815;
}

/* 
.renovate_section {
  padding: 0 33px;
  margin-bottom: 80px;
}

.renovate_section_catch {
  width: 161px;
  height: 140px;
  display: flex;
  margin: 0 auto 20px;
}

.renovate_section_catch img {
  width: 100%;
  height: 100%;
}

.renovate_section_title {
  width: 100%;
  height: auto;
  display: flex;
  margin-bottom: 40px;
}

.renovate_section_title img {
  width: 100%;
  height: 100%;
}

.renovate_section_link {
  width: 100%;
  height: 56px;
  max-width: 228px;
  box-sizing: border-box;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 0 24px;
  border-radius: 500px;
  background-color: #FFFFFF;
  border: 1px solid #DCDCDC;
  transition: all 0.5s cubic-bezier(0.18, 0.06, 0.23, 1);
}

.renovate_section_link:hover {
  opacity: 0.7;
}

.renovate_section_link .text {
  font-size: 15px;
  font-weight: 700;
  line-height: 1.75;
  color: #231815;
}

.renovate_section_link_icon {
  width: 24px;
  height: 24px;
  display: flex;
}

.renovate_section_link_icon img {
  width: 100%;
  height: 100%;
} */

.lp_entry {
  width: 100%;
  margin-bottom: 40px;
}

/*-------------------- contents --------------------*/
/*-------------------- footer --------------------*/
.campaign_footer {
  padding: 58px 0 38px;
  position: relative;
  z-index: 1;
  width: 100%;
  height: auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.campaign_footer_logo {
  width: 100%;
  height: 154.66px;
  display: flex;
  margin: 0 auto 32.34px;
}

.campaign_footer_logo img {
  width: 100%;
  height: 100%;
}

.campaign_footer_text {
  width: fit-content;
  text-align: center;
}

.campaign_footer_text p {
  font-size: 15px;
  font-weight: 400;
  line-height: 1.5;
  text-align: center;
  color: #ffffff;
}

.campaign_footer_text a {
  pointer-events: none;
  text-decoration: none;
}

.btn {
  display: inline-flex;
  min-width: 230px;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  border: 1px solid #ffffff;
  background-color: var(--color-primary);
  border-radius: 999px;
  padding: 14px 24px;
  position: relative;
  overflow: hidden;
  line-height: 1;
  transition: all 0.5s cubic-bezier(0.18, 0.06, 0.23, 1);
  margin: 0 auto;
  z-index: 2;
}

.btn .icon::before,
.btn .icon::after {
  transition: translate 0.2s ease-out, background-color 0.3s;
}

.icon_arrow {
  position: relative;
  overflow: hidden;
  display: inline-block;
}

.icon_arrow::before,
.icon_arrow::after {
  content: "";
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  aspect-ratio: 1;
  -webkit-mask-image: url(../img/arrow.svg);
  mask-image: url(../img/arrow.svg);
  display: block;
  width: 24px;
  height: 24px;
  background: #ffffff;
  transition: translate 0.2s ease-out;
}

.icon_arrow::after {
  position: absolute;
  top: 0;
  left: 0;
  translate: -100% 0;
}

.text {
  font-size: 15px;
  font-weight: 700;
  line-height: 1.5;
  color: #ffffff;
  transition: translate 0.2s ease-out, background-color 0.3s;
}

.btn:hover {
  background-color: #ffffff;
}

.btn:hover .icon_arrow::before,
.btn:hover .icon_arrow_blank::before {
  translate: 100% 0;
  background: var(--color-primary);
}

.btn:hover .icon_arrow::after,
.btn:hover .icon_arrow_blank::after {
  translate: 0 0;
  background: var(--color-primary);
}

.btn:hover .text {
  color: var(--color-primary);
}

.sns_nav {
  width: fit-content;
  height: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin: 28px auto 0;
}

.sns_nav_link {
  width: 32px;
  height: 32px;
  display: flex;
}

.sns_nav_link img {
  width: 100%;
  height: 100%;
}

.pageTop_btn {
  width: 66px;
  height: 43px;
  display: flex;
}

.pageTop_btn img {
  width: 100%;
  height: 100%;
}

.pageTop_btn_wrap {
  width: 100%;
  height: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 37px auto 44px;
}

.copyright {
  display: block;
  text-align: center;
  font-size: 10px;
  font-weight: 400;
  line-height: 1;
  color: #ffffff;
}

/*-------------------- footer --------------------*/