@charset "utf-8";
/* 「海外ディズニーリゾート特集 」PCSP共通CSS */
/**/
/*★ リセット ★*/
h1,
h2,
h3,
h4,
h5,
h6,
p,
ul {
  font-weight: inherit;
  font-size: inherit;
}
ol,
pre {
  margin: 0;
}
li {
  list-style: none;
}
img {
  max-width: 100%;
}
picture {
  display: block;
}
em {
  font-style: normal;
}
div:after {
  content: none;
}
.main *::before,
.main *::after {
  box-sizing: border-box;
}
.main div:not([class])::after {
  content: none;
}
.main a {
  text-decoration: none;
}
.main .is-em {
  font-weight: bold;
}
.is-sp #header,
.is-sp #simple-header {
  height: 87.02px;
}
.is-pc #header {
  height: 146px;
}
.is-pc #simple-header {
  height: 85px;
}
#footer {
  padding-top: 1px;
  background: #fff;
}
/*------------------------------------------------*/
/*★ ページスタイル設定 ★*/
#hisApp {
  position: relative;
}
:root {
  --default-font-size-pc-val: 14;
  --default-font-size-pc: 14px;
  --default-font-size-sp: calc(24vw / 7.5);
  --default-font-size: min(var(--default-font-size-sp), var(--default-font-size-pc));
  --default-width-pc: 992px;
  --default-width-sp: min((686vw / 7.5), var(--default-width-pc));
  --default-bg-width-pc: max(100%, 1920px);
  --default-bg-icon-arrow-right-white: url('/cmn/icon/icon_arrow_right_white.svg');
  --default-bg-icon-arrow-right-black: url('/cmn/icon/icon_arrow_right_black.svg');
  --default-bg-icon-arrow-down-black: url('/cmn/icon/icon_arrow_down_black.svg');
  --default-bg-icon-blank-black: url('/cmn/icon/icon_launch_black.svg');
  --default-bg-icon-blank-white: url('/cmn/icon/icon_launch_white.svg');
  --default-icon-arrow-right-white: var(--default-bg-icon-arrow-right-white) var(--default-bg-setting);
  --default-icon-arrow-right-black: var(--default-bg-icon-arrow-right-black) var(--default-bg-setting);
  --default-icon-arrow-down-black: var(--default-bg-icon-arrow-down-black) var(--default-bg-setting);
  --default-icon-blank-black: var(--default-bg-icon-blank-black) var(--default-bg-setting);
  /*↓必要かどうか未確認↓*/
  --default-color-light-purple: #809bf6;
  --default-color-light-blue: #55b8d7;
  --default-color-yellow: #fffc00;
  --default-color-red: #e90000;
  --default-color-blue: #004097;
  --default-color-orange: #f96d0c;
  --default-bg-setting: no-repeat center center / cover;
  --default-hover-speed: 0.4s;
  --default-hover-transition: opacity var(--default-hover-speed);
}
.breadcrumb__contents {
  background: #fff;
  height: 28px;
  display: grid;
  align-content: center;
}
.is-sp .breadcrumb__contents {
  overflow-x: scroll;
}
.breadcrumb__inner {
  padding: 0 24px;
  display: grid;
  grid-auto-flow: column;
  justify-content: start;
  gap: 0 5px;
}
.breadcrumb__item + .breadcrumb__item::before {
  top: 0;
  bottom: 0;
  margin: auto 8px;
}
@media (min-width: 741px) {
  .breadcrumb__inner {
    gap: 0;
  }
  .breadcrumb__item {
    align-items: center;
  }
}
.js-accordion-button,
.js-toggleControl {
  cursor: pointer;
}
.main {
  font-family: 'Noto Sans JP', sans-serif;
  font-size: var(--default-font-size);
  color: #000;
  line-height: calc(20 / 14);
  overflow: hidden;
  background: none;
}
#pageApp.main {
  position: static;
}
/*.is-pc .main {
  min-width: var(--default-width-pc);
}*/
.is-pc .is-dsp-sp,
.is-sp .is-dsp-pc {
  display: none !important;
}
.is-font-small,
.is-sp .is-font-small-sp,
.is-pc .is-font-small-pc {
  font-size: 0.8em;
}
.is-font-big {
  font-size: 1.5em;
  line-height: 1;
}
.is-inline-block {
  display: inline-block;
}
.is-indent-1 {
  text-indent: -1em;
  padding-left: 1em;
}
.is-pr-half {
  padding-right: 0.5em;
}
.is-attn {
  color: #f66868;
}
.toggle__contents:not([class*='--active']) {
  display: none;
}
.section__inner,
.contents__wrapper {
  width: var(--default-width-sp);
  margin: auto;
  position: relative;
}
.is-pc .section__inner,
.is-pc .contents__wrapper {
  width: var(--default-width-pc);
}
.section__inner {
  padding-top: min((75vw / 7.5), 75px);
}
.section:first-child .section__inner,
.page-title + .section .section__inner,
.search__button + .section .section__inner {
  padding-top: 0.1px; /*decobox要素対策*/
}
.his-top__link {
  background: #fff;
  padding-top: min((50vw / 7.5), 50px);
}
.his-top__button {
  display: block;
  color: #fff;
  font-size: min((26vw / 7.5), var(--default-font-size-pc));
  font-weight: bold;
  line-height: 1;
  text-decoration: none;
  padding: calc(30em / 26) calc(20em / 26);
  background: #0057b8 url('/cmn/icon/icon_arrow_right_white.svg') no-repeat right calc(10em / 26) center / calc(48em / 26);
}
/*------------------------------------------------*/
/*★ ＝＝ headerArea ＝＝ ★*/
.is-sp #headerArea,
.is-pc.is-top #headerArea {
  background: linear-gradient(#18e9f1, #ffadfc 105%);
}
.is-pc #headerArea {
  background: linear-gradient(#18e9f1, #ffadfc 110%);
}
/*mv*/
.mv {
  display: grid;
  justify-content: center;
  justify-items: center;
  align-content: center;
  align-items: center;
  background: no-repeat center bottom / 100%;
  min-height: min((220vw / 7.5), 220px);
  /*padding: min((24vw / 7.5), 24px) 0 min((28vw / 7.5), 28px); 縦長画像時*/
  padding: min((24vw / 7.5), 24px) 0 min((45vw / 7.5), 45px);
}
.is-pc .mv {
  min-height: 170px;
  padding: 0;
  background-size: var(--default-bg-width-pc);
}
.is-sp.is-top .mv {
  /*gap: min((30vw / 7.5), 30px) 0; 縦長画像時*/
  gap: min((40vw / 7.5), 40px) 0;
  background-image: url('../../top/images/mv_bg-sp.png');
}
.is-pc.is-top .mv {
  /*grid-template-columns: 575px 224px; 縦長画像時*/
  /*gap: 0 96px; 縦長画像時*/
  grid-template-columns: 575px 370px;
  gap: 0 25px;
  min-height: 340px;
  background-image: url('../../top/images/mv_bg-pc.png');
}
.is-sp.is-dst .mv {
  background-image: url('../../dst/images/mv_bg-sp.png');
}
.is-pc.is-dst .mv {
  background-image: url('../../dst/images/mv_bg-pc.png');
}
.is-sp.is-top .mv__logo {
  width: min((700vw / 7.5), 700px);
}
.is-sp.is-top .mv__image {
  /*width: min((365vw / 7.5), 365px); 縦長画像時*/
  width: min((580vw / 7.5), 360px);
}
.is-sp.is-dst .mv__logo {
  width: min((719vw / 7.5), 719px);
}
.is-pc.is-dst .mv__logo {
  width: 647px;
}
/*gnavi*/
.is-sp .gnavi__area--select,
.is-pc .gnavi {
  background: var(--default-color-light-purple);
}
.gnavi__area--list--link,
.is-sp .gnavi__page--link {
  color: inherit;
}
/*sp gnavi*/
.is-sp .gnavi__area--select {
  display: grid;
  justify-content: center;
  align-items: center;
  grid-auto-flow: column;
  grid-auto-columns: auto;
  gap: 0 calc(35vw / 7.5);
  padding: calc(25vw / 7.5);
  font-size: min((30vw / 7.5), 30px);
  font-weight: bold;
  text-align: center;
}
.is-sp .gnavi__area--select--text {
  color: #fff;
}
.is-sp .gnavi__area--select--name {
  padding: 0 2em;
  padding-right: calc(1em + 55vw / 7.5);
  background: #fff var(--default-icon-arrow-down-black);
  background-position: center right calc(16vw / 7.5);
  background-size: 1.75em;
  min-width: min((270vw / 7.5), 270px);
  height: calc(68vw / 7.5);
  display: grid;
  align-content: center;
}
.is-sp .gnavi__area--select--arrows {
  display: grid;
  grid-template-columns: repeat(3, calc(9vw / 7.5));
  gap: calc(6vw / 7.5);
  /*margin-left: min(calc(20vw / 7.5), 15px);*/
}
.is-sp .gnavi__area--select--arrow {
  display: block;
  width: 0;
  height: 0;
  border-left: calc(9vw / 7.5) solid #fff;
  border-top: calc(6vw / 7.5) solid transparent;
  border-bottom: calc(6vw / 7.5) solid transparent;
}
.is-sp .js-area-open-target:not(.is-open) {
  display: none;
}
.is-sp .js-area-open-target.is-open {
  background: url(/cmn/icon/icon_close.svg) no-repeat right top / min((120vw / 7.5), 60px), linear-gradient(to bottom, #76e4f6 0%, #f8cafd 100%);
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 5;
}
.is-sp .gnavi__area--block--inner {
  padding: min((80vw / 7.5), 40px) min((40vw / 7.5), 20px);
  height: 100%;
  overflow-y: auto;
  font-weight: bold;
  font-size: min((34vw / 7.5), 34px);
  text-align: center;
}
.is-sp .gnavi__area--block--title {
  margin-bottom: calc(60em / 34);
}
.is-sp .gnavi__area--list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: calc(40em / 34);
}
.is-sp .gnavi__page {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: calc(25em / 28);
  font-size: min((28vw / 7.5), 28px);
  font-weight: bold;
  width: var(--default-width-sp);
  margin: auto;
  padding: min((60vw / 7.5), 60px) 0 0;
}
.is-sp .gnavi__area--list--link,
.is-sp .gnavi__page--link {
  background: #fff;
  border: 1px solid #000;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
}
.is-sp .gnavi__area--list--link {
  min-height: calc(100em / 34);
}
.is-sp .gnavi__page--link {
  min-height: calc(82em / 28);
}
.is-sp .gnavi__area--list--link[class*='active'],
.is-sp .gnavi__page--link[class*='active'] {
  background: var(--default-color-light-purple);
  color: #fff;
}
/*pc gnavi*/
.is-pc .gnavi__inner {
  width: var(--default-width-pc);
  margin: auto;
  display: grid;
  grid-template-columns: max-content 1fr;
  gap: 0 70px;
  padding: 12px 0;
}
.is-pc .gnavi__area {
  font-weight: bold;
  min-width: 160px;
}
.is-pc .gnavi__area--select,
.is-pc .gnavi__area--block--inner {
  background: #fff;
  border: 1px solid var(--default-color-light-purple);
}
.is-pc .gnavi__area--select {
  display: flex;
  align-items: center;
  padding: 0 30px 0 10px;
  height: 25px;
  line-height: 1.5;
  cursor: pointer;
  border-bottom: none;
}
.is-pc .gnavi__area--select::after {
  content: '';
  width: 1.5em;
  height: 0.5em;
  background: var(--default-icon-arrow-down-black);
  position: absolute;
  right: 0.25em;
  transition: transform var(--default-hover-speed);
}
.is-pc .gnavi__area:hover .gnavi__area--select::after {
  transform: rotate(-180deg);
}
.is-pc .gnavi__area--select--text {
  font-size: calc(12em / var(--default-font-size-pc-val));
  margin-right: 1em;
  letter-spacing: 0.5px;
}
.is-pc .gnavi__area--block {
  /*display: none;*/
  background: #fff;
  position: absolute;
  z-index: 20;
  width: 100%;
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  transition: var(--default-hover-speed);
}
.is-pc .gnavi__area:hover .gnavi__area--block {
  display: block;
  max-height: inherit;
  opacity: 1;
}
.is-pc .gnavi__area--list--link {
  display: block;
  padding: 10px;
  padding-left: 48px;
}
.is-pc .gnavi__area--list--link.is-active {
  background: url('../images/icon_check-black.svg') no-repeat 25px center / 1em;
}
.is-pc .gnavi__area--list--link:not(.is-active):hover {
  background: #e2e9ff;
}
.is-pc .gnavi__page {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 0.25em;
}
.is-pc .gnavi__page--link {
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  padding: 0 0.5em;
}
.is-pc .gnavi__page--link.is-active,
.is-pc .gnavi__page--link:hover {
  color: #fff600;
  position: relative;
}
.is-pc .gnavi__page--link.is-active::after,
.is-pc .gnavi__page--link:hover::after {
  content: '';
  width: 100%;
  height: 1px;
  background: #fff600;
  position: absolute;
  left: 0;
  bottom: -0.25em;
}
/*------------------------------------------------*/
/*★ ＝＝ mainArea ＝＝ ★*/
#mainArea {
  background-image: linear-gradient(135deg, #faf8e2 4.55%, #fffde6 4.55%, #fffde6 50%, #faf8e2 50%, #faf8e2 54.55%, #fffde6 54.55%, #fffde6 100%);
  background-size: min((31.12vw / 7.5), 15.56px) min((31.12vw / 7.5), 15.56px);
}
#mainArea .section__lead {
  font-weight: bold;
  font-size: calc(16em / var(--default-font-size-pc-val));
  line-height: 2;
}
#mainArea :is(.section__lead, .section__banner):not(:last-child) {
  padding-bottom: min((65vw / 7.5), 65px);
}
.is-pc #mainArea .section__lead + .section__banner {
  margin-top: max((-25vw / 7.5), -25px);
}
.is-pc #mainArea .section__lead + .section__banner:not(:last-child) {
  padding-bottom: min((40vw / 7.5), 40px);
}
#mainArea .section__banner {
  display: grid;
  justify-content: center;
  gap: min((20vw / 7.5), 20px);
  .is-pc & {
    width: 960px;
    margin: auto;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px 0;
    .section__banner--item:not(.is-column-half) {
      grid-column: span 2;
    }
  }
}
.section__banner--item {
  background: #fff;
}
.is-sp .cmn-main-contents {
  padding: min((65vw / 7.5), 65px) 0 min((95vw / 7.5), 95px);
}
.is-pc .cmn-main-contents {
  padding: 70px 0 110px;
}
.search__button {
  position: absolute;
  top: 0;
  right: min((26vw / 7.5), 15px);
  z-index: 2;
  padding-top: min((26vw / 7.5), 45px);
}
.search__button.is-fixed {
  position: fixed;
}
.search__button--link {
  display: block;
  transition: var(--default-hover-transition);
}
.search__button:has(.is-staff) {
  width: var(--size, min((218vw / 7.5), 140px));
}
.is-pc .search__button:has(.is-staff) {
  --size: min((218vw / 7.5), 217px);
}
/*KARTEバナーと被るので上表示に変更*/
/*.search__button.is-posi-btm {
  display: none;
  top: auto;
  bottom: var(--posi, 75px);
}
.is-pc .search__button.is-posi-btm {
  --posi: 150px;
}*/
.search__button.is-posi-btm:not(.is-fixed) {
  display: none !important;
}
@media (max-width: 1420px) {
  .is-pc .search__button:has(.is-staff):not(.is-posi-btm):not(.is-fixed) {
    display: none !important;
  }
}
/*@media (max-width: 1280px) {
  .search__button {
    display: none !important;
  }
}*/
/*title*/
.base-title {
  font-weight: bold;
  text-align: center;
}
.page-title {
  color: #171099;
  font-weight: 900;
  font-size: min((46vw / 7.5), 46px);
  width: min(100%, var(--default-width-pc));
  margin: auto;
  margin-bottom: 1em;
}
/*slider*/
#mainArea .slick-track {
  display: grid;
  grid-auto-flow: column;
}
#mainArea .slick-slide {
  float: none;
}
.slider__arrow {
  width: min((60vw / 7.5), 40px);
  height: min((120vw / 7.5), 120px);
  background: rgba(0, 0, 0, 0.5) var(--default-icon-arrow-right-white);
  background-size: 130%;
  cursor: pointer;
}
.is-pc .slider__arrow {
  width: min((60vw / 7.5), 30px);
  height: min((120vw / 7.5), 60px);
  background: rgba(0, 0, 0, 0.5) var(--default-icon-arrow-right-white);
  background-size: 130%;
  cursor: pointer;
}
.slider__prev {
  transform: rotate(180deg);
}
.slick-slider .slider__arrow {
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  z-index: 1;
}
.is-sp.is-top .slick-slider .slider__arrow {
  top: calc(180vw / 7.5);
  bottom: auto;
}
.slick-slider .slider__prev {
  left: 0;
}
.slick-slider .slider__next {
  right: 0;
}
.slider__accessories,
.slider__dots {
  display: flex;
  justify-content: center;
  align-items: center;
}
.slider__accessories {
  padding-top: min((20vw / 7.5), 20px);
}
.slider__dots {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: min((20vw / 7.5), 20px);
  gap: 0 min((20vw / 7.5), 20px);
}
.slider__dots:not(:only-child) {
  margin: 0 min((40vw / 7.5), 40px);
}
.is-pc .slider__dots {
  grid-auto-columns: 8px;
  gap: 0 10px;
}
.slider__dots li {
  height: 0;
  padding-top: 100%;
  border-radius: 100%;
  background: #a0a0a0;
  cursor: pointer;
}
.slider__dots li[class*='active'] {
  background: #07817a;
}
.slider__dots li button {
  display: none;
}
.slider__accessories .slider__arrow {
  height: min((60vw / 7.5), 30px);
  background-size: 100%;
}
.slider__accessories .slider__next {
  order: 3;
}
/*link__text*/
.link__text--item {
  display: inline-block;
  padding: 0 2em 0 0.2em;
  background: url(../images/icon_arrow_right-pink.svg) no-repeat center right / 2em;
  color: #f66868;
  line-height: 1.5;
}
.link__text--item[target='_blank'] {
  background-image: url('../images/icon_blank-pink.svg');
}
/*link__button*/
.link__button--wrapper {
  display: grid;
  justify-content: center;
  align-items: center;
  gap: min((20vw/ 7.5), 20px);
}
.is-pc .link__button--wrapper {
  display: flex;
  flex-wrap: wrap;
  gap: 0;
  margin-top: -20px;
}
.is-pc .decobox .link__button--wrapper {
  justify-items: end;
  justify-content: end;
  margin-top: 0;
}
.is-pc .link__button--wrapper .link__button {
  margin: 20px 10px 0;
}
.is-pc .decobox .link__button--wrapper .link__button {
  margin: 0 0 20px 20px;
}
.is-pc .link__button--wrapper .link__button:only-child {
  min-width: 370px;
}
.link__button--item {
  display: grid;
  justify-items: center;
  align-items: center;
  grid-template-columns: 1fr 1em;
  gap: 0 1em;
  height: 100%;
  min-height: min((80vw / 7.5), 40px);
  color: inherit;
  font-size: min(var(--default-font-size-sp), 16px);
  font-weight: bold;
  line-height: 1.2;
  padding: 0.4em 1em 0.5em;
  padding-left: 1.5em;
  --bg-color-01: #bde1df;
  --bg-color-02: #c7e5e4;
  background-image: linear-gradient(
    135deg,
    var(--bg-color-01) 8.33%,
    var(--bg-color-02) 8.33%,
    var(--bg-color-02) 50%,
    var(--bg-color-01) 50%,
    var(--bg-color-01) 58.33%,
    var(--bg-color-02) 58.33%,
    var(--bg-color-02) 100%
  );
  background-size: min((16vw / 7.5), 8.5px) min((16vw / 7.5), 8.5px);
  border: 1px solid;
  box-shadow: 2px 2px #333;
  .link__button.is-bg-orange & {
    --bg-color-01: #e8b954;
    --bg-color-02: #ebc36d;
  }
}
.is-sp .link__button--item {
  min-width: min((540vw / 7.5), 540px);
  padding-left: 2.5em;
}
.is-pc .link__button--item {
  text-align: center;
}
.link__button--item::after {
  content: '';
  background: var(--default-icon-arrow-right-black);
  width: 100%;
  height: 1.5em;
}
.link__button--item[href^='#']::after {
  rotate: 90deg;
}
.link__button--item[target='_blank']::after {
  background: var(--default-icon-blank-black);
  height: 1em;
}
/*area-detail*/
.area-detail {
  width: min(100%, var(--default-width-pc));
  margin: auto;
}
.is-pc.is-dst .area-detail .slider__prev {
  left: 10px;
}
.is-pc.is-dst .area-detail .slider__next {
  right: 10px;
}
.is-pc .area-detail .slick-list {
  width: 872px;
  margin: auto;
}
.is-pc.is-top .area-detail .slick-list {
  width: 940px;
}
.area-detail__item,
.is-sp.is-dst .slider__accessories.is-area-detail {
  background: #bce1df;
}
.is-sp.is-dst .slider__accessories.is-area-detail {
  padding-bottom: min((20vw / 7.5), 20px);
}
.is-dst .area-detail__item {
  display: grid !important;
  gap: min((20vw / 7.5), 20px) 0;
}
.is-sp.is-dst .area-detail__item {
  align-content: start;
  padding: min((22vw / 7.5), 22px) min((74vw / 7.5), 66px);
}
.is-pc.is-dst .area-detail__item {
  grid-template-columns: 550px 1fr;
}
.area-detail:not([class*='slick']) .area-detail__item:not(:first-child) {
  display: none !important;
}
.is-pc.is-dst .area-detail__item--texts {
  margin: 20px;
  display: flex;
  flex-direction: column;
  background: no-repeat bottom right;
}
.is-dst .area-detail__item--title {
  font-weight: bold;
  font-size: calc(18em / var(--default-font-size-pc-val));
  line-height: calc(26 / 18);
  margin-bottom: 0.75em;
}
.is-sp.is-dst .area-detail__item--title {
  color: #07817a;
}
.is-pc.is-dst .area-detail__item--title {
  padding-bottom: 0.5em;
  border-bottom: 1px solid;
}
.is-dst .area-detail__item--text {
  line-height: calc(23 / var(--default-font-size-pc-val));
}
.is-dst .area-detail__item--text:not(:last-child),
.is-dst .area-detail__item--notes:not(:last-child) {
  margin-bottom: 1em;
}
.is-pc.is-dst .area-detail__item--text:last-child,
.is-pc.is-dst .area-detail__item--notes:last-child {
  margin-bottom: calc(1em + 20px);
}
.is-dst .area-detail__item--notes--item {
  font-size: 0.9em;
}
.is-sp.is-dst .area-detail__item--links {
  text-align: right;
}
.is-pc.is-dst .area-detail__item--links {
  margin-top: auto;
}
.area-detail__wrapper .link__button--wrapper {
  #pageApp:has(.product__list--item) & {
    margin-top: min((72vw / 7.5), 56px);
    .link__button {
      margin-top: 0;
    }
  }
  #pageApp:not(:has(.product__list--item)) & {
    display: none;
  }
}
/*decobox*/
.decobox__wrapper {
  margin-top: min((110vw / 7.5), 110px);
}
.is-pc .decobox__wrapper {
  margin-top: 55px;
}
.decobox__wrapper::before,
.decobox::before,
.decobox__container::before,
.decobox__inner::before {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  border-radius: 50% 50% 0 0/ 100% 100% 0px 0px;
  width: min((630vw / 7.5), 630px);
  height: min((248vw / 7.5), 248px);
  top: max((-110vw / 7.5), -110px);
}
.is-pc .decobox__wrapper::before,
.is-pc .decobox::before,
.is-pc .decobox__container::before,
.is-pc .decobox__inner::before {
  width: 360px;
  height: 120px;
  top: -55px;
}
.decobox__container::before,
.decobox__inner::before {
  width: min((620vw / 7.5), 620px);
}
.is-pc .decobox__container::before,
.is-pc .decobox__inner::before {
  width: 350px;
}
.decobox__wrapper::before,
.decobox__wrapper {
  background: #000;
  box-shadow: 0 0 min((7vw / 7.5), 7px) 0 rgba(0, 0, 0, 0.5);
  padding: 2px;
}
.decobox::before,
.decobox {
  background: #fff;
  padding: min((8vw / 7.5), 8px);
}
.decobox__container::before,
.decobox__container {
  background: #000;
  padding: 1px;
}
.decobox__inner::before,
.decobox__inner {
  background: #fff;
}
.decobox__inner {
  padding: min((40vw / 7.5), 40px) min((30vw / 7.5), 30px);
  min-height: min((200vw / 7.5), 200px);
}
.decobox__title {
  display: flex;
  justify-content: center;
  margin: auto;
  position: absolute;
  z-index: 1;
  left: 0;
  right: 0;
  top: max((-56vw / 7.5), -56px);
}
.is-pc .decobox__title {
  top: -24px;
  width: 230px;
}
.is-sp #worldbox .decobox__title {
  width: min((373vw / 7.5), 373px);
}
.is-sp #infobox .decobox__title {
  width: min((395vw / 7.5), 395px);
}
.decobox .content__list--item {
  display: grid;
  gap: min((30vw / 7.5), 22px);
}
.is-pc .decobox .content__list--item {
  grid-template-columns: 310px 1fr;
}
.decobox .content__list--item:not(:last-child) {
  margin-bottom: min((120vw / 7.5), 120px);
  #infobox & {
    --yohaku: min((40vw / 7.5), 40px);
    margin-bottom: var(--yohaku);
    padding-bottom: var(--yohaku);
    border-bottom: 1px dashed;
    .is-pc & {
      --yohaku: 20px;
    }
  }
}
.is-pc .decobox .content__list--item:not(:last-child) {
  margin-bottom: 20px;
}
.decobox .content__list--title {
  font-weight: bold;
  /*font-size: calc(16em / var(--default-font-size-pc-val));*/
  font-size: min((34vw / 7.5), 16px);
  line-height: 1.2;
  margin-bottom: 1em;
}
#worldbox .decobox .content__list--title {
  color: #f66868;
  margin-bottom: 0.5em;
}
.decobox .content__list--text {
  line-height: calc(24 / var(--default-font-size-pc-val));
}
.decobox .content__list--text:not(:last-child) {
  margin-bottom: min((40vw / 7.5), 25px);
}
.decobox .content__list--text b {
  color: #0099cc;
}
.decobox .content__list--notes--item.is-kome {
  text-indent: -1em;
  padding-left: 1em;
}
/*movies*/
.youtube__wrapper {
  display: grid;
  justify-content: center;
  gap: min((40vw / 7.5), 20px);
  grid-auto-columns: min(100%, 560px);
}
.youtube {
  padding-top: calc(100% * 9 / 16);
  background: #000 no-repeat center center / cover;
  cursor: pointer;
  position: relative;
}
.youtube__icon {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: min((110vw / 7.5), 80px);
}
.youtube__icon--bg {
  transition: fill 0.4s;
}
.youtube__block,
.youtube__iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
/*facility*/
.facility__navi {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin-left: max((-20vw / 7.5), -20px);
  margin-top: max((-20vw / 7.5), -20px);
}
.facility__navi--item {
  width: min(((100% - ((16vw / 7.5) * 3)) / 3), 178px);
  min-height: min((116vw / 7.5), 65px);
  margin-left: min((16vw / 7.5), 20px);
  margin-top: min((16vw / 7.5), 20px);
}
.facility__navi--link {
  background: #fff;
  border: 1px solid;
  display: grid;
  align-content: center;
  justify-items: center;
  gap: 0.5em 0;
  height: 100%;
  color: inherit;
  font-weight: bold;
  font-size: min((28vw / 7.5), 16px);
}
.facility__navi--link::after {
  content: '';
  width: 1.5em;
  height: 0.5em;
  background: var(--default-icon-arrow-down-black);
}
.facility__title {
  font-size: min((50vw / 7.5), 34px);
  line-height: 1;
  display: grid;
  justify-items: center;
  gap: min((20vw / 7.5), 14px) 0;
  margin-bottom: 1em;
}
.facility__title::before {
  content: '';
  width: min((132vw / 7.5), 62px);
  height: min((106vw / 7.5), 50px);
  background: url('../images/title_icon-star.png') var(--default-bg-setting);
}
.facility__lead {
  margin-bottom: min((60vw / 7.5), 50px);
}
.facility__lead,
.facility__content--text {
  font-size: min((28vw / 7.5), 16px);
  line-height: calc(27 / 16);
}
.facility__content {
  display: grid;
  gap: min((40vw / 7.5), 35px);
}
.facility__content:not(:first-child) {
  margin-top: min((100vw / 7.5), 50px);
}
.is-pc .facility__content {
  grid-template-columns: 1fr 706px;
}
.facility__list:not([class*='slick']) {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: min((80vw / 7.5), 65px) min((35vw / 7.5), 16px);
}
.is-pc .facility__list:not([class*='slick']) {
  /*grid-template-columns: repeat(3, 1fr);*/
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.facility__item {
  display: grid !important;
  align-content: start;
  gap: min((20vw / 7.5), 20px) 0;
  grid-template-rows: auto 1fr;
}
.is-pc .facility__list:not([class*='slick']) .facility__item {
  width: 320px;
}
.is-sp .facility__list[class*='slick'] {
  width: 100vw;
  margin-left: calc(-32vw / 7.5);
  padding: 0 min((74vw / 7.5), 66px);
}
.is-pc .facility__list[class*='slick'] {
  width: calc(100% + 20px);
  margin-left: -20px;
}
.is-pc .facility__list[class*='slick'] .facility__item {
  margin-left: 20px;
}
.is-pc .facility__list[class*='slick'] .slider__arrow {
  background: var(--default-icon-arrow-right-black);
}
.is-pc .facility__list[class*='slick'] .slider__prev {
  left: calc(-40px + 20px);
}
.is-pc .facility__list[class*='slick'] .slider__next {
  right: -40px;
}
.facility__list[class*='slick'] .slider__dots {
  margin-top: min((35vw / 7.5), 25px);
}
.facility__item--image .base-picture__image {
  object-fit: contain;
  width: 100%;
  aspect-ratio: 320 / 213;
}
.facility__item--texts {
  display: flex;
  flex-direction: column;
}
.facility__item--title {
  font-weight: bold;
  font-size: min((30vw / 7.5), 20px);
  line-height: calc(27 / 20);
  margin-bottom: 0.5em;
}
.facility__content--text:not(:last-child),
.facility__content--notes:not(:last-child),
.facility__item--text:not(:last-child),
.facility__item--notes:not(:last-child) {
  margin-bottom: 1em;
}
.facility__content--notes--item,
.facility__item--notes--item {
  font-size: calc(12em / var(--default-font-size-pc-val));
}
.facility__content--notes--item:not(:last-child),
.facility__item--notes--item:not(:last-child) {
  margin-bottom: 0.25em;
}
.is-pc .facility__content--notes--item.is-kome,
.is-pc .facility__item--notes--item.is-kome {
  text-indent: -1em;
  padding-left: 1em;
}
.facility__item--label {
  line-height: calc(17 / var(--default-font-size-pc-val));
  color: #6e5100;
  font-weight: bold;
  background: #ffd96e;
  padding: 0.5em;
  margin-top: auto;
}
.facility__item--buttons {
  display: grid;
  gap: min((16vw / 7.5), 8px);
  justify-content: center;
  margin-top: 0.5em;
}
.facility__item--button .link__button--item {
  background: #f39800;
  font-size: min((22vw / 7.5), 14px);
  color: #fff;
  font-weight: normal;
  box-shadow: none;
  border-radius: min((8vw / 7.5), 8px);
  border: none;
  min-height: min((56vw / 7.5), 34px);
  min-width: min((480vw / 7.5), 240px);
  gap: 0.5em;
  padding-right: 0.5em;
  padding-left: 2em;
  &::after {
    background-image: var(--default-bg-icon-arrow-right-white);
  }
  &[target='_blank']::after {
    background-image: var(--default-bg-icon-blank-white);
  }
}
/*special*/
.section.is-special:has(.special__inner:empty) {
  display: none;
}
.section.is-special:has(:not(.special__inner:empty)) {
  display: block;
  .section__inner > .special:has(.special__inner:empty) {
    display: none;
  }
}
.special {
  box-shadow: 0 0 7px 0 rgba(0, 0, 0, 0.5);
  border: 2px solid #333;
  background: #fff;
  padding: min((8vw / 7.5), 8px);
}
.special + .special {
  margin-top: min((40vw / 7.5), 40px);
}
.special__inner {
  border: 1px solid #333;
  padding: min((40vw / 7.5), 40px) min((10vw / 7.5), 10px);
}
.is-pc .special__inner {
  padding: 50px 20px;
}
.special[id^='fair-'] .special__inner {
  padding-top: min((30vw / 7.5), 30px);
  .is-pc & {
    padding-top: 17px;
  }
}
.special__title {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  margin-bottom: min((48vw / 7.5), 40px);
  &.is-column-1 {
    flex-direction: column;
  }
  .special[id^='fair-'] & {
    padding-top: var(--fair-logo-size-h, min((170vw / 7.5), 170px));
    background: url('../images/special-fair_logo.png') no-repeat center top / var(--fair-logo-size-w, min((387vw / 7.5), 387px));
    .is-pc & {
      --fair-logo-size-h: 70px;
      --fair-logo-size-w: 163px;
    }
  }
  #fair-hatsuyume & {
    .base-title__text--main {
      font-size: min((48vw / 7.5), 30px);
    }
  }
  .is-block {
    display: block;
  }
}
.is-pc .special__title {
  gap: 15px;
}
.special__title .base-title__text--main,
.special__tokuten--item.is-special .base-title.special__tokuten--text.is-font-large {
  font-size: min((50vw / 7.5), 30px);
  line-height: 1.4;
  letter-spacing: 1.5px;
  font-weight: bold;
  color: #fff9be;
  text-shadow: 1px 1px 0 #000, -1px -1px 0 #000, -1px 1px 0 #000, 1px -1px 0 #000, 0px 1px 0 #000, 0 -1px 0 #000, -1px 0 0 #000, 1px 0 0 #000;
  .special__title.is-color-pink & {
    color: #feddeb;
  }
}
:is(.special__title .base-title__text--main, .special__tokuten--item.is-special .base-title.special__tokuten--text.is-font-large) .is-not-outline {
  text-shadow: none;
  color: #000;
  font-weight: bolder;
  letter-spacing: -1px;
}
.special__tokuten--item.is-special .base-title.special__tokuten--text.is-font-large {
  font-size: min((32vw / 7.5), 22px);
  letter-spacing: 1.1px;
  margin-bottom: 1em;
}
.is-sp .special__title .base-title__text--main {
  width: 100%;
}
.is-sp .special__title .base-title__text--main:not(:first-child) {
  margin-top: 0.25em;
}
.special__title .base-title__text--main {
  .is-yohaku-half {
    padding: 0 0.15em;
  }
  .is-aori {
    display: flex;
    justify-content: center;
    align-items: center;
    font-feature-settings: 'palt';
    letter-spacing: 0.1em;
    gap: 0.25em;
    .is-sp & {
      font-size: min((36vw / 7.5), 20px);
    }
    &::before,
    &::after {
      content: '';
      width: 0.22em;
      height: 1.25em;
      background: currentColor;
      border: 1px solid #000;
      border-radius: 2px;
    }
    &::before {
      transform: rotate(-45deg);
      transform-origin: left bottom;
    }
    &::after {
      transform: rotate(45deg);
      transform-origin: right bottom;
    }
  }
}
.special__title .base-title__text--main .is-park-name {
  letter-spacing: 0px;
}
.special__title .base-title__text--sub {
  background: #fff9be;
  border: 1px solid #000;
  font-size: min((30vw / 7.5), 20px);
  padding: var(--yohaku, 0.25em);
}
.is-pc .special__title .base-title__text--sub {
  --yohaku: 0.25em 0.5em;
}
/*.is-pc .special__title .base-title__text--sub:not(:only-child), .is-pc .special__title .base-title__text--main:not(:first-child) {
  margin: 0 15px;
}
.is-pc .special__title.is-column-1 .base-title__text--sub:not(:only-child) {
  margin-bottom: 15px;
}*/
.special__detail {
  padding: 0 min((17vw / 7.5), 20px);
}
.is-pc .special__detail {
  padding: 0 20px;
  #character-party & {
    padding: 0;
    width: 880px;
    margin: auto;
  }
}
.special__lead {
  font-weight: bold;
  text-align: center;
  font-size: min((27vw / 7.5), 20px);
  line-height: calc(24 / 20);
  margin-bottom: min((12vw / 7.5), 20px);
  font-feature-settings: 'palt';
}
.special:has(.special__lead) .special__title {
  margin-bottom: min((24vw / 7.5), 12px);
}
.special__text {
  font-size: min(var(--default-font-size-sp), 16px);
  line-height: 1.5;
}
.special__text.is-center {
  display: grid;
  justify-content: center;
  .is-pc & {
    text-align: center;
  }
}
.special__text:not(:last-child) {
  margin-bottom: min((60vw / 7.5), 40px);
}
.special__text .is-title {
  display: block;
  margin-bottom: 0.25em;
}
.special__image:not(:last-child) {
  margin-bottom: min((45vw / 7.5), 22px);
  text-align: center;
}
.special__tokuten:not(:last-child) {
  margin-bottom: min((100vw / 7.5), 60px);
}
.special__tokuten--list {
  display: grid;
  gap: min((100vw / 7.5), 60px) min((40vw / 7.5), 20px);
}
.is-pc #happy-happiness .special__tokuten--list {
  grid-template-columns: auto auto;
  justify-content: center;
  /*grid-auto-flow: column;*/
  gap: 60px 70px;
}
.special__tokuten--item.is-column2 {
  display: grid;
  gap: min((27vw / 7.5), 22px);
  .is-pc & {
    #mini-towel & {
      grid-template-columns: 329px 1fr;
      .special__tokuten--image {
        margin-top: 15px;
      }
    }
    #tote-bag & {
      grid-template-columns: 329px 1fr;
      .special__tokuten--image {
        margin-top: 15px;
      }
    }
  }
  #tote-bag & {
    .is-sp & {
      .special__tokuten--image {
        transform: translateY(calc(10vw / 7.5));
        .base-picture__image {
          width: 100%;
          object-fit: contain;
          height: calc(428vw / 7.5);
        }
      }
    }
    .is-pc & {
      grid-template-columns: 250px 1fr;
      gap: 45px;
      .special__tokuten--image {
        transform: translateY(-10px);
      }
    }
  }
  #mini-towel & {
    /*mini-towelも画像が細長い場合はこっちを利用。横長の場合はここの「, #mini-towel」トルツメ*/
    .is-sp & {
      .special__tokuten--image {
        transform: translateY(calc(10vw / 7.5));
        .base-picture__image {
          width: 100%;
          object-fit: contain;
          height: calc(442vw / 7.5);
        }
      }
    }
    .is-pc & {
      grid-template-columns: 150px 1fr;
      gap: 45px;
      .special__tokuten--image {
        transform: translateY(-10px);
      }
    }
  }
  #character-greeting & {
    .is-sp & {
      gap: min((50vw / 7.5), 40px);
    }
  }
  #fair-hatsuyume & {
    margin-top: min((55vw / 7.5), 45px);
    .is-sp & {
      gap: min((50vw / 7.5), 40px);
    }
    .is-pc & {
      grid-template-columns: 320px 1fr;
      margin-top: 10px;
    }
  }
}
.special__tokuten--item.is-special {
  padding: 1.5em min((28vw / 7.5), 23px);
  background: #dcf6f5;
  border-radius: min((15vw / 7.5), 15px);
}
.is-pc .special__tokuten--item:only-child,
.is-pc .special__tokuten--item.is-column-2 {
  grid-column: span 2;
}
.special__tokuten--title,
.special__tokuten--text.base-title {
  text-align: left;
}
.special__tokuten--title:not(:first-child) {
  margin-top: 0.25em;
}
.special__tokuten--title ~ .special__tokuten--title {
  margin-top: 1.75em;
}
.special__tokuten--column2 {
  display: grid;
  gap: min((39vw / 7.5), 19px);
}
.is-pc .special__tokuten--column2 {
  grid-template-columns: auto 1fr;
}
.special__tokuten--image.is-pf {
  height: min((284vw / 7.5), 226px);
  width: auto;
  object-fit: contain;
  margin: auto;
}
.special__tokuten--notes,
.special__tokuten--item-list {
  margin-top: 0.4em;
}
.is-sp .special__tokuten--item-list {
  margin-top: 0.6em;
}
.special__tokuten--item-list:not(:last-child) {
  margin-bottom: 0.6em;
}
.special__tokuten > .special__tokuten--notes {
  margin-top: min((100vw / 7.5), 50px);
  padding-top: min((40vw / 7.5), 20px);
  border-top: 1px dashed;
}
:is(.special__tokuten--notes--item, .special__tokuten--item-list--item, .link__button--notes--item):not(.is-not-indent) {
  text-indent: -1em;
  padding-left: 1em;
}
.special__tokuten--notes--item,
.link__button--notes--item {
  font-size: calc(12em / var(--default-font-size-pc-val));
}
:is(.special__tokuten--notes--item, .special__tokuten--item-list--item, .link__button--notes--item):not(:first-child) {
  margin-top: 0.25em;
}
.is-sp :is(.special__tokuten--item-list--item, .link__button--notes--item):not(:first-child) {
  margin-top: 0.4em;
}
.link__button--notes--item.is-mt-1row {
  margin-top: 1.25em !important;
}
.link__button--notes--item b + .link__text {
  margin-top: 0.25em;
}
.special__tokuten--item--block:not(:first-child) {
  margin-top: min((100vw / 7.5), 60px);
}
.special__tokuten--block + .special__tokuten--block {
  margin-top: min((60vw / 7.5), 35px);
}
.special__tokuten--point--photo .base-picture__image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.is-sp .special__tokuten--point--photo {
  width: min((450vw / 7.5), 450px);
  height: min((300vw / 7.5), 300px);
  margin: auto;
  &:not(:first-child) {
    margin-top: 0.75em;
  }
}
.is-pc .special__tokuten--point--item:not(:has(.special__tokuten--point--photo) ~ .special__tokuten--point--item) {
  --point-photo-size: 260px;
  --point-photo-yohaku: 38px;
  padding-right: calc(var(--point-photo-size) + var(--point-photo-yohaku));
  position: relative;
  .special__tokuten--point--photo {
    width: var(--point-photo-size);
    height: 174px;
    position: absolute;
    right: 0;
    bottom: 0;
    .base-picture__image {
      display: block;
      width: 100%;
      height: 100%;
      object-fit: contain;
    }
  }
}
.special__tokuten--title {
  display: grid;
  gap: 0 0.25em;
  grid-template-columns: 1.25em 1fr;
  font-size: min((34vw / 7.5), 20px);
  line-height: 1.25;
  margin-bottom: 0.75em;
}
.special__tokuten--title::before {
  content: '';
  width: 1.25em;
  height: 1.25em;
  background: url('../images/title_icon-star_small.png') var(--default-bg-setting);
}
.special__tokuten--text {
  font-size: min(var(--default-font-size-sp), 16px);
  line-height: 1.5;
}
.special__tokuten--text.is-font-large {
  font-size: min((28vw / 7.5), 16px);
}
.special__tokuten--text ~ .special__tokuten--text {
  margin-top: 1.25em;
}
.special__tokuten--title + .special__tokuten--text {
  margin-top: 0;
}
.special__tokuten--text .is-lead {
  display: block;
  margin-bottom: 0.1em;
}
.special__tokuten--text .is-price {
  display: inline-block;
  margin-top: 0.1em;
}
.special__tokuten--detail:not(:first-child) {
  margin-top: 1.4em;
}
.special__tokuten--text:not(:first-of-type) ~ .special__tokuten--detail {
  margin-top: 2.5em;
}
.special__tokuten--detail {
  display: grid;
  align-items: baseline;
  grid-template-columns: 8em 1fr;
  gap: min((8vw / 7.5), 8px) 1em;
  &.is-color-pink {
    .is-sp & {
      grid-template-columns: auto;
      .special__tokuten--detail--title {
        justify-self: start;
        padding: 0 0.5em;
        min-width: 8em;
        &:not(:first-child) {
          margin-top: 0.75em;
        }
      }
    }
  }
}
.special__tokuten--detail:not(:last-child) {
  margin-bottom: 1em;
}
.special__tokuten--detail--title {
  background: #fff9be;
  text-align: center;
  line-height: 1.5;
  .is-color-pink & {
    background: #ffdceb;
  }
}
.special__tokuten--detail--text--list {
  display: grid;
  gap: 1em;
  margin-bottom: 0.5em;
}
.special__tokuten--detail--text--list--item {
  padding-left: 1em;
  text-indent: -1em;
}
.special__tokuten--detail--text--list--item--notes {
  display: block;
  padding-left: 1em;
  text-indent: -1em;
  font-size: calc(12em / 14);
}
.special__tokuten--step {
  counter-reset: step-counter;
  font-size: min(var(--default-font-size-sp), 16px);
}
.special__tokuten--step--item:not(:last-child)::after {
  content: '';
  width: 1em;
  height: 1.5em;
  background: url(/cmn/icon/icon_directing_arrow_down.svg) var(--default-bg-setting);
  display: block;
  margin: min((15vw / 7.5), 15px) auto;
}
.special__tokuten--step--texts {
  background: #fff9be;
  border: 1px solid;
  padding: 0.5em;
  display: grid;
  grid-template-columns: 2em 1fr;
  gap: 0 1em;
  align-items: center;
}
.special__tokuten--step--texts::before {
  content: counter(step-counter);
  counter-increment: step-counter 1;
  display: grid;
  place-items: center;
  background: #fff;
  width: 2em;
  height: 2em;
  line-height: 1;
  padding-bottom: 0.1em;
  border: 1px solid #000;
  border-radius: 100%;
}
.special__tokuten--step--text--notes {
  display: block;
  font-size: 0.8em;
  padding-left: 1em;
  text-indent: -1em;
  margin-top: 0.3em;
  + .special__tokuten--step--text--notes {
    margin-top: 0.15em;
  }
  &.is-strong {
    font-weight: bold;
  }
}
.special__tokuten--special {
  padding: 1.5em min((28vw / 7.5), 15px);
  background: #ffe5f0;
  border-radius: min((15vw / 7.5), 15px);
}
.special__tokuten--special:not(:first-child) {
  margin-top: 1.75em;
}
.special__tokuten--special--title {
  font-weight: bold;
  font-size: min((32vw / 7.5), 20px);
  line-height: 1.2;
  display: grid;
  grid-template-columns: 0.8em 1fr;
  gap: 0 0.5em;
  align-items: baseline;
}
.special__tokuten--special--title::before {
  content: '';
  width: 100%;
  height: 0;
  padding-top: 100%;
  background: #f19ec2;
}
.special__tokuten--special--detail:not(:first-child) {
  margin-top: 1em;
}
.special__tokuten--special--text {
  line-height: calc(36 / 24);
}
.main .special__tokuten--special--link {
  color: inherit;
  text-decoration: underline;
  font-weight: bold;
}
.special__tokuten--point--title {
  display: inline-block;
  padding: 0.15em 1em 0.3em;
  background: #ffe5f0;
  border: 1px solid #333;
  font-size: 0.95em;
  margin-bottom: 0.25em;
  &.is-indent {
    .base-title__text--main {
      display: inline-block;
      text-align: left;
      padding-left: 1em;
      text-indent: -1em;
    }
  }
  .special__tokuten--point--item:has(.special__tokuten--point--title) & {
    margin-bottom: 0.5em;
  }
}
.special__tokuten--point--item:not(:first-child) {
  margin-top: 1em;
  .is-sp .special__tokuten--block & {
    margin-top: 2em;
  }
}
.special__tokuten--point--list--item:not(:first-child) {
  margin-top: 0.75em;
}
.special__tokuten--point--list--item--title.base-title {
  text-align: left;
  margin-bottom: 0.25em;
}
.special__tokuten--point--list--item--text {
  + .special__tokuten--point--list--item--text {
    margin-top: 0.75em;
  }
  .special__tokuten--point--list--item & {
    line-height: 1.5;
  }
  &.is-indent {
    text-indent: -1em;
    padding-left: 1em;
  }
  &.is-indent7 {
    text-indent: -7em;
    padding-left: 7em;
  }
  &:has(.is-font-s) {
    line-height: 1.2;
  }
  .is-font-s {
    font-size: 0.8em;
    font-size: 0.9em;
  }
}
.special__tokuten--button-title {
  font-size: min(var(--default-font-size-sp), 16px);
  line-height: 1.3;
  margin-bottom: 1em;
  .base-title__text--main {
    display: flex;
    justify-content: center;
    align-items: end;
    column-gap: 1em;
    &::before,
    &::after {
      content: '';
      height: 1.25em;
      width: 2px;
      background: currentColor;
      rotate: 45deg;
    }
    &::before {
      rotate: -45deg;
    }
  }
}
.special__tokuten--button {
  display: grid;
  justify-content: center;
  gap: 1em;
}
.special__tokuten--button--more:not(:first-child) {
  margin-top: min((70vw / 7.5), 45px);
}
.special__tokuten--button--more--title {
  font-size: min((26vw / 7.5), 20px);
  margin-bottom: 0.6em;
}
.is-pc .special .link__button--wrapper {
  display: grid;
  grid-auto-flow: column;
  gap: 20px;
  margin-top: 0;
  align-items: stretch;
}
.is-pc .special .link__button--wrapper .link__button {
  margin: 0;
}
.is-sp .special .link__button--wrapper .link__button:not(:only-child) .link__button--item {
  padding-left: 1.25em;
  gap: 0 0.75em;
}
#character-party .special__inner {
  background: #f7eefe;
}
#character-party .special__title .base-title__text--main {
  color: #fff;
}
#character-party .link__button--item {
  --bg-color-01: #ffd96e;
  --bg-color-02: #ffdf84;
}
/*section.is-banner*/
.section.is-banner {
  .banner__item[class*='is-bnr_naniwadanshi'] {
    max-width: 736px;
    margin: auto;
  }
}
/*★ ＝＝ productArea ＝＝ ★*/
#productArea {
  background: url(../images/product_bg.jpg) repeat 0 0 / min((60vw / 7.5), 60px);
  padding: min((80vw / 7.5), 80px) 0;
}
.product + .product {
  margin-top: min((120vw / 7.5), 120px);
}
.product__block + .product__block {
  margin-top: min((80vw / 7.5), 80px);
}
.product__title {
  margin-bottom: min((60vw / 7.5), 40px);
  font-size: min((48vw / 7.5), 34px);
}
.product__subtitle {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 0 min((28vw / 7.5), 28px);
  font-size: min((42vw / 7.5), 28px);
  font-weight: bold;
  margin-bottom: min((65vw / 7.5), 35px);
}
.product__subtitle::before,
.product__subtitle::after {
  content: '';
  height: 2px;
  background: #000;
}
.product__list:not(:last-child) {
  margin-bottom: min((80vw / 7.5), 40px);
}
.product__block:has(.product__list + .product__list) {
  .product__list:not(:last-of-type) {
    margin-bottom: min((20vw / 7.5), 31px);
  }
}
.product__list {
  display: grid;
  gap: min((20vw / 7.5), 31px);
}
.is-pc .product__list {
  grid-template-columns: repeat(3, 1fr);
}
.is-pc .product__list--data,
.is-pc .product__list--inner {
  height: 100%;
}
.product__list--data {
  background: #fff;
}
.product__list--inner {
  display: grid;
  align-content: start;
  gap: min((10vw / 7.5), 10px) min((20vw / 7.5), 20px);
  color: inherit;
  line-height: 1.2;
  border: 1px solid;
  padding: min((19vw / 7.5), 9px);
  transition: var(--default-hover-transition);
}
.is-sp .product__list--inner {
  grid-template-columns: min((280vw / 7.5), 255px) 1fr;
}
.is-pc .product__list--inner {
  grid-auto-rows: auto 1fr;
  padding-bottom: 10px;
}
.product__list--image:not(img) {
  background: no-repeat center top / contain;
  height: 0;
  padding-top: calc(100% * 157 / 236);
}
img.product__list--image {
  aspect-ratio: 290 / 192;
  object-fit: cover;
  object-position: right bottom;
}
.product__list--type {
  display: none;
}
.is-pc .product__list--text-wrapper {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
}
.product__list--label {
  display: block;
  background: #f66868;
  color: #fff;
  text-align: center;
  font-size: min((21vw / 7.5), 14px);
  line-height: 1.5;
  padding: 0.2em 0.5em;
  margin-bottom: min((10vw / 7.5), 10px);
}
.is-pc .product__list--label {
  font-weight: bold;
}
#product .section__inner > .product__list .ctcms_item:not([class*='ad']) .product__list--label.is-ad,
#product-kanto .ctcms_item:not([class*='ad']) .product__list--label.is-ad {
  display: none;
}
.product__list--title {
  font-size: min((26vw / 7.5), 18px);
  font-weight: bold;
}
.product__list--title--airport,
.product__list--title--airport + .product__list--title--text {
  display: inline-block;
}
.product__list--detail {
  font-size: min((22vw / 7.5), var(--default-font-size-pc));
  line-height: 1.3;
  padding-top: 0.75em;
}
.product__list--point {
  font-size: min((22vw / 7.5), var(--default-font-size-pc));
  line-height: 1.3;
  font-weight: bold;
  color: var(--default-color-blue);
  margin-top: 1em;
}
.product__list--detail + .product__list--point {
  margin-top: 0.5em;
}
.product__list--point:last-child {
  margin-bottom: 0.5em;
}
.product__list--texts {
  margin-bottom: 0.75em;
}
.product__list--price {
  font-size: min((20vw / 7.5), 12px);
  font-weight: bold;
  color: #7d7d7d;
}
.is-pc .product__list--price {
  margin-top: auto;
}
.product__list--minmax {
  font-size: min((28vw / 7.5), 22px);
  font-weight: normal;
  color: #ff0000;
}
.product__list--minmax ~ [class*='product__list--'] {
  margin-top: 0.25em;
}
.product__list--minmax + [class*='product__list--'] {
  margin-top: 0.75em;
}
.product__list--more {
  display: grid;
  gap: 0.25em 0.5em;
  align-items: baseline;
  margin-top: 1em;
  font-size: 0.9em;
}
.is-sp .product__list--more {
  justify-items: start;
}
.is-pc .product__list--more {
  grid-template-columns: 6em 1fr;
}
.product__list--more:last-child {
  margin-bottom: 1em;
}
.product__list--more + .product__list--more {
  margin-top: 0.7em;
}
.is-pc .product__list--more + .product__list--more {
  margin-top: 0.4em;
}
.product__list--more--title {
  line-height: 1.5;
  background: #808080;
  color: #fff;
  text-align: center;
  padding: 0 1em 0.15em;
}
.is-pc .product__list--more--title {
  padding: 0.1em 0;
}
/* 商品1つの時 */
.is-pc .product__list--item:only-child {
  width: var(--default-width-pc);
}
.is-pc .product__list--item:only-child .product__list--inner {
  grid-template-columns: 358px 1fr;
  padding: 15px;
}
.is-pc .product__list--item:only-child .product__list--title {
  font-size: 22px;
}
.is-pc .product__list--item:only-child .product__list--detail {
  font-size: 16px;
}
.is-pc .product__list--item:only-child .product__list--minmax ~ [class*='product__list--'] {
  display: inline-block;
}
.is-pc .product__list--item:only-child .product__list--more {
  font-size: 1em;
}
/*商品注釈*/
.product__notes--title {
  font-weight: bold;
  margin-bottom: 0.5em;
}
.product__notes--item::before {
  content: '※';
  margin-right: 0.25em;
}
.product__notes--item {
  padding-left: 1.25em;
  text-indent: -1.25em;
}
.product__notes--item:not(:first-child) {
  margin-top: 0.25em;
}
/*intro*/
#intro .section__inner {
  padding-bottom: min((85vw/ 7.5), 80px);
}
/*staff*/
#staff {
  background: #fdeab9;
}
#staff .section__inner {
  padding: min((66vw/ 7.5), 60px) 0;
}
.staff__title {
  font-size: min((42vw / 7.5), 30px);
  line-height: calc(52 / 42);
  font-weight: bold;
}
.is-pc .staff__title {
  display: grid;
  grid-template-columns: 1em auto 1em;
  justify-items: center;
  justify-content: center;
  gap: 0 0.5em;
  align-items: baseline;
}
.is-pc .staff__title::before,
.is-pc .staff__title::after {
  content: '';
  width: 2px;
  height: 1.05em;
  background: currentColor;
  transform: rotate(var(--deg, 45deg)) translateY(0.2em);
}
.staff__title::before {
  --deg: -45deg;
}
.is-sp .staff__title .base-title__text--main {
  display: block;
}
.staff__lead {
  text-align: center;
  font-weight: bold;
  font-size: min((24vw / 7.5), 16px);
  line-height: calc(22 / 16);
  margin: min((60vw / 7.5), 40px) 0 min((65vw / 7.5), 40px);
}
.staff__title + .staff__lead {
  margin-top: 0.5em;
}
.staff__list {
  --yohaku: min((50vw/ 7.5), 48px);
  display: grid;
  justify-content: center;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: var(--yohaku);
}
.is-pc .staff__list {
  --yohaku: 48px;
  grid-template-columns: repeat(auto-fit, calc((100% - var(--yohaku) * 3) / 4));
  padding: 0 24px;
}
.staff__item {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 5;
  grid-template-areas:
    'photo'
    'comment'
    'name'
    'achievement'
    'btn';
  gap: 0;
  text-align: center;
}
.staff__item--comment {
  grid-area: comment;
  font-size: min((20vw / 7.5), 14px);
  color: #2c5ea8;
  line-height: calc(16 / 14);
  font-weight: bold;
  margin-bottom: 0.1em;
  display: grid;
  align-items: center;
}
.staff__item--name {
  margin-bottom: 0.5em;
  display: flex;
  flex-direction: column;
  gap: 0.25em;
  .base-title__text--main {
    font-size: min((30vw / 7.5), 22px);
  }
  .base-title__text--sub {
    order: 1;
    font-size: min((18vw / 7.5), 12px);
    line-height: calc(22 / 18);
    border: 1px solid;
    padding: 0.25em;
    text-align: center;
    font-weight: bold;
  }
}
.staff__item--photo {
  grid-area: photo;
  width: 100%;
  height: min((240vw / 7.5), 200px);
  margin-bottom: 0.5em;
}
.staff__item--photo--image {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.staff__item--achievement {
  grid-area: achievement;
  font-size: min((18vw / 7.5), 12px);
  line-height: calc(22 / 18);
  font-weight: bold;
  padding-bottom: min((20vw / 7.5), 15px);
}
.staff__item--button {
  grid-area: btn;
}
.staff__item--button .link__button--item {
  grid-template-columns: 1fr;
  background: #f39800;
  color: #fff;
  box-shadow: none;
  border-radius: min((8vw / 7.5), 8px);
  border: none;
  min-height: min((48vw / 7.5), 40px);
  min-width: 100%;
  padding-left: 1em;
}
.staff__item--button .link__button--item::after {
  display: none;
}
.is-top:is(.is-pc, .is-sp) .cmn-main-contents {
  padding-bottom: 0; /*staff枠がある時は余白解除;*/
}
/*★ ＝＝ footerArea ＝＝ ★*/
.is-pc #footerArea {
  padding-bottom: 60px;
}
/*searchArea*/
#searchApp {
  background: #fff;
  padding: min((30vw/ 7.5), 40px) 0 min((50vw/ 7.5), 60px);
}
.is-sp.is-top #searchApp {
  padding-bottom: 0;
}
.is-pc #searchApp {
  background: linear-gradient(#54ddf4 30%, #ffbbfd);
}
#searchApp::before {
  content: 'ご希望の日程で旅行を検索';
  display: block;
  font-weight: bold;
  letter-spacing: 1px;
  text-align: center;
  font-size: min((45vw/ 7.5), 34px);
  margin-bottom: 0.75em;
}
.is-pc #searchApp::before {
  color: #fff;
}
/*contactArea*/
.is-sp #contactArea {
  display: none;
}
/*------------------------------------------------*/
/*★ ＝＝ hover ＝＝ ★*/
@media (hover: hover) and (pointer: fine) {
  .is-pc .slider__arrow:hover {
    background-color: rgba(0, 0, 0, 0.7);
  }
  .is-pc .youtube__wrapper:hover .youtube__icon--bg {
    fill: #00a1e9;
  }
  .is-pc .link__text--item:hover {
    text-decoration: underline;
  }
  .is-pc .link__button--item:hover {
    --bg-color-01: #9ad7d4;
    --bg-color-02: #b8e3e1;
  }
  .is-pc .link__button.is-bg-orange .link__button--item:hover {
    --bg-color-01: #e5910d;
    --bg-color-02: #e9a131;
  }
  .is-pc #character-party .link__button--item:hover {
    --bg-color-01: #ffb92f;
    --bg-color-02: #ffc857;
  }
  .is-pc .facility__navi--link:hover {
    background-image: linear-gradient(135deg, #e7cefc 8.33%, #e3c6fb 8.33%, #e3c6fb 50%, #e7cefc 50%, #e7cefc 58.33%, #e3c6fb 58.33%, #e3c6fb 100%);
    background-size: min((16vw / 7.5), 8.5px) min((16vw / 7.5), 8.5px);
  }
  .is-pc .product__list--inner:hover {
    opacity: 0.7;
  }
  .is-pc .search__button--link:hover {
    opacity: 0.8;
  }
  .is-pc .main .special__tokuten--special--link:hover {
    text-decoration: none;
  }
  .is-pc .section__banner .banner__item--link,
  .is-pc .staff__item--photo--image {
    transition: var(--default-hover-transition);
  }
  .is-pc .section__banner .banner__item--link:hover,
  .is-pc .staff__item--photo:hover .staff__item--photo--image {
    opacity: 0.7;
  }
  .is-pc :is(.staff__item--button, .facility__item--button) .link__button--item {
    transition: background var(--default-hover-speed);
  }
  .is-pc :is(.staff__item--button, .facility__item--button) .link__button--item:hover {
    background: #f56766;
  }
}
