@charset "UTF-8";
footer .page_top ,
footer .pagetop {
  display: none;
}
#campaign-dream {
  line-height: 1.75;
  font-size: min(2.40vw , 18px);
}
#campaign-dream .sp_only {
  display: none;
}
#campaign-dream .noto {
  /*font-family: 'Noto Sans JP', sans-serif;*/
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  display: inline-block;
  background-image: url(/pc/special/campaign/dream/images/font_g.png);
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: 100%;
  width: min(1.20vw , 9px);
  height: min(2.13vw , 16px);
  vertical-align: bottom;
}
#campaign-dream .dreamlist .noto {
  width: min(1.47vw , 11px);
  height: 1em;
  background-position: center top;
}
#campaign-dream sup {
  font-size: .8em;
}
#campaign-dream img {
  position: relative;
  display: inline-block;
  width: 100%;
  height: auto;
  /* vertical-align: bottom; */
}
#campaign-dream a {
  transition: all .3s;
  color: #011b6a;
  text-decoration: underline;
}
#campaign-dream a:hover {
  opacity: .8;
  transition: all .3s;
}
#campaign-dream table td {
  border: none;
}
#campaign-dream ul {
  list-style: none;
}
#campaign-dream .font--normal {
  font-weight: normal;
}
#campaign-dream .font--bold {
  font-weight: bold;
}
#campaign-dream .color--red {
  /*color: #dd193a;*/
  color: red;
}
/* =========================================================
 list
========================================================= */
#campaign-dream .dreamlist > li {
  position: relative;
  line-height: 1.75;
  margin-left: 1.3em;
}
#campaign-dream .dreamlist > li::before  {
  content: "";
  position: absolute;
  margin-left: -1.3em;
}
/* indent */
#campaign-dream .dreamlist--indent > li  {
  margin-left: 1em;
  text-indent: -1em;
}
#campaign-dream .dreamlist--indent > li::before  {
  content: none;
}
/* come */
#campaign-dream .dreamlist--come > li::before  {
  content: "※";
}
/* maru */
#campaign-dream .dreamlist--maru > li::before  {
  content: "●";
}
/* nakaguro */
#campaign-dream .dreamlist--nakaguro > li::before  {
  content: "・";
}
/* =========================================================
 dl
========================================================= */
#campaign-dream .dl--sup {
  display: flex;
  flex-flow: row wrap;
}
#campaign-dream .dl--sup > dt {
  width: 2em;
}
#campaign-dream .dl--sup > dd {
  width: calc( 100% - 2em );
}
/* =========================================================
 btn_dl
========================================================= */
#campaign-dream .btn_dl {
  margin: 0 auto;
  padding-top: min(5.33vw , 40px);
  padding-bottom: min(1.87vw , 14px);
}
#campaign-dream .btn_dl a {
  margin: 0 auto;
  display: block;
  width: min(82.13vw , 616px);
}
/* =========================================================
 headtitle
========================================================= */
#campaign-dream .headtitle {
}
#campaign-dream .headtitle.headtitle--ribbon {
  line-height: 1;
  width: min(84.00vw , 630px);
  height: min(9.33vw , 70px);
  margin: 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
  background-image: url(/pc/special/campaign/dream/images/section_title.png);
  background-size: 100%;
  background-repeat: no-repeat;
  font-size: min(4.80vw , 36px);
  font-weight: bold;
  color: #fff;
  font-weight: bold;
  padding-top: .2em;
}
/* =========================================================
 bg_container
========================================================= */
#campaign-dream .bg_container {
  position: relative;
  width: 100%;
  margin: 0 auto;
  padding-bottom: min(4.00vw , 30px);
  z-index: 0;
}
#campaign-dream .bg_container::before,
#campaign-dream .bg_container::after {
  content: '';
  display: block;
  width: 100%;
  background-size: 100%;
  background-repeat: no-repeat;
  position: absolute;
  left: 0;
  z-index: 0;
}
#campaign-dream .bg_container::before {
  background-image: url(/pc/special/campaign/dream/images/bg_01.png);
  height: min(237.87vw , 1784px);
  top: 0;
}
#campaign-dream .bg_container::after {
  background-image: url(/pc/special/campaign/dream/images/bg_02.png);
  height: min(124.80vw , 936px);
  bottom: 0;
}
#campaign-dream .bg_container .block {
  position: relative;
  z-index: 1;
}
/* =========================================================
 bg_content
========================================================= */
#campaign-dream .bg_content {
  position: relative;
}
#campaign-dream .bg_content .bg_content__image {
}
#campaign-dream .bg_content .bg_content__text {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
/* =========================================================
 container
========================================================= */
#campaign-dream {
  width: 100%;
  background-image: url(/pc/special/campaign/dream/images/bg_pc.jpg);
  background-repeat: no-repeat;
  background-attachment: fixed;
  background-position: center;
  background-size: cover;
}
#campaign-dream .container {
  background: #ceedfd;
  color: #000;
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 750px;
  margin: 0 auto;
}
#campaign-dream .container.container--end {
  background: url(/pc/special/campaign/dream/images/2024_bg_end.jpg);
  background-repeat: no-repeat;
  background-size: cover;
}
/* =========================================================
 block
========================================================= */
#campaign-dream .block {
  padding-top: min(8.00vw , 60px);
  padding-left: min(4.00vw , 30px);
  padding-right: min(4.00vw , 30px);
}
/* block--kv */
#campaign-dream .block.block--kv {
  padding-top: min(8.00vw , 60px);
}
/* block--kv */
#campaign-dream .block.block--movie {
  padding-top: min(4.00vw , 30px);
}
#campaign-dream .block.block--movie video {
  width: 100%;
}
/* block--01 */
#campaign-dream .block.block--01 {
  padding: 0;
}
#campaign-dream .presentList {
  padding-top: min(8.00vw , 60px);
}
#campaign-dream .presentList .presentListItem {
  padding-left: min(1.20vw , 9px);
  padding-right: min(2.80vw , 21px);
}
#campaign-dream .presentList .presentListItem.presentListItem--02 {
  margin-top: min(4.00vw , 30px);
  margin-bottom: min(2.67vw , 20px);
}
#campaign-dream .presentList .presentListItem.presentListItem--03 {
  padding-left: min(4.00vw , 30px);
  padding-right: min(4.00vw , 30px);
}
/* block--02 */
#campaign-dream .block.block--02 .btn {
  margin: 0 auto;
  padding-left: min(6.00vw , 45px);
  padding-right: min(6.00vw , 45px);
  position: absolute;
  bottom: min(6.27vw , 47px);
}
#campaign-dream .block.block--02 .btn a {
  display: block;
  width: 100%;
  height: auto;
}
/* block--03 */
#campaign-dream .block.block--03 .lead {
  margin-top: min(4.00vw , 30px);
  margin-bottom: min(4.00vw , 30px);
  text-align: center;
}
#campaign-dream .block.block--03 .note {
  background: #fff;
  height: min(6.67vw , 50px);
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  color: #fc0f05;
  font-weight: bold;
  line-height: 1.2;
  border: min(0.27vw , 2px) solid #ceedfd;
  border-top: none;
}
#campaign-dream .marklist {
  width: 100%;
  border-collapse: collapse;
  line-height: 1.2;
  text-align: left;
  background: #fff;
}
#campaign-dream .marklist th, td {
  font-weight: normal;
  background: #fff;
  /*border-bottom: min(0.27vw , 2px) solid #ceedfd !important;*/
  border: min(0.27vw , 2px) solid #ceedfd !important;
  padding-top: min(2.00vw , 15px);
  padding-bottom: min(2.00vw , 15px);
}
#campaign-dream .marklist th {
  padding-left: min(2.67vw , 20px);
}
#campaign-dream .marklist td {
  text-align: center;
  /*border-left: min(0.27vw , 2px) solid #ceedfd;*/
}
#campaign-dream .marklist tr {
  position: relative;
}
/*#campaign-dream .marklist tr::before ,
#campaign-dream .marklist tr::after {
  content: '';
  display: block;
  width: 100%;
  height: min(1.60vw , 12px);
  background: #fff;
  position: absolute;
  left: 0;
}
#campaign-dream .marklist tr::before {
  top: min(0.13vw , 1px);
}
#campaign-dream .marklist tr::after {
  bottom: min(0.13vw , 1px);
}*/
#campaign-dream .marklist .marklist__title {
  width: min(40.27vw , 302px);
}
#campaign-dream .marklist .marklist__size {
  text-align: center;
  width: min(12.80vw , 96px);
}
#campaign-dream .marklist .marklist__position {
  width: min(14.93vw , 112px);
  text-align: left;
}
#campaign-dream .marklist .marklist__position > span {
  display: block;
  width: fit-content;
  margin-left: auto;
  margin-right: auto;
}
#campaign-dream .marklist .marklist__image {
  width: min(24.00vw , 180px);
}
#campaign-dream .marklist .marklist__image img {
  width: min(13.33vw , 100px);
}
#campaign-dream .marklist .marklist__image.mark_08 img {
  width: min(9.73vw , 73px);
}
#campaign-dream .marklist .marklist__image.mark_09 img {
  width: min(12.13vw , 91px);
}
#campaign-dream .marklist .marklist__image.mark_10 img {
  width: min(9.87vw , 74px);
}
#campaign-dream .marklist .marklist__image.mark_11 img {
  width: min(9.07vw , 68px);
}
#campaign-dream .marklist .marklist__image.mark_12 img {
  width: min(9.33vw , 70px);
}
#campaign-dream .marklist .marklist__image.mark_13 img {
  width: min(16.00vw , 120px);
}
#campaign-dream .marklist .marklist__image.mark_20 img {
  width: min(18.40vw , 138px);
}
#campaign-dream .marklist .marklist__image.mark_21 img {
  width: min(21.20vw , 159px);
}
/* block--04 */
#campaign-dream .block.block--04 {
}
#campaign-dream .summary {
  background: #FFF;
  border-radius: min(2.67vw , 20px);
  padding-top: min(8.00vw , 60px);
  padding-bottom: min(8.00vw , 60px);
  padding-left: min(4.00vw , 30px);
  padding-right: min(4.00vw , 30px);
}
#campaign-dream .summary .summary__detail > dt {
  width: 100%;
  height: min(6.67vw , 50px);
  margin-bottom: min(3.33vw , 25px);
  display: flex;
  justify-content: center;
  align-items: center;
  background: #011b6a;
  color: #fff;
  font-size: min(3.20vw , 24px);
  font-weight: bold;
  padding-top: .2em;
}
#campaign-dream .summary .summary__detail > dd {
  padding-bottom: min(4.67vw , 35px);
  font-size: min(3.20vw , 24px);
}
#campaign-dream .summary .summary__detail > dd:last-child {
  padding-bottom: 0;
}
#campaign-dream .summary .text--large {
  font-weight: bold;
  font-size: min(3.20vw , 24px);
}
#campaign-dream .summary .text--bottom {
  margin-bottom: .8em;
}
#campaign-dream .summary .summary__note {
  border: min(0.27vw , 2px) solid #dbdbdc;
  padding-left: min(2.67vw , 20px);
  padding-right: min(2.67vw , 20px);
  height: min(66.67vw , 500px);
  overflow-y: scroll;
}
#campaign-dream .summary .summary__note .dreamlist {
  padding-top: min(2.67vw , 20px);
}
#campaign-dream .summary .summary__address {
  margin-top: min(1.33vw , 10px);
}
/* block--05 */
#campaign-dream .block.block--05 {
  padding-left: 0;
  padding-right: 0;
}
#campaign-dream .accordion {
  background: #fff;
  margin-top: min(4.00vw , 30px);
  border-top: min(0.27vw , 2px) solid #dbdbdc;
}
#campaign-dream .accordion .accordion__item {
  padding-left: min(4.00vw , 30px);
  padding-right: min(4.00vw , 30px);
  border-bottom: min(0.27vw , 2px) solid #dbdbdc;
}
#campaign-dream .accordion .accordion__header {
  width: 100%;
  cursor: pointer;
  position: relative;
  color: #011b6a;
  font-weight: bold;
  font-size: min(3.47vw , 26px);
  line-height: 1.2;
  padding-top: min(4.00vw , 30px);
  padding-bottom: min(3.33vw , 25px);
  padding-right: min(6.67vw , 50px);
}
#campaign-dream .accordion .accordion__header::before ,
#campaign-dream .accordion .accordion__header::after {
  content: '';
  position: absolute;
  top: 50%;
  right: 0;
  width: min(2.67vw , 20px);
  height: min(0.53vw , 4px);
  background-color: #011b6a;
  transform: translateY(-50%);
  transition: transform 0.3s ease;
  transform-origin: center;
}
#campaign-dream .accordion .accordion__header::after {
  transform: translateY(-50%) rotate(90deg);
}
#campaign-dream .accordion .accordion__header.active::after {
  transform: translateY(-50%) rotate(0deg);
}
#campaign-dream .accordion .accordion__content {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease;
  font-size: min(3.20vw , 24px);
}
#campaign-dream .accordion .accordion__content .inner {
  width: 100%;
  border-top: min(0.27vw , 2px) solid #dbdbdc;
  padding-top: min(2.67vw , 20px);
  padding-bottom: min(4.00vw , 30px);
}
#campaign-dream .accordion .accordion__content ul + p ,
#campaign-dream .accordion .accordion__content p + p {
  margin-top: 1em;
}
/* block--06 */
#campaign-dream .block.block--06 {
  padding-top: 0;
}
/* block--07 */
#campaign-dream .block.block--07 {
  padding: 0;
}
#campaign-dream .block.block--07 .btn {
  padding-left: min(9.33vw , 70px);
  padding-right: min(9.33vw , 70px);
  margin: 0 auto;
  position: absolute;
  bottom: min(4.67vw , 35px);
}
/* =========================================================
 menu
========================================================= */
#campaign-dream .fixed_content {
  position: fixed;
  z-index: 5;
  bottom: min(4.00vw , 30px);
  right: min(2.67vw , 20px);
  @media screen and (min-width: 751px) {
    position: relative;
  }
}
#campaign-dream .fixed_content .fixed_btn {
  width: min(10.67vw , 80px);
  transition: opacity 0.4s ease;
}
#campaign-dream .fixed_content .fixed_btn.is-hidden {
  opacity: 0;
  pointer-events: none;
  @media screen and (min-width: 751px) {
    opacity: 1;
    pointer-events: unset;
  }
}
#campaign-dream .fixed_content .fixed_btn.is-hidden .fixed_nav {
  @media screen and (min-width: 751px) {
    opacity: 0;
    pointer-events: none;
  }
}
#campaign-dream .fixed_content .fixed_nav {
  width: min(10.67vw , 80px);
  height: min(10.67vw , 80px);
  background: #011b6a;
  border-radius: min(2.67vw , 20px);
  box-shadow: 0px 5px 10px 0px rgba(9, 0, 1, 0.1);
  @media screen and (min-width: 751px) {
    position: fixed;
    top: min(33.33vw , 250px);
    right: min(4.00vw , 30px);
    transition: opacity 0.4s ease;
  }
}
#campaign-dream .fixed_content .fixed_nav__btn {
  cursor: pointer;
  @media screen and (min-width: 751px) {
    transition: opacity 0.4s ease;
  }
}
#campaign-dream .fixed_content .fixed_top {
  width: min(10.67vw , 80px);
  height: min(10.67vw , 80px);
  background: #011b6a;
  border-radius: 300px;
  cursor: pointer;
  box-shadow: 0px 5px 10px 0px rgba(9, 0, 1, 0.1);
  margin-top: min(2.67vw , 20px);
  @media screen and (min-width: 751px) {
    position: fixed;
    bottom: min(4.00vw , 30px);
    right: min(4.00vw , 30px);
  }
}
#campaign-dream .fixed_content .fixed_top__btn {
  @media screen and (min-width: 751px) {
  }
}
/*============================
#fixed_navOverlay
============================*/
#campaign-dream .fixed_content #fixed_navOverlay {
  position: fixed;
  width: fit-content;
  margin-left: auto;
  margin-right: auto;
  left: 0;
  right: 0;
  bottom: min(6.67vw , 50px);
  z-index: 5;
  background: #fff;
  width: min(80.00vw , 600px);
  box-shadow: 0px 5px 10px 0px rgba(9, 0, 1, 0.3);
  transition: transform 0.5s ease, opacity 0.5s ease;
  transform: translateY(100%);
  opacity: 0;
  @media screen and (min-width: 751px) {
    bottom: auto;
    right: 0;
    top: 25%;
    transform: translateX(100%);
    margin-left: auto;
    margin-right: 0;
    z-index: 50;
  }
}
#campaign-dream .fixed_content #fixed_navOverlay.is-visible {
  transform: translateY(0%);
  opacity: 1;
  @media screen and (min-width: 751px) {
    transform: translateX(0%);
  }
}
#campaign-dream .fixed_content #fixed_navOverlay .fixed_navOverlay__detail {
  padding-bottom: min(1.33vw , 10px);
}
#campaign-dream .fixed_content #fixed_navOverlay .fixed_navOverlay__title {
  height: min(10.67vw , 80px);
  background: #011b6a;
  color: #fff;
  font-weight: bold;
  font-size: min(4.80vw , 36px);
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-left: min(4.00vw , 30px);
  padding-right: min(4.00vw , 30px);
  margin-bottom: min(1.33vw , 10px);
}
#campaign-dream .fixed_content #fixed_navOverlay .fixed_navOverlay__title p {
  padding-top: .1em;
}
#campaign-dream .fixed_content #fixed_navOverlay #fixed_navOverlay__close {
  width: min(3.47vw , 26px);
  height: min(3.47vw , 26px);
}
#campaign-dream .fixed_content #fixed_navOverlay .fixed_navOverlay__item {
  padding-left: min(4.00vw , 30px);
  padding-right: min(4.00vw , 30px);
}
#campaign-dream .fixed_content #fixed_navOverlay .fixed_navOverlay__item + .fixed_navOverlay__item a {
  border-top: min(0.27vw , 2px) solid #dbdbdc;
}
#campaign-dream .fixed_content #fixed_navOverlay .fixed_navOverlay__item a {
  width: 100%;
  height: min(11.20vw , 84px);
  display: flex;
  align-items: center;
  font-size: min(3.20vw , 24px);
  color: #000;
  text-decoration: none;
  padding-top: .2em;
  background-image: url(/pc/special/campaign/dream/images/btn_navarrow.png);
  background-repeat: no-repeat;
  background-position: right center;
  background-size: min(1.87vw , 14px);
}
