.elementor-19461 .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
   COURSE 06 / ROAD JOURNEY
================================================== */

.inRoadGuide{
  --road-navy:#102943;
  --road-deep:#071827;
  --road-gold:#c2a878;
  --road-ivory:#f8f5ef;
  --road-soft:#f1eee7;
  --road-white:#fff;
  --road-text:#596775;
  --road-muted:rgba(28,53,87,.56);
  --road-border:rgba(16,41,67,.12);

  position:relative;
  width:100%;
  margin:0!important;
  overflow:hidden;
  background:#fff;
  color:var(--road-text);

  font-family:
    "Noto Sans JP",
    "Yu Gothic",
    "YuGothic",
    sans-serif!important;

  font-size:16px;
  -webkit-font-smoothing:antialiased;
}

.inRoadGuide *,
.inRoadGuide *::before,
.inRoadGuide *::after{
  box-sizing:border-box;
}

.inRoadGuide img{
  display:block;
  width:100%;
  max-width:none;
  height:auto;
  margin:0;
}

.inRoadGuide figure{
  margin:0;
}

.inRoadGuide a{
  text-decoration:none;
}

.inRoadGuide :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;
}

.inRoadGuide__wide{
  width:min(1180px,calc(100% - 72px));
  margin:0 auto;
}

.inRoadGuide__article{
  width:min(930px,calc(100% - 72px));
  margin:0 auto;
}

.inRoadGuideLabel{
  margin:0!important;
  color:var(--road-gold)!important;

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:.57rem!important;
  font-weight:500!important;
  line-height:1.5!important;
  letter-spacing:.18em!important;
}


/* PROGRESS */

.inRoadGuideProgress{
  position:fixed;
  top:0;
  right:0;
  left:0;
  z-index:9999;
  height:3px;
  pointer-events:none;
}

.inRoadGuideProgress span{
  display:block;
  width:100%;
  height:100%;
  background:var(--road-gold);
  transform:scaleX(0);
  transform-origin:left;
}


/* PC CHAPTER */

.inRoadGuideChapterIndicator{
  position:fixed;
  top:50%;
  left:20px;
  z-index:180;

  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;
}

.inRoadGuideChapterIndicator.is-visible{
  opacity:.8;
  transform:translateY(-50%);
}

.inRoadGuideChapterIndicator__line{
  grid-row:1/3;
  width:1px;
  height:70px;

  background:
    linear-gradient(
      to bottom,
      var(--road-gold) 0 22%,
      rgba(16,41,67,.12) 22% 100%
    );
}

.inRoadGuideChapterIndicator__copy{
  display:grid;
  min-width:103px;
  gap:3px;
}

.inRoadGuideChapterIndicator small{
  color:var(--road-gold);
  font-family:"Noto Serif JP",serif!important;
  font-size:.42rem;
  letter-spacing:.12em;
}

.inRoadGuideChapterIndicator strong{
  color:rgba(16,41,67,.82);
  font-family:"Noto Serif JP",serif!important;
  font-size:.59rem;
  font-weight:500;
}

.inRoadGuideChapterIndicator__progress{
  margin-top:5px;
  color:rgba(16,41,67,.32);
  font-family:"Noto Serif JP",serif!important;
  font-size:.41rem;
  letter-spacing:.1em;
}

.inRoadGuideChapterIndicator.is-dark strong{
  color:rgba(255,255,255,.8);
}

.inRoadGuideChapterIndicator.is-dark
.inRoadGuideChapterIndicator__progress{
  color:rgba(255,255,255,.35);
}


/* SP BOOKMARK */

.inRoadGuideMobileBookmark{
  display:none;
}


/* CHAPTER NOTICE */

.inRoadGuideChapterNotice{
  position:fixed;
  left:24px;
  bottom:26px;
  z-index:260;

  display:grid;
  width:238px;
  gap:4px;

  padding:13px 17px 14px;

  border-left:
    1px solid rgba(194,168,120,.68);

  background:
    rgba(248,245,239,.88);

  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 .32s ease,
    transform .42s cubic-bezier(.22,1,.36,1);
}

.inRoadGuideChapterNotice span{
  color:var(--road-gold);
  font-family:"Noto Serif JP",serif!important;
  font-size:.42rem;
  letter-spacing:.13em;
}

.inRoadGuideChapterNotice strong{
  color:var(--road-navy);
  font-family:"Noto Serif JP",serif!important;
  font-size:.67rem;
  font-weight:500;
}

.inRoadGuideChapterNotice.is-showing{
  opacity:.94;
  transform:none;
}


/* IMAGE REVEAL */

.in-road-has-js
.inRoadGuide
.js-road-image{
  position:relative;
  overflow:hidden;
}

.in-road-has-js
.inRoadGuide
.js-road-image::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:4;

  background:var(--road-ivory);

  transform:translateX(0);

  transition:
    transform 1.02s
    cubic-bezier(.77,0,.18,1);

  pointer-events:none;
}

.in-road-has-js
.inRoadGuide
.js-road-image img{
  transform:scale(1.025);

  transition:
    transform 1.25s
    cubic-bezier(.22,1,.36,1);
}

.in-road-has-js
.inRoadGuide
.js-road-image.is-book-visible::after{
  transform:translateX(101%);
}

.in-road-has-js
.inRoadGuide
.js-road-image.is-book-visible img{
  transform:scale(1);
}

.in-road-has-js
.inRoadGuide
.inRoadGuideMorning
.js-road-image::after{
  background:var(--road-navy);
}

.in-road-has-js
.inRoadGuide
.inRoadGuideInterlude
.js-road-image::after,
.in-road-has-js
.inRoadGuide
.inRoadGuideEnding
.js-road-image::after{
  background:var(--road-deep);
}


/* HERO */

.inRoadGuideHero{
  position:relative;
  min-height:680px;
  overflow:hidden;
  background:var(--road-deep);
  color:#fff;
}

.inRoadGuideHero__media,
.inRoadGuideHero__overlay{
  position:absolute;
  inset:0;
}

.inRoadGuideHero__media img{
  width:100%!important;
  height:100%!important;
  object-fit:cover;
  object-position:center 52%;

  filter:
    saturate(.86)
    contrast(1.03)
    brightness(.8);

  transform:scale(1.02);
}

.inRoadGuideHero__overlay{
  z-index:1;

  background:
    linear-gradient(
      90deg,
      rgba(7,25,42,.94) 0%,
      rgba(7,25,42,.72) 43%,
      rgba(7,25,42,.27) 74%,
      rgba(7,25,42,.07) 100%
    ),
    linear-gradient(
      180deg,
      rgba(7,25,42,.03) 0%,
      rgba(7,25,42,.09) 56%,
      rgba(7,25,42,.69) 100%
    );
}

.inRoadGuideHero__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;
}

.inRoadGuideBreadcrumb{
  display:flex;
  align-items:center;
  gap:11px;
  overflow:hidden;

  color:rgba(255,255,255,.56);

  font-family:"Noto Serif JP",serif!important;
  font-size:.51rem;
  letter-spacing:.08em;

  white-space:nowrap;
}

.inRoadGuideBreadcrumb a{
  color:inherit!important;
}

.inRoadGuideBreadcrumb
> span:not(:last-child){
  width:22px;
  height:1px;
  background:var(--road-gold);
}

.inRoadGuideHero__copy{
  align-self:center;
  width:min(810px,76%);
  padding:50px 0 40px;
}

.inRoadGuideHero__pageName{
  margin:0!important;
  color:rgba(255,255,255,.86);
  font-family:"Noto Serif JP",serif!important;
  font-size:.76rem;
  letter-spacing:.06em;
}

.inRoadGuideHero__en{
  margin:9px 0 0!important;
  color:var(--road-gold);
  font-family:"Noto Serif JP",serif!important;
  font-size:.56rem;
  letter-spacing:.18em;
}

body .inRoadGuide .inRoadGuideHero h1{
  width:100%!important;
  max-width:790px!important;
  margin:26px 0 0!important;
  color:#fff!important;

  font-size:
    clamp(1.55rem,2.4vw,2.35rem)!important;

  line-height:1.55!important;
  letter-spacing:.018em!important;
}

.inRoadGuideHero__lead{
  max-width:740px;
  margin:27px 0 0!important;

  color:rgba(255,255,255,.77);

  font-size:.84rem;
  line-height:2.08;
}

.inRoadGuideHero__discover{
  display:inline-flex;
  align-items:center;
  gap:16px;

  margin-top:33px;

  color:#fff!important;

  font-family:"Noto Serif JP",serif!important;
  font-size:.52rem;
  letter-spacing:.16em;
}

.inRoadGuideHero__discover
> span:last-child{
  width:50px;
  height:1px;
  background:var(--road-gold);
}

.inRoadGuideHero__caption{
  display:flex;
  justify-content:space-between;

  color:rgba(255,255,255,.45);

  font-family:"Noto Serif JP",serif!important;
  font-size:.46rem;
  letter-spacing:.14em;
}


/* COMMON */

.inRoadGuideIntro h2,
.inRoadGuideContents h2,
.inRoadGuideChapterHead h2,
.inRoadGuideNoteHead h2,
.inRoadGuideEnding h2,
.inRoadGuideRelated h2{
  margin:14px 0 0!important;
  color:var(--road-navy)!important;

  font-family:"Noto Serif JP",serif!important;

  font-size:
    clamp(1.5rem,2.35vw,2.05rem)!important;

  line-height:1.72!important;
}

.inRoadGuideChapterHead{
  display:grid;

  grid-template-columns:
    minmax(0,1.15fr)
    minmax(310px,.85fr);

  gap:clamp(45px,6vw,82px);

  margin-bottom:64px;
}

.inRoadGuideChapterHead__catch{
  margin:0!important;
  color:var(--road-navy);
  font-family:"Noto Serif JP",serif!important;

  font-size:
    clamp(1.02rem,1.45vw,1.28rem);

  line-height:1.82;
}

.inRoadGuideChapterHead__text{
  margin:18px 0 0!important;
  font-size:.81rem;
  line-height:2;
}

.inRoadGuideChapterHead--dark h2,
.inRoadGuideChapterHead--dark
.inRoadGuideChapterHead__catch{
  color:#fff!important;
}

.inRoadGuideChapterHead--dark
.inRoadGuideChapterHead__text{
  color:rgba(255,255,255,.68);
}


/* INTRO */

.inRoadGuideIntro{
  padding:118px 0 126px;
}

.inRoadGuideIntro__layout{
  display:grid;

  grid-template-columns:
    minmax(330px,.86fr)
    minmax(0,1.14fr);

  gap:clamp(60px,8vw,110px);
}

.inRoadGuideIntro__lead{
  font-size:.89rem;
  line-height:2.15;
}

.inRoadGuideIntro__lead p{
  margin:0!important;
}

.inRoadGuideIntro__lead p+p{
  margin-top:1.45em!important;
}

.inRoadGuideIntroPhrase{
  width:min(760px,100%);
  margin:81px auto 0;
  text-align:center;
}

.inRoadGuideIntroPhrase
> p:last-child{
  margin:20px 0 0!important;

  color:var(--road-navy);

  font-family:"Noto Serif JP",serif!important;

  font-size:
    clamp(1.15rem,1.9vw,1.5rem);

  line-height:2;
}

.inRoadGuideFacts{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1px;

  margin-top:76px;

  background:var(--road-border);
}

.inRoadGuideFacts article{
  min-height:220px;
  padding:29px 27px 32px;
  background:var(--road-ivory);
}

.inRoadGuideFacts
article > span{
  color:var(--road-gold);
  font-family:"Noto Serif JP",serif!important;
  font-size:.54rem;
}

.inRoadGuideFacts
article > p:first-of-type{
  margin:10px 0 0!important;
  color:var(--road-muted);
  font-size:.46rem;
  letter-spacing:.13em;
}

.inRoadGuideFacts h3{
  margin:22px 0 0!important;
  color:var(--road-navy);
  font-size:.95rem!important;
  line-height:1.72;
}

.inRoadGuideFacts
article > p:last-child{
  margin:14px 0 0!important;
  font-size:.71rem;
  line-height:1.95;
}

.inRoadGuideNote{
  display:grid;
  grid-template-columns:155px minmax(0,1fr);
  gap:26px;

  margin-top:65px;
  padding:27px 30px;

  background:var(--road-soft);
}

.inRoadGuideNote__label{
  margin:0!important;
  color:var(--road-gold);

  font-family:"Noto Serif JP",serif!important;
  font-size:.5rem;
  letter-spacing:.13em;
}

.inRoadGuideNote
> p:last-child{
  margin:0!important;
  font-size:.72rem;
  line-height:1.95;
}


/* CONTENTS */

.inRoadGuideContents{
  padding:99px 0 106px;
  background:var(--road-soft);
}

.inRoadGuideContents__head{
  max-width:760px;
  margin:0 auto;
  text-align:center;
}

.inRoadGuideContents__head
> p:last-child{
  margin:20px 0 0!important;
  font-size:.76rem;
  line-height:1.95;
}

.inRoadGuideContents__details{
  margin-top:45px;
}

.inRoadGuideContents__details
> summary{
  display:none;
}

.inRoadGuideContents__nav{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1px;

  background:var(--road-border);
}

.inRoadGuideContents__nav a{
  position:relative;
  min-height:140px;

  padding:25px 24px 31px;

  background:#fff;
  color:inherit!important;
}

.inRoadGuideContents__nav a span{
  color:var(--road-gold);
  font-family:"Noto Serif JP",serif!important;
  font-size:.51rem;
}

.inRoadGuideContents__nav small{
  display:block;
  margin-top:10px;
  color:var(--road-muted);
  font-size:.43rem;
  letter-spacing:.12em;
}

.inRoadGuideContents__nav strong{
  display:block;
  margin-top:8px;

  color:var(--road-navy);

  font-family:"Noto Serif JP",serif!important;
  font-size:.8rem;
  font-weight:500;
  line-height:1.65;
}

.inRoadGuideContents__nav a::after{
  content:"";
  position:absolute;
  right:21px;
  bottom:20px;

  width:23px;
  height:1px;

  background:var(--road-gold);
}


/* OVERVIEW */

.inRoadGuideOverview{
  padding:118px 0 126px;
}

.inRoadGuideJourney{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1px;
  background:var(--road-border);
}

.inRoadGuideJourney article{
  min-height:265px;
  padding:35px 29px 40px;
  background:var(--road-ivory);
}

.inRoadGuideJourney__main{
  background:var(--road-navy)!important;
}

.inRoadGuideJourney span{
  color:var(--road-gold);
  font-family:"Noto Serif JP",serif!important;
  font-size:.52rem;
}

.inRoadGuideJourney
article > p:first-of-type{
  margin:10px 0 0!important;
  color:var(--road-muted);
  font-size:.44rem;
  letter-spacing:.12em;
}

.inRoadGuideJourney h3{
  margin:27px 0 0!important;
  color:var(--road-navy);
  font-size:1.25rem!important;
}

.inRoadGuideJourney strong{
  display:block;
  margin-top:12px;

  color:var(--road-navy);

  font-family:"Noto Serif JP",serif!important;
  font-size:.72rem;
  font-weight:500;
}

.inRoadGuideJourney
article > p:last-child{
  margin:17px 0 0!important;
  font-size:.73rem;
  line-height:1.95;
}

.inRoadGuideJourney__main h3,
.inRoadGuideJourney__main strong{
  color:#fff;
}

.inRoadGuideJourney__main
> p:last-child{
  color:rgba(255,255,255,.68);
}

.inRoadGuideRouteLine{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:18px;

  margin-top:54px;
  padding:31px;

  background:var(--road-navy);
}

.inRoadGuideRouteLine div{
  min-width:100px;
  text-align:center;
}

.inRoadGuideRouteLine span{
  display:block;
  color:var(--road-gold);
  font-family:"Noto Serif JP",serif!important;
  font-size:.43rem;
}

.inRoadGuideRouteLine strong{
  display:block;
  margin-top:8px;
  color:#fff;
  font-family:"Noto Serif JP",serif!important;
  font-size:.73rem;
  font-weight:500;
}

.inRoadGuideRouteLine i{
  flex:1;
  max-width:70px;
  height:1px;
  background:rgba(194,168,120,.38);
}


/* MORNING */

.inRoadGuideMorning{
  padding:118px 0 126px;
  background:var(--road-navy);
}

.inRoadGuideMorningEditorial,
.inRoadGuideYoneharaEditorial,
.inRoadGuideWestEditorial{
  display:grid;

  grid-template-columns:
    minmax(0,.9fr)
    minmax(0,1.1fr);

  gap:clamp(50px,7vw,90px);

  align-items:center;
}

.inRoadGuideMorningEditorial img,
.inRoadGuideYoneharaEditorial img,
.inRoadGuideWestEditorial img{
  aspect-ratio:4/3;
  object-fit:cover;
}

.inRoadGuideMorningEditorial h3,
.inRoadGuideYoneharaEditorial h3,
.inRoadGuideWestEditorial h3{
  margin:17px 0 0!important;

  font-size:
    clamp(1.35rem,2.2vw,1.85rem)!important;

  line-height:1.78;
}

.inRoadGuideMorningEditorial h3{
  color:#fff;
}

.inRoadGuideMorningEditorial
> div
> p:not(.inRoadGuideLabel){
  margin:20px 0 0!important;
  color:rgba(255,255,255,.68);
  font-size:.8rem;
  line-height:2.05;
}

.inRoadGuideMorningEditorial a,
.inRoadGuideYoneharaEditorial a,
.inRoadGuideWestEditorial a{
  display:inline-flex;
  margin-top:22px;

  font-family:"Noto Serif JP",serif!important;
  font-size:.63rem;

  text-decoration:underline;
  text-underline-offset:5px;
}

.inRoadGuideMorningEditorial a{
  color:#fff!important;
}


/* TIMELINE */

.inRoadGuideTimeline{
  position:relative;
  width:min(900px,100%);
  margin:67px auto 0;
}

.inRoadGuideTimeline::before{
  content:"";
  position:absolute;
  top:29px;
  bottom:29px;
  left:125px;

  width:1px;
  background:rgba(194,168,120,.32);
}

.inRoadGuideTimeline article{
  display:grid;
  grid-template-columns:102px minmax(0,1fr);
  gap:48px;

  padding:29px 0;
}

.inRoadGuideTimeline article+article{
  border-top:1px solid rgba(255,255,255,.09);
}

.inRoadGuideTimeline__time{
  position:relative;

  color:var(--road-gold);

  font-family:"Noto Serif JP",serif!important;
  font-size:.74rem;
}

.inRoadGuideTimeline__time::after{
  content:"";
  position:absolute;

  top:.45em;
  right:-29px;

  width:8px;
  height:8px;

  border:1px solid var(--road-gold);
  border-radius:50%;

  background:var(--road-navy);
}

.inRoadGuideTimeline h3{
  margin:13px 0 0!important;
  color:#fff;
  font-size:1.06rem!important;
}

.inRoadGuideTimeline
article
> div:last-child
> p:last-child{
  margin:13px 0 0!important;

  color:rgba(255,255,255,.66);

  font-size:.74rem;
  line-height:2;
}


/* INTERLUDE */

.inRoadGuideInterlude{
  position:relative;
  min-height:550px;
  overflow:hidden;
  background:var(--road-deep);
}

.inRoadGuideInterlude > figure{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
}

.inRoadGuideInterlude > figure img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}

.inRoadGuideInterlude__overlay{
  position:absolute;
  inset:0;
  z-index:1;

  background:
    linear-gradient(
      90deg,
      rgba(4,18,30,.7) 0%,
      rgba(4,18,30,.38) 46%,
      rgba(4,18,30,.06) 80%
    ),
    linear-gradient(
      180deg,
      rgba(4,18,30,.03) 0%,
      rgba(4,18,30,.08) 50%,
      rgba(4,18,30,.7) 100%
    );
}

.inRoadGuideInterlude__copy{
  position:relative;
  z-index:2;

  display:flex;
  flex-direction:column;
  justify-content:flex-end;

  width:min(1180px,calc(100% - 72px));
  min-height:550px;

  margin:0 auto;
  padding:72px 0;
}

.inRoadGuideInterlude__copy p{
  margin:0!important;
  color:var(--road-gold);
  font-family:"Noto Serif JP",serif!important;
  font-size:.56rem;
  letter-spacing:.17em;
}

.inRoadGuideInterlude__copy h2{
  max-width:700px;
  margin:17px 0 0!important;

  color:#fff;

  font-family:"Noto Serif JP",serif!important;

  font-size:
    clamp(1.6rem,2.7vw,2.35rem)!important;

  line-height:1.7;
}


/* YONEHARA */

.inRoadGuideYonehara{
  padding:120px 0 128px;
}

.inRoadGuideYoneharaEditorial h3,
.inRoadGuideWestEditorial h3{
  color:var(--road-navy);
}

.inRoadGuideYoneharaEditorial
> div
> p:not(.inRoadGuideLabel),
.inRoadGuideWestEditorial
> div
> p:not(.inRoadGuideLabel){
  margin:20px 0 0!important;
  font-size:.8rem;
  line-height:2.04;
}

.inRoadGuideYoneharaEditorial a,
.inRoadGuideWestEditorial a{
  color:var(--road-navy)!important;
}

.inRoadGuidePalmNote{
  width:min(820px,100%);
  margin:61px auto 0;

  padding:37px 41px;

  background:var(--road-soft);
}

.inRoadGuidePalmNote h3{
  margin:16px 0 0!important;
  color:var(--road-navy);
  font-size:1.08rem!important;
}

.inRoadGuidePalmNote
> p:last-child{
  margin:17px 0 0!important;
  font-size:.76rem;
  line-height:2;
}


/* KABIRA */

.inRoadGuideKabira{
  padding:117px 0 126px;
  background:var(--road-deep);
}

.inRoadGuideKabira__intro{
  max-width:780px;
}

.inRoadGuideKabira__intro h2{
  margin:16px 0 0!important;
  color:#fff;

  font-family:"Noto Serif JP",serif!important;

  font-size:
    clamp(1.65rem,2.8vw,2.4rem)!important;

  line-height:1.72;
}

.inRoadGuideKabira__intro
> p:last-child{
  margin:20px 0 0!important;
  color:rgba(255,255,255,.6);
  font-size:.76rem;
}

.inRoadGuideKabiraScene{
  display:grid;

  grid-template-columns:
    85px
    minmax(0,1.3fr)
    minmax(260px,.7fr);

  gap:40px;

  align-items:start;

  margin-top:58px;
  padding:48px;

  border-top:1px solid rgba(194,168,120,.38);
  border-bottom:1px solid rgba(194,168,120,.38);
}

.inRoadGuideKabiraScene__number{
  color:rgba(194,168,120,.55);
  font-family:"Noto Serif JP",serif!important;
  font-size:2.3rem;
  line-height:1;
}

.inRoadGuideKabiraScene__main span{
  color:var(--road-gold);
  font-family:"Noto Serif JP",serif!important;
  font-size:.51rem;
  letter-spacing:.15em;
}

.inRoadGuideKabiraScene h3{
  margin:18px 0 0!important;
  color:#fff;

  font-size:
    clamp(1.4rem,2.35vw,1.95rem)!important;

  line-height:1.78;
}

.inRoadGuideKabiraScene__main p{
  margin:19px 0 0!important;
  color:rgba(255,255,255,.68);
  font-size:.77rem;
  line-height:2;
}

.inRoadGuideKabiraScene dl{
  margin:0;
}

.inRoadGuideKabiraScene dl > div{
  padding:13px 0;
}

.inRoadGuideKabiraScene dl > div+div{
  border-top:1px solid rgba(255,255,255,.12);
}

.inRoadGuideKabiraScene dt{
  color:rgba(255,255,255,.42);
  font-size:.59rem;
}

.inRoadGuideKabiraScene dd{
  margin:6px 0 0;
  color:#fff;
  font-size:.7rem;
  line-height:1.7;
}

.inRoadGuideKabiraRule{
  width:min(830px,100%);
  margin:58px auto 0;
  padding:36px 40px;

  background:var(--road-ivory);
}

.inRoadGuideKabiraRule h3{
  margin:16px 0 0!important;
  color:var(--road-navy);
  font-size:1.1rem!important;
  line-height:1.8;
}

.inRoadGuideKabiraRule p:last-of-type{
  margin:17px 0 0!important;
  font-size:.76rem;
  line-height:2;
}

.inRoadGuideKabiraRule a{
  display:inline-flex;
  margin-top:20px;
  color:var(--road-navy)!important;

  font-family:"Noto Serif JP",serif!important;
  font-size:.63rem;

  text-decoration:underline;
  text-underline-offset:5px;
}


/* WEST */

.inRoadGuideWest{
  padding:120px 0 128px;
  background:var(--road-ivory);
}

.inRoadGuideReturnRule{
  width:min(820px,100%);
  margin:59px auto 0;
  padding:37px 41px;
  background:#fff;
}

.inRoadGuideReturnRule h3{
  margin:16px 0 0!important;
  color:var(--road-navy);
  font-size:1.08rem!important;
  line-height:1.8;
}

.inRoadGuideReturnRule
> p:last-child{
  margin:17px 0 0!important;
  font-size:.76rem;
  line-height:2;
}


/* FOOD */

.inRoadGuideFood{
  padding:113px 0 121px;
  background:#fff;
}

.inRoadGuideFeatureGrid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1px;
  background:var(--road-border);
}

.inRoadGuideFeatureCard{
  display:grid;
  grid-template-columns:minmax(170px,.72fr) minmax(0,1.28fr);

  background:var(--road-navy);
}

.inRoadGuideFeatureCard figure{
  min-height:330px;
}

.inRoadGuideFeatureCard img{
  height:100%!important;
  object-fit:cover;
}

.inRoadGuideFeatureCard > div{
  display:flex;
  flex-direction:column;
  justify-content:center;

  padding:33px 30px;
}

.inRoadGuideBadge{
  width:fit-content;
  padding:6px 9px;

  border:1px solid rgba(194,168,120,.55);

  color:var(--road-gold);

  font-family:"Noto Serif JP",serif!important;
  font-size:.5rem;
  letter-spacing:.1em;
}

.inRoadGuideFeatureCard h3{
  margin:17px 0 0!important;
  color:#fff;
  font-size:1.19rem!important;
}

.inRoadGuideFeatureCard p{
  margin:16px 0 0!important;

  color:rgba(255,255,255,.69);

  font-size:.74rem;
  line-height:1.96;
}

.inRoadGuideFeatureCard strong{
  display:block;
  margin-top:15px;

  color:#fff;

  font-family:"Noto Serif JP",serif!important;
  font-size:.69rem;
  font-weight:500;
}

.inRoadGuideFeatureCard a{
  display:inline-flex;
  margin-top:19px;

  color:#fff!important;

  font-family:"Noto Serif JP",serif!important;
  font-size:.62rem;

  text-decoration:underline;
  text-underline-offset:5px;
}

.inRoadGuideDisclosure{
  margin:26px 0 0!important;
  color:var(--road-muted);
  font-size:.62rem;
  line-height:1.85;
}


/* NOTES */

.inRoadGuideNotes{
  padding:116px 0 124px;
  background:var(--road-navy);
}

.inRoadGuidePlanGrid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1px;

  background:rgba(255,255,255,.12);
}

.inRoadGuidePlanGrid article{
  padding:29px 25px 32px;
  background:rgba(255,255,255,.055);
}

.inRoadGuidePlanGrid span{
  color:var(--road-gold);
  font-family:"Noto Serif JP",serif!important;
  font-size:.48rem;
}

.inRoadGuidePlanGrid h3{
  margin:18px 0 0!important;
  color:#fff;
  font-size:.95rem!important;
}

.inRoadGuidePlanGrid p{
  margin:12px 0 0!important;
  color:rgba(255,255,255,.65);
  font-size:.7rem;
  line-height:1.9;
}

.inRoadGuidePractical{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1px;

  margin-top:45px;

  background:rgba(255,255,255,.12);
}

.inRoadGuidePractical article{
  padding:27px 24px 30px;
}

.inRoadGuidePractical span{
  color:var(--road-gold);
  font-family:"Noto Serif JP",serif!important;
  font-size:.48rem;
}

.inRoadGuidePractical h3{
  margin:17px 0 0!important;
  color:#fff;
  font-size:.93rem!important;
}

.inRoadGuidePractical p{
  margin:11px 0 0!important;
  color:rgba(255,255,255,.62);
  font-size:.68rem;
  line-height:1.85;
}

.inRoadGuideTextLinks{
  display:flex;
  flex-wrap:wrap;
  gap:12px 26px;
  margin-top:33px;
}

.inRoadGuideTextLinks a{
  color:#fff!important;
  font-family:"Noto Serif JP",serif!important;
  font-size:.63rem;

  text-decoration:underline;
  text-underline-offset:5px;
}


/* NOTE HEAD */

.inRoadGuideChecklistSection,
.inRoadGuideFaqSection{
  padding:104px 0 111px;
}

.inRoadGuideChecklistSection{
  background:var(--road-soft);
}

.inRoadGuideFaqSection{
  background:#fff;
}

.inRoadGuideNoteHead{
  max-width:760px;
  margin-bottom:45px;
}


/* CHECKLIST */

.inRoadGuideChecklist{
  overflow:hidden;
  background:#fff;

  box-shadow:
    0 22px 60px rgba(16,41,67,.08);
}

.inRoadGuideChecklist__toolbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:25px;

  padding:27px 30px;

  background:var(--road-navy);
}

.inRoadGuideChecklist__toolbar > div{
  display:flex;
  align-items:flex-end;
  gap:8px;
}

.inRoadGuideChecklist__toolbar
.inRoadGuideLabel{
  margin-right:13px!important;
}

.inRoadGuideChecklist__toolbar strong{
  color:#fff;
  font-family:"Noto Serif JP",serif!important;
  font-size:1.2rem;
  font-weight:500;
}

.inRoadGuideChecklist__toolbar
> div > p:last-child{
  margin:0 0 2px!important;
  color:rgba(255,255,255,.45);
  font-size:.53rem;
}

.inRoadGuideChecklist__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:.61rem;
}

.inRoadGuideChecklist__progress{
  height:4px;
  background:rgba(16,41,67,.08);
}

.inRoadGuideChecklist__progress span{
  display:block;
  width:100%;
  height:100%;

  background:var(--road-gold);

  transform:scaleX(0);
  transform-origin:left;
  transition:transform .3s ease;
}

.inRoadGuideChecklist__items{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  padding:18px 27px 25px;
}

.inRoadGuideChecklist label{
  display:grid;
  grid-template-columns:21px minmax(0,1fr);
  gap:11px;
  align-items:center;

  min-height:50px;
  padding:8px;

  cursor:pointer;
}

.inRoadGuideChecklist label:nth-child(even){
  border-left:1px solid var(--road-border);
}

.inRoadGuideChecklist label:nth-child(n+3){
  border-top:1px solid var(--road-border);
}

.inRoadGuideChecklist input{
  width:18px;
  height:18px;
  margin:0;

  appearance:none;

  border:1px solid rgba(16,41,67,.3);
  border-radius:0;

  background:#fff;
}

.inRoadGuideChecklist input:checked{
  border-color:var(--road-navy);
  background:var(--road-navy);
}

.inRoadGuideChecklist 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);
}

.inRoadGuideChecklist label > span{
  font-size:.74rem;
  line-height:1.72;
}

.inRoadGuideChecklist label.is-checked{
  background:var(--road-ivory);
}

.inRoadGuideChecklist label.is-checked > span{
  text-decoration:line-through;
  text-decoration-color:rgba(194,168,120,.75);
}

.inRoadGuideChecklist__privacy{
  margin:0!important;
  padding:18px 30px 21px;

  border-top:1px solid var(--road-border);

  color:var(--road-muted);
  font-size:.55rem;
}


/* FAQ */

.inRoadGuideFaq{
  border-top:1px solid var(--road-border);
}

.inRoadGuideFaq details{
  border-bottom:1px solid var(--road-border);
}

.inRoadGuideFaq summary{
  display:flex!important;

  min-height:73px;

  align-items:center;
  justify-content:space-between;
  gap:25px;

  padding:19px 3px!important;

  list-style:none;

  color:var(--road-navy);

  font-family:"Noto Serif JP",serif!important;
  font-size:.86rem!important;

  cursor:pointer;
}

.inRoadGuideFaq
summary::-webkit-details-marker{
  display:none;
}

.inRoadGuideFaq
summary > span:last-child{
  position:relative;
  flex:0 0 auto;
  width:21px;
  height:21px;
}

.inRoadGuideFaq
summary > span:last-child::before,
.inRoadGuideFaq
summary > span:last-child::after{
  content:"";

  position:absolute;
  top:10px;
  left:4px;

  width:13px;
  height:1px;

  background:var(--road-gold);
}

.inRoadGuideFaq
summary > span:last-child::after{
  transform:rotate(90deg);
}

.inRoadGuideFaq
details[open]
summary > span:last-child::after{
  transform:none;
}

.inRoadGuideFaq details > div{
  padding:0 46px 24px 3px;
}

.inRoadGuideFaq p{
  margin:0!important;
  font-size:.75rem;
  line-height:2;
}


/* ENDING */

.inRoadGuideEnding{
  position:relative;
  min-height:650px;
  overflow:hidden;
  background:var(--road-deep);
}

.inRoadGuideEnding > figure{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
}

.inRoadGuideEnding > figure img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;

  filter:
    saturate(.82)
    brightness(.72);
}

.inRoadGuideEnding__overlay{
  position:absolute;
  inset:0;
  z-index:1;

  background:
    linear-gradient(
      90deg,
      rgba(5,20,33,.88) 0%,
      rgba(5,20,33,.6) 48%,
      rgba(5,20,33,.15) 80%
    ),
    linear-gradient(
      180deg,
      rgba(5,20,33,.05) 0%,
      rgba(5,20,33,.15) 44%,
      rgba(5,20,33,.83) 100%
    );
}

.inRoadGuideEnding__inner{
  position:relative;
  z-index:2;

  display:flex;
  flex-direction:column;
  justify-content:center;

  width:min(930px,calc(100% - 72px));
  min-height:650px;

  margin:0 auto;
  padding:80px 0;
}

.inRoadGuideEnding h2{
  max-width:770px;
  color:#fff!important;
}

.inRoadGuideEnding p:not(.inRoadGuideLabel){
  max-width:710px;

  margin:21px 0 0!important;

  color:rgba(255,255,255,.72);

  font-size:.79rem;
  line-height:2.05;
}

.inRoadGuideEnding a{
  display:inline-flex;
  width:fit-content;

  align-items:center;
  gap:30px;

  margin-top:30px;
  padding-bottom:7px;

  border-bottom:1px solid var(--road-gold);

  color:#fff!important;

  font-family:"Noto Serif JP",serif!important;
  font-size:.64rem;
}


/* RELATED */

.inRoadGuideRelated{
  padding:105px 0 113px;
}

.inRoadGuideRelated header{
  margin-bottom:44px;
}

.inRoadGuideRelated__grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1px;
  background:var(--road-border);
}

.inRoadGuideRelated__grid a{
  padding:30px 27px 34px;
  background:var(--road-ivory);
  color:inherit!important;
}

.inRoadGuideRelated__grid span{
  color:var(--road-gold);
  font-family:"Noto Serif JP",serif!important;
  font-size:.52rem;
}

.inRoadGuideRelated__grid
a > p:first-of-type{
  margin:10px 0 0!important;
  color:var(--road-muted);
  font-size:.44rem;
  letter-spacing:.12em;
}

.inRoadGuideRelated__grid h3{
  margin:16px 0 0!important;
  color:var(--road-navy);
  font-size:1rem!important;
}

.inRoadGuideRelated__grid
a > p:last-child{
  margin:12px 0 0!important;
  font-size:.7rem;
  line-height:1.9;
}

.inRoadGuideDisclaimer{
  margin:0!important;
  padding:27px 20px 35px;

  color:var(--road-muted);

  font-size:.58rem;
  line-height:1.85;

  text-align:center;
}


/* FLOATING TOC */

.inRoadGuideFloatingToc{
  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;
}

.inRoadGuideFloatingToc.is-visible{
  opacity:1;
  pointer-events:auto;
  transform:none;
}

.inRoadGuideFloatingToc > span{
  position:relative;

  width:16px;
  height:12px;

  border-top:1px solid var(--road-gold);
  border-bottom:1px solid var(--road-gold);
}

.inRoadGuideFloatingToc > span::after{
  content:"";
  position:absolute;
  top:5px;
  left:0;

  width:16px;
  height:1px;

  background:var(--road-gold);
}

.inRoadGuideFloatingToc strong{
  font-family:"Noto Serif JP",serif!important;
  font-size:.45rem;
  font-weight:500;
}


/* DRAWER */

.inRoadGuideDrawer{
  position:fixed;
  inset:0;
  z-index:9998;

  visibility:hidden;
  opacity:0;
  pointer-events:none;

  transition:
    opacity .3s ease,
    visibility 0s linear .3s;
}

.inRoadGuideDrawer.is-open{
  visibility:visible;
  opacity:1;
  pointer-events:auto;
  transition-delay:0s;
}

.inRoadGuideDrawer__backdrop{
  position:absolute;
  inset:0;
  z-index:1;

  width:100%;
  border:0!important;

  background:rgba(5,20,33,.63)!important;
}

.inRoadGuideDrawer__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(--road-ivory);

  transform:translateX(102%);

  transition:
    transform .42s
    cubic-bezier(.22,1,.36,1);
}

.inRoadGuideDrawer.is-open
.inRoadGuideDrawer__panel{
  transform:none;
}

.inRoadGuideDrawer__panel header{
  display:flex;
  justify-content:space-between;
  gap:25px;

  padding-bottom:25px;
}

.inRoadGuideDrawer__panel
header p{
  margin:0 0 7px!important;
  color:var(--road-gold);
  font-size:.48rem;
  letter-spacing:.16em;
}

.inRoadGuideDrawer__panel
header h2{
  margin:0!important;
  color:var(--road-navy);
  font-size:1.12rem!important;
}

.inRoadGuideDrawer__close{
  position:relative;
  width:37px;
  height:37px;

  border:0!important;
  background:transparent!important;
}

.inRoadGuideDrawer__close span{
  position:absolute;
  top:18px;
  left:7px;

  width:23px;
  height:1px;

  background:var(--road-navy);
}

.inRoadGuideDrawer__close
span:first-child{
  transform:rotate(45deg);
}

.inRoadGuideDrawer__close
span:last-child{
  transform:rotate(-45deg);
}

.inRoadGuideDrawer nav{
  display:grid;
}

.inRoadGuideDrawer nav a{
  display:grid;
  grid-template-columns:35px minmax(0,1fr);
  gap:12px;

  padding:15px 2px;

  border-top:1px solid var(--road-border);

  color:var(--road-text)!important;

  font-size:.72rem;
}

.inRoadGuideDrawer nav span{
  color:var(--road-gold);
  font-family:"Noto Serif JP",serif!important;
  font-size:.5rem;
}

html.in-road-drawer-open{
  overflow:hidden;
}


/* REVEAL */

.in-road-has-js
.inRoadGuide
.js-road-reveal{
  opacity:0;
  transform:translateY(23px);

  transition:
    opacity .8s ease var(--road-delay,0ms),
    transform .8s
    cubic-bezier(.22,1,.36,1)
    var(--road-delay,0ms);
}

.in-road-has-js
.inRoadGuide
.js-road-reveal.is-visible{
  opacity:1;
  transform:none;
}


/* TABLET */

@media(max-width:1100px){

  .inRoadGuideChapterIndicator{
    display:none;
  }

  .inRoadGuideContents__nav{
    grid-template-columns:
      repeat(3,minmax(0,1fr));
  }

  .inRoadGuideFacts,
  .inRoadGuidePlanGrid,
  .inRoadGuidePractical{
    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }

  .inRoadGuideJourney{
    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }

}


@media(max-width:900px){

  .inRoadGuideIntro__layout,
  .inRoadGuideChapterHead,
  .inRoadGuideMorningEditorial,
  .inRoadGuideYoneharaEditorial,
  .inRoadGuideWestEditorial{
    grid-template-columns:1fr;
  }

  .inRoadGuideChapterHead{
    gap:28px;
  }

  .inRoadGuideFeatureCard{
    grid-template-columns:1fr;
  }

}


/* MOBILE */

@media(max-width:767px){

  .inRoadGuide__wide,
  .inRoadGuide__article,
  .inRoadGuideEnding__inner{
    width:calc(100% - 34px);
  }


  /* BOOKMARK */

  .inRoadGuideMobileBookmark{
    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;
  }

  .inRoadGuideMobileBookmark.is-visible{
    opacity:.87;
    transform:none;
  }

  .inRoadGuideMobileBookmark__inner{
    display:grid;

    grid-template-columns:
      auto
      minmax(0,1fr)
      auto;

    gap:8px;
    align-items:center;

    min-height:34px;

    padding:6px 13px 7px;

    border-bottom:
      1px solid rgba(16,41,67,.05);

    background:
      rgba(248,245,239,.82);

    backdrop-filter:blur(9px);
  }

  .inRoadGuideMobileBookmark__chapter{
    color:var(--road-gold);

    font-family:"Noto Serif JP",serif!important;
    font-size:.38rem;
    letter-spacing:.09em;

    white-space:nowrap;
  }

  .inRoadGuideMobileBookmark__title{
    overflow:hidden;

    color:rgba(16,41,67,.79);

    font-family:"Noto Serif JP",serif!important;
    font-size:.55rem;
    font-weight:500;

    white-space:nowrap;
    text-overflow:ellipsis;
  }

  .inRoadGuideMobileBookmark__progress{
    color:rgba(16,41,67,.32);
    font-family:"Noto Serif JP",serif!important;
    font-size:.38rem;
  }

  .inRoadGuideMobileBookmark.is-dark
  .inRoadGuideMobileBookmark__inner{
    background:rgba(7,24,39,.77);
  }

  .inRoadGuideMobileBookmark.is-dark
  .inRoadGuideMobileBookmark__title{
    color:rgba(255,255,255,.78);
  }


  /* NOTICE */

  .inRoadGuideChapterNotice{
    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,.82);

    transform:translateY(7px);
  }

  .inRoadGuideChapterNotice span{
    flex:0 0 auto;
    font-size:.38rem;
  }

  .inRoadGuideChapterNotice strong{
    overflow:hidden;

    color:rgba(255,255,255,.84);

    font-size:.57rem;

    white-space:nowrap;
    text-overflow:ellipsis;
  }

  .inRoadGuideChapterNotice.is-showing{
    opacity:.9;
    transform:none;
  }


  /* HERO */

  .inRoadGuideHero,
  .inRoadGuideHero__inner{
    min-height:620px;
  }

  .inRoadGuideHero__inner{
    width:calc(100% - 34px);
    padding:50px 0 30px;
  }

  .inRoadGuideHero__copy{
    width:100%;
    padding:37px 0 24px;
  }

  body .inRoadGuide
  .inRoadGuideHero h1{
    max-width:100%!important;
    margin-top:22px!important;

    font-size:
      clamp(1.42rem,6vw,1.72rem)!important;

    line-height:1.62!important;
  }

  .inRoadGuideHero__lead{
    margin-top:20px!important;
    font-size:.73rem;
    line-height:2;
  }

  .inRoadGuideHero__pcBreak,
  .inRoadGuideHero__caption{
    display:none;
  }

  .inRoadGuideHero__overlay{
    background:
      linear-gradient(
        180deg,
        rgba(7,25,42,.15) 0%,
        rgba(7,25,42,.40) 38%,
        rgba(7,25,42,.93) 100%
      );
  }


  /* SECTIONS */

  .inRoadGuideIntro,
  .inRoadGuideOverview,
  .inRoadGuideMorning,
  .inRoadGuideYonehara,
  .inRoadGuideKabira,
  .inRoadGuideWest,
  .inRoadGuideFood,
  .inRoadGuideNotes,
  .inRoadGuideChecklistSection,
  .inRoadGuideFaqSection,
  .inRoadGuideRelated{
    padding-top:77px;
    padding-bottom:83px;
    scroll-margin-top:39px;
  }

  .inRoadGuideIntro h2,
  .inRoadGuideContents h2,
  .inRoadGuideChapterHead h2,
  .inRoadGuideNoteHead h2,
  .inRoadGuideEnding h2,
  .inRoadGuideRelated h2{
    font-size:1.33rem!important;
    line-height:1.74!important;
  }

  .inRoadGuideChapterHead{
    margin-bottom:42px;
  }

  .inRoadGuideChapterHead__catch{
    font-size:.96rem;
  }

  .inRoadGuideChapterHead__text{
    font-size:.74rem;
  }


  /* INTRO */

  .inRoadGuideIntro__lead{
    font-size:.79rem;
    line-height:2.02;
  }

  .inRoadGuideIntroPhrase{
    margin-top:55px;
  }

  .inRoadGuideIntroPhrase
  > p:last-child{
    font-size:1rem;
  }

  .inRoadGuideFacts{
    grid-template-columns:1fr;
    margin-top:50px;
  }

  .inRoadGuideFacts article{
    min-height:0;
    padding:25px 22px 28px;
  }

  .inRoadGuideNote{
    grid-template-columns:1fr;
    gap:8px;

    margin-top:48px;
    padding:21px 20px;
  }


  /* CONTENTS */

  .inRoadGuideContents{
    padding:75px 0 80px;
  }

  .inRoadGuideContents__head{
    text-align:left;
  }

  .inRoadGuideContents__details{
    margin-top:30px;
  }

  .inRoadGuideContents__details
  > summary{
    display:flex;
    min-height:55px;

    align-items:center;
    justify-content:space-between;

    padding:14px 16px!important;

    background:#fff;
    color:var(--road-navy);

    font-family:"Noto Serif JP",serif!important;
    font-size:.72rem;
  }

  .inRoadGuideContents__nav{
    grid-template-columns:1fr;
    padding-top:8px;
  }

  .inRoadGuideContents__nav a{
    min-height:101px;
  }


  /* OVERVIEW */

  .inRoadGuideJourney{
    grid-template-columns:1fr;
  }

  .inRoadGuideJourney article{
    min-height:0;
    padding:28px 23px 31px;
  }

  .inRoadGuideRouteLine{
    display:grid;
    grid-template-columns:1fr;
    gap:0;

    padding:22px 23px;
  }

  .inRoadGuideRouteLine div{
    padding:16px 0;
    text-align:left;
  }

  .inRoadGuideRouteLine i{
    width:1px;
    height:13px;
    margin-left:7px;
  }


  /* EDITORIAL */

  .inRoadGuideMorningEditorial,
  .inRoadGuideYoneharaEditorial,
  .inRoadGuideWestEditorial{
    gap:29px;
  }

  .inRoadGuideMorningEditorial h3,
  .inRoadGuideYoneharaEditorial h3,
  .inRoadGuideWestEditorial h3{
    font-size:1.2rem!important;
  }

  .inRoadGuideMorningEditorial
  > div > p:not(.inRoadGuideLabel),
  .inRoadGuideYoneharaEditorial
  > div > p:not(.inRoadGuideLabel),
  .inRoadGuideWestEditorial
  > div > p:not(.inRoadGuideLabel){
    font-size:.75rem;
    line-height:2;
  }


  /* TIMELINE */

  .inRoadGuideTimeline{
    margin-top:47px;
    padding-left:18px;
  }

  .inRoadGuideTimeline::before{
    left:5px;
  }

  .inRoadGuideTimeline article{
    grid-template-columns:1fr;
    gap:7px;

    padding:23px 0 25px 21px;
  }

  .inRoadGuideTimeline__time::after{
    right:auto;
    left:-24px;
  }


  /* INTERLUDE */

  .inRoadGuideInterlude{
    min-height:500px;
  }

  .inRoadGuideInterlude__copy{
    width:calc(100% - 34px);
    min-height:500px;
    padding:50px 0;
  }

  .inRoadGuideInterlude__copy h2{
    font-size:1.35rem!important;
  }

  .inRoadGuideInterlude__overlay{
    background:
      linear-gradient(
        180deg,
        rgba(4,18,30,.04) 0%,
        rgba(4,18,30,.18) 42%,
        rgba(4,18,30,.88) 100%
      );
  }


  /* KABIRA */

  .inRoadGuideKabira__intro h2{
    font-size:1.38rem!important;
  }

  .inRoadGuideKabiraScene{
    grid-template-columns:1fr;
    gap:21px;

    margin-top:40px;
    padding:32px 2px;
  }

  .inRoadGuideKabiraScene__number{
    font-size:1.5rem;
  }

  .inRoadGuideKabiraScene h3{
    font-size:1.2rem!important;
  }

  .inRoadGuideKabiraRule,
  .inRoadGuidePalmNote,
  .inRoadGuideReturnRule{
    padding:29px 22px 32px;
  }


  /* FOOD */

  .inRoadGuideFeatureGrid{
    grid-template-columns:1fr;
  }

  .inRoadGuideFeatureCard{
    grid-template-columns:1fr;
  }

  .inRoadGuideFeatureCard figure{
    min-height:230px;
    max-height:310px;
  }

  .inRoadGuideFeatureCard > div{
    padding:29px 23px 33px;
  }


  /* NOTES */

  .inRoadGuidePlanGrid,
  .inRoadGuidePractical{
    grid-template-columns:1fr;
  }


  /* CHECKLIST */

  .inRoadGuideChecklist__toolbar{
    align-items:flex-start;
    flex-direction:column;
    padding:24px 21px;
  }

  .inRoadGuideChecklist__toolbar > div{
    flex-wrap:wrap;
  }

  .inRoadGuideChecklist__items{
    grid-template-columns:1fr;
    padding:16px 20px 22px;
  }

  .inRoadGuideChecklist label:nth-child(even){
    border-left:0;
  }

  .inRoadGuideChecklist label+label{
    border-top:1px solid var(--road-border);
  }


  /* FAQ */

  .inRoadGuideFaq summary{
    min-height:66px;
    padding:16px 2px!important;
    font-size:.81rem!important;
  }

  .inRoadGuideFaq details > div{
    padding:0 30px 21px 2px;
  }


  /* ENDING */

  .inRoadGuideEnding{
    min-height:630px;
  }

  .inRoadGuideEnding__inner{
    min-height:630px;
    justify-content:flex-end;
    padding:75px 0 55px;
  }

  .inRoadGuideEnding__overlay{
    background:
      linear-gradient(
        180deg,
        rgba(5,20,33,.05) 0%,
        rgba(5,20,33,.20) 40%,
        rgba(5,20,33,.92) 100%
      );
  }

  .inRoadGuideEnding
  p:not(.inRoadGuideLabel){
    font-size:.74rem;
    line-height:2;
  }


  /* RELATED */

  .inRoadGuideRelated__grid{
    grid-template-columns:1fr;
  }

  .inRoadGuideDisclaimer{
    padding-right:17px;
    padding-left:17px;
    text-align:left;
  }


  /* FLOAT TOC */

  .inRoadGuideFloatingToc{
    right:14px;
    bottom:67px;

    min-width:49px;
    min-height:49px;

    padding:11px!important;
  }

  .inRoadGuideFloatingToc strong{
    display:none;
  }

  .inRoadGuideDrawer__panel{
    width:min(400px,94vw);
    padding:48px 23px 40px;
  }

}


/* ELEMENTOR */

.elementor-widget-html:has(.inRoadGuide){
  margin:0!important;
}

.elementor-element:has(
  > .elementor-widget-html
  .inRoadGuide
){
  margin:0!important;
  padding:0!important;
}


/* FOCUS */

.inRoadGuide a:focus-visible,
.inRoadGuide button:focus-visible,
.inRoadGuide summary:focus-visible,
.inRoadGuide input:focus-visible{
  outline:
    2px solid var(--road-gold)!important;

  outline-offset:4px!important;
}


/* REDUCED MOTION */

@media(prefers-reduced-motion:reduce){

  .inRoadGuide *,
  .inRoadGuide *::before,
  .inRoadGuide *::after{
    animation:none!important;
    transition:none!important;
  }

  .in-road-has-js
  .inRoadGuide
  .js-road-reveal{
    opacity:1!important;
    transform:none!important;
  }

  .in-road-has-js
  .inRoadGuide
  .js-road-image::after{
    display:none!important;
  }

  .in-road-has-js
  .inRoadGuide
  .js-road-image img{
    transform:none!important;
  }

  .inRoadGuideChapterNotice{
    display:none!important;
  }

}/* End custom CSS */