@charset "utf-8";
/* クルーズ全体　国内海外共通 */
/*@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,700,900&display=swap&subset=japanese');*/
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700;900&family=Noto+Serif+JP:wght@400;700;900&display=swap&subset=japanese');
/*リセット*/
h1, h2, h3, h4, h5, h6, p, ul {
  font-weight: inherit;
  font-size: 1em;
}
ol {
  margin: 0;
}
li {
  list-style: none;
}
img {
  max-width: 100%;
  height: auto;
  /*image-rendering: crisp-edges;
  image-rendering: -webkit-optimize-contrast;*/
}
.main {
  --default-fs-pc: 14;
  --default-width-pc: 992px;
  /*--default-width-inner: min(((710 / 750) * 100%), var(--default-width-pc));
  --default-width-max-minus: calc((-20 / 750) * 100%);*/
  --default-width-inner: min((710vw / 7.5), var(--default-width-pc));
  --default-width-max-minus: calc(-20vw / 7.5);
  --default-color-dom: #ae5557;
  --default-color-dom2: #8d0d0f;
  --default-color-int: #577792;
  --default-color-int2: #0f3a64;
  --default-color-gray: #888;
  --default-color-gray2: #b6b4af;
  --default-color-gray3: #f2f2f2;
  --default-color-green: #356b41;
  --default-color-darkgreen: #213645;
  --default-color-ocher: #ceb793;
  --default-color-price: #d20546;
  --default-color-link: #1976d2;
  --default-color-active: #fffad7;
  --default-color-label: #0f689c;
  --default-bg-main: #f6f3ec;
  --default-bg-mainBanner: #fff;
  --default-border-ocher: 1px solid var(--default-color-ocher);
  --default-transition-speed: .4s;
  --default-transition-opacity: opacity var(--default-transition-speed);
  --default-hover-opacity: .7;
  --default-norepeat-center-cover: no-repeat center center / cover;
  --default-icon-button: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2254%22%20height%3D%2254%22%20viewBox%3D%220%200%2054%2054%22%3E%20%3Cdefs%3E%20%3Cstyle%3E%20.cls-1%20%7B%20fill%3A%20%23ceb793%3B%20%7D%20%3C%2Fstyle%3E%20%3C%2Fdefs%3E%20%3Ctitle%3Eicon_arrow_right%3C%2Ftitle%3E%20%3Cg%20id%3D%22%E3%82%AA%E3%83%96%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88%22%3E%20%3Cpath%20class%3D%22cls-1%22%20d%3D%22M20.58579%2C14.27206h0a2%2C2%2C0%2C0%2C0%2C0%2C2.82842L30.48529%2C27l-9.89951%2C9.89951a2%2C2%2C0%2C0%2C0%2C0%2C2.82842h0a2%2C2%2C0%2C0%2C0%2C2.82842%2C0L34.72794%2C28.41421a2%2C2%2C0%2C0%2C0%2C0-2.82842L23.41421%2C14.27206A2%2C2%2C0%2C0%2C0%2C20.58579%2C14.27206Z%22%2F%3E%20%3C%2Fg%3E%3C%2Fsvg%3E') var(--default-norepeat-center-cover);
  --default-icon-link: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2254%22%20height%3D%2254%22%20viewBox%3D%220%200%2054%2054%22%3E%20%3Cdefs%3E%20%3Cstyle%3E%20.cls-1%20%7B%20fill%3A%20%231976d2%3B%20%7D%20%3C%2Fstyle%3E%20%3C%2Fdefs%3E%20%3Ctitle%3Eicon_arrow_right%3C%2Ftitle%3E%20%3Cg%20id%3D%22%E3%82%AA%E3%83%96%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88%22%3E%20%3Cpath%20class%3D%22cls-1%22%20d%3D%22M20.58579%2C14.27206h0a2%2C2%2C0%2C0%2C0%2C0%2C2.82842L30.48529%2C27l-9.89951%2C9.89951a2%2C2%2C0%2C0%2C0%2C0%2C2.82842h0a2%2C2%2C0%2C0%2C0%2C2.82842%2C0L34.72794%2C28.41421a2%2C2%2C0%2C0%2C0%2C0-2.82842L23.41421%2C14.27206A2%2C2%2C0%2C0%2C0%2C20.58579%2C14.27206Z%22%2F%3E%20%3C%2Fg%3E%3C%2Fsvg%3E') var(--default-norepeat-center-cover);
  --default-icon-right-white: url('/cmn/icon/icon_arrow_right_white.svg') var(--default-norepeat-center-cover);
  --default-icon-anchor: url("/cruise/kanto/assets/common/images/title_icon_anchor.png") var(--default-norepeat-center-cover);
}
.main *::before, .main *::after {
  box-sizing: border-box;
}
.main div:not([class])::after {
  content: none;
}
.main div:focus {
  outline: none;
}
.main a:not(.button--color-accent):not(.his-top__button) {
  text-decoration: none;
  color: inherit;
}
.main .btn > .linkText > a, .main .contactUs li a {
  color: #ffffff !important;
}
.breadcrumb__contents {
  overflow: hidden;
  background: #fff;
}
.is-size-pc .breadcrumb__contents {
  padding-bottom: 5px;
}
.js-anchor-button {
  cursor: pointer;
}
.is-inline-block {
  display: inline-block;
}
.goTop {
  display: none;
  width: min((118vw / 7.5), 118px);
}
.his-top__button {
  display: block;
  font-size: calc(26vw / 7.5);
  color: #fff;
  font-weight: bold;
  line-height: 1;
  text-decoration: none;
  padding: calc(30vw/ 7.5) calc(20vw/ 7.5);
  background: #0057B8 url("/cmn/icon/icon_arrow_right_white.svg") no-repeat right calc(10vw/ 7.5) center / calc(48vw/ 7.5);
}
/*ページスタイル設定*/
.main {
  font-family: "Noto Sans JP", "Yu Gothic", "YuGothic", sans-serif;
  color: #333;
  /*font-size: calc(24vw / 7.5);*/
  font-size: min((24vw / 7.5), 14px);
  line-height: calc(20 / 14);
  overflow: hidden;
  min-width: 320px;
  background: var(--default-bg-main);
}
.main .is-font-min {
  font-family: "Noto Serif JP", serif;
}
.gnavi__inner, .mv__inner, .section__inner {
  width: var(--default-width-inner);
  margin: auto;
}
.is-font-small {
  font-size: calc(18em / 24);
}
.is-color-red {
  color: red;
}
.is-text-center {
  text-align: center;
}
.is-text-right {
  text-align: right;
}
.is-text-left {
  text-align: left;
}
.is-indent-01 {
  text-indent: -1em;
  padding-left: 1em;
}
.is-indent-02 {
  text-indent: -2em;
  padding-left: 2em;
}
/*base-product-icon*/
.base-product-icon {
  font-size: calc(12em / var(--default-fs-pc));
  line-height: 1;
  color: #fff;
  background: var(--default-color-label);
  display: inline-block;
  padding: .3em .5em .4em;
}
/*base-button*/
.base-button__warapper {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: min((20vw / 7.5), 20px) min((50vw / 7.5), 50px);
}
.base-button {
  color: #fff;
}
.base-button__link {
  display: grid;
  grid-template-columns: auto 1fr;
  width: min((600vw / 7.5), 600px);
  border-radius: min((10vw / 7.5), 8px);
  gap: 0 1em;
  border: 2px solid;
  font-size: min((32vw / 7.5), 18px);
  padding: .5em min((30vw / 7.5), 30px);
  background: var(--default-color-darkgreen);
  border-color: var(--default-color-darkgreen);
}
.base-button__warapper .base-button__link {
  font-size: min((32vw / 7.5), 15px);
  width: min((600vw / 7.5), 345px);
}
.base-button[class*="kokunai"] .base-button__link {
  background: var(--default-color-dom2);
  border-color: var(--default-color-dom2);
}
.base-button[class*="kaigai"] .base-button__link {
  background: var(--default-color-int2);
  border-color: var(--default-color-int2);
}
.base-button__link::before {
  content: "";
  width: .75em;
  height: 1.5em;
  background: var(--default-icon-right-white);
}
.base-button__link[href^="#"]::before {
  transform: rotate(90deg);
}
.base-button__text {
  text-align: center;
  text-indent: -1em; /*gap分*/
}
/*base-small-button*/
.base-small-button__list, .base-small-button__wrapper {
  display: flex;
  flex-wrap: wrap;
}
.base-small-button__list {
  gap: .8em;
}
.base-small-button__wrapper {
  margin-top: -.8em;
}
.base-small-button__wrapper .base-small-button {
  margin-right: .8em;
  margin-top: .8em;
}
.base-small-button__link {
  padding: .5em .25em;
  min-height: calc(60em / 24);
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: bold;
  background: #fff;
  border-radius: min((8vw / 7.5), 8px);
  border: 1px solid var(--default-color-ocher);
  padding-left: 1em;
}
.is-size-pc .base-small-button__link:hover {
  background: var(--default-color-active);
}
.base-small-button__link::after {
  content: "";
  width: 2em;
  height: 1em;
  background: var(--default-icon-button);
}
.base-small-button__link::after {
  margin-left: .25em;
}
.base-small-button__link[href^="#"]::after {
  transform: rotate(90deg);
}
.base-small-button__text {
  flex: 1;
  display: flex;
  align-items: center;
  text-align: center;
  line-height: 1.2;
  letter-spacing: 0;
}
/*base-button-link*/
.base-button-link__item {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: min((90vw / (750 /100)), 46px);
  width: min(100%, 280px);
  padding: .5em;
  margin: auto;
  border: 1px solid;
  border-radius: 6px;
  color: #555 !important;
  font-size: min((28vw / (750 /100)), 20px);
  font-weight: bold;
  transition: background .3s;
}
.base-button-link:not(.is-type-tel) .base-button-link__link::after {
  content: "";
  width: 1em;
  height: 1.5em;
  background: url('/cmn/icon/icon_arrow_right.svg') var(--default-norepeat-center-cover);
}
.base-button-link:not(.is-type-tel) .base-button-link__link[href^="#"]::after {
  transform: rotate(90deg);
}
.base-button-link:not(.is-type-tel) .base-button-link__link[target="_blank"]::after {
  background-image: url("/cmn/icon/icon_blank.svg");
}
.base-button-link:not(.is-type-tel) .base-button-link__text {
  flex: 1;
  padding: 0 .5em 0 1.5em;
}
.base-button-link.is-type-tel .base-button-link__item {
  color: #004bb0 !important;
  font-size: min((40vw / (750 /100)), 20px);
}
.base-button-link.is-type-tel .base-button-link__item::before {
  content: "";
  width: 1em;
  height: 1.5em;
  margin-right: .5em;
  background: var(--default-norepeat-center-cover);
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2254%22%20height%3D%2254%22%20viewBox%3D%220%200%2054%2054%22%3E%20%3Cdefs%3E%20%3Cstyle%3E%20.cls-1%20%7B%20fill%3A%20%23004bb0%3B%20%7D%20%3C%2Fstyle%3E%20%3C%2Fdefs%3E%20%3Ctitle%3Eicon_smartphone%3C%2Ftitle%3E%20%3Cg%20id%3D%22%E3%82%AA%E3%83%96%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88%22%3E%20%3Cpath%20class%3D%22cls-1%22%20d%3D%22M36.375%2C4H17.625A5.625%2C5.625%2C0%2C0%2C0%2C12%2C9.625v34.75A5.625%2C5.625%2C0%2C0%2C0%2C17.625%2C50h18.75A5.625%2C5.625%2C0%2C0%2C0%2C42%2C44.375V9.625A5.625%2C5.625%2C0%2C0%2C0%2C36.375%2C4ZM27%2C48a3%2C3%2C0%2C1%2C1%2C3-3A2.996%2C2.996%2C0%2C0%2C1%2C27%2C48Zm11-8H16V8H38Z%22%2F%3E%20%3C%2Fg%3E%3C%2Fsvg%3E');
}
.main a.base-text-link {
  color: var(--default-color-link) !important;
  text-decoration: underline !important;
}
.main.is-device-pc a.base-text-link:hover, .main.is-device-pc a.base-text-link:hover {
  text-decoration: none !important;
}
.base-text-link::after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  width: 1.8em;
  height: 1em;
  background: var(--default-icon-link);
  transform: translateY(-1px);
}
.base-text-link[href^="#"]::after {
  transform: translateY(-1px) rotate(90deg);
}
.base-text-link[target="_blank"]::after {
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2254%22%20height%3D%2254%22%20viewBox%3D%220%200%2054%2054%22%3E%3Cstyle%20type%3D%22text%2Fcss%22%3E%20.st0%7Bfill%3A%231976d2%3B%7D%3C%2Fstyle%3E%3Ctitle%3Eicon_blank%3C%2Ftitle%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M36.3%2C36.3H17.7V17.7H27v-2.7h-9.3c-1.5%2C0-2.7%2C1.2-2.7%2C2.7v18.6c0%2C1.5%2C1.2%2C2.7%2C2.7%2C2.7h18.6%20c1.5%2C0%2C2.7-1.2%2C2.7-2.7V27h-2.7L36.3%2C36.3L36.3%2C36.3z%20M29.7%2C15.1v2.7h4.8l-13%2C13l1.9%2C1.9l13-13v4.8H39v-9.4H29.7z%22%2F%3E%3C%2Fsvg%3E')
}
.main .js-accordion-button {
  cursor: pointer;
}
.main .js-accordion-content {
  display: none;
}
/*★ ＝＝ mainBanner ＝＝ ★*/
#mainBanner {
  background: var(--default-bg-mainBanner);
  padding: min((30vw / 7.5), 50px) 0;
}
#mainBanner.is-type-fair {
  background: repeat 0 0;
}
/*↓【フェア時都度調整】↓*/
#mainBanner.is-type-fair.is-fair-saimatsu, #mainBanner.is-type-fair.is-fair-saimatsu + #mainSection::before {
  background: #f6e9cd url("/fair/saimatsu/assets/common/images/main_bg_pattern.png") bottom center / 150px;
}
#mainBanner.is-type-fair.is-fair-saimatsu + #mainSection::before {
  background-position: top center;
}
#mainBanner.is-type-fair.is-fair-hatsuyume, #mainBanner.is-type-fair.is-fair-hatsuyume + #mainSection::before {
  background: #fff url("/fair/hatsuyume/assets/common/images/sp/main_bg.png") bottom center / 100%;
}
.is-size-pc #mainBanner.is-type-fair.is-fair-hatsuyume, .is-size-pc #mainBanner.is-type-fair.is-fair-hatsuyume + #mainSection::before {
  background-image: url("/fair/hatsuyume/assets/common/images/pc/main_bg.png");
  background-size: 2700px;
}
.is-size-pc #mainBanner.is-type-fair.is-fair-hatsuyume + #mainSection::before {
  background-position: top center;
}
#mainBanner.is-type-fair.is-fair-saimatsu .top-banner__dots button {
  background: #fff;
}
#mainBanner.is-type-fair:is(.is-fair-saimatsu, .is-fair-hatsuyume) .top-banner__dots .slick-active button {
  background: #e61203;
}
.is-device-pc #mainBanner.is-type-fair:is(.is-fair-saimatsu, .is-fair-hatsuyume) .top-banner__button:hover {
  background-color: rgba(230, 18, 3, .5);
}
/*↑【フェア時都度調整】↑*/
/*top-banner*/
/*フェア時表示*/
.top-banner__fair {
  display: grid;
  grid-template-areas:
    "title"
    "logo"
    "text";
  width: var(--default-width-inner);
  margin: 0 auto min((40vw / 7.5), 25px);
  justify-content: center;
  align-items: center;
}
.is-size-sp .top-banner__fair {
  justify-items: center;
}
.is-size-pc .top-banner__fair {
  grid-template-columns: 340px auto;
  gap: min((5vw / 7.5), 5px) min((38vw / 7.5), 38px);
  grid-template-areas:
    "logo title"
    "logo text";
  min-height: 95px;
}
.top-banner__fair--name {
  grid-area: logo;
}
.is-size-sp .top-banner__fair--name {
  width: min((600vw / 7.5), 600px);
  margin: min((20vw / 7.5), 20px) 0;
}
.top-banner__fair--title {
  grid-area: title;
  font-weight: bold;
  font-size: min((30vw / 7.5), 30px);
  line-height: 1;
}
.is-size-sp .top-banner__fair--title {
  display: grid;
  gap: 0 .5em;
  grid-template-columns: 1em auto 1em;
  justify-items: center;
}
.is-size-sp .top-banner__fair--title::before, .is-size-sp .top-banner__fair--title::after {
  content: "";
  background: #000;
  height: 1em;
  width: 2px;
}
.is-size-sp .top-banner__fair--title::before {
  transform: rotate(-45deg);
  margin-right: 0.3em;
}
.is-size-sp .top-banner__fair--title::after {
  transform: rotate(45deg);
}
.top-banner__fair--text {
  grid-area: text;
  margin-bottom: auto;
}
.top-banner__fair--label {
  border: 1px solid;
  font-size: min((20vw / 7.5), 14px);
  padding: .15em 1.5em .25em;
  margin-right: 1em;
}
.top-banner__fair--date {
  font-size: min((22vw / 7.5), 15px);
}
.top-banner__fair--logo {
  image-rendering: auto;
}
/**/
.top-banner .section__inner {
  width: min(100%, var(--default-width-pc));
}
.top-banner .slick-list {
  position: relative;
}
.top-banner .slick-track {
  display: flex;
  justify-content: center;
}
.top-banner .slick-list:only-child .slick-track {
  width: 100% !important;
  transform: translate3d(0, 0, 0) !important;
}
.top-banner .slick-slide {
  float: none;
  height: auto;
}
.top-banner .slick-slide > div:not([class]) {
  line-height: 0;
}
.top-banner__item {
  width: min((660vw / 7.5), calc((var(--default-width-pc) / 2) - 20px)) !important;
  margin: 0 min((10vw / 7.5), 10px);
}
.top-banner__list {
  position: relative;
}
.top-banner__list:not([class*="slick"]) {
  display: flex;
  justify-content: center;
}
.top-banner__button {
  position: absolute;
  top: 0;
  bottom: 25px;
  margin: auto;
  width: 60px;
  height: 60px;
  border-radius: 100%;
  background: rgba(0, 0, 0, .35) var(--default-icon-right-white);
  background-position: 2px center;
  z-index: 1;
  cursor: pointer;
}
.is-device-pc .top-banner__button:hover {
  background-color: rgba(1, 141, 172, .5);
}
.top-banner__button.is-button-prev {
  left: -19px;
  transform: rotate(-180deg);
}
.top-banner__button.is-button-next {
  right: -19px;
}
.top-banner__dots {
  display: flex;
  justify-content: center;
  margin-top: min((20vw / 7.5), 13px);
}
.top-banner__dots button {
  background: #888;
  outline: 0;
  border: none;
  font-size: 0;
  width: 12px;
  height: 12px;
  cursor: pointer;
  display: block;
  border-radius: 100%;
  margin: 0 4px;
}
.top-banner__dots .slick-active button {
  background: #018baa;
}
.is-size-pc .top-banner__dots button {
  background: #e5e5e5;
}
.is-size-pc .top-banner__dots .slick-active button {
  background: #85d3e0;
}
/*★ ＝＝ mv ＝＝ ★*/
.mv {
  background: #fff var(--default-norepeat-center-cover);
}
.mv__inner {
  height: min((404vw / 7.5), 400px);
  display: flex;
  justify-content: center;
  align-items: center;
}
.mv__logo {
  width: min((432vw / 7.5), 432px);
}
/*★ ＝＝ naviApp ＝＝ ★*/
.gnavi {
  position: relative;
  z-index: 650;
  transition: top .4s;
}
.is-fixed-pre .gnavi, .is-fixed-pre .gnavi__button {
  position: fixed;
}
.gnavi__inner {
  display: flex;
  justify-content: center;
}
.gnavi__obi {
  display: flex;
  justify-content: center;
  align-items: center;
}
.gnavi__logo {
  width: calc(190vw / 7.5);
  height: calc(50vw / 7.5);
  background: url("../images/gnavi_logo_sp.png") no-repeat 0 0 / contain;
}
.gnavi__list--main--item, .gnavi__list--main--link, .gnavi__list--sub--link, .is-size-sp .gnavi__area--title, .is-size-sp .gnavi__area--link {
  display: flex;
  align-items: center;
}
.is-size-sp .gnavi__area--title {
  justify-content: center;
}
.gnavi__list--main--link::before, .gnavi__list--sub--link::before, .is-size-sp .gnavi__area--link::before {
  content: "";
  width: calc(11vw / 7.5);
  height: calc(15vw / 7.5);
  background: url("../images/gnavi_arrow_red.png") no-repeat 0 0 / contain;
  margin-right: calc(26vw / 7.5);
}
.gnavi__list--sub--link, .is-size-sp .gnavi__area--link {
  line-height: 1.2;
}
/*★ ＝＝ footerApp ＝＝ ★*/
#footerApp > .section:not(:first-child) {
  margin-top: min((80vw / 7.5), 60px);
}
#footerApp > .section:not(:last-child):not(.other-area-page) {
  margin-bottom: min((80vw / 7.5), 60px);
}
/*★ ＝＝ footerApp -- contact ＝＝ ★*/
.contact__detail {
  padding: min((48vw / 7.5), 24px) min((75vw / 7.5), 20px) min((80vw / 7.5), 24px);
  text-align: center;
}
.contact__detail--title:not(.base-button-link) {
  font-size: min((30vw / 7.5), 20px);
  margin-bottom: 1em;
}
.contact__detail--title:not(:first-of-type) {
  margin-top: min((50vw / 7.5), 40px);
}
.contact__detail--text:not(:first-child) {
  margin-top: 1em;
}
/*★ ＝＝ footerApp -- rec-banner ＝＝ ★*/
.reco-banner {
  background: #e1d2ba;
}
.reco-banner__list {
  width: min(100%, 992px);
  display: grid;
  justify-content: center;
}
/* == ↓ w750px以下のみ / is-size-spのみ ↓ ======================*/
@media screen and (max-width:750px) {
  /*★ ＝＝ naviApp ＝＝ ★*/
  /*↓ナビオープン時の背景コンテンツ↓*/
  .is-navi-open {
    position: relative;
  }
  .is-navi-open::before {
    content: "";
    position: fixed;
    width: 100%;
    height: 100%;
    background: rgba(33, 54, 69, .7);
    z-index: 590;
  }
  .is-navi-open .breadcrumb__contents, .is-navi-open #header {
    position: relative;
    z-index: 600;
    background: #fff;
  }
  /*↑ナビオープン時の背景コンテンツ↑*/
  #naviApp.is-fixed-pre {
    height: calc(90vw / 7.5); /*追従時ズレ防止*/
  }
  .gnavi {
    width: 100%;
    background: var(--default-color-darkgreen);
  }
  .is-fixed-pre .gnavi {
    top: 0;
  }
  .gnavi__button {
    position: absolute;
    top: calc(5vw / 7.5);
    right: calc(5vw / 7.5);
    width: calc(80vw / 7.5);
    height: calc(80vw / 7.5);
    background: url("../images/gnavi_menu.png") no-repeat center center / calc(41vw / 7.5);
    background-color: var(--default-color-darkgreen);
    z-index: 650;
  }
  .is-open .gnavi__button {
    background-image: url("../images/gnavi_menu_close.png");
    background-size: calc(35vw / 7.5);
    position: absolute;
  }
  .is-open .gnavi__button.js-sp-open-button {
    display: none;
  }
  .gnavi__button, .gnavi__close {
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .gnavi__close {
    background: #e2e5e7;
    font-weight: bold;
  }
  .js-sp-open-contents {
    display: none;
    position: absolute;
    overflow-y: auto;
    max-height: 100vh;
  }
  .gnavi__inner {
    width: 100%;
    flex-wrap: wrap;
  }
  .gnavi__obi {
    height: calc(90vw / 7.5);
    background: var(--default-color-darkgreen);
  }
  .is-open .gnavi__inner > .gnavi__obi, .is-fixed-pre .gnavi__inner > .gnavi__obi {
    display: none;
  }
  .gnavi__close, .gnavi__list, .gnavi__area {
    width: 100%;
    font-size: calc(28vw / 7.5);
  }
  .gnavi__list, .gnavi__area {
    background: #fff;
  }
  .gnavi__list--item:not(:first-child) {
    margin-top: calc(2vw / 7.5);
  }
  .gnavi__list--main--item, .gnavi__list--main--link {
    width: 100%;
  }
  .gnavi__close, .gnavi__list--main--link, .gnavi__list--sub--link, .gnavi__area--title, .gnavi__area--link {
    height: calc(80vw / 7.5);
    padding: .25em calc(26vw / 7.5);
  }
  .gnavi__list--main--link {
    background: #436074;
    color: #fff !important;
    font-weight: bold;
  }
  .gnavi__list--item.is-dom .gnavi__list--main--link {
    background: #8c0d0f;
  }
  .gnavi__list--item.is-int .gnavi__list--main--link {
    background: #103d64;
  }
  .gnavi__list--main--link::before {
    background-image: url("../images/gnavi_arrow_white.png");
  }
  .gnavi__list--main--text.is-image {
    display: none;
  }
  .gnavi__list--sub {
    display: flex;
    flex-wrap: wrap;
  }
  .gnavi__list--sub--item {
    width: 50%;
    position: relative;
  }
  .gnavi__list--sub--item:not(:first-child):nth-child(odd)::before {
    content: "";
    display: block;
    width: calc(200% - (16vw / 7.5));
    height: 1px;
    border-top: 1px dotted #6a6a6a;
    position: absolute;
    top: -.5px;
    left: calc(8vw / 7.5);
  }
  .gnavi__area {
    padding: calc(40vw / 7.5);
  }
  .gnavi__area--title {
    background: var(--default-color-darkgreen);
    color: #fff;
  }
  .gnavi__area--list {
    border: calc(4vw / 7.5) solid var(--default-color-darkgreen);
    border-top: none;
    display: grid;
    grid-template-columns: 50% 50%;
  }
  .gnavi__area--item:not(:first-child):nth-child(odd)::before {
    content: "";
    width: calc(200% - 4px);
    height: 1px;
    border-top: 1px dotted #6a6a6a;
    display: block;
    margin-left: 2px;
  }
  .gnavi__area--item.is-active .gnavi__area--link {
    background: var(--default-color-active);
  }
  /*★ ＝＝ footerApp -- list-section ＝＝ ★*/
  .list-section + .list-section, .reco-banner + .list-section {
    margin-top: 0 !important;
  }
  .list-section__inner {
    width: 100% !important;
    background: #fff;
  }
  .list-section__title {
    background: var(--default-color-darkgreen);
    color: #fff;
    font-weight: bold;
    font-size: min((32vw / 7.5), 20px);
    line-height: 1;
    text-align: center;
    padding: .8em 1em .9em;
  }
  /*★ ＝＝ footerApp -- other-area-page ＝＝ ★*/
  .other-area-page__list {
    display: flex;
    flex-wrap: wrap;
  }
  .other-area-page__item {
    width: 50%;
    border-bottom: 1px solid #ddd;
    font-size: min((28vw / 7.5), 18px);
  }
  .other-area-page__item:nth-child(odd) {
    border-right: 1px solid #ddd;
  }
  .other-area-page__link {
    display: flex;
    align-items: center;
    width: 100%;
    height: 100%;
    min-height: calc(75vw / 7.5);
    padding: .2em .8em .4em;
  }
  /*★ ＝＝ footerApp -- rec-banner ＝＝ ★*/
  .reco-banner {
    padding: min((50vw / 7.5), 30px);
  }
  .reco-banner__list {
    grid-template-columns: repeat(2, 1fr);
    gap: calc(38vw / 7.5);
  }
  /*★ ＝＝ footerApp -- cruise-banner ＝＝ ★*/
  .cruise-banner__item {
    text-align: center;
  }
  .cruise-banner__item:not(:first-child) {
    margin-top: calc(22vw / 7.5);
  }
}
/* == ↓ w750px以上のみ / is-size-pcのみ ↓ ======================*/
@media screen and (min-width:751px) {
  .main {
    font-size: 14px;
    letter-spacing: .5px;
  }
  .his-top__button {
    display: none;
  }
  /*★ ＝＝ naviApp ＝＝ ★*/
  #naviApp {
    border-top: 2px solid var(--default-color-darkgreen);
    height: 52px; /*追従時ズレ防止*/
  }
  .gnavi {
    width: 100%;
    background: #fff;
    padding: 6px 0 7px;
  }
  .is-fixed-pre .gnavi {
    top: -100px;
  }
  .is-fixed-pre.is-fixed .gnavi {
    top: 0;
  }
  .is-fixed-pre.is-fixed .gnavi {
    box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, .7);
  }
  .js-sp-fix-open-contents, .js-sp-open-contents {
    display: block !important;
  }
  .gnavi__button, .gnavi__close, .js-sp-open-contents .gnavi__obi {
    display: none;
  }
  .gnavi__obi {
    margin-right: 28px;
  }
  .gnavi__logo {
    width: 134px;
    background-image: url("../images/gnavi_logo_pc.png");
  }
  .gnavi__logo, .gnavi__list--main--item {
    height: 37px;
  }
  .gnavi__contents {
    display: grid !important;
    gap: 0 15px;
    align-items: center;
    grid-template-columns: 154px 1fr;
    grid-template-areas: "area list";
  }
  .gnavi__area {
    grid-area: area;
    cursor: pointer;
    position: relative;
  }
  .gnavi__area--active {
    background: #000;
    color: #fff;
    font-size: 12px;
    line-height: 1.2;
    padding: 1px .5em;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  .gnavi__area--active::after {
    content: "";
    width: 1em;
    height: 2em;
    background: var(--default-icon-right-white);
    transform: rotate(90deg);
  }
  .gnavi__area--active--name {
    font-size: calc(14em / 12);
  }
  .gnavi__area--list {
    display: none;
    position: absolute;
    width: 100%;
    background: #fff;
    border: 1px solid;
  }
  .gnavi__area:hover .gnavi__area--list {
    display: block;
  }
  .gnavi__area--link {
    display: flex;
    align-items: center;
    padding: .4em .5em .5em;
    line-height: 1;
  }
  .gnavi__area--item.is-active .gnavi__area--link, .gnavi__area--link:hover {
    background: #f7f0f4;
  }
  .gnavi__area--link::before {
    content: "＞";
    color: #8a2e5d;
    margin-right: 0.25em;
  }
  .gnavi__list {
    display: flex;
    grid-area: list;
  }
  .gnavi__list--main--link {
    height: 20px;
    padding: 0 28px;
    border-right: 1px dotted #000;
  }
  .gnavi__list--item.is-active .gnavi__list--main--link, .gnavi__list--main--link:hover, .gnavi__list--sub--link:hover {
    background: #f7f0f4;
  }
  .gnavi__list--item:first-child .gnavi__list--main--link {
    border-left: 1px dotted #000;
  }
  .gnavi__list--main--text.is-text {
    display: none;
  }
  .gnavi__list--item {
    position: relative;
  }
  .gnavi__list--main--link::before {
    /*transform: rotate(90deg); アンカーっぽいので無になりました */
    margin-right: 14px;
  }
  .gnavi__list--sub--link::before {
    margin-right: 17px;
  }
  .gnavi__list--main--link::before, .gnavi__list--sub--link::before {
    width: 7px;
    height: 10px;
  }
  .gnavi__list--sub {
    display: none;
    position: absolute;
    width: 100%;
    background: #fff;
    padding-bottom: 3.5px;
  }
  .gnavi__list--item:hover .gnavi__list--sub {
    display: block;
  }
  .gnavi__list--sub--link {
    font-size: 12px;
    padding: 9px 28px;
  }
  /*★ ＝＝ footerApp -- contact ＝＝ ★*/
  #contactArea:first-child {
    margin-top: min((80vw / 7.5), 60px);
  }
  .contact__inner {
    background: #fff;
    border: 1px solid #ccc;
  }
  .contact__title {
    text-align: center;
    padding-top: 20px;
    font-size: 24px;
    font-weight: bold;
    color: #1b3c55;
  }
  /*★ ＝＝ footerApp -- other-area-page ＝＝ ★*/
  .other-area-page {
    background-color: var(--default-color-darkgreen);
    padding: 15px 0;
    font-size: 15px;
  }
  .other-area-page__inner {
    display: flex;
    align-items: center;
  }
  .other-area-page__title {
    width: 253px;
    background: #fff;
    line-height: 1;
    font-weight: bold;
    text-align: center;
    padding: .5em 0;
    position: relative;
  }
  .other-area-page__title::after {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 5px 0 5px 12px;
    border-color: transparent transparent transparent #fff;
    position: absolute;
    top: 0;
    bottom: 0;
    right: -10px;
    margin: auto;
  }
  .other-area-page__list {
    flex: 1;
    display: flex;
    flex-wrap: wrap;
    margin-left: 10px;
    margin-top: -.5em;
  }
  .other-area-page__item {
    margin-top: .5em;
  }
  .other-area-page__link {
    color: #fff !important;
    text-decoration: none;
    padding: 0 15px;
    margin: 0 5px;
  }
  .other-area-page__item:not(:last-child) .other-area-page__link {
    border-right: 1px solid #fff;
  }
  .is-device-pc .other-area-page__link:hover {
    opacity: .7;
  }
  /*★ ＝＝ footerApp -- rec-banner ＝＝ ★*/
  .reco-banner {
    padding: min((20vw / 7.5), 25px);
  }
  .reco-banner__list {
    grid-template-columns: repeat(4, 1fr);
    gap: 0 calc((35 / 992) *100%);
  }
  .reco-banner__item {
    background: #fff;
  }
  .reco-banner__link {
    transition: opacity .3s;
  }
  .is-device-pc .reco-banner__link:hover {
    opacity: .7;
  }
  /*★ ＝＝ footerApp -- cruise-banner ＝＝ ★*/
  .cruise-banner__list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .cruise-banner__list.is-justify-center {
    justify-content: center;
  }
  .is-size-pc .cruise-banner__item {
    background: #fff;
  }
  .is-device-pc .cruise-banner__link {
    transition: opacity .3s;
  }
  .is-device-pc .cruise-banner__link:hover {
    opacity: .7;
  }
  .cruise-banner__list:not(.is-justify-center) .cruise-banner__item {
    width: calc(50% - 10px);
  }
}
/* == ↓ セクション内パーツ ↓ ======================*/
/*★ ＝＝ section-navi ＝＝ ★*/
.section-navi__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}
#page-navi .section-navi__list--item, .is-size-pc .section-navi:not(#page-navi) .section-navi__list {
  border: var(--default-border-ocher);
  border-top-width: 6px;
  background: #fff;
}
.section-navi__list--link {
  padding: .5em 1em;
  height: 100%;
  min-height: calc(60em / 24);
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: bold;
}
#page-navi .section-navi__list--item, .is-size-pc .section-navi__list--item {
  flex: 1;
}
#page-navi .section-navi__list--link, .is-size-pc .section-navi__list--link {
  flex-direction: column;
}
.is-size-pc .section-navi__list--link {
  min-height: 63px;
}
.section-navi__list--link.is-active, .is-device-pc .section-navi__list--link:hover {
  background: var(--default-color-active);
}
.section-navi__list--link::after {
  content: "";
  width: 2em;
  height: 1em;
  background: var(--default-icon-button);
}
#page-navi .section-navi__list--link::after, .is-size-pc .section-navi__list--link::after {
  margin: auto 0 0 0;
}
#page-navi .section-navi__list--link::after, .section-navi__list--link[href^="#"]::after {
  transform: rotate(90deg);
}
.section-navi__list--text {
  flex: 1;
  display: flex;
  align-items: center;
  text-align: center;
  line-height: 1.2;
  letter-spacing: 0;
}
.is-size-pc .section-navi__list--text {
  white-space: nowrap;
}
/*ページナビ内のsection-navi*/
#page-navi .section-navi__list--text {
  margin: 8px 0;
  display: block;
  flex: 0;
  line-height: 0;
}
#page-navi .section-navi__list--image {
  object-fit: contain;
}
@media screen and (max-width:730px) {
  #page-navi .section__inner {
    width: 100%;
  }
  #page-navi .section-navi__list {
    border-left: var(--default-border-ocher);
  }
  #page-navi .section-navi__list--item {
    border-left: none;
  }
  #page-navi .section-navi__list--link {
    padding: .5em 0;
  }
}
@media screen and (min-width:731px) {
  #page-navi .section-navi__list {
    gap: calc((27 / 992) * 100%);
  }
}
/*セクション内のsection-navi*/
.is-size-sp .section-navi:not(#page-navi) .section-navi {
  background: var(--default-bg-main);
  padding: calc(30em / 24) 0;
}
.is-size-sp .section-navi:not(#page-navi) .section-navi__list {
  flex-wrap: wrap;
  margin-top: -.8em;
}
.is-size-sp .section-navi:not(#page-navi) .section-navi__list--item {
  margin-right: .5em;
  margin-top: .8em;
}
.is-size-sp .section-navi:not(#page-navi) .section-navi__list--link {
  background: #fff;
  border-radius: calc(8vw / 7.5);
  border: var(--default-border-ocher);
  padding-left: 1em;
}
.is-size-sp .section-navi:not(#page-navi) .section-navi__list--link::after {
  margin-left: .25em;
}
.is-size-pc .section-navi:not(#page-navi) .section-navi__list--item:not(:last-child) .section-navi__list--link {
  border-right: var(--default-border-ocher);
}
/*★ ＝＝ section__navi ＝＝ ★*/
.section .section__navi {
  margin-bottom: min((58vw / 7.5), 60px);
}
.is-size-sp .section .section__navi {
  display: flex;
  flex-wrap: wrap;
  gap: min((20vw / 7.5), 10px);
}
.is-size-pc .section .section__navi {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));
}
.section .section__navi--list {
  text-align: center;
  line-height: 1.2;
  border-radius: calc(6em / 14);
  border: 1px solid #e1d9c6;
  padding: .4em .5em .5em;
  display: flex;
  align-items: center;
  background: #fff;
  cursor: pointer;
}
.is-size-pc .section .section__navi--list {
  min-height: calc(40em / 14);
}
.section .section__navi--list::after {
  content: "";
  width: 2em;
  height: 1em;
  background: var(--default-icon-button);
  transform: rotate(90deg);
  transition: transform .4s;
}
.is-size-sp .section .section__navi--list::after {
  margin-left: .5em;
}
.section .section__navi--list[class*="--active"], .is-device-pc .section .section__navi--list:hover {
  color: #fff;
}
.section .section__navi--text {
  flex: 1;
  font-weight: bold;
  text-indent: 1em;
  letter-spacing: 0;
}
/*★ ＝＝ コンテンツタイトル ＝＝ ★*/
.content-title {
  border-bottom: calc(2vw / 7.5) solid #e5e2db;
  padding-bottom: calc(4vw / 7.5);
  margin-bottom: min((30vw / 7.5), 20px);
}
.content-title--inner {
  border-bottom: calc(4vw / 7.5) solid var(--default-color-gray2);
  /*↓変更＋追加*/
  display: grid; /*flex*/
  grid-template-columns: 1em 1fr;
  gap: 1em;
  padding: 0 .6em calc(8em / 20); /*padding-bottom: calc(8em / 20);*/
  /*↑変更＋追加*/
  align-items: center;
  font-size: calc(20em / var(--default-fs-pc));
  line-height: 1;
}
.is-size-pc .content-title {
  padding-bottom: 1px;
}
.is-size-pc .content-title, .is-size-pc .content-title--inner {
  border-width: 1px;
}
.content-title--inner::before {
  content: "";
  width: 100%; /*1em*/
  height: 1em;
  background: var(--default-icon-anchor);
  /*margin: 0 1em 0 .6em;*/
}
.content-title--text {
  display: flex;
  align-items: baseline;
}
.content-title--text .is-font-small {
  margin-left: 1em;
  font-size: calc(12em / 20);
}
/* == ↓ PCのみ（タブレット除外）のホバー設定 ↓ ======================*/
@media (hover : hover) and (pointer : fine) {
  /*top-banner*/
  .is-device-pc .top-banner__fair--name {
    background: #fff;
  }
  .is-device-pc .top-banner__link, .is-device-pc .top-banner__fair--link {
    display: block;
    transition: var(--default-transition-opacity);
  }
  .is-device-pc .top-banner__link:hover, .is-device-pc .top-banner__fair--link:hover {
    opacity: var(--default-hover-opacity);
  }
  /*base-button-link*/
  .is-size-pc .base-button-link__link:hover {
    background: var(--default-color-gray3);
  }
  /*base-button*/
  .base-button .base-button__link:hover {
    background: #fff;
  }
  .base-button .base-button__link:hover {
    color: var(--default-color-darkgreen);
  }
  .base-button[class*="kokunai"] .base-button__link:hover {
    color: var(--default-color-dom2);
  }
  .base-button[class*="kaigai"] .base-button__link:hover {
    color: var(--default-color-int2);
  }
  .base-button .base-button__link:hover::before {
    background-image: url("../images/icon_arrow_right_darkgreen.svg");
  }
  .base-button[class*="kokunai"] .base-button__link:hover::before {
    background-image: url("../images/icon_arrow_right_kokunai.svg");
  }
  .base-button[class*="kaigai"] .base-button__link:hover::before {
    background-image: url("../images/icon_arrow_right_kaigai.svg");
  }
}
/* =====================================*/