.elementor-19492 .elementor-element.elementor-element-7b5f09b{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}/* Start custom CSS for html, class: .elementor-element-3c0855f *//* ==================================================
   ISHIGAKI NAVI
   COURSE10 / ARRIVAL DAY STORY
================================================== */

.inArrivalStory{
  --ar-navy:#102943;
  --ar-navy-light:#1c3557;
  --ar-deep:#071827;
  --ar-gold:#c2a878;
  --ar-ivory:#f8f5ef;
  --ar-soft:#f2efe8;
  --ar-white:#fff;
  --ar-text:#596775;
  --ar-muted:rgba(28,53,87,.56);
  --ar-border:rgba(16,41,67,.12);

  position:relative;
  width:100%;
  margin:0!important;
  overflow:hidden;
  background:#fff;
  color:var(--ar-text);

  font-family:
    "Noto Sans JP",
    "Yu Gothic",
    "YuGothic",
    sans-serif!important;

  font-size:16px;
  -webkit-font-smoothing:antialiased;
}

.inArrivalStory *,
.inArrivalStory *::before,
.inArrivalStory *::after{
  box-sizing:border-box;
}

.inArrivalStory img{
  display:block;
  width:100%;
  max-width:none;
  height:auto;
  margin:0;
}

.inArrivalStory figure{
  margin:0;
}

.inArrivalStory a{
  text-decoration:none;
}

.inArrivalStory button,
.inArrivalStory input,
.inArrivalStory summary{
  font:inherit;
}

.inArrivalStory button{
  appearance:none;
}

.inArrivalStory summary{
  list-style:none;
}

.inArrivalStory summary::-webkit-details-marker{
  display:none;
}

.inArrivalStory :is(h1,h2,h3){
  max-width:100%;

  font-family:
    "Noto Serif JP",
    "Yu Mincho",
    "YuMincho",
    serif!important;

  font-weight:500!important;

  line-break:strict!important;
  word-break:auto-phrase!important;
  overflow-wrap:normal!important;
  text-wrap:pretty;
}

.inArrivalStory__wide{
  width:min(1180px,calc(100% - 72px));
  margin:0 auto;
}

.inArrivalStory__article{
  width:min(930px,calc(100% - 72px));
  margin:0 auto;
}

.inArrivalStoryLabel{
  margin:0!important;

  color:var(--ar-gold)!important;

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:.56rem!important;
  font-weight:500!important;
  line-height:1.5!important;
  letter-spacing:.18em!important;
}


/* ==================================================
   PROGRESS
================================================== */

.inArrivalStoryProgress{
  position:fixed;
  top:0;
  right:0;
  left:0;

  z-index:9999;

  height:3px;

  pointer-events:none;
}

.inArrivalStoryProgress span{
  display:block;

  width:100%;
  height:100%;

  background:var(--ar-gold);

  transform:scaleX(0);
  transform-origin:left center;
}


/* ==================================================
   PC CHAPTER
================================================== */

.inArrivalStoryChapter{
  position:fixed;

  top:50%;
  left:20px;

  z-index:190;

  display:grid;

  grid-template-columns:1px auto;
  grid-template-rows:auto auto;

  gap:0 12px;

  align-items:center;

  opacity:0;

  pointer-events:none;

  transform:
    translateY(-50%)
    translateX(-5px);

  transition:
    opacity .35s ease,
    transform .35s ease;
}

.inArrivalStoryChapter.is-visible{
  opacity:.8;

  transform:translateY(-50%);
}

.inArrivalStoryChapter__line{
  grid-row:1/3;

  width:1px;
  height:70px;

  background:
    linear-gradient(
      to bottom,
      var(--ar-gold) 0 22%,
      rgba(16,41,67,.12) 22% 100%
    );
}

.inArrivalStoryChapter > div{
  display:grid;

  min-width:115px;

  gap:3px;
}

.inArrivalStoryChapter small{
  color:var(--ar-gold);

  font-family:"Noto Serif JP",serif!important;

  font-size:.41rem;

  letter-spacing:.12em;
}

.inArrivalStoryChapter strong{
  color:rgba(16,41,67,.8);

  font-family:"Noto Serif JP",serif!important;

  font-size:.58rem;

  font-weight:500;
}

.inArrivalStoryChapter__progress{
  margin-top:5px;

  color:rgba(16,41,67,.3);

  font-family:"Noto Serif JP",serif!important;

  font-size:.4rem;
}

.inArrivalStoryChapter.is-dark strong{
  color:rgba(255,255,255,.82);
}

.inArrivalStoryChapter.is-dark
.inArrivalStoryChapter__progress{
  color:rgba(255,255,255,.35);
}


/* ==================================================
   SP BOOKMARK
================================================== */

.inArrivalStoryBookmark{
  display:none;
}


/* ==================================================
   CHAPTER NOTICE
================================================== */

.inArrivalStoryNotice{
  position:fixed;

  left:24px;
  bottom:26px;

  z-index:270;

  display:grid;

  width:245px;

  gap:4px;

  padding:13px 17px 14px;

  border-left:
    1px solid rgba(194,168,120,.68);

  background:
    rgba(248,245,239,.9);

  box-shadow:
    0 8px 28px rgba(7,24,39,.06);

  backdrop-filter:blur(10px);

  opacity:0;

  pointer-events:none;

  transform:
    translate3d(-8px,4px,0);

  transition:
    opacity .3s ease,
    transform .4s cubic-bezier(.22,1,.36,1);
}

.inArrivalStoryNotice span{
  color:var(--ar-gold);

  font-family:"Noto Serif JP",serif!important;

  font-size:.41rem;

  letter-spacing:.13em;
}

.inArrivalStoryNotice strong{
  color:var(--ar-navy);

  font-family:"Noto Serif JP",serif!important;

  font-size:.66rem;

  font-weight:500;
}

.inArrivalStoryNotice.is-showing{
  opacity:.94;
  transform:none;
}


/* ==================================================
   HERO
================================================== */

.inArrivalStoryHero{
  position:relative;

  min-height:680px;

  overflow:hidden;

  background:var(--ar-deep);

  color:#fff;
}

.inArrivalStoryHero__media,
.inArrivalStoryHero__overlay{
  position:absolute;
  inset:0;
}

.inArrivalStoryHero__media img{
  width:100%!important;
  height:100%!important;

  object-fit:cover;
  object-position:center 50%;

  filter:
    saturate(.9)
    contrast(1.03)
    brightness(.84);

  transform:scale(1.025);
}

.inArrivalStoryHero__overlay{
  z-index:1;

  background:
    linear-gradient(
      90deg,
      rgba(6,22,38,.94) 0%,
      rgba(6,22,38,.73) 42%,
      rgba(6,22,38,.28) 74%,
      rgba(6,22,38,.07) 100%
    ),
    linear-gradient(
      180deg,
      rgba(6,22,38,.02) 0%,
      rgba(6,22,38,.1) 55%,
      rgba(6,22,38,.69) 100%
    );
}

.inArrivalStoryHero__inner{
  position:relative;
  z-index:2;

  display:grid;

  grid-template-rows:
    auto minmax(0,1fr) auto;

  width:min(1380px,calc(100% - 72px));

  min-height:680px;

  margin:0 auto;

  padding:30px 0 37px;
}

.inArrivalStoryBreadcrumb{
  display:flex;

  align-items:center;

  gap:11px;

  overflow:hidden;

  color:rgba(255,255,255,.58);

  font-family:"Noto Serif JP",serif!important;

  font-size:.51rem;

  white-space:nowrap;
}

.inArrivalStoryBreadcrumb a{
  color:inherit!important;
}

.inArrivalStoryBreadcrumb
> span:not(:last-child){
  width:22px;
  height:1px;

  background:var(--ar-gold);
}

.inArrivalStoryHero__copy{
  align-self:center;

  width:min(850px,79%);

  padding:48px 0 40px;
}

.inArrivalStoryHero__pageName{
  margin:0!important;

  color:rgba(255,255,255,.85);

  font-family:"Noto Serif JP",serif!important;

  font-size:.76rem;
}

.inArrivalStoryHero__en{
  margin:9px 0 0!important;

  color:var(--ar-gold);

  font-family:"Noto Serif JP",serif!important;

  font-size:.56rem;

  letter-spacing:.18em;
}

body .inArrivalStory
.inArrivalStoryHero h1{
  max-width:840px!important;

  margin:26px 0 0!important;

  color:#fff!important;

  font-size:
    clamp(1.7rem,2.65vw,2.58rem)!important;

  line-height:1.6!important;

  letter-spacing:.014em!important;
}

.inArrivalStoryHero__lead{
  max-width:760px;

  margin:25px 0 0!important;

  color:rgba(255,255,255,.76);

  font-size:.84rem;

  line-height:2.06;
}

.inArrivalStoryHero__discover{
  display:inline-flex;

  width:fit-content;

  align-items:center;

  gap:16px;

  margin-top:31px;

  color:#fff!important;

  font-family:"Noto Serif JP",serif!important;

  font-size:.52rem;

  letter-spacing:.16em;
}

.inArrivalStoryHero__discover
> span:last-child{
  width:50px;
  height:1px;

  background:var(--ar-gold);

  transition:width .35s ease;
}

.inArrivalStoryHero__caption{
  display:flex;

  justify-content:space-between;

  color:rgba(255,255,255,.43);

  font-family:"Noto Serif JP",serif!important;

  font-size:.46rem;

  letter-spacing:.14em;
}


/* ==================================================
   COMMON HEADINGS
================================================== */

.inArrivalStoryIntro h2,
.inArrivalStoryContents h2,
.inArrivalStoryChapterHead h2,
.inArrivalStoryHotel h2,
.inArrivalStoryEvening h2,
.inArrivalStorySimpleHead h2,
.inArrivalStoryEnding h2,
.inArrivalStoryRelated h2{
  margin:14px 0 0!important;

  color:var(--ar-navy)!important;

  font-size:
    clamp(1.5rem,2.3vw,2.04rem)!important;

  line-height:1.72!important;
}

.inArrivalStoryChapterHead{
  display:grid;

  grid-template-columns:
    minmax(0,1.15fr)
    minmax(310px,.85fr);

  gap:clamp(45px,6vw,82px);

  margin-bottom:62px;
}

.inArrivalStoryChapterHead__catch{
  margin:0!important;

  color:var(--ar-navy);

  font-family:"Noto Serif JP",serif!important;

  font-size:
    clamp(1.02rem,1.45vw,1.28rem);

  line-height:1.82;
}

.inArrivalStoryChapterHead__text{
  margin:18px 0 0!important;

  font-size:.8rem;

  line-height:2;
}

.inArrivalStoryChapterHead--dark h2,
.inArrivalStoryChapterHead--dark
.inArrivalStoryChapterHead__catch{
  color:#fff!important;
}

.inArrivalStoryChapterHead--dark
.inArrivalStoryChapterHead__text{
  color:rgba(255,255,255,.68);
}


/* ==================================================
   INTRO
================================================== */

.inArrivalStoryIntro{
  padding:118px 0 126px;

  background:#fff;
}

.inArrivalStoryIntro__layout{
  display:grid;

  grid-template-columns:
    minmax(330px,.86fr)
    minmax(0,1.14fr);

  gap:clamp(60px,8vw,110px);
}

.inArrivalStoryIntro__lead{
  font-size:.89rem;

  line-height:2.14;
}

.inArrivalStoryIntro__lead p{
  margin:0!important;
}

.inArrivalStoryIntro__lead p+p{
  margin-top:1.35em!important;
}

.inArrivalStoryPhrase{
  width:min(790px,100%);

  margin:80px auto 0;

  text-align:center;
}

.inArrivalStoryPhrase
> p:last-child{
  margin:20px 0 0!important;

  color:var(--ar-navy);

  font-family:"Noto Serif JP",serif!important;

  font-size:
    clamp(1.12rem,1.8vw,1.45rem);

  line-height:2;
}

.inArrivalStoryFacts{
  display:grid;

  grid-template-columns:
    repeat(4,minmax(0,1fr));

  gap:1px;

  margin-top:73px;

  background:var(--ar-border);
}

.inArrivalStoryFacts article{
  min-height:215px;

  padding:29px 27px 32px;

  background:var(--ar-ivory);
}

.inArrivalStoryFacts span{
  color:var(--ar-gold);

  font-family:"Noto Serif JP",serif!important;

  font-size:.52rem;
}

.inArrivalStoryFacts
article > p:first-of-type{
  margin:10px 0 0!important;

  color:var(--ar-muted);

  font-size:.44rem;

  letter-spacing:.13em;
}

.inArrivalStoryFacts h3{
  margin:21px 0 0!important;

  color:var(--ar-navy);

  font-size:.96rem!important;
}

.inArrivalStoryFacts
article > p:last-child{
  margin:14px 0 0!important;

  font-size:.71rem;

  line-height:1.92;
}


/* ==================================================
   CONTENTS
================================================== */

.inArrivalStoryContents{
  padding:99px 0 106px;

  background:var(--ar-soft);
}

.inArrivalStoryContents__head{
  max-width:760px;

  margin:0 auto;

  text-align:center;
}

.inArrivalStoryContents__head
> p:last-child{
  margin:20px 0 0!important;

  font-size:.76rem;

  line-height:1.95;
}

.inArrivalStoryContents__details{
  margin-top:45px;
}

.inArrivalStoryContents__details > summary{
  display:none;
}

.inArrivalStoryContents__nav{
  display:grid;

  grid-template-columns:
    repeat(4,minmax(0,1fr));

  gap:1px;

  background:var(--ar-border);
}

.inArrivalStoryContents__nav a{
  position:relative;

  min-height:140px;

  padding:25px 24px 31px;

  background:#fff;

  color:inherit!important;
}

.inArrivalStoryContents__nav a span{
  color:var(--ar-gold);

  font-family:"Noto Serif JP",serif!important;

  font-size:.5rem;
}

.inArrivalStoryContents__nav small{
  display:block;

  margin-top:10px;

  color:var(--ar-muted);

  font-size:.42rem;

  letter-spacing:.12em;
}

.inArrivalStoryContents__nav strong{
  display:block;

  margin-top:8px;

  color:var(--ar-navy);

  font-family:"Noto Serif JP",serif!important;

  font-size:.79rem;

  font-weight:500;

  line-height:1.65;
}

.inArrivalStoryContents__nav a::after{
  content:"";

  position:absolute;

  right:21px;
  bottom:20px;

  width:23px;
  height:1px;

  background:var(--ar-gold);
}


/* ==================================================
   AIRPORT
================================================== */

.inArrivalStoryAirport{
  padding:118px 0 126px;

  background:#fff;
}

.inArrivalStoryAirportFlow{
  display:grid;

  grid-template-columns:
    repeat(3,minmax(0,1fr));

  gap:1px;

  background:var(--ar-border);
}

.inArrivalStoryAirportFlow article{
  min-height:235px;

  padding:32px 29px 36px;

  background:var(--ar-ivory);
}

.inArrivalStoryAirportFlow span{
  color:var(--ar-gold);

  font-family:"Noto Serif JP",serif!important;

  font-size:.53rem;
}

.inArrivalStoryAirportFlow
article > p:first-of-type{
  margin:10px 0 0!important;

  color:var(--ar-muted);

  font-size:.44rem;

  letter-spacing:.12em;
}

.inArrivalStoryAirportFlow h3{
  margin:22px 0 0!important;

  color:var(--ar-navy);

  font-size:1.02rem!important;
}

.inArrivalStoryAirportFlow
article > p:last-child{
  margin:15px 0 0!important;

  font-size:.72rem;

  line-height:1.95;
}

.inArrivalStoryAirportNote{
  width:min(840px,100%);

  margin:56px auto 0;

  padding:36px 40px;

  background:var(--ar-navy);

  color:#fff;
}

.inArrivalStoryAirportNote h3{
  margin:16px 0 0!important;

  color:#fff;

  font-size:1.08rem!important;

  line-height:1.8;
}

.inArrivalStoryAirportNote
> p:last-child{
  margin:18px 0 0!important;

  color:rgba(255,255,255,.68);

  font-size:.76rem;

  line-height:2;
}


/* ==================================================
   HOTEL
================================================== */

.inArrivalStoryHotel{
  position:relative;

  padding:132px 0 140px;

  overflow:hidden;

  background:var(--ar-ivory);
}

.inArrivalStoryHotel__scene{
  position:relative;

  z-index:2;

  max-width:670px;
}

.inArrivalStoryHotel__scene h2{
  font-size:
    clamp(1.8rem,3.4vw,2.8rem)!important;
}

.inArrivalStoryHotel__lead{
  margin:26px 0 0!important;

  color:var(--ar-navy);

  font-family:"Noto Serif JP",serif!important;

  font-size:1.03rem;

  line-height:1.95;
}

.inArrivalStoryHotel__scene
> p:not(.inArrivalStoryLabel):not(.inArrivalStoryHotel__lead){
  margin:18px 0 0!important;

  font-size:.79rem;

  line-height:2.05;
}

.inArrivalStoryHotel__word{
  position:absolute;

  top:50%;
  right:-2vw;

  color:rgba(16,41,67,.045);

  font-family:"Times New Roman",serif;

  font-size:
    clamp(7rem,18vw,15rem);

  line-height:1;

  letter-spacing:.02em;

  transform:translateY(-50%);

  pointer-events:none;
}


/* ==================================================
   CITY WALK
================================================== */

.inArrivalStoryCity{
  padding:118px 0 126px;

  background:#fff;
}

.inArrivalStoryCityRoute{
  width:min(950px,100%);

  margin:0 auto;
}

.inArrivalStoryCityStop{
  display:grid;

  grid-template-columns:
    135px minmax(0,1fr);

  gap:40px;

  padding:39px 0;
}

.inArrivalStoryCityStop + .inArrivalStoryCityStop{
  border-top:1px solid var(--ar-border);
}

.inArrivalStoryCityStop__number span{
  display:block;

  color:var(--ar-gold);

  font-family:"Noto Serif JP",serif!important;

  font-size:1.25rem;
}

.inArrivalStoryCityStop__number small{
  display:block;

  margin-top:8px;

  color:var(--ar-muted);

  font-family:"Noto Serif JP",serif!important;

  font-size:.43rem;

  letter-spacing:.12em;
}

.inArrivalStoryCityStop h3{
  margin:0!important;

  color:var(--ar-navy);

  font-size:
    clamp(1.2rem,1.8vw,1.48rem)!important;

  line-height:1.75;
}

.inArrivalStoryCityStop
> div:last-child > p{
  margin:16px 0 0!important;

  font-size:.77rem;

  line-height:2;
}

.inArrivalStoryCityStop dl{
  margin:21px 0 0;
}

.inArrivalStoryCityStop dl > div{
  display:grid;

  grid-template-columns:
    90px minmax(0,1fr);

  gap:12px;

  padding:9px 0;
}

.inArrivalStoryCityStop dl > div + div{
  border-top:1px solid var(--ar-border);
}

.inArrivalStoryCityStop dt{
  color:var(--ar-muted);

  font-size:.59rem;
}

.inArrivalStoryCityStop dd{
  margin:0;

  color:var(--ar-navy);

  font-size:.68rem;

  line-height:1.72;
}

.inArrivalStoryCityNote{
  width:min(790px,100%);

  margin:39px auto 0!important;

  padding:23px 25px;

  border-left:
    1px solid var(--ar-gold);

  background:var(--ar-ivory);

  font-size:.72rem;

  line-height:1.95;
}


/* ==================================================
   EVENING
================================================== */

.inArrivalStoryEvening{
  position:relative;

  padding:132px 0 142px;

  overflow:hidden;

  background:
    linear-gradient(
      180deg,
      #435871 0%,
      #233b56 42%,
      #102943 74%,
      #071827 100%
    );
}

.inArrivalStoryEvening__sky{
  position:absolute;

  inset:0;

  pointer-events:none;
}

.inArrivalStoryEvening__sky::before{
  content:"";

  position:absolute;

  right:12%;
  bottom:14%;

  width:300px;
  height:300px;

  border-radius:50%;

  background:
    radial-gradient(
      circle,
      rgba(194,168,120,.12) 0%,
      rgba(194,168,120,0) 68%
    );
}

.inArrivalStoryEvening__sky span{
  position:absolute;

  width:2px;
  height:2px;

  border-radius:50%;

  background:rgba(255,255,255,.42);
}

.inArrivalStoryEvening__sky span:nth-child(1){
  top:23%;
  right:23%;
}

.inArrivalStoryEvening__sky span:nth-child(2){
  top:39%;
  right:10%;
}

.inArrivalStoryEvening__sky span:nth-child(3){
  top:17%;
  right:37%;
}

.inArrivalStoryEvening__layout{
  position:relative;

  z-index:2;

  display:grid;

  grid-template-columns:
    minmax(0,1fr)
    minmax(350px,.88fr);

  gap:clamp(70px,9vw,120px);
}

.inArrivalStoryEvening h2{
  color:#fff!important;
}

.inArrivalStoryEvening__lead{
  margin:0!important;

  color:#fff;

  font-family:"Noto Serif JP",serif!important;

  font-size:1.02rem;

  line-height:1.98;
}

.inArrivalStoryEvening
> .inArrivalStory__wide
> .inArrivalStoryEvening__layout
> div:last-child
> p:not(.inArrivalStoryEvening__lead){
  margin:19px 0 0!important;

  color:rgba(255,255,255,.67);

  font-size:.77rem;

  line-height:2.05;
}


/* ==================================================
   DINNER
================================================== */

.inArrivalStoryDinner{
  padding:118px 0 126px;

  background:var(--ar-deep);
}

.inArrivalStoryDinnerFeature{
  display:grid;

  grid-template-columns:
    minmax(0,.96fr)
    minmax(360px,1.04fr);

  overflow:hidden;

  background:var(--ar-navy);
}

.inArrivalStoryDinnerFeature figure{
  position:relative;

  min-height:510px;

  overflow:hidden;
}

.inArrivalStoryDinnerFeature img{
  height:100%!important;

  object-fit:cover;
}

.inArrivalStoryDinnerFeature figcaption{
  position:absolute;

  right:16px;
  bottom:12px;

  z-index:2;

  color:rgba(255,255,255,.54);

  font-family:"Noto Serif JP",serif!important;

  font-size:.43rem;

  letter-spacing:.12em;
}

.inArrivalStoryDinnerFeature > div{
  display:flex;

  flex-direction:column;

  justify-content:center;

  padding:47px 46px;
}

.inCourseGuide .inCoursePartnerBadge{
  display:inline-flex;

  width:fit-content;

  margin:0 0 16px;

  padding:6px 10px;

  border:
    1px solid rgba(194,168,120,.65);

  color:var(--ar-gold);

  font-family:"Noto Serif JP",serif!important;

  font-size:.5rem;

  letter-spacing:.12em;
}

.inArrivalStoryDinnerFeature h3{
  margin:15px 0 0!important;

  color:#fff;

  font-size:
    clamp(1.35rem,2.2vw,1.82rem)!important;

  line-height:1.75;
}

.inArrivalStoryDinnerFeature
> div > p:not(.inArrivalStoryLabel){
  margin:18px 0 0!important;

  color:rgba(255,255,255,.69);

  font-size:.76rem;

  line-height:2;
}

.inArrivalStoryDinnerFeature strong{
  display:block;

  margin-top:20px;

  color:#fff;

  font-family:"Noto Serif JP",serif!important;

  font-size:.73rem;

  font-weight:500;

  line-height:1.8;
}

.inArrivalStoryDinnerFeature a{
  display:inline-flex;

  width:fit-content;

  margin-top:22px;

  color:#fff!important;

  font-family:"Noto Serif JP",serif!important;

  font-size:.63rem;

  text-decoration:underline;

  text-underline-offset:5px;
}

.inArrivalStoryCafe{
  display:flex;

  align-items:center;
  justify-content:space-between;

  gap:45px;

  margin-top:38px;

  padding:32px 35px;

  border:
    1px solid rgba(255,255,255,.12);
}

.inArrivalStoryCafe h3{
  margin:15px 0 0!important;

  color:#fff;

  font-size:1.05rem!important;

  line-height:1.75;
}

.inArrivalStoryCafe p:not(.inArrivalStoryLabel){
  margin:14px 0 0!important;

  color:rgba(255,255,255,.65);

  font-size:.72rem;

  line-height:1.9;
}

.inArrivalStoryCafe a{
  flex:0 0 auto;

  color:#fff!important;

  font-family:"Noto Serif JP",serif!important;

  font-size:.62rem;

  text-decoration:underline;

  text-underline-offset:5px;
}

.inCourseGuide .inCoursePartnerDisclosure{
  width:min(930px,100%);

  margin:32px auto 0;

  padding:20px 23px;

  border-left:
    2px solid var(--ar-gold);

  background:rgba(255,255,255,.06);

  color:rgba(255,255,255,.62);

  font-size:.67rem;

  line-height:1.9;
}


/* ==================================================
   ARRIVAL CLOCK
================================================== */

.inArrivalStoryClock{
  padding:118px 0 126px;

  background:var(--ar-soft);
}

.inArrivalStoryTabs__buttons{
  display:grid;

  grid-template-columns:
    repeat(3,minmax(0,1fr));

  gap:1px;

  background:var(--ar-border);
}

.inArrivalStoryTabs__buttons button{
  min-height:74px;

  padding:10px 12px!important;

  border:0!important;
  border-radius:0!important;

  background:#fff!important;

  color:var(--ar-muted)!important;

  font-family:"Noto Serif JP",serif!important;

  font-size:.76rem;

  cursor:pointer;
}

.inArrivalStoryTabs__buttons button span{
  display:block;

  margin-top:5px;

  font-size:.4rem;

  letter-spacing:.12em;
}

.inArrivalStoryTabs__buttons
button[aria-selected="true"]{
  background:var(--ar-navy)!important;

  color:#fff!important;
}

.inArrivalStoryTabs__panels{
  margin-top:1px;
}

.inArrivalStoryTabPanel{
  display:grid;

  grid-template-columns:
    72px
    minmax(0,1fr)
    minmax(240px,.65fr);

  gap:34px;

  align-items:center;

  min-height:290px;

  padding:42px;

  border:1px solid var(--ar-border);

  background:#fff;
}

.inArrivalStoryTabPanel[hidden]{
  display:none!important;
}

.inArrivalStoryTabPanel__number{
  color:var(--ar-gold);

  font-family:"Noto Serif JP",serif!important;

  font-size:2.1rem;
}

.inArrivalStoryTabPanel h3{
  margin:14px 0 0!important;

  color:var(--ar-navy);

  font-size:1.27rem!important;

  line-height:1.76;
}

.inArrivalStoryTabPanel
> div > p:last-child{
  margin:17px 0 0!important;

  font-size:.76rem;

  line-height:2;
}

.inArrivalStoryTabPanel ul{
  margin:0;
  padding:0;

  list-style:none;
}

.inArrivalStoryTabPanel li{
  position:relative;

  padding-left:16px;

  color:var(--ar-navy);

  font-size:.69rem;

  line-height:1.85;
}

.inArrivalStoryTabPanel li+li{
  margin-top:8px;
}

.inArrivalStoryTabPanel li::before{
  content:"";

  position:absolute;

  top:.85em;
  left:0;

  width:7px;
  height:1px;

  background:var(--ar-gold);
}


/* ==================================================
   NOTES
================================================== */

.inArrivalStoryNotes{
  padding:118px 0 126px;

  background:#fff;
}

.inArrivalStoryNotesGrid{
  display:grid;

  grid-template-columns:
    repeat(4,minmax(0,1fr));

  gap:1px;

  background:var(--ar-border);
}

.inArrivalStoryNotesGrid article{
  min-height:220px;

  padding:29px 27px 32px;

  background:var(--ar-ivory);
}

.inArrivalStoryNotesGrid span{
  color:var(--ar-gold);

  font-family:"Noto Serif JP",serif!important;

  font-size:.52rem;
}

.inArrivalStoryNotesGrid
article > p:first-of-type{
  margin:10px 0 0!important;

  color:var(--ar-muted);

  font-size:.43rem;

  letter-spacing:.12em;
}

.inArrivalStoryNotesGrid h3{
  margin:21px 0 0!important;

  color:var(--ar-navy);

  font-size:.97rem!important;
}

.inArrivalStoryNotesGrid
article > p:last-child{
  margin:14px 0 0!important;

  font-size:.7rem;

  line-height:1.92;
}

.inArrivalStoryDrivingNote{
  width:min(840px,100%);

  margin:54px auto 0;

  padding:35px 39px;

  background:var(--ar-navy);
}

.inArrivalStoryDrivingNote h3{
  margin:16px 0 0!important;

  color:#fff;

  font-size:1.05rem!important;

  line-height:1.8;
}

.inArrivalStoryDrivingNote
> p:last-child{
  margin:18px 0 0!important;

  color:rgba(255,255,255,.68);

  font-size:.75rem;

  line-height:2;
}


/* ==================================================
   CHECKLIST / FAQ
================================================== */

.inArrivalStoryChecklistSection,
.inArrivalStoryFaqSection{
  padding:105px 0 112px;
}

.inArrivalStoryChecklistSection{
  background:var(--ar-soft);
}

.inArrivalStoryFaqSection{
  background:#fff;
}

.inArrivalStorySimpleHead{
  max-width:760px;

  margin-bottom:44px;
}

.inArrivalStorySimpleHead
> p:last-child{
  margin:19px 0 0!important;

  font-size:.76rem;

  line-height:1.95;
}

.inArrivalStoryChecklist{
  overflow:hidden;

  background:#fff;

  box-shadow:
    0 22px 60px rgba(16,41,67,.08);
}

.inArrivalStoryChecklist__toolbar{
  display:flex;

  align-items:center;
  justify-content:space-between;

  gap:24px;

  padding:27px 30px;

  background:var(--ar-navy);
}

.inArrivalStoryChecklist__toolbar > div{
  display:flex;

  align-items:flex-end;

  gap:9px;
}

.inArrivalStoryChecklist__toolbar
.inArrivalStoryLabel{
  margin-right:12px!important;
}

.inArrivalStoryChecklist__toolbar strong{
  color:#fff;

  font-family:"Noto Serif JP",serif!important;

  font-size:1.2rem;

  font-weight:500;
}

.inArrivalStoryChecklist__toolbar button{
  padding:9px 15px!important;

  border:
    1px solid rgba(194,168,120,.65)!important;

  border-radius:0!important;

  background:transparent!important;

  color:#fff!important;

  font-family:"Noto Serif JP",serif!important;

  font-size:.6rem;
}

.inArrivalStoryChecklist__progress{
  height:4px;

  background:rgba(16,41,67,.08);
}

.inArrivalStoryChecklist__progress span{
  display:block;

  width:100%;
  height:100%;

  background:var(--ar-gold);

  transform:scaleX(0);
  transform-origin:left;

  transition:transform .3s ease;
}

.inArrivalStoryChecklist__items{
  display:grid;

  grid-template-columns:
    repeat(2,minmax(0,1fr));

  padding:18px 27px 25px;
}

.inArrivalStoryChecklist label{
  display:grid;

  grid-template-columns:
    21px minmax(0,1fr);

  gap:11px;

  align-items:center;

  min-height:50px;

  padding:8px;

  cursor:pointer;
}

.inArrivalStoryChecklist
label:nth-child(even){
  border-left:1px solid var(--ar-border);
}

.inArrivalStoryChecklist
label:nth-child(n+3){
  border-top:1px solid var(--ar-border);
}

.inArrivalStoryChecklist input{
  width:18px;
  height:18px;

  margin:0;

  appearance:none;

  border:
    1px solid rgba(16,41,67,.3);

  border-radius:0;

  background:#fff;
}

.inArrivalStoryChecklist
input:checked{
  border-color:var(--ar-navy);

  background:var(--ar-navy);
}

.inArrivalStoryChecklist
input:checked::after{
  content:"";

  display:block;

  width:7px;
  height:4px;

  margin:5px 0 0 4px;

  border-left:1px solid #fff;
  border-bottom:1px solid #fff;

  transform:rotate(-45deg);
}

.inArrivalStoryChecklist label span{
  font-size:.74rem;

  line-height:1.72;
}

.inArrivalStoryChecklist
label.is-checked{
  background:var(--ar-ivory);
}

.inArrivalStoryChecklist
label.is-checked span{
  text-decoration:line-through;

  text-decoration-color:
    rgba(194,168,120,.75);
}

.inArrivalStoryChecklist__privacy{
  margin:0!important;

  padding:18px 30px 21px;

  border-top:1px solid var(--ar-border);

  color:var(--ar-muted);

  font-size:.54rem;
}


/* FAQ */

.inArrivalStoryFaq{
  border-top:1px solid var(--ar-border);
}

.inArrivalStoryFaq details{
  border-bottom:1px solid var(--ar-border);
}

.inArrivalStoryFaq summary{
  display:flex!important;

  min-height:73px;

  align-items:center;
  justify-content:space-between;

  gap:25px;

  padding:19px 3px!important;

  color:var(--ar-navy);

  font-family:"Noto Serif JP",serif!important;

  font-size:.86rem!important;

  cursor:pointer;
}

.inArrivalStoryFaq
summary > span:last-child{
  position:relative;

  flex:0 0 auto;

  width:21px;
  height:21px;
}

.inArrivalStoryFaq
summary > span:last-child::before,
.inArrivalStoryFaq
summary > span:last-child::after{
  content:"";

  position:absolute;

  top:10px;
  left:4px;

  width:13px;
  height:1px;

  background:var(--ar-gold);
}

.inArrivalStoryFaq
summary > span:last-child::after{
  transform:rotate(90deg);
}

.inArrivalStoryFaq
details[open]
summary > span:last-child::after{
  transform:none;
}

.inArrivalStoryFaq details > div{
  padding:0 46px 24px 3px;
}

.inArrivalStoryFaq p{
  margin:0!important;

  font-size:.75rem;

  line-height:2;
}


/* ==================================================
   ENDING
================================================== */

.inArrivalStoryEnding{
  padding:126px 0 136px;

  background:var(--ar-deep);
}

.inArrivalStoryEnding h2{
  max-width:820px;

  color:#fff!important;
}

.inArrivalStoryEnding
p:not(.inArrivalStoryLabel){
  max-width:730px;

  margin:21px 0 0!important;

  color:rgba(255,255,255,.69);

  font-size:.79rem;

  line-height:2.07;
}

.inArrivalStoryEnding a{
  display:inline-flex;

  width:fit-content;

  align-items:center;

  gap:30px;

  margin-top:31px;

  padding-bottom:7px;

  border-bottom:
    1px solid var(--ar-gold);

  color:#fff!important;

  font-family:"Noto Serif JP",serif!important;

  font-size:.64rem;
}


/* ==================================================
   RELATED
================================================== */

.inArrivalStoryRelated{
  padding:106px 0 114px;

  background:#fff;
}

.inArrivalStoryRelated header{
  margin-bottom:44px;
}

.inArrivalStoryRelated__grid{
  display:grid;

  grid-template-columns:
    repeat(3,minmax(0,1fr));

  gap:1px;

  background:var(--ar-border);
}

.inArrivalStoryRelated__grid a{
  padding:30px 27px 34px;

  background:var(--ar-ivory);

  color:inherit!important;
}

.inArrivalStoryRelated__grid span{
  color:var(--ar-gold);

  font-family:"Noto Serif JP",serif!important;

  font-size:.52rem;
}

.inArrivalStoryRelated__grid
a > p:first-of-type{
  margin:10px 0 0!important;

  color:var(--ar-muted);

  font-size:.43rem;

  letter-spacing:.12em;
}

.inArrivalStoryRelated__grid h3{
  margin:16px 0 0!important;

  color:var(--ar-navy);

  font-size:1rem!important;
}

.inArrivalStoryRelated__grid
a > p:last-child{
  margin:12px 0 0!important;

  font-size:.7rem;

  line-height:1.9;
}

.inArrivalStoryDisclaimer{
  margin:0!important;

  padding:27px 20px 35px;

  background:#fff;

  color:var(--ar-muted);

  font-size:.58rem;

  line-height:1.85;

  text-align:center;
}


/* ==================================================
   FLOATING TOC
================================================== */

.inArrivalStoryFloatingToc{
  position:fixed;

  right:22px;
  bottom:87px;

  z-index:220;

  display:flex;

  min-width:54px;
  min-height:54px;

  align-items:center;
  justify-content:center;

  gap:9px;

  padding:13px 15px!important;

  border:
    1px solid rgba(194,168,120,.72)!important;

  border-radius:0!important;

  background:
    rgba(16,41,67,.96)!important;

  color:#fff!important;

  opacity:0;

  pointer-events:none;

  transform:translateY(10px);

  transition:
    opacity .28s ease,
    transform .28s ease;
}

.inArrivalStoryFloatingToc.is-visible{
  opacity:1;
  pointer-events:auto;
  transform:none;
}

.inArrivalStoryFloatingToc > span{
  position:relative;

  width:16px;
  height:12px;

  border-top:1px solid var(--ar-gold);
  border-bottom:1px solid var(--ar-gold);
}

.inArrivalStoryFloatingToc
> span::after{
  content:"";

  position:absolute;

  top:5px;
  left:0;

  width:16px;
  height:1px;

  background:var(--ar-gold);
}

.inArrivalStoryFloatingToc strong{
  font-family:"Noto Serif JP",serif!important;

  font-size:.45rem;

  font-weight:500;
}


/* ==================================================
   DRAWER
================================================== */

.inArrivalStoryDrawer{
  position:fixed;

  inset:0;

  z-index:9998;

  visibility:hidden;

  opacity:0;

  pointer-events:none;

  transition:
    opacity .3s ease,
    visibility 0s linear .3s;
}

.inArrivalStoryDrawer.is-open{
  visibility:visible;

  opacity:1;

  pointer-events:auto;

  transition-delay:0s;
}

.inArrivalStoryDrawer__backdrop{
  position:absolute;

  inset:0;

  z-index:1;

  width:100%;

  border:0!important;

  background:
    rgba(5,20,33,.63)!important;
}

.inArrivalStoryDrawer__panel{
  position:absolute;

  top:0;
  right:0;

  z-index:2;

  width:min(450px,92vw);
  height:100%;

  overflow-y:auto;

  padding:40px 36px 47px;

  background:var(--ar-ivory);

  transform:translateX(102%);

  transition:
    transform .42s cubic-bezier(.22,1,.36,1);
}

.inArrivalStoryDrawer.is-open
.inArrivalStoryDrawer__panel{
  transform:none;
}

.inArrivalStoryDrawer__panel header{
  display:flex;

  justify-content:space-between;

  gap:25px;

  padding-bottom:25px;
}

.inArrivalStoryDrawer__panel
header p{
  margin:0 0 7px!important;

  color:var(--ar-gold);

  font-size:.48rem;

  letter-spacing:.16em;
}

.inArrivalStoryDrawer__panel
header h2{
  margin:0!important;

  color:var(--ar-navy);

  font-size:1.12rem!important;
}

.inArrivalStoryDrawer__close{
  position:relative;

  width:37px;
  height:37px;

  border:0!important;

  background:transparent!important;
}

.inArrivalStoryDrawer__close span{
  position:absolute;

  top:18px;
  left:7px;

  width:23px;
  height:1px;

  background:var(--ar-navy);
}

.inArrivalStoryDrawer__close
span:first-child{
  transform:rotate(45deg);
}

.inArrivalStoryDrawer__close
span:last-child{
  transform:rotate(-45deg);
}

.inArrivalStoryDrawer nav{
  display:grid;
}

.inArrivalStoryDrawer nav a{
  display:grid;

  grid-template-columns:
    35px minmax(0,1fr);

  gap:12px;

  padding:15px 2px;

  border-top:
    1px solid var(--ar-border);

  color:var(--ar-text)!important;

  font-size:.72rem;
}

.inArrivalStoryDrawer nav span{
  color:var(--ar-gold);

  font-family:"Noto Serif JP",serif!important;

  font-size:.5rem;
}

html.in-arrival-drawer-open{
  overflow:hidden;
}


/* ==================================================
   IMAGE REVEAL
================================================== */

.in-arrival-has-js
.inArrivalStory
.js-arrival-image{
  position:relative;

  overflow:hidden;
}

.in-arrival-has-js
.inArrivalStory
.js-arrival-image::after{
  content:"";

  position:absolute;

  inset:0;

  z-index:3;

  background:var(--ar-navy);

  transform:translateX(0);

  transition:
    transform 1.03s cubic-bezier(.77,0,.18,1);
}

.in-arrival-has-js
.inArrivalStory
.js-arrival-image img{
  transform:scale(1.025);

  transition:
    transform 1.2s cubic-bezier(.22,1,.36,1);
}

.in-arrival-has-js
.inArrivalStory
.js-arrival-image.is-image-visible::after{
  transform:translateX(101%);
}

.in-arrival-has-js
.inArrivalStory
.js-arrival-image.is-image-visible img{
  transform:scale(1);
}


/* ==================================================
   REVEAL
================================================== */

.in-arrival-has-js
.inArrivalStory
.js-arrival-reveal{
  opacity:0;

  transform:translateY(23px);

  transition:
    opacity .8s ease var(--arrival-delay,0ms),
    transform .8s cubic-bezier(.22,1,.36,1)
    var(--arrival-delay,0ms);
}

.in-arrival-has-js
.inArrivalStory
.js-arrival-reveal.is-visible{
  opacity:1;

  transform:none;
}


/* ==================================================
   HOVER
================================================== */

@media(hover:hover){

  .inArrivalStoryHero__discover:hover
  > span:last-child{
    width:67px;
  }

  .inArrivalStoryContents__nav a:hover,
  .inArrivalStoryRelated__grid a:hover{
    background:#fff;
  }

  .inArrivalStoryChecklist__toolbar button:hover{
    background:var(--ar-gold)!important;
    color:var(--ar-navy)!important;
  }

}


/* ==================================================
   TABLET
================================================== */

@media(max-width:1100px){

  .inArrivalStoryChapter{
    display:none;
  }

  .inArrivalStoryFacts,
  .inArrivalStoryNotesGrid{
    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }

  .inArrivalStoryContents__nav{
    grid-template-columns:
      repeat(3,minmax(0,1fr));
  }

}


@media(max-width:900px){

  .inArrivalStoryIntro__layout,
  .inArrivalStoryChapterHead,
  .inArrivalStoryEvening__layout{
    grid-template-columns:1fr;
  }

  .inArrivalStoryChapterHead{
    gap:28px;
  }

  .inArrivalStoryDinnerFeature{
    grid-template-columns:1fr;
  }

  .inArrivalStoryDinnerFeature figure{
    min-height:370px;
  }

}


/* ==================================================
   MOBILE
================================================== */

@media(max-width:767px){

  .inArrivalStory__wide,
  .inArrivalStory__article{
    width:calc(100% - 34px);
  }


  /* BOOKMARK */

  .inArrivalStoryBookmark{
    position:fixed;

    top:0;
    right:0;
    left:0;

    z-index:240;

    display:block;

    opacity:0;

    pointer-events:none;

    transform:translateY(-100%);

    transition:
      opacity .3s ease,
      transform .35s ease;
  }

  .inArrivalStoryBookmark.is-visible{
    opacity:.87;
    transform:none;
  }

  .inArrivalStoryBookmark__inner{
    display:grid;

    grid-template-columns:
      auto minmax(0,1fr) auto;

    gap:8px;

    align-items:center;

    min-height:34px;

    padding:6px 13px 7px;

    background:
      rgba(248,245,239,.82);

    backdrop-filter:blur(9px);
  }

  .inArrivalStoryBookmark__chapter{
    color:var(--ar-gold);

    font-family:"Noto Serif JP",serif!important;

    font-size:.38rem;

    white-space:nowrap;
  }

  .inArrivalStoryBookmark__title{
    overflow:hidden;

    color:rgba(16,41,67,.8);

    font-family:"Noto Serif JP",serif!important;

    font-size:.55rem;

    font-weight:500;

    white-space:nowrap;

    text-overflow:ellipsis;
  }

  .inArrivalStoryBookmark__progress{
    color:rgba(16,41,67,.3);

    font-family:"Noto Serif JP",serif!important;

    font-size:.38rem;
  }

  .inArrivalStoryBookmark.is-dark
  .inArrivalStoryBookmark__inner{
    background:
      rgba(7,24,39,.78);
  }

  .inArrivalStoryBookmark.is-dark
  .inArrivalStoryBookmark__title{
    color:rgba(255,255,255,.8);
  }


  /* NOTICE */

  .inArrivalStoryNotice{
    right:13px;
    bottom:14px;
    left:13px;

    display:flex;

    width:auto;

    min-height:40px;

    align-items:center;

    gap:10px;

    padding:10px 13px;

    border-left:0;

    border-top:
      1px solid rgba(194,168,120,.43);

    background:
      rgba(7,24,39,.84);

    transform:translateY(7px);
  }

  .inArrivalStoryNotice span{
    flex:0 0 auto;

    font-size:.38rem;
  }

  .inArrivalStoryNotice strong{
    overflow:hidden;

    color:rgba(255,255,255,.84);

    font-size:.57rem;

    white-space:nowrap;

    text-overflow:ellipsis;
  }


  /* HERO */

  .inArrivalStoryHero,
  .inArrivalStoryHero__inner{
    min-height:620px;
  }

  .inArrivalStoryHero__inner{
    width:calc(100% - 34px);

    padding:50px 0 30px;
  }

  .inArrivalStoryHero__copy{
    width:100%;

    align-self:end;

    padding:38px 0 24px;
  }

  body .inArrivalStory
  .inArrivalStoryHero h1{
    max-width:100%!important;

    font-size:
      clamp(1.42rem,6vw,1.74rem)!important;

    line-height:1.65!important;
  }

  .inArrivalStoryHero__lead{
    margin-top:20px!important;

    font-size:.73rem;

    line-height:2;
  }

  .inArrivalStoryHero__pcBreak,
  .inArrivalStoryHero__caption{
    display:none;
  }

  .inArrivalStoryHero__overlay{
    background:
      linear-gradient(
        180deg,
        rgba(6,22,38,.14) 0%,
        rgba(6,22,38,.42) 40%,
        rgba(6,22,38,.94) 100%
      );
  }


  /* COMMON */

  .inArrivalStoryIntro,
  .inArrivalStoryAirport,
  .inArrivalStoryHotel,
  .inArrivalStoryCity,
  .inArrivalStoryEvening,
  .inArrivalStoryDinner,
  .inArrivalStoryClock,
  .inArrivalStoryNotes,
  .inArrivalStoryChecklistSection,
  .inArrivalStoryFaqSection,
  .inArrivalStoryEnding,
  .inArrivalStoryRelated{
    padding-top:77px;
    padding-bottom:83px;

    scroll-margin-top:39px;
  }

  .inArrivalStoryIntro h2,
  .inArrivalStoryContents h2,
  .inArrivalStoryChapterHead h2,
  .inArrivalStoryHotel h2,
  .inArrivalStoryEvening h2,
  .inArrivalStorySimpleHead h2,
  .inArrivalStoryEnding h2,
  .inArrivalStoryRelated h2{
    font-size:1.33rem!important;

    line-height:1.74!important;
  }

  .inArrivalStoryChapterHead{
    margin-bottom:42px;
  }


  /* INTRO */

  .inArrivalStoryIntro__lead{
    font-size:.79rem;

    line-height:2.03;
  }

  .inArrivalStoryPhrase{
    margin-top:55px;
  }

  .inArrivalStoryPhrase
  > p:last-child{
    font-size:1rem;
  }

  .inArrivalStoryFacts{
    grid-template-columns:1fr;

    margin-top:50px;
  }

  .inArrivalStoryFacts article{
    min-height:0;

    padding:25px 22px 28px;
  }


  /* CONTENTS */

  .inArrivalStoryContents{
    padding:75px 0 80px;
  }

  .inArrivalStoryContents__head{
    text-align:left;
  }

  .inArrivalStoryContents__details{
    margin-top:30px;
  }

  .inArrivalStoryContents__details
  > summary{
    display:flex;

    min-height:55px;

    align-items:center;
    justify-content:space-between;

    padding:14px 16px!important;

    background:#fff;

    color:var(--ar-navy);

    font-family:"Noto Serif JP",serif!important;

    font-size:.72rem;
  }

  .inArrivalStoryContents__details
  > summary > span:last-child{
    position:relative;

    width:18px;
    height:18px;
  }

  .inArrivalStoryContents__details
  > summary > span:last-child::before,
  .inArrivalStoryContents__details
  > summary > span:last-child::after{
    content:"";

    position:absolute;

    top:8px;
    left:3px;

    width:12px;
    height:1px;

    background:var(--ar-gold);
  }

  .inArrivalStoryContents__details
  > summary > span:last-child::after{
    transform:rotate(90deg);
  }

  .inArrivalStoryContents__details[open]
  > summary > span:last-child::after{
    transform:none;
  }

  .inArrivalStoryContents__nav{
    grid-template-columns:1fr;

    padding-top:8px;
  }

  .inArrivalStoryContents__nav a{
    min-height:101px;
  }


  /* AIRPORT */

  .inArrivalStoryAirportFlow{
    grid-template-columns:1fr;
  }

  .inArrivalStoryAirportFlow article{
    min-height:0;

    padding:27px 23px 30px;
  }

  .inArrivalStoryAirportNote{
    padding:29px 22px 32px;
  }


  /* HOTEL */

  .inArrivalStoryHotel__scene h2{
    font-size:1.55rem!important;
  }

  .inArrivalStoryHotel__word{
    right:-25px;

    font-size:7rem;
  }


  /* CITY */

  .inArrivalStoryCityStop{
    grid-template-columns:1fr;

    gap:15px;

    padding:30px 0;
  }

  .inArrivalStoryCityStop__number{
    display:flex;

    align-items:center;

    gap:10px;
  }

  .inArrivalStoryCityStop__number span{
    font-size:.9rem;
  }


  /* EVENING */

  .inArrivalStoryEvening__layout{
    gap:35px;
  }


  /* DINNER */

  .inArrivalStoryDinnerFeature figure{
    min-height:0;
  }

  .inArrivalStoryDinnerFeature img{
    aspect-ratio:4/3;

    height:auto!important;
  }

  .inArrivalStoryDinnerFeature > div{
    padding:30px 23px 34px;
  }

  .inArrivalStoryCafe{
    align-items:flex-start;

    flex-direction:column;

    gap:19px;

    padding:27px 23px 30px;
  }


  /* CLOCK */

  .inArrivalStoryTabs__buttons{
    grid-template-columns:1fr;
  }

  .inArrivalStoryTabs__buttons button{
    min-height:60px;
  }

  .inArrivalStoryTabPanel{
    grid-template-columns:1fr;

    gap:18px;

    min-height:0;

    padding:30px 22px 33px;
  }


  /* NOTES */

  .inArrivalStoryNotesGrid{
    grid-template-columns:1fr;
  }

  .inArrivalStoryNotesGrid article{
    min-height:0;

    padding:27px 23px 30px;
  }

  .inArrivalStoryDrivingNote{
    padding:29px 22px 32px;
  }


  /* CHECKLIST */

  .inArrivalStoryChecklist__toolbar{
    align-items:flex-start;

    flex-direction:column;

    padding:24px 21px;
  }

  .inArrivalStoryChecklist__items{
    grid-template-columns:1fr;

    padding:16px 20px 22px;
  }

  .inArrivalStoryChecklist
  label:nth-child(even){
    border-left:0;
  }

  .inArrivalStoryChecklist
  label+label{
    border-top:1px solid var(--ar-border);
  }


  /* FAQ */

  .inArrivalStoryFaq summary{
    min-height:66px;

    padding:16px 2px!important;

    font-size:.81rem!important;
  }

  .inArrivalStoryFaq details > div{
    padding:0 30px 21px 2px;
  }


  /* RELATED */

  .inArrivalStoryRelated__grid{
    grid-template-columns:1fr;
  }

  .inArrivalStoryDisclaimer{
    text-align:left;
  }


  /* FLOATING */

  .inArrivalStoryFloatingToc{
    right:14px;
    bottom:67px;

    min-width:49px;
    min-height:49px;

    padding:11px!important;
  }

  .inArrivalStoryFloatingToc strong{
    display:none;
  }

  .inArrivalStoryDrawer__panel{
    width:min(400px,94vw);

    padding:48px 23px 40px;
  }

}


/* ==================================================
   ELEMENTOR
================================================== */

.elementor-widget-html:has(.inArrivalStory){
  margin:0!important;
}

.elementor-element:has(
  > .elementor-widget-html
  .inArrivalStory
){
  margin:0!important;
  padding:0!important;
}


/* ==================================================
   FOCUS
================================================== */

.inArrivalStory a:focus-visible,
.inArrivalStory button:focus-visible,
.inArrivalStory summary:focus-visible,
.inArrivalStory input:focus-visible{
  outline:
    2px solid var(--ar-gold)!important;

  outline-offset:4px!important;
}


/* ==================================================
   REDUCED MOTION
================================================== */

@media(prefers-reduced-motion:reduce){

  .inArrivalStory *,
  .inArrivalStory *::before,
  .inArrivalStory *::after{
    animation:none!important;
    transition:none!important;
  }

  .in-arrival-has-js
  .inArrivalStory
  .js-arrival-reveal{
    opacity:1!important;
    transform:none!important;
  }

  .in-arrival-has-js
  .inArrivalStory
  .js-arrival-image::after{
    display:none!important;
  }

  .in-arrival-has-js
  .inArrivalStory
  .js-arrival-image img{
    transform:none!important;
  }

  .inArrivalStoryNotice{
    display:none!important;
  }

}/* End custom CSS */