@charset "utf-8";
/*ニュージランド 共通 CSS*/
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&family=Shippori+Mincho:wght@500;700&display=swap');
:root {
  --default-width-sp: calc(680vw / 7.5);
  --default-width-sp2: calc(580vw / 7.5);
  --default-width-pc: 992px;
  --default-width-inner: min(var(--default-width-sp), var(--default-width-pc));
  --default-width-max-sp-minus: calc(-35vw / 7.5);
  --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-font-min: 'Shippori Mincho', serif;
  --default-font-gothic: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
  --default-color-red: #d42828;
  --default-bg-main: url(../images/bg_main.png) repeat top center / min((128vw / 7.5), 128px);
  --default-bg-dot: url(../images/border_dot.png) repeat-x bottom left / 2px;
  --default-bg-setting-center-cover: no-repeat center center / cover;
  --default-bg-arrow-red: url(../images/icon_arrow_right_red.svg) var(--default-bg-setting-center-cover);
  --default-bg-arrow-white: url(/cmn/icon/icon_arrow_right_white.svg) var(--default-bg-setting-center-cover);
  --default-bg-border-gray-pc: url(../images/border_gray_pc.png) no-repeat bottom left / 642px;
  --default-bg-border-red-pc: url(../images/border_red_pc.png) repeat-x top center / 30px;
  --default-bg-border-red-sp: url(../images/border_red_sp.png) repeat-x top center / min((300vw / 7.5), 300px);
  --default-bg-ribbon-red-pc: url(../images/border_ribbon_red_pc.png) no-repeat top right / cover;
  --default-bg-ribbon-red-sp: url(../images/border_ribbon_red_sp.png) no-repeat top right / cover;
  --default-bg-dot-gray: url("data:image/svg+xml;utf8,<svg width='2' height='1' version='1.1' xmlns='http://www.w3.org/2000/svg'><rect x='0' y='0' width='1' height='1' fill='gray' /></svg>") repeat-x left top;
}
/*★ リセット ★*/
.main div:not([class])::after {
  content: none;
}
.main a:not(.searchBtn) {
  color: inherit;
}
#footer {
  padding-top: 1px;
  background: #fff;
}
/* 共通パーツ
-------------------------------------------------*/
.main, #topbuttonApp {
  font-family: var(--default-font-gothic);
  font-size: var(--default-font-size);
  color: #333;
  line-height: 1.6;
}
.main {
  overflow: hidden;
}
.is-pc .main {
  min-width: 992px;
}
.is-pc .inner {
  width: var(--default-width-pc);
  margin: auto;
}
.aC {
  text-align: center;
}
.aR {
  text-align: right;
}
.banner {
  text-align: center;
}
.is-inline-block {
  display: inline-block;
}
.note {
  font-size: 13px;
  text-indent: -1em;
  padding-left: 1em;
}
.is-pc .is-dsp-sp, .is-sp .is-dsp-pc {
  display: none;
}
.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);
}
/*明朝体タイトル*/
.base-title {
  font-family: var(--default-font-min);
  line-height: 1;
  font-size: min((60vw / 7.5), 32px);
  text-align: center;
  margin-bottom: 1em
}
.base-title.intro__title {
  font-size: min((60vw / 7.5), 39px);
}
.base-title.op__title, .base-title.info__title, .base-title.tour__title {
  font-size: min((36vw / 7.5), 25px);
  background: no-repeat center top;
  padding-top: min((88vw / 7.5), 88px);
}
.is-pc .base-title.op__title, .is-pc .base-title.info__title, .is-pc .base-title.tour__title {
  padding-top: 50px;
}
.base-title.op__title {
  background-image: url("../images/title_deco_opArea.png");
  background-size: min((305vw / 7.5), 305px);
}
.base-title.info__title {
  background-image: url("../images/title_deco_infoArea.png");
  background-size: min((416vw / 7.5), 416px);
}
.base-title.tour__title {
  background-image: url("../images/title_deco_tourArea.png");
  /*background-size: min((715vw / 7.5), 715px);*/
  background-size: min((695vw / 7.5), 695px);
}
.base-title.tour__subtitle {
  font-size: min((34vw / 7.5), 24px);
  line-height: 1.4;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: calc(32em / 24);
  margin-bottom: min((56vw / 7.5), 35px);
  &::before, &::after {
    content: "";
    width: calc(48em / 24);
    height: 1px;
    background: currentColor;
  }
}
.is-pc .base-title.op__title {
  background-size: 162px; /*サイズ53%*/
}
.is-pc .base-title.info__title {
  background-size: 220px;
}
.is-pc .base-title.tour__title {
  /*background-size: 380px;*/
  background-size: 369px;
}
:where(.is-pc) .base-title {
  margin-bottom: 30px;
}
.base-title .is-mark {
  display: inline-block;
  transform: rotate(-32deg);
  font-size: .9em;
}
.base-title__inner > [class*="base-title__text--"] {
  display: inline-block;
}
/*spotBox＋opBoxなどの要素タイトル*/
.spotBox .base-title__inner, .opBox .base-title__inner {
  display: flex;
  flex-wrap: wrap;
  gap: 0 1em;
}
.spotBox .base-title__text--sub, .opBox .base-title__text--sub {
  order: 1;
}
.is-sp .spotBox-sub__title .base-title__inner, .opBox-sub__title .base-title__inner {
  text-align: center;
  justify-content: center;
}
/*矢印付きリンク*/
.link__text {
  margin-top: .75em;
  color: var(--default-color-red);
}
.link__text.arrow03 {
  color: #333;
}
.link__text--item {
  text-decoration: none;
  text-underline-offset: .4em;
}
.link__text.arrow01 .link__text--item {
  font-size: calc(16em / var(--default-font-size-pc-val));
}
.link__text.arrow03 .link__text--item {
  text-decoration: underline;
}
.link__text--item::before {
  content: "";
  display: inline-block;
  background: url(../images/icon_arrow_red.png) no-repeat center center / contain;
  vertical-align: sub;
  margin-right: .5em;
  width: 1.5em;
  height: 1.25em;
}
.link__text.arrow03 .link__text--item::before {
  background-image: url("../images/icon_arrow_black.png");
}
/*赤枠リンクボタン*/
.link__button--item {
  display: inline-block;
  color: var(--default-color-red) !important;
  text-decoration: none !important;
  border: 1px solid var(--default-color-red);
  line-height: 1.4;
  background: #fff;
}
.is-sp .link__button--item {
  font-size: min((26vw / 7.5), 26px);
  font-weight: bold;
  border-width: min((4vw / 7.5), 4px);
  margin-top: min((60vw / 7.5), 60px);
  min-width: var(--default-width-sp2);
}
.is-pc .link__button--item {
  margin-top: 20px;
}
.link__button--text {
  display: grid;
  align-items: center;
  justify-content: center;
  min-height: min((80vw / 7.5), 80px);
  padding: .5em min((20vw / 7.5), 20px);
}
.is-pc .link__button--text {
  min-height: 48px;
}
/*赤枠リンクボタン 別窓*/
.link__button--item[target="_blank"] .link__button--text {
  grid-template-columns: 1fr 1em;
  gap: 0 .75em;
}
.is-pc .link__button--item[target="_blank"] .link__button--text {
  padding: .5em 10px;
}
.link__button--item[target="_blank"] .link__button--text::after {
  content: "";
  background: url(../images/icon_blank_red.svg) var(--default-bg-setting-center-cover);
  width: 100%;
  height: 1.6em;
}
/*youtube*/
.youtube {
  padding-top: calc((9 / 16) * 100%); /*YouTubeアスペクト比*/
  background: no-repeat center center / 100%;
  position: relative;
  cursor: pointer;
}
.youtube__icon {
  width: 10%;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
}
.youtube__block, .youtube__iframe {
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}
/* MVエリア
-------------------------------------------------*/
.is-sp .headerArea {
  padding: min((15vw / 7.5), 15px) 0;
}
.is-pc .headerArea {
  padding: 10px 0;
}
.header-obi {
  display: flex;
  align-items: center;
}
.is-pc .header-obi {
  gap: 0 8px;
}
/* ロゴ
-------------------------------------------------*/
.is-sp .headerArea .logo {
  margin: auto;
}
.headerArea .logo__link {
  display: grid;
  align-items: end;
  font-family: var(--default-font-min);
  font-weight: bold;
  text-decoration: none;
}
.is-sp .headerArea .logo__link {
  justify-items: center;
  gap: .25em;
}
.is-pc .headerArea .logo__link {
  grid-template-columns: 205px auto;
  gap: 1em;
}
.is-sp .headerArea .logo__text {
  font-size: var(--default-font-size-sp);
}
.is-sp .headerArea .logo__image {
  width: min((307vw / 7.5), 307px);
}
/* 発地切替（SPの「portal__list」は「gnav__list」箇所にまとめて記述）
-------------------------------------------------*/
.is-pc .header-obi {
  display: flex;
  align-items: end;
  gap: 0 12px;
}
.portal__title {
  background: #b2b2b2;
  color: #fff;
  line-height: 1.2;
}
.is-sp .portal__title {
  width: var(--default-width-inner);
  margin: min((100vw / 7.5), 100px) auto min((40vw / 7.5), 40px);
  font-size: min((32vw / 7.5), 32px);
  text-align: center;
  padding: .5em 0 .6em;
}
.is-pc .portal__title {
  cursor: pointer;
  padding: .25em .75em .3em;
  display: grid;
  grid-template-columns: 1fr 0.5em;
  gap: .75em;
  align-items: center;
}
.is-pc .portal__title::after {
  content: "";
  background: var(--default-bg-arrow-white);
  width: 100%;
  height: 1.5em;
  transform: rotate(90deg);
  transition: transform .4s;
}
.is-pc .portal:hover .portal__title::after {
  transform: rotate(-90deg);
}
.is-pc .portal__list {
  display: none;
  position: absolute;
  z-index: 2;
  width: 100%;
  background: #fff;
  border: 1px solid #b2b2b2;
  padding: .6em .75em 1em;
}
.is-pc .portal:hover .portal__list {
  display: block;
}
.is-pc .portal__list--item:not(:first-child) {
  margin-top: 1em;
}
.portal__list--item.is-active .portal__list--link {
  color: var(--default-color-red);
}
.portal__list--link {
  text-decoration: none;
  text-underline-offset: .6em;
}
.is-pc .portal__list--item:not(.is-active) .portal__list--link:hover {
  text-decoration: underline;
}
/* グロナビ
-------------------------------------------------*/
.is-pc .gnav {
  font-family: var(--default-font-min);
  line-height: 1;
  margin-top: 10px;
}
.is-sp .portal__list, .gnav__list {
  display: grid;
}
/* SP*/
.is-sp .header-obi {
  position: relative;
}
.is-sp .gnav__content {
  display: none;
}
.is-sp .gnav__menu, .is-sp .gnav__title {
  cursor: pointer;
}
/* ┗ type「menu」※ハンバーガーメニュー*/
.is-sp .gnav.is-menu {
  position: absolute;
  top: 0;
  right: 0;
}
.is-sp .gnav.is-menu.is-open, .is-sp .gnav.is-menu:not(.is-open) .gnav__menu.is-fixed {
  position: fixed;
  z-index: 10;
}
.is-sp .gnav.is-menu.is-open {
  width: 100vw;
  height: 100vh;
  background: #fff;
}
.is-sp .gnav.is-menu.is-open .gnav__inner {
  padding: min((30vw / 7.5), 30px) 0 min((100vw / 7.5), 100px);
  overflow-y: auto;
  height: 100%;
}
/*.is-sp .gnav.is-menu.is-open .gnav__inner::before {
  content: "";
  width: min((307vw / 7.5), 307px);
  height: min((83vw / 7.5), 83px);
  background: url("../images/logo_sp.png") var(--default-bg-setting-center-cover);
  position: absolute;
  top: min((30vw / 7.5), 30px);
  left: 0;
  right: 0;
  margin: auto;
}*/
.is-sp .gnav__inner .logo {
  position: absolute;
  top: max((-145vw / 7.5), -145px);
  left: 0;
  margin: auto;
  right: 0;
}
.is-sp .gnav.is-menu .gnav__menu {
  background: rgba(212, 40, 40, .6); /*#e57e7e*/
  width: min((140vw / 7.5), 140px);
  height: min((80vw / 7.5), 80px);
  display: grid;
  align-content: center;
  justify-content: center;
  gap: min((15vw / 7.5), 15px);
  grid-auto-rows: 1px;
  grid-auto-columns: min((100vw / 7.5), 100px);
  margin-left: auto;
  transition: right .5s;
  z-index: 1;
}
.is-sp .main:not(.top) .gnav.is-menu:not(.is-open) .gnav__menu {
  right: max((-150vw / 7.5), -150px);
  opacity: 0;
}
.is-sp .main.top .gnav.is-menu .gnav__menu.is-fixed, .is-sp .main:not(.top) .gnav.is-menu .gnav__menu.is-fixed {
  right: 0;
  opacity: 1;
}
.is-sp .gnav.is-menu:not(.is-open) .gnav__menu.is-fixed {
  top: min((30vw / 7.5), 30px);
}
.is-sp .gnav.is-menu .gnav__menu--item {
  background: #fff;
}
.is-sp .gnav.is-menu.is-open .gnav__menu {
  gap: 0;
}
.is-sp .gnav.is-menu.is-open .gnav__menu--item.is-border-1 {
  transform: rotate(-25deg);
}
.is-sp .gnav.is-menu.is-open .gnav__menu--item.is-border-2 {
  opacity: 0;
}
.is-sp .gnav.is-menu.is-open .gnav__menu--item.is-border-3 {
  transform: rotate(25deg);
}
.is-sp .portal__list, .is-sp .gnav.is-menu .gnav__list {
  justify-content: center;
  gap: 1.5em;
  font-size: min((32vw / 7.5), 32px);
  text-align: center;
}
.is-sp .gnav.is-menu .gnav__list {
  margin-top: min((70vw / 7.5), 70px);
}
.is-sp .portal__list--item.is-active, .is-sp .gnav.is-menu .gnav__list--item.is-active {
  color: var(--default-color-red);
}
/* ┗ type「button」※アコーディオンメニュー*/
.is-sp .gnav.is-button {
  width: var(--default-width-sp);
  margin: min((30vw / 7.5), 30px) auto;
  background: var(--default-bg-main);
}
.is-sp .gnav.is-button .gnav__inner {
  background: rgba(0, 0, 0, .2);
}
.is-sp .gnav.is-button .gnav__title {
  color: #fff;
  text-align: center;
  font-size: min((28vw / 7.5), 28px);
  height: min((86vw / 7.5), 86px);
  padding: 0 min((25vw / 7.5), 25px);
  display: grid;
  grid-template-columns: 1fr 1em;
  align-items: center;
}
.is-sp .gnav.is-button .gnav__title::after {
  content: "";
  width: 1.5em;
  height: 1.5em;
  background: url(/cmn/icon/icon_add_white.svg) var(--default-bg-setting-center-cover);
}
.is-sp .gnav.is-button .gnav__title.is-open::after {
  background-image: url(/cmn/icon/icon_remove_white.svg);
}
.is-sp .gnav.is-button .gnav__content {
  padding: min((14vw / 7.5), 14px);
  padding-top: 0;
}
.is-sp .gnav.is-button .gnav__list {
  grid-template-columns: repeat(2, 1fr);
  gap: min((8vw / 7.5), 8px);
}
.is-sp .gnav.is-button .gnav__list--link {
  background: #fff;
  min-height: min((70vw / 7.5), 70px);
  font-size: min((22vw / 7.5), 22px);
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  padding: 0 1em;
}
.is-sp .gnav.is-button .gnav__list--item.is-active .gnav__list--link {
  background: var(--default-color-red);
  color: #fff;
}
.is-sp .gnav.is-button .gnav__list--link::after {
  content: "";
  width: .5em;
  height: 1.5em;
  background: url(/cmn/icon/icon_arrow_right_black.svg) var(--default-bg-setting-center-cover);
}
.is-sp .gnav.is-button .gnav__list--item.is-active .gnav__list--link::after {
  background-image: url(/cmn/icon/icon_arrow_right_white.svg);
}
/*PC*/
.is-pc .gnav__list {
  grid-auto-flow: column;
  grid-auto-columns: 1fr;
  align-content: center;
  gap: 3px;
  font-size: 12px;
  letter-spacing: -.5px;
  font-weight: bold;
  text-align: center;
}
.is-pc .gnav__list--item {
  background: var(--default-bg-main);
}
.gnav__list--link {
  display: grid;
  align-content: center;
  text-decoration: none;
}
.is-pc .gnav__list--link {
  height: 100%;
  min-height: 50px;
  justify-items: center;
  gap: .2em .4em;
  padding: .3em .3em .5em;
  border-top: 1px solid var(--default-color-red);
  --gnav-active-bg: rgba(0, 0, 0, .07);
  word-break: keep-all;
  grid-template-rows: 1fr auto;
  align-items: center;
}
.is-pc .gnav__list--item.is-active .gnav__list--link {
  background: var(--gnav-active-bg);
}
.is-pc .gnav__list--link::after {
  content: "";
  border-radius: 100%;
  border: 1px solid var(--default-color-red);
  background: var(--default-bg-arrow-red);
  width: 1.15em;
  height: 1.15em;
}
/* スライダー共通設定
-------------------------------------------------*/
.main .slick-dots {
  display: flex;
  gap: min((46vw / 7.5), 46px);
  justify-content: center;
  margin-top: min((58vw / 7.5), 58px);
}
.is-pc .main .slick-dots {
  gap: 20px;
  margin-top: 30px;
}
.main .slick-dots [id*="slick-slide-control"] {
  text-indent: -9999px;
  border: none;
  background: #cacaca;
  border-radius: 100%;
  width: min((20vw / 7.5), 20px);
  height: min((20vw / 7.5), 20px);
  display: block;
  padding: 0;
  cursor: pointer;
}
.is-pc .main .slick-dots [id*="slick-slide-control"] {
  width: 10px;
  height: 10px;
}
.main .slick-dots .slick-active [id*="slick-slide-control"] {
  background: var(--default-color-red);
}
/* igおすすめスポット
-------------------------------------------------*/
.ig__wrapper {
  width: min((712vw / 7.5), 712px);
  margin: auto;
}
.newzealand:not(.top) .ig__wrapper {
  width: min((712vw / 7.5), 800px);
}
.newzealand:not(.top) .ig__wrapper {
  margin-top: min((170vw / 7.5), 110px);
}
.newzealand:not(.top) .spotArea .ig__wrapper {
  margin-top: min((125vw / 7.5), 60px);
}
.ig__wrapper + .ig__wrapper {
  margin-top: min((100vw / 7.5), 60px);
}
.ig__wrapper.is-comingsoon {
  padding-top: min((94vw / 7.5), 66px);
  background: url("../images/icon_comingsoon.png") no-repeat min((35vw / 7.5), 74px) top / min((275vw / 7.5), 215px);
}
.ig {
  border: 1px solid var(--default-color-red);
  padding: 4px;
  background: #fff;
  text-align: left;
  position: relative;
}
.ig__wrapper .ig:not(:first-child) {
  margin-top: min((155vw / 7.5), 110px);
}
.ig__inner {
  border: 1px solid var(--default-color-red);
  background: #fff;
  padding-bottom: min((38vw / 7.5), 38px);
  position: relative;
  z-index: 1;
}
.is-pc .ig__inner {
  padding-bottom: 50px;
}
.newzealand.top .ig__inner {
  padding-bottom: 0;
}
.ig__title {
  display: grid;
  justify-content: center;
}
.ig__title--inner {
  display: grid;
  grid-template-columns: min((123vw / 7.5), 72px) auto;
  justify-content: center;
  align-items: center;
  gap: 0 min((12vw / 7.5), 10px);
  margin-top: max(((-56vw / 7.5) - 6px), -38px);
  padding: 0 min((18vw / 7.5), 12px);
  font-size: min((44vw / 7.5), 28px);
  line-height: calc(54 / 44);
}
.newzealand.top .ig__title--inner {
  grid-template-columns: auto;
  margin-top: calc(-.5em - 6px);
}
.ig__title--inner::before {
  content: "";
  width: 100%;
  margin: auto;
  background: #fff;
  height: min(((56vw / 7.5) + 7px), 39px);
  position: absolute;
  top: 0;
}
.newzealand.top .ig__title--inner::before {
  height: calc(.5em + 7px);
}
.spotArea .ig__title--inner::before {
  background: var(--default-bg-main);
}
.ig__title .base-title {
  font-size: inherit;
}
.ig__title--text, .ig__title--icon {
  position: relative;
  z-index: 1;
}
.ig__title--text {
  order: 1;
  margin: 0 !important;
}
.newzealand:not(.top) .ig__title--text .base-title__text--main {
  text-align: left;
}
.ig__title--text .base-title__text--main::first-letter {
  color: var(--default-color-red);
}
:root {
  --ig-photo-width-sp: min((620vw / 7.5), 668px);
  --ig-photo-width-pc: 310px;
}
.newzealand.top .ig__texts {
  padding: min((26vw / 7.5), 15px) min((28vw / 7.5), 15px) min((32vw / 7.5), 20px) min((32vw / 7.5), 20px);
}
.is-pc .newzealand.top .ig__texts {
  padding: 15px 15px 20px 20px;
}
.ig__texts {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.ig__texts--lead {
  width: min((450vw / 7.5), 435px);
  font-size: min(var(--default-font-size-sp), 15px);
}
.is-pc .ig__texts--lead {
  padding-top: 1em;
}
.ig__texts--lead em {
  color: var(--default-color-red);
}
.is-pc .ig__texts--lead em {
  display: inline-block;
}
.ig__texts--person {
  width: min((176vw / 7.5), 140px);
  text-align: center;
}
.ig__texts--person--link {
  line-height: 1;
  text-decoration: none;
  display: block;
}
.ig__texts--ig-link {
  display: grid;
  grid-auto-flow: column;
  align-items: center;
  gap: 0 .25em;
  justify-content: center;
  margin-top: -.25em;
}
.ig__texts--ig-link--text::first-letter {
  color: var(--default-color-red);
}
.ig__texts--ig-link::after {
  content: "";
  width: .5em;
  height: 1.5em;
  background: var(--default-bg-arrow-red);
}
.ig__texts--profile {
  width: 100%;
  margin-top: 1.5em;
}
.is-pc .ig__texts--profile {
  margin-top: 0;
}
.ig__texts--profile--name {
  font-size: min((36vw / 7.5), 18px);
  line-height: 1;
  margin-bottom: .25em;
}
.ig__texts--profile--detail {
  font-size: min((20vw / 7.5), 12px);
  line-height: calc(34 / 20);
}
.ig__detail {
  display: grid;
  gap: min((75vw / 7.5), 30px) min((30vw / 7.5), 30px);
  width: var(--ig-photo-width-sp);
  margin: auto;
  margin-top: min((13vw / 7.5), 13px);
  grid-template-columns: 100%;
}
.ig__detail.is-layout-movie {
  row-gap: 1em;
}
.ig__detail.is-layout-movie .ig__detail--images:has(.ig__detail--image:nth-child(2)) {
  display: grid;
  gap: min((20vw / 7.5), 13px);
  .is-pc & {
    grid-template-columns: repeat(2, 1fr);
  }
}
.is-pc .ig__detail {
  margin-top: 26px;
}
.is-pc .ig__detail:not(.is-layout-movie) {
  grid-template-columns: var(--ig-photo-width-pc) 1fr;
}
.is-sp .ig__detail + .ig__detail {
  margin-top: min((60vw / 7.5), 60px);
}
.is-pc .ig__detail + .ig__detail {
  margin-top: 35px;
}
/*.ig__detail--images .slick-track {
  display: grid;
  grid-auto-flow: column;
}*/
.ig__detail--image {
  /*float: none;*/
  display: grid;
  align-items: center;
  width: var(--ig-photo-width-pc);
}
.ig__detail--image {
  width: var(--ig-photo-width-sp);
}
.is-pc .ig__detail--image {
  width: var(--ig-photo-width-pc);
}
.ig__detail.is-layout-movie .ig__detail--image {
  width: 100%;
}
.is-pc .ig__detail--photo {
  height: 414px;
  width: 100%;
  /*height: 100%;*/
  object-fit: contain;
}
.ig__detail.is-layout-movie .ig__detail--photo {
  height: min((348vw / 7.5), 377px);
  object-fit: cover;
}
.ig__detail .slick-dots {
  margin-top: min((40vw / 7.5), 40px);
}
.is-pc .ig__detail .slick-dots {
  margin-top: 20px;
}
.ig__detail--link {
  display: inline-block;
  margin-top: 1.5em;
}
/* バナーエリア
-------------------------------------------------*/
.bannerArea {
  padding-bottom: min((80vw / 7.5), 80px)
}
.is-pc .bannerArea {
  padding-bottom: 55px;
}
.bannerArea .banner__wrapper {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: min((20vw / 7.5), 10px);
}
.bannerArea .banner__image {
  height: min((170vw / 7.5), 124px);
  .banner.is-big.is-kaede & {
    height: min((800vw / 7.5), 800px);
    .is-pc & {
    height: 270px;
    }
  }
}
/* 導入エリア
-------------------------------------------------*/
.introArea {
  text-align: center;
  padding: min((93vw / 7.5), 93px) 0 min((166vw / 7.5), 160px);
}
.is-pc .introArea {
  padding: 30px 0 90px;
}
#mainArea:has(.introArea + .bannerArea) .introArea {
  padding-bottom: min((80vw / 7.5), 80px)
}
.is-pc #mainArea:has(.introArea + .bannerArea) .introArea {
  padding-bottom: 55px;
}
.is-sp .introArea .intro__title {
  line-height: 1.2;
}
.introArea p:first-of-type {
  line-height: 1.8;
}
.is-sp .introArea .inner > p:first-of-type {
  width: var(--default-width-inner);
  margin: auto;
  text-align: left;
}
.introArea .imgBox {
  display: grid;
  text-align: left;
}
.is-sp .introArea .imgBox {
  width: var(--default-width-sp2);
  margin: min((86vw / 7.5), 86px) auto 0;
  gap: min((86vw / 7.5), 86px);
}
.is-pc .introArea .imgBox {
  margin-top: 40px;
  gap: 30px;
  grid-template-columns: repeat(3, 1fr);
}
.introArea .imgBox .colBox p img {
  width: 100%;
  object-fit: cover;
  aspect-ratio: 3 / 2;
}
.introArea .imgBox .colBox .ttl {
  margin: .5em 0 .25em;
  font-weight: bold;
}
.is-sp .introArea .imgBox .colBox .ttl {
  font-size: min((26vw / 7.5), 26px);
}
/* dstArea
-------------------------------------------------*/
.dstArea {
  background: var(--default-bg-main);
}
.is-sp .dstArea {
  padding: min((40vw / 7.5), 40px) 0 min((60vw / 7.5), 60px);
}
.is-pc .dstArea::before {
  content: "";
  width: 100%;
  height: 20px;
  background: #fff;
  position: absolute;
  top: 0;
}
.dstArea .gnav.is-button {
  margin-top: 0;
}
.is-pc .dst {
  padding: 20px 0 55px;
}
/*MAP*/
.dst__map {
  position: relative;
}
.is-sp .dst__map {
  width: calc(700vw / 7.5);
  margin: auto;
}
.is-pc .dst__map--image {
  margin-left: auto;
  display: block;
}
.dst__map--list {
  font-family: var(--default-font-min);
  font-weight: bold;
}
.dst__map--item {
  display: inline-block;
  position: absolute;
  box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, .13);
}
.is-pc .dst__map--item {
  box-shadow: 4px 4px 16px -7px rgba(0, 0, 0, .35);
}
.is-pc .dst__map--item.is-show {
  box-shadow: 1px 1px 0px 2px var(--default-color-red);
}
.dst__map--link {
  background: #fff;
  display: grid;
  grid-template-columns: 1fr .5em;
  gap: .5em;
  align-items: center;
  padding: 0 .5em;
  text-decoration: none;
  letter-spacing: -1.5px;
  text-align: center;
}
.dst__map--link::after {
  content: "";
  background: var(--default-bg-arrow-red);
  width: 100%;
  height: 1.5em;
}
.is-sp .dst__map--link::after {
  transform: rotate(90deg);
}
.is-sp .dst__map--link {
  font-size: min((16vw / 7.5), 16px);
  min-width: calc(138vw / 7.5);
}
.is-pc .dst__map--link {
  font-size: 13px;
  width: 130px;
}
/*MAP方面毎位置調整*/
/* ┗ SP */
.is-sp .dst__map--item.is-auckland {
  top: calc(119vw / 7.5);
  left: calc(197vw / 7.5);
}
.is-sp .dst__map--item.is-rotorua {
  top: calc(137vw / 7.5);
  left: calc(360vw / 7.5);
}
.is-sp .dst__map--item.is-waiheke {
  top: calc(64vw / 7.5);
  left: calc(322vw / 7.5);
}
.is-sp .dst__map--item.is-wellington {
  top: calc(286vw / 7.5);
  left: calc(302vw / 7.5);
}
.is-sp .dst__map--item.is-christchurch {
  top: calc(401vw / 7.5);
  left: calc(228vw / 7.5);
}
.is-sp .dst__map--item.is-mountcook {
  top: calc(385vw / 7.5);
  left: calc(36vw / 7.5);
}
.is-sp .dst__map--item.is-tekapo {
  top: calc(427vw / 7.5);
  left: calc(73vw / 7.5);
}
.is-sp .dst__map--item.is-wanaka {
  top: calc(473vw / 7.5);
  left: calc(48vw / 7.5);
}
.is-sp .dst__map--item.is-queenstown {
  top: calc(515vw / 7.5);
  left: calc(24vw / 7.5);
}
/* ┗ PC */
.is-pc .dst__map--item.is-auckland {
  top: 115px;
  right: 310px;
}
.is-pc .dst__map--item.is-rotorua {
  top: 130px;
  right: 164px;
}
.is-pc .dst__map--item.is-waiheke {
  top: 72px;
  right: 206px;
}
.is-pc .dst__map--item.is-wellington {
  top: 254px;
  right: 222px;
}
.is-pc .dst__map--item.is-christchurch {
  top: 350px;
  right: 274px;
}
.is-pc .dst__map--item.is-mountcook {
  top: 344px;
  right: 444px;
}
.is-pc .dst__map--item.is-tekapo {
  top: 378px;
  right: 413px;
}
.is-pc .dst__map--item.is-wanaka {
  top: 413px;
  right: 434px;
}
.is-pc .dst__map--item.is-queenstown {
  top: 445px;
  right: 454px;
}
/*グリッド*/
.is-sp .dst__list {
  width: var(--default-width-sp);
  margin: auto;
  display: grid;
  gap: min((20vw / 7.5), 20px);
  margin-top: min((40vw / 7.5), 40px);
}
.dst__list--inner {
  background: #fff;
  display: grid;
  text-decoration: none;
}
.is-sp .dst__list--inner {
  grid-template-areas:
    "img ttl ico"
    "img lead ico"
    "txt txt txt";
  grid-template-columns: min((270vw / 7.5), 270px) 1fr .5em;
  align-items: center;
  padding: min((20vw / 7.5), 20px);
  gap: 0 min((16vw / 7.5), 16px);
  box-shadow: 0px 0px min((8vw / 7.5), 8px) 0px rgba(0, 0, 0, .3);
}
.is-pc .dst__list--inner {
  width: 350px;
  position: absolute;
  top: 30px;
  left: 25px;
  grid-template-areas:
    "img"
    "ttl"
    "lead"
    "txt";
}
.is-sp .dst__list--inner::after {
  content: "";
  grid-area: ico;
  width: 100%;
  height: 1.5em;
  background: var(--default-bg-arrow-red);
}
.dst__list--title {
  grid-area: ttl;
  font-weight: bold;
}
.is-sp .dst__list--title {
  color: var(--default-color-red);
  font-size: min((32vw / 7.5), 32px);
  margin-top: auto;
}
.is-pc .dst__list--title {
  padding-top: 12px;
  font-size: 20px;
}
.dst__list--lead {
  grid-area: lead;
  font-weight: bold;
}
.is-sp .dst__list--lead {
  margin-bottom: auto;
}
.dst__list--text {
  grid-area: txt;
}
.is-sp .dst__list--text {
  font-size: min((20vw / 7.5), 20px);
  margin-top: 1em;
}
.is-pc .dst__list--text {
  padding-bottom: 20px;
  margin-top: .25em;
}
.dst__list--photo {
  grid-area: img;
}
.is-pc .dst__list--inner > [class*="dst__list--"]:not(.dst__list--photo) {
  padding-left: 20px;
  padding-right: 20px;
}
/* ひとあしのばしてスポットエリア
-------------------------------------------------*/
.spotArea {
  position: relative;
}
.spotArea .inner {
  background: var(--default-bg-main);
  padding: min((90vw / 7.5), 90px) 0 min((100vw / 7.5), 100px);
}
.is-pc .spotArea .inner {
  padding: 50px 0;
}
.spotArea:before {
  content: "";
  background: url("../images/icon_spot.png") no-repeat center center / contain;
  width: min((137vw / 7.5), 137px);
  height: min((154vw / 7.5), 154px);
  display: inline-block;
  position: absolute;
  top: max((-77vw / 7.5), -77px);
  left: 0;
  right: 0;
  margin: 0 auto;
  z-index: 1;
}
.is-pc .spotArea:before {
  width: 65px;
  height: 73px;
  top: -40px;
}
.is-pc .spotArea .spotBox {
  padding: 0 40px;
}
.is-sp .spotArea .spotBox ~ .spotBox {
  margin-top: min((100vw / 7.5), 100px);
}
.is-pc .spotArea .spotBox ~ .spotBox {
  border-top: 1px dashed #ccc;
  padding-top: 30px;
  margin-top: 30px;
}
/*スポット main sub 共通*/
.spotBox .box-main, .spotBox > [class*="sub"] {
  display: grid;
}
.spotBox-main__title, .spotBox-sub__title {
  grid-area: ttl;
  font-weight: bold;
}
.spotBox .text__wrapper {
  grid-area: txt;
}
.spotBox .main-image {
  grid-area: img1;
}
.spotBox .sub-image {
  grid-area: img2;
}
.is-sp .spotBox .sub-image {
  margin: auto;
}
/*スポット box-main*/
.spotArea .box-main {
  grid-template-areas:
    "ttl"
    "img1"
    "txt";
  gap: min((20vw / 7.5), 20px);
}
.is-pc .spotArea .box-main {
  grid-template-areas:
    "ttl img1"
    "txt img1";
  grid-template-columns: 504px 1fr;
  grid-template-rows: auto 1fr;
  gap: 20px 40px;
}
.spotArea .spotBox-main__title {
  display: grid;
  align-items: center;
  width: min((674vw / 7.5), 674px);
  height: min((55vw / 7.5), 55px);
  color: #fff;
  font-size: min((28vw / 7.5), 28px);
  line-height: 1;
  padding: 0 1em;
}
.is-sp .spotArea .spotBox-main__title {
  background: var(--default-bg-ribbon-red-sp);
  margin-bottom: min((15vw / 7.5), 15px);
}
.is-pc .spotArea .spotBox-main__title {
  background: var(--default-bg-ribbon-red-pc);
  width: 100%;
  height: 30px;
  font-size: 20px;
}
.spotArea .box-main .text__wrapper {
  line-height: 1.6;
}
.is-sp .spotArea .box-main .text__wrapper {
  width: var(--default-width-sp2);
  margin: auto;
}
.is-sp .spotArea .box-main .main-image {
  width: min((484vw / 7.5), 484px);
  margin: auto;
}
.is-sp .spotBox .main-image.is-vertical {
  width: min((248vw / 7.5), 248px);
}
.is-pc .spotBox .main-image.is-vertical {
  width: 50%;
}
/*スポット sub*/
.is-sp .spotBox .box-sub {
  width: var(--default-width-sp);
  margin: auto;
  grid-template-areas:
    "ttl ttl"
    "img1 txt"
    "img2 txt";
  grid-template-columns: min((300vw / 7.5), 300px) 1fr;
  gap: min((20vw / 7.5), 20px) min((16vw / 7.5), 16px);
  margin-top: min((80vw / 7.5), 80px);
}
.is-sp .spotBox .box-sub :nth-child(odd) {
  grid-template-areas:
    "ttl ttl"
    "txt img1"
    "txt img2";
  grid-template-columns: 1fr min((300vw / 7.5), 300px);
}
.is-pc .spotBox .box-sub {
  gap: 10px;
  grid-template-rows: auto 1fr;
  margin-top: 20px;
}
.is-pc .spotBox > .box-sub {
  grid-template-areas:
    "img1 ttl"
    "img1 txt";
  grid-template-columns: auto 1fr;
}
.is-pc .spotBox .box-sub.is-col-3 {
  grid-template-areas:
    "img1 ttl img2"
    "img1 txt img2";
  grid-template-columns: auto 1fr auto;
}
.is-sp .spotBox-sub__title {
  font-size: min((28vw / 7.5), 28px);
}
.is-pc .spotBox-sub__title {
  font-size: 15px;
  padding-bottom: 5px;
  background: var(--default-bg-border-gray-pc);
}
.is-pc .spotBox .box-sub .text__wrapper {
  font-size: 14px;
  line-height: 1.5;
}
/* OPツアーエリア
-------------------------------------------------*/
.is-sp .opArea {
  padding: min((80vw / 7.5), 80px) 0;
}
.is-pc .opArea {
  padding: 50px 0;
}
.opArea .op__title {
  margin-bottom: min((50vw / 7.5), 50px);
}
.opBox {
  background-color: #f1f1f1 !important;
  padding: min((40vw / 7.5), 40px) min((30vw / 7.5), 30px) min((30vw / 7.5), 30px);
}
.is-sp .opBox {
  background: var(--default-bg-border-red-sp);
  width: var(--default-width-sp);
  margin: auto;
}
.is-pc .opBox {
  background: var(--default-bg-border-red-pc);
  padding: 20px 40px;
  box-shadow: 2px 2px 6px 0px #b9b9b9;
}
.opBox ~ .opBox {
  margin-top: min((50vw / 7.5), 50px);
}
.is-pc .opArea .opBox ~ .opBox {
  margin-top: 15px;
}
/*OP main sub 共通*/
.opBox .box-main, .opBox .box-sub .colBox {
  display: grid;
}
.opBox-main__title, .opBox-sub__title, .opBox-sub2__title {
  grid-area: ttl;
  font-weight: bold;
}
.opBox .text__wrapper {
  grid-area: txt;
}
.opBox .main-image {
  grid-area: img1;
}
.is-sp .opBox-main__title, .is-sp .opBox-sub__title, .is-sp .opBox-sub2__title {
  font-size: min((28vw / 7.5), 28px);
}
.is-sp .opBox .box-main, .is-sp .opBox .box-sub .colBox {
  gap: min((20vw / 7.5), 20px) min((10vw / 7.5), 10px);
}
/*OP main*/
.opBox .box-main {
  display: grid;
}
.is-sp .opBox .box-main {
  grid-template-areas:
    "img1 ttl"
    "txt txt";
  grid-template-columns: min((270vw / 7.5), 270px) 1fr;
}
.is-pc .opBox .box-main {
  grid-template-areas:
    "img1 ttl"
    "img1 txt";
  grid-template-columns: 224px 1fr;
  grid-template-rows: auto 1fr;
  gap: 10px;
}
.is-pc .opBox-main__title {
  font-size: 20px;
  padding-bottom: 5px;
  background: var(--default-bg-dot);
}
.opBox .box-main .text__wrapper {
  line-height: 1.6;
}
/*OP sub*/
.opArea .box-sub {
  background: #fff;
}
.is-sp .opArea .box-sub {
  margin-top: min((45vw / 7.5), 45px);
  padding-bottom: min((30vw / 7.5), 30px);
  box-shadow: 0px min((4vw / 7.5), 4px) min((16vw / 7.5), 16px) max((-4vw / 7.5), -4px) rgba(0, 0, 0, .16);
}
.is-pc .opArea .box-sub {
  margin-top: 10px;
  padding-bottom: 15px;
  display: grid;
  grid-template-areas:
    "ttl ttl"
    "col1 col2";
  grid-template-columns: repeat(2, 1fr);
  gap: 15px;
}
.opBox-sub__title {
  background: #8a8b8a url(../images/bg_gray.png) repeat-x top center / min((880vw / 7.5), 880px);
  height: min((50vw / 7.5), 50px);
  text-align: center;
  color: #fff;
  line-height: min((50vw / 7.5), 50px);
  font-weight: normal;
}
.is-pc .opBox-sub__title {
  background-size: 880px;
  height: 23px;
  font-size: 16px;
  line-height: 23px;
}
.is-sp .opBox .box-sub .colBox {
  grid-template-areas:
    "ttl img1"
    "txt txt";
  grid-template-columns: 1fr min((270vw / 7.5), 270px);
  width: var(--default-width-sp2);
  margin: auto;
  margin-top: min((30vw / 7.5), 30px);
}
.is-sp .opBox .box-sub .colBox ~ .colBox {
  padding-top: min((40vw / 7.5), 40px);
  border-top: #9e9e9e dotted min((2vw / 7.5), 2px);
}
.is-pc .opBox .box-sub .colBox {
  grid-template-areas:
    "ttl img1"
    "txt img1";
  grid-template-columns: 1fr 177px;
  grid-template-rows: auto 1fr;
  gap: 0 10px;
}
.is-pc .opBox .box-sub .colBox:nth-child(even) {
  padding-left: 15px;
}
.is-pc .opBox .box-sub .colBox:nth-child(odd) {
  padding-right: 15px;
}
.is-pc .opBox .box-sub .colBox .opBox-sub2__title {
  font-size: 15px;
}
.is-pc .opBox .box-sub .colBox .text__wrapper {
  font-size: 13px;
  line-height: 1.3;
}
/* branchArea
-------------------------------------------------*/
.is-sp .branchArea {
  padding-bottom: min((100vw / 7.5), 100px);
}
.is-pc .branchArea {
  padding-bottom: 50px;
}
.is-pc .branchArea > .inner {
  display: grid;
  grid-template-areas:
    "branch branch"
    "sns blog";
  gap: 20px 10px;
  grid-template-columns: 480px 1fr;
}
.is-pc .branchArea .branch {
  grid-area: branch;
}
.is-sp .branchArea .sns {
  margin-top: min((100vw / 7.5), 100px);
}
.is-pc .branchArea .sns {
  grid-area: sns;
}
.branchArea .sns__list {
  display: grid;
  gap: min((20vw / 7.5), 20px);
}
.is-pc .branchArea .sns__list {
  gap: 10px;
}
.is-sp .branchArea .blog {
  background: #f1f1f1;
  padding: min((30vw / 7.5), 30px);
  padding-bottom: min((40vw / 7.5), 40px);
  position: relative;
}
.is-sp .branchArea .blog::before {
  content: "";
  display: block;
  width: calc(634vw / 7.5);
  height: 1px;
  margin: auto;
  border-top: 1px dotted #7d7d7d;
  /*background: var(--default-bg-dot-gray);*/
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}
.is-pc .branchArea .blog {
  grid-area: blog;
  background: var(--default-bg-main);
  padding: 20px;
}
.branch-sub__title {
  color: #008fd9;
  font-weight: bold;
  display: grid;
  justify-content: center;
  align-items: center;
  gap: 0 min((25vw / 7.5), 25px);
  grid-template-columns: min((120vw / 7.5), 120px) auto;
}
.is-pc .branch-sub__title {
  gap: 0 15px;
  grid-template-columns: 88px auto;
}
.branch-sub__title::before {
  content: "";
  width: 100%;
  height: min((64vw / 7.5), 64px);
  background: url("../images/logo_tabiblog.png") no-repeat left center / contain;
}
.is-sp .branch-sub__title::before {
  margin-bottom: .25em;
}
.is-pc .branch-sub__title::before {
  height: 47px;
}
.branch-sub__title .base-title__inner {
  display: grid;
}
.is-sp .branch-sub__title .base-title__inner {
  font-size: min((26vw / 7.5), 26px);
  line-height: 1.4;
}
.is-pc .branch-sub__title .base-title__text--main {
  font-size: 26px;
  line-height: 1;
}
.blog__lead {
  margin: 1em 0;
}
.is-pc .blog__lead {
  /*font-size: calc(16em / var(--default-font-size-pc-val));*/
  text-align: center;
}
.is-sp .blog__list--item:not(:first-child) .link__text {
  margin-top: 1.5em;
}
/* どの位置でも共通の支店情報枠設定 */
.is-sp .branch {
  width: var(--default-width-sp);
  margin: auto;
}
.branch__obi {
  background: #7d7d7d;
  color: #fff;
  text-align: center;
}
.is-pc .branch__obi {
  display: grid;
  grid-template-columns: 1fr auto;
  min-height: 40px;
  align-items: center;
}
.branch__title {
  margin-bottom: 0 !important;
}
.is-sp .branch__title {
  font-size: min((41vw / 7.5), 41px);
  line-height: calc(59 / 41);
  padding: .5em 0;
}
.is-pc .branch__title {
  font-size: 21px;
}
.is-sp .branch__title .base-title__inner {
  display: grid;
}
.is-sp .branch__title .base-title__text--sub {
  font-size: calc(35em / 41);
}
.is-pc .branch__title .base-title__text--sub {
  font-size: calc(16em / 21);
}
.branch__button {
  height: 100%;
  background: #fff;
}
.branch__button--link {
  min-width: 186px;
  font-size: 13px;
  padding: 0 1em;
  height: 100%;
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 0 .75em;
  background: var(--default-color-red);
  color: #fff;
  text-decoration: none;
  position: relative;
}
.branch__button--link::after {
  content: "";
  width: .5em;
  height: 1.5em;
  background: url(/cmn/icon/icon_arrow_right_white.svg) var(--default-bg-setting-center-cover);
}
.branch__detail {
  background: #fff;
  padding: 1em min((30vw / 7.5), 30px);
}
.is-pc .branch__detail {
  padding: 20px 30px;
}
.branchArea .branch__detail {
  background: #f1f1f1;
}
.is-sp .branch__lead {
  font-size: min((26vw / 7.5), 26px);
  margin-bottom: 1.25em;
}
.is-pc .branch__lead {
  margin-bottom: .75em;
}
.is-sp .branch__list {
  display: grid;
  gap: 1.25em 0;
}
.is-pc .branch__list {
  display: flex;
  flex-wrap: wrap;
  gap: .75em 1em;
}
.is-sp .branch__list--item {
  display: grid;
  grid-template-columns: 5.5em 1fr;
  gap: 0 1em;
  align-items: baseline;
}
.is-pc .branch__list--item {
  display: flex;
  align-items: baseline;
  gap: 0 .5em;
}
.branch__list--title {
  background: #7d7d7d;
  text-align: center;
  color: #fff;
  padding: 0 .75em .1em;
}
/* .tourArea
-------------------------------------------------*/
.is-sp .tourArea {
  background: var(--default-bg-border-red-sp), var(--default-bg-main);
  padding: min((68vw / 7.5), 68px) 0;
}
.is-pc .tourArea {
  background: var(--default-bg-border-red-pc), var(--default-bg-main);
  padding: 50px 0;
}
.spotArea + .tourArea {
  margin-top: min((120vw / 7.5), 60px);
}
.is-pc .main.top .tourArea > .inner {
  padding-bottom: 50px;
  background: url("../images/logo_PURE_NewZealand.png") no-repeat right bottom / 330px;
}
.tourArea:not(:has(.product)):not(:has(.link__button)) .tour__title {
  display: none;
}
:is(#product-senmon,#product-business):not(:has(.product__item)) {
  display: none;
}
.product ~ [id^=product-] {
  margin-top: min((120vw / 7.5), 80px);
}
/*商品カセット*/
.is-sp .product {
  margin-top: min((50vw / 7.5), 50px)
}
.product__item {
  background: #fff;
}
.is-sp .product__item {
  border-top: 1px solid #b5b5b5;
}
.is-sp .product__item:last-child {
  border-bottom: 1px solid #b5b5b5;
}
.is-pc .product__item {
  background: #fff;
  margin-bottom: 20px;
  box-shadow: 2px 2px 6px 0px #b9b9b9;
}
.product__item--link {
  text-decoration: none;
  display: grid;
  padding: min((20vw / 7.5), 20px);
  grid-template-columns: min((280vw / 7.5), 280px) 1fr;
  gap: min((20vw / 7.5), 20px);
}
.is-pc .product__item--link {
  grid-template-columns: 256px 1fr;
}
.product__item--image--photo {
  width: 100%;
  aspect-ratio: 280 / 187;
  object-fit: cover;
  background: #ccc;
}
.is-pc .product__item--image--photo {
  aspect-ratio: 256 / 170;
}
.is-sp .product__item[class*="brandT"] .product__item--image::before, .is-pc .product__item[class*="brandT"] .product__item--texts::before {
  content: "添乗員同行";
  background: #ac4bb0;
  color: #fff;
  padding: 1px 1em 3px;
  font-size: calc(12em / var(--default-font-size-pc-val));
  display: inline-block;
}
.is-sp .product__item[class*="brandT"] .product__item--image::before {
  width: 100%;
  text-align: center;
}
.is-pc .product__item[class*="brandT"] .product__item--texts::before {
  margin-bottom: .25em;
}
.is-sp .product__item--texts {
  line-height: 1.4;
}
.product__item--title {
  font-weight: bold;
  font-size: min((28vw / 7.5), 28px);
  margin-bottom: .75em;
}
.is-pc .product__item--title {
  font-size: 17px;
  padding-bottom: 10px;
  margin-bottom: 10px;
  background: var(--default-bg-dot);
}
.product__item--price {
  margin-top: 1em;
  color: #686767;
  font-size: min((20vw / 7.5), 20px);
}
.is-pc .product__item--price {
  margin-top: 20px;
  font-size: 12px;
  text-align: right;
  display: flex;
  flex-wrap: wrap;
  gap: 0 .5em;
  justify-content: flex-end;
  align-items: baseline;
}
.product__item--minmax {
  font-weight: bold;
  color: var(--default-color-red);
  font-size: min((28vw / 7.5), 28px);
}
.is-pc .product__item--minmax {
  font-size: 18px;
}
/*商品枠内の支店情報*/
.is-pc .tourArea .inner {
  display: grid; /*branch順番変更用*/
}
.is-pc .tourArea .branch {
  order: 5;
  margin-top: 50px;
}
.is-sp .tourArea .branch {
  margin-top: min((100vw / 7.5), 100px);
}
/*検索ボックス*/
.is-sp #searchApp {
  margin-top: min((100vw / 7.5), 100px);
}
.is-pc #searchApp {
  margin-top: 50px;
}
.is-sp .tour__title + #searchApp {
  margin-top: min((55vw / 7.5), 55px);
}
.is-pc .tour__title + #searchApp {
  margin-top: 25px;
}
@media (max-width: 740px) {
  #searchApp {
    border-top: 2px solid #b5b5b5;
  }
}
#searchApp .inner {
  width: auto;
}
/*------------------------------------------------*/
/*★ ＝＝ hover ＝＝ ★*/
@media (hover : hover) and (pointer : fine) {
  /*ヘッダーロゴ*/
  .is-pc .headerArea .logo__link[href]:hover {
    opacity: .6;
  }
  /*グロナビ*/
  .is-pc .gnav__list--item:not(.is-active) .gnav__list--link:hover {
    background: var(--gnav-active-bg);
  }
  /*テキストリンク*/
  .is-pc .link__text .link__text--item:hover {
    text-decoration: underline;
  }
  .is-pc .link__text.arrow03 .link__text--item:hover {
    text-decoration: none;
  }
  /*リンクボタン*/
  .is-pc .link__button--item:hover, .is-pc .link__button--item[target="_blank"]:hover {
    background: var(--default-color-red);
    color: #fff !important;
  }
  .is-pc .link__button--item[target="_blank"]:hover .link__button--text:after {
    background-image: url(/cmn/icon/icon_blank_white.svg);
  }
  /*バナー*/
  .is-pc [class*="banner"]:hover {
    opacity: .8;
  }
  .is-pc .bannerArea [class*="banner"]:not(.banner__link):hover {
    opacity: 1;
  }
  /*バナー*/
  .is-pc .ig__texts--person--link:hover {
    opacity: .8;
  }
  /*商品カセット*/
  .is-pc .product__item--link:hover {
    opacity: .8;
  }
  /*動画*/
  .youtube__icon--bg {
    transition: .2s;
  }
  .youtube:hover .youtube__icon--bg {
    fill: #000;
  }
  /*支店詳細導線*/
  .is-pc .branch__button--link:hover {
    opacity: .8;
  }
}