.elementor-19583 .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 22 / THREE GENERATIONS
================================================== */

.inFamilyGuide{
  --fg-navy:#102943;
  --fg-deep:#071827;
  --fg-gold:#c2a878;
  --fg-ivory:#f8f5ef;
  --fg-soft:#f1eee7;
  --fg-white:#fff;
  --fg-text:#596775;
  --fg-muted:rgba(28,53,87,.56);
  --fg-border:rgba(16,41,67,.12);

  position:relative;
  width:100%;
  margin:0!important;
  overflow:hidden;

  background:#fff;
  color:var(--fg-text);

  font-family:
    "Noto Sans JP",
    "Yu Gothic",
    "YuGothic",
    sans-serif!important;

  font-size:16px;

  -webkit-font-smoothing:antialiased;
}

.inFamilyGuide *,
.inFamilyGuide *::before,
.inFamilyGuide *::after{
  box-sizing:border-box;
}

.inFamilyGuide img{
  display:block;
  width:100%;
  max-width:none;
  height:auto;
}

.inFamilyGuide figure{
  margin:0;
}

.inFamilyGuide a{
  text-decoration:none;
}

.inFamilyGuide :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;
}

.inFamilyGuide__wide{
  width:min(1180px,calc(100% - 72px));
  margin:0 auto;
}

.inFamilyGuide__article{
  width:min(930px,calc(100% - 72px));
  margin:0 auto;
}

.inFamilyGuideLabel{
  margin:0!important;

  color:var(--fg-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 */

.inFamilyGuideProgress{
  position:fixed;
  top:0;
  right:0;
  left:0;

  z-index:9999;

  height:3px;

  pointer-events:none;
}

.inFamilyGuideProgress span{
  display:block;
  width:100%;
  height:100%;

  background:var(--fg-gold);

  transform:scaleX(0);
  transform-origin:left;
}


/* PC CHAPTER */

.inFamilyGuideChapterIndicator{
  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;
}

.inFamilyGuideChapterIndicator.is-visible{
  opacity:.8;

  transform:
    translateY(-50%);
}

.inFamilyGuideChapterIndicator__line{
  grid-row:1/3;

  width:1px;
  height:70px;

  background:
    linear-gradient(
      to bottom,
      var(--fg-gold) 0 22%,
      rgba(16,41,67,.12) 22% 100%
    );
}

.inFamilyGuideChapterIndicator__copy{
  display:grid;

  min-width:110px;

  gap:3px;
}

.inFamilyGuideChapterIndicator small{
  color:var(--fg-gold);

  font-family:"Noto Serif JP",serif!important;

  font-size:.42rem;

  letter-spacing:.12em;
}

.inFamilyGuideChapterIndicator strong{
  color:rgba(16,41,67,.82);

  font-family:"Noto Serif JP",serif!important;

  font-size:.59rem;
  font-weight:500;
}

.inFamilyGuideChapterIndicator__progress{
  margin-top:5px;

  color:rgba(16,41,67,.32);

  font-family:"Noto Serif JP",serif!important;

  font-size:.41rem;
}

.inFamilyGuideChapterIndicator.is-dark strong{
  color:rgba(255,255,255,.8);
}

.inFamilyGuideChapterIndicator.is-dark
.inFamilyGuideChapterIndicator__progress{
  color:rgba(255,255,255,.35);
}


/* MOBILE BOOKMARK */

.inFamilyGuideMobileBookmark{
  display:none;
}


/* CHAPTER NOTICE */

.inFamilyGuideChapterNotice{
  position:fixed;

  left:24px;
  bottom:26px;

  z-index:260;

  display:grid;

  width:244px;

  gap:4px;

  padding:13px 17px 14px;

  border-left:
    1px solid rgba(194,168,120,.68);

  background:
    rgba(248,245,239,.89);

  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);
}

.inFamilyGuideChapterNotice span{
  color:var(--fg-gold);

  font-family:"Noto Serif JP",serif!important;

  font-size:.42rem;

  letter-spacing:.13em;
}

.inFamilyGuideChapterNotice strong{
  color:var(--fg-navy);

  font-family:"Noto Serif JP",serif!important;

  font-size:.67rem;
  font-weight:500;
}

.inFamilyGuideChapterNotice.is-showing{
  opacity:.94;

  transform:none;
}


/* IMAGE REVEAL */

.in-family-has-js
.inFamilyGuide
.js-family-image{
  position:relative;

  overflow:hidden;
}

.in-family-has-js
.inFamilyGuide
.js-family-image::after{
  content:"";

  position:absolute;
  inset:0;

  z-index:4;

  background:var(--fg-ivory);

  transform:translateX(0);

  transition:
    transform 1.02s cubic-bezier(.77,0,.18,1);

  pointer-events:none;
}

.in-family-has-js
.inFamilyGuide
.js-family-image img{
  transform:scale(1.025);

  transition:
    transform 1.25s cubic-bezier(.22,1,.36,1);
}

.in-family-has-js
.inFamilyGuide
.js-family-image.is-book-visible::after{
  transform:translateX(101%);
}

.in-family-has-js
.inFamilyGuide
.js-family-image.is-book-visible img{
  transform:scale(1);
}

.in-family-has-js
.inFamilyGuide
.inFamilyGuideInterlude
.js-family-image::after{
  background:var(--fg-deep);
}


/* HERO */

.inFamilyGuideHero{
  position:relative;

  min-height:680px;

  overflow:hidden;

  background:var(--fg-deep);
  color:#fff;
}

.inFamilyGuideHero__media,
.inFamilyGuideHero__overlay{
  position:absolute;

  inset:0;
}

.inFamilyGuideHero__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);
}

.inFamilyGuideHero__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%
    );
}

.inFamilyGuideHero__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;
}

.inFamilyGuideBreadcrumb{
  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;

  white-space:nowrap;
}

.inFamilyGuideBreadcrumb a{
  color:inherit!important;
}

.inFamilyGuideBreadcrumb
> span:not(:last-child){
  width:22px;
  height:1px;

  background:var(--fg-gold);
}

.inFamilyGuideHero__copy{
  align-self:center;

  width:min(820px,76%);

  padding:50px 0 40px;
}

.inFamilyGuideHero__pageName{
  margin:0!important;

  color:rgba(255,255,255,.86);

  font-family:"Noto Serif JP",serif!important;

  font-size:.76rem;
}

.inFamilyGuideHero__en{
  margin:9px 0 0!important;

  color:var(--fg-gold);

  font-family:"Noto Serif JP",serif!important;

  font-size:.56rem;

  letter-spacing:.18em;
}

body .inFamilyGuide .inFamilyGuideHero h1{
  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;
}

.inFamilyGuideHero__lead{
  max-width:750px;

  margin:27px 0 0!important;

  color:rgba(255,255,255,.77);

  font-size:.84rem;

  line-height:2.08;
}

.inFamilyGuideHero__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;
}

.inFamilyGuideHero__discover
> span:last-child{
  width:50px;
  height:1px;

  background:var(--fg-gold);
}

.inFamilyGuideHero__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 */

.inFamilyGuideIntro h2,
.inFamilyGuideContents h2,
.inFamilyGuideChapterHead h2,
.inFamilyGuidePlaces h2,
.inFamilyGuidePause h2,
.inFamilyGuideDinner h2,
.inFamilyGuideNoteHead h2,
.inFamilyGuideEnding h2,
.inFamilyGuideRelated h2{
  margin:14px 0 0!important;

  color:var(--fg-navy)!important;

  font-family:"Noto Serif JP",serif!important;

  font-size:
    clamp(1.5rem,2.35vw,2.05rem)!important;

  line-height:1.72!important;
}

.inFamilyGuideChapterHead{
  display:grid;

  grid-template-columns:
    minmax(0,1.15fr)
    minmax(310px,.85fr);

  gap:clamp(45px,6vw,82px);

  margin-bottom:64px;
}

.inFamilyGuideChapterHead__catch{
  margin:0!important;

  color:var(--fg-navy);

  font-family:"Noto Serif JP",serif!important;

  font-size:
    clamp(1.02rem,1.45vw,1.28rem);

  line-height:1.82;
}

.inFamilyGuideChapterHead__text{
  margin:18px 0 0!important;

  font-size:.81rem;

  line-height:2;
}

.inFamilyGuideChapterHead--dark h2,
.inFamilyGuideChapterHead--dark
.inFamilyGuideChapterHead__catch{
  color:#fff!important;
}

.inFamilyGuideChapterHead--dark
.inFamilyGuideChapterHead__text{
  color:rgba(255,255,255,.68);
}


/* INTRO */

.inFamilyGuideIntro{
  padding:118px 0 126px;
}

.inFamilyGuideIntro__layout{
  display:grid;

  grid-template-columns:
    minmax(330px,.86fr)
    minmax(0,1.14fr);

  gap:clamp(60px,8vw,110px);
}

.inFamilyGuideIntro__lead{
  font-size:.89rem;

  line-height:2.15;
}

.inFamilyGuideIntro__lead p{
  margin:0!important;
}

.inFamilyGuideIntro__lead p+p{
  margin-top:1.45em!important;
}

.inFamilyGuideIntroPhrase{
  width:min(780px,100%);

  margin:81px auto 0;

  text-align:center;
}

.inFamilyGuideIntroPhrase
> p:last-child{
  margin:20px 0 0!important;

  color:var(--fg-navy);

  font-family:"Noto Serif JP",serif!important;

  font-size:
    clamp(1.15rem,1.9vw,1.5rem);

  line-height:2;
}

.inFamilyGuideFacts{
  display:grid;

  grid-template-columns:
    repeat(4,minmax(0,1fr));

  gap:1px;

  margin-top:76px;

  background:var(--fg-border);
}

.inFamilyGuideFacts article{
  min-height:220px;

  padding:29px 27px 32px;

  background:var(--fg-ivory);
}

.inFamilyGuideFacts span{
  color:var(--fg-gold);

  font-family:"Noto Serif JP",serif!important;

  font-size:.54rem;
}

.inFamilyGuideFacts
article > p:first-of-type{
  margin:10px 0 0!important;

  color:var(--fg-muted);

  font-size:.46rem;

  letter-spacing:.13em;
}

.inFamilyGuideFacts h3{
  margin:22px 0 0!important;

  color:var(--fg-navy);

  font-size:.95rem!important;
}

.inFamilyGuideFacts
article > p:last-child{
  margin:14px 0 0!important;

  font-size:.71rem;

  line-height:1.95;
}

.inFamilyGuideImportant{
  width:min(850px,100%);

  margin:62px auto 0;

  padding:35px 40px;

  background:var(--fg-navy);

  color:#fff;
}

.inFamilyGuideImportant h3{
  margin:16px 0 0!important;

  color:#fff;

  font-size:1.06rem!important;

  line-height:1.8;
}

.inFamilyGuideImportant
> p:last-child{
  margin:17px 0 0!important;

  color:rgba(255,255,255,.68);

  font-size:.75rem;

  line-height:2;
}


/* CONTENTS */

.inFamilyGuideContents{
  padding:99px 0 106px;

  background:var(--fg-soft);
}

.inFamilyGuideContents__head{
  max-width:760px;

  margin:0 auto;

  text-align:center;
}

.inFamilyGuideContents__head
> p:last-child{
  margin:20px 0 0!important;

  font-size:.76rem;

  line-height:1.95;
}

.inFamilyGuideContents__details{
  margin-top:45px;
}

.inFamilyGuideContents__details > summary{
  display:none;
}

.inFamilyGuideContents__nav{
  display:grid;

  grid-template-columns:
    repeat(4,minmax(0,1fr));

  gap:1px;

  background:var(--fg-border);
}

.inFamilyGuideContents__nav a{
  position:relative;

  min-height:140px;

  padding:25px 24px 31px;

  background:#fff;

  color:inherit!important;
}

.inFamilyGuideContents__nav a span{
  color:var(--fg-gold);

  font-family:"Noto Serif JP",serif!important;

  font-size:.51rem;
}

.inFamilyGuideContents__nav small{
  display:block;

  margin-top:10px;

  color:var(--fg-muted);

  font-size:.43rem;

  letter-spacing:.12em;
}

.inFamilyGuideContents__nav strong{
  display:block;

  margin-top:8px;

  color:var(--fg-navy);

  font-family:"Noto Serif JP",serif!important;

  font-size:.8rem;

  font-weight:500;

  line-height:1.65;
}

.inFamilyGuideContents__nav a::after{
  content:"";

  position:absolute;

  right:21px;
  bottom:20px;

  width:23px;
  height:1px;

  background:var(--fg-gold);
}


/* OVERVIEW */

.inFamilyGuideOverview{
  padding:118px 0 126px;
}

.inFamilyGuideJourney{
  display:grid;

  grid-template-columns:
    repeat(4,minmax(0,1fr));

  gap:1px;

  background:var(--fg-border);
}

.inFamilyGuideJourney article{
  min-height:265px;

  padding:35px 29px 40px;

  background:var(--fg-ivory);
}

.inFamilyGuideJourney__main{
  background:var(--fg-navy)!important;
}

.inFamilyGuideJourney span{
  color:var(--fg-gold);

  font-family:"Noto Serif JP",serif!important;

  font-size:.52rem;
}

.inFamilyGuideJourney
article > p:first-of-type{
  margin:10px 0 0!important;

  color:var(--fg-muted);

  font-size:.44rem;

  letter-spacing:.12em;
}

.inFamilyGuideJourney h3{
  margin:27px 0 0!important;

  color:var(--fg-navy);

  font-size:1.2rem!important;
}

.inFamilyGuideJourney strong{
  display:block;

  margin-top:12px;

  color:var(--fg-navy);

  font-family:"Noto Serif JP",serif!important;

  font-size:.72rem;

  font-weight:500;
}

.inFamilyGuideJourney
article > p:last-child{
  margin:17px 0 0!important;

  font-size:.73rem;

  line-height:1.95;
}

.inFamilyGuideJourney__main h3,
.inFamilyGuideJourney__main strong{
  color:#fff;
}

.inFamilyGuideJourney__main
> p:last-child{
  color:rgba(255,255,255,.68);
}


/* DAY ONE */

.inFamilyGuideDayOne{
  padding:118px 0 126px;

  background:var(--fg-navy);
}

.inFamilyGuideDayOneFlow{
  width:min(930px,100%);

  margin:0 auto;
}

.inFamilyGuideDayOneFlow article{
  display:grid;

  grid-template-columns:
    72px minmax(0,1fr);

  gap:30px;

  padding:29px 0;
}

.inFamilyGuideDayOneFlow article+article{
  border-top:
    1px solid rgba(255,255,255,.1);
}

.inFamilyGuideDayOneFlow
> article > span{
  color:rgba(194,168,120,.65);

  font-family:"Noto Serif JP",serif!important;

  font-size:1.7rem;
}

.inFamilyGuideDayOneFlow h3{
  margin:13px 0 0!important;

  color:#fff;

  font-size:1.08rem!important;
}

.inFamilyGuideDayOneFlow
article div > p:last-child{
  margin:13px 0 0!important;

  color:rgba(255,255,255,.67);

  font-size:.74rem;

  line-height:2;
}


/* INTERLUDE */

.inFamilyGuideInterlude{
  position:relative;

  min-height:570px;

  overflow:hidden;

  background:var(--fg-deep);
}

.inFamilyGuideInterlude > figure{
  position:absolute!important;

  inset:0!important;

  width:100%!important;
  height:100%!important;
}

.inFamilyGuideInterlude > figure img{
  width:100%!important;
  height:100%!important;

  object-fit:cover!important;
}

.inFamilyGuideInterlude__overlay{
  position:absolute;

  inset:0;

  z-index:1;

  background:
    linear-gradient(
      90deg,
      rgba(4,18,30,.68) 0%,
      rgba(4,18,30,.34) 48%,
      rgba(4,18,30,.05) 80%
    ),
    linear-gradient(
      180deg,
      rgba(4,18,30,.02) 0%,
      rgba(4,18,30,.08) 50%,
      rgba(4,18,30,.74) 100%
    );
}

.inFamilyGuideInterlude__copy{
  position:relative;

  z-index:2;

  display:flex;

  flex-direction:column;
  justify-content:flex-end;

  width:min(1180px,calc(100% - 72px));

  min-height:570px;

  margin:0 auto;

  padding:72px 0;
}

.inFamilyGuideInterlude__copy p{
  margin:0!important;

  color:var(--fg-gold);

  font-family:"Noto Serif JP",serif!important;

  font-size:.56rem;

  letter-spacing:.17em;
}

.inFamilyGuideInterlude__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;
}


/* DAY TWO */

.inFamilyGuideDayTwo{
  padding:118px 0 126px;

  background:#fff;
}

.inFamilyGuideDayTwoSplit{
  display:grid;

  grid-template-columns:
    minmax(0,1fr)
    1px
    minmax(0,1fr);

  gap:45px;

  padding:44px 47px;

  background:var(--fg-ivory);
}

.inFamilyGuideDayTwoSplit > span{
  width:1px;

  background:var(--fg-border);
}

.inFamilyGuideDayTwoSplit h3{
  margin:17px 0 0!important;

  color:var(--fg-navy);

  font-size:1.28rem!important;
}

.inFamilyGuideDayTwoSplit
article > p:last-child{
  margin:16px 0 0!important;

  font-size:.76rem;

  line-height:2;
}


/* PLACES */

.inFamilyGuidePlaces{
  padding:110px 0 128px;

  background:var(--fg-ivory);
}

.inFamilyGuidePlaces__head{
  max-width:830px;

  margin-bottom:59px;
}

.inFamilyGuidePlaces__head
> p:last-child{
  margin:20px 0 0!important;

  font-size:.78rem;

  line-height:2;
}

.inFamilyGuidePlace{
  display:grid;

  grid-template-columns:
    minmax(0,1.17fr)
    minmax(360px,.83fr);

  min-height:560px;

  background:#fff;
}

.inFamilyGuidePlace
+ .inFamilyGuidePlace{
  margin-top:44px;
}

.inFamilyGuidePlace--reverse{
  grid-template-columns:
    minmax(360px,.83fr)
    minmax(0,1.17fr);
}

.inFamilyGuidePlace--reverse figure{
  grid-column:2;
  grid-row:1;
}

.inFamilyGuidePlace--reverse
.inFamilyGuidePlace__copy{
  grid-column:1;
  grid-row:1;
}

.inFamilyGuidePlace figure{
  min-height:560px;
}

.inFamilyGuidePlace img{
  height:100%!important;

  object-fit:cover;
}

.inFamilyGuidePlace__visual--text{
  display:flex;

  align-items:flex-end;

  min-height:560px;

  padding:48px;

  background:
    linear-gradient(
      145deg,
      #173653 0%,
      #0b2237 100%
    );
}

.inFamilyGuidePlace__visual--text div{
  max-width:430px;
}

.inFamilyGuidePlace__visual--text span{
  color:var(--fg-gold);

  font-family:"Noto Serif JP",serif!important;

  font-size:.58rem;
}

.inFamilyGuidePlace__visual--text p{
  margin:13px 0 0!important;

  color:rgba(255,255,255,.45);

  font-family:"Noto Serif JP",serif!important;

  font-size:.48rem;

  letter-spacing:.16em;
}

.inFamilyGuidePlace__visual--text strong{
  display:block;

  margin-top:24px;

  color:#fff;

  font-family:"Noto Serif JP",serif!important;

  font-size:
    clamp(1.55rem,2.4vw,2.1rem);

  font-weight:500;

  line-height:1.75;
}

.inFamilyGuidePlace__copy{
  display:flex;

  flex-direction:column;
  justify-content:center;

  padding:50px 48px;
}

.inFamilyGuidePlace h3{
  margin:15px 0 0!important;

  color:var(--fg-navy);

  font-size:
    clamp(1.45rem,2.3vw,1.95rem)!important;
}

.inFamilyGuidePlace__catch{
  margin:19px 0 0!important;

  color:var(--fg-navy);

  font-family:"Noto Serif JP",serif!important;

  font-size:.98rem;

  line-height:1.9;
}

.inFamilyGuidePlace
p:not(.inFamilyGuideLabel):not(.inFamilyGuidePlace__catch){
  margin:18px 0 0!important;

  font-size:.75rem;

  line-height:2;
}

.inFamilyGuidePlace dl{
  margin:23px 0 0;
}

.inFamilyGuidePlace dl > div{
  display:grid;

  grid-template-columns:
    90px minmax(0,1fr);

  gap:14px;

  padding:9px 0;
}

.inFamilyGuidePlace dl > div+div{
  border-top:1px solid var(--fg-border);
}

.inFamilyGuidePlace dt{
  color:var(--fg-muted);

  font-size:.59rem;
}

.inFamilyGuidePlace dd{
  margin:0;

  color:var(--fg-navy);

  font-size:.68rem;
}

.inFamilyGuidePlace a{
  display:inline-flex;

  width:fit-content;

  margin-top:22px;

  color:var(--fg-navy)!important;

  font-family:"Noto Serif JP",serif!important;

  font-size:.63rem;

  text-decoration:underline;

  text-underline-offset:5px;
}


/* FAMILY PAUSE */

.inFamilyGuidePause{
  padding:118px 0 126px;

  background:var(--fg-deep);
}

.inFamilyGuidePause__head{
  max-width:790px;

  margin-bottom:55px;
}

.inFamilyGuidePause h2{
  color:#fff!important;
}

.inFamilyGuidePause__head
> p:last-child{
  margin:20px 0 0!important;

  color:rgba(255,255,255,.68);

  font-size:.78rem;

  line-height:2;
}

.inFamilyGuidePauseGrid{
  display:grid;

  grid-template-columns:
    repeat(2,minmax(0,1fr));

  gap:1px;

  background:rgba(255,255,255,.12);
}

.inFamilyGuidePauseGrid article{
  min-height:230px;

  padding:35px 33px;

  background:rgba(255,255,255,.045);
}

.inFamilyGuidePauseGrid span{
  color:var(--fg-gold);

  font-family:"Noto Serif JP",serif!important;

  font-size:.53rem;
}

.inFamilyGuidePauseGrid h3{
  margin:22px 0 0!important;

  color:#fff;

  font-size:1.03rem!important;

  line-height:1.8;
}

.inFamilyGuidePauseGrid p{
  margin:15px 0 0!important;

  color:rgba(255,255,255,.66);

  font-size:.72rem;

  line-height:1.95;
}


/* DINNER */

.inFamilyGuideDinner{
  padding:112px 0 120px;

  background:#fff;
}

.inFamilyGuideDinnerFeature{
  display:grid;

  grid-template-columns:
    minmax(0,1fr)
    minmax(360px,.84fr);

  background:var(--fg-navy);
}

.inFamilyGuideDinnerFeature figure{
  min-height:500px;
}

.inFamilyGuideDinnerFeature img{
  height:100%!important;

  object-fit:cover;
}

.inFamilyGuideDinnerFeature > div{
  display:flex;

  flex-direction:column;
  justify-content:center;

  padding:47px 45px;
}

.inFamilyGuideDinnerFeature h2{
  color:#fff!important;

  font-size:
    clamp(1.38rem,2.2vw,1.85rem)!important;
}

.inFamilyGuideDinnerFeature
p:not(.inFamilyGuideLabel){
  margin:19px 0 0!important;

  color:rgba(255,255,255,.69);

  font-size:.76rem;

  line-height:2;
}

.inFamilyGuideDinnerFeature 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;
}


/* DAY THREE */

.inFamilyGuideDayThree{
  padding:118px 0 126px;

  background:var(--fg-ivory);
}

.inFamilyGuideLastDay{
  display:grid;

  grid-template-columns:
    75px
    minmax(0,1.2fr)
    minmax(250px,.65fr);

  gap:42px;

  align-items:start;

  padding:47px;

  background:#fff;

  border-top:
    1px solid var(--fg-gold);

  border-bottom:
    1px solid var(--fg-border);
}

.inFamilyGuideLastDay__number{
  color:rgba(194,168,120,.6);

  font-family:"Noto Serif JP",serif!important;

  font-size:2rem;
}

.inFamilyGuideLastDay h3{
  margin:17px 0 0!important;

  color:var(--fg-navy);

  font-size:
    clamp(1.3rem,2vw,1.75rem)!important;

  line-height:1.8;
}

.inFamilyGuideLastDay
> div > p:not(.inFamilyGuideLabel){
  margin:18px 0 0!important;

  font-size:.76rem;

  line-height:2;
}

.inFamilyGuideLastDay dl{
  margin:0;
}

.inFamilyGuideLastDay dl > div{
  padding:12px 0;
}

.inFamilyGuideLastDay dl > div+div{
  border-top:1px solid var(--fg-border);
}

.inFamilyGuideLastDay dt{
  color:var(--fg-muted);

  font-size:.59rem;
}

.inFamilyGuideLastDay dd{
  margin:6px 0 0;

  color:var(--fg-navy);

  font-size:.69rem;
}


/* CHANGE */

.inFamilyGuideChange{
  padding:116px 0 124px;

  background:var(--fg-navy);
}

.inFamilyGuideTabs__buttons{
  display:grid;

  grid-template-columns:
    repeat(3,minmax(0,1fr));

  gap:1px;

  background:rgba(255,255,255,.13);
}

.inFamilyGuideTabs__buttons button{
  min-height:74px;

  padding:11px 14px!important;

  border:0!important;
  border-radius:0!important;

  background:rgba(255,255,255,.05)!important;

  color:rgba(255,255,255,.6)!important;

  font-family:"Noto Serif JP",serif!important;

  font-size:.76rem;

  cursor:pointer;
}

.inFamilyGuideTabs__buttons button span{
  display:block;

  margin-top:5px;

  color:var(--fg-gold);

  font-size:.4rem;

  letter-spacing:.12em;
}

.inFamilyGuideTabs__buttons
button[aria-selected="true"]{
  background:var(--fg-ivory)!important;

  color:var(--fg-navy)!important;
}

.inFamilyGuideTabs__panels{
  margin-top:1px;
}

.inFamilyGuideTabPanel{
  display:grid;

  grid-template-columns:
    72px
    minmax(0,1fr)
    minmax(220px,.72fr);

  gap:34px;

  align-items:center;

  min-height:270px;

  padding:42px;

  background:var(--fg-ivory);
}

.inFamilyGuideTabPanel[hidden]{
  display:none!important;
}

.inFamilyGuideTabPanel__number{
  color:var(--fg-gold);

  font-family:"Noto Serif JP",serif!important;

  font-size:2rem;
}

.inFamilyGuideTabPanel h3{
  margin:14px 0 0!important;

  color:var(--fg-navy);

  font-size:1.25rem!important;
}

.inFamilyGuideTabPanel
> div > p:last-child{
  margin:17px 0 0!important;

  font-size:.76rem;

  line-height:2;
}

.inFamilyGuideTabPanel ul{
  margin:0;

  padding:0;

  list-style:none;
}

.inFamilyGuideTabPanel li{
  position:relative;

  padding-left:16px;

  color:var(--fg-navy);

  font-size:.69rem;

  line-height:1.85;
}

.inFamilyGuideTabPanel li+li{
  margin-top:9px;
}

.inFamilyGuideTabPanel li::before{
  content:"";

  position:absolute;

  top:.85em;
  left:0;

  width:7px;
  height:1px;

  background:var(--fg-gold);
}


/* CHECKLIST */

.inFamilyGuideChecklistSection,
.inFamilyGuideFaqSection{
  padding:104px 0 111px;
}

.inFamilyGuideChecklistSection{
  background:var(--fg-soft);
}

.inFamilyGuideFaqSection{
  background:#fff;
}

.inFamilyGuideNoteHead{
  max-width:760px;

  margin-bottom:45px;
}

.inFamilyGuideChecklist{
  overflow:hidden;

  background:#fff;

  box-shadow:
    0 22px 60px rgba(16,41,67,.08);
}

.inFamilyGuideChecklist__toolbar{
  display:flex;

  align-items:center;
  justify-content:space-between;

  gap:25px;

  padding:27px 30px;

  background:var(--fg-navy);
}

.inFamilyGuideChecklist__toolbar > div{
  display:flex;

  align-items:flex-end;

  gap:8px;
}

.inFamilyGuideChecklist__toolbar
.inFamilyGuideLabel{
  margin-right:13px!important;
}

.inFamilyGuideChecklist__toolbar strong{
  color:#fff;

  font-family:"Noto Serif JP",serif!important;

  font-size:1.2rem;

  font-weight:500;
}

.inFamilyGuideChecklist__toolbar
> div > p:last-child{
  margin:0 0 2px!important;

  color:rgba(255,255,255,.45);

  font-size:.53rem;
}

.inFamilyGuideChecklist__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;
}

.inFamilyGuideChecklist__progress{
  height:4px;

  background:rgba(16,41,67,.08);
}

.inFamilyGuideChecklist__progress span{
  display:block;

  width:100%;
  height:100%;

  background:var(--fg-gold);

  transform:scaleX(0);
  transform-origin:left;

  transition:transform .3s ease;
}

.inFamilyGuideChecklist__items{
  display:grid;

  grid-template-columns:
    repeat(2,minmax(0,1fr));

  padding:18px 27px 25px;
}

.inFamilyGuideChecklist label{
  display:grid;

  grid-template-columns:
    21px minmax(0,1fr);

  gap:11px;

  align-items:center;

  min-height:50px;

  padding:8px;

  cursor:pointer;
}

.inFamilyGuideChecklist
label:nth-child(even){
  border-left:1px solid var(--fg-border);
}

.inFamilyGuideChecklist
label:nth-child(n+3){
  border-top:1px solid var(--fg-border);
}

.inFamilyGuideChecklist input{
  width:18px;
  height:18px;

  margin:0;

  appearance:none;

  border:
    1px solid rgba(16,41,67,.3);

  border-radius:0;

  background:#fff;
}

.inFamilyGuideChecklist input:checked{
  border-color:var(--fg-navy);

  background:var(--fg-navy);
}

.inFamilyGuideChecklist 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);
}

.inFamilyGuideChecklist label > span{
  font-size:.74rem;

  line-height:1.72;
}

.inFamilyGuideChecklist
label.is-checked{
  background:var(--fg-ivory);
}

.inFamilyGuideChecklist
label.is-checked > span{
  text-decoration:line-through;

  text-decoration-color:
    rgba(194,168,120,.75);
}

.inFamilyGuideChecklist__privacy{
  margin:0!important;

  padding:18px 30px 21px;

  border-top:1px solid var(--fg-border);

  color:var(--fg-muted);

  font-size:.55rem;
}


/* FAQ */

.inFamilyGuideFaq{
  border-top:1px solid var(--fg-border);
}

.inFamilyGuideFaq details{
  border-bottom:1px solid var(--fg-border);
}

.inFamilyGuideFaq 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(--fg-navy);

  font-family:"Noto Serif JP",serif!important;

  font-size:.86rem!important;

  cursor:pointer;
}

.inFamilyGuideFaq
summary::-webkit-details-marker{
  display:none;
}

.inFamilyGuideFaq
summary > span:last-child{
  position:relative;

  flex:0 0 auto;

  width:21px;
  height:21px;
}

.inFamilyGuideFaq
summary > span:last-child::before,
.inFamilyGuideFaq
summary > span:last-child::after{
  content:"";

  position:absolute;

  top:10px;
  left:4px;

  width:13px;
  height:1px;

  background:var(--fg-gold);
}

.inFamilyGuideFaq
summary > span:last-child::after{
  transform:rotate(90deg);
}

.inFamilyGuideFaq
details[open]
summary > span:last-child::after{
  transform:none;
}

.inFamilyGuideFaq details > div{
  padding:0 46px 24px 3px;
}

.inFamilyGuideFaq p{
  margin:0!important;

  font-size:.75rem;

  line-height:2;
}


/* ENDING */

.inFamilyGuideEnding{
  padding:122px 0 128px;

  background:var(--fg-deep);
}

.inFamilyGuideEnding__inner{
  width:min(930px,calc(100% - 72px));

  margin:0 auto;
}

.inFamilyGuideEnding h2{
  max-width:800px;

  color:#fff!important;
}

.inFamilyGuideEnding
p:not(.inFamilyGuideLabel){
  max-width:730px;

  margin:21px 0 0!important;

  color:rgba(255,255,255,.7);

  font-size:.79rem;

  line-height:2.05;
}

.inFamilyGuideEnding a{
  display:inline-flex;

  width:fit-content;

  align-items:center;

  gap:30px;

  margin-top:30px;

  padding-bottom:7px;

  border-bottom:
    1px solid var(--fg-gold);

  color:#fff!important;

  font-family:"Noto Serif JP",serif!important;

  font-size:.64rem;
}


/* RELATED */

.inFamilyGuideRelated{
  padding:105px 0 113px;

  background:#fff;
}

.inFamilyGuideRelated header{
  margin-bottom:44px;
}

.inFamilyGuideRelated__grid{
  display:grid;

  grid-template-columns:
    repeat(3,minmax(0,1fr));

  gap:1px;

  background:var(--fg-border);
}

.inFamilyGuideRelated__grid a{
  padding:30px 27px 34px;

  background:var(--fg-ivory);

  color:inherit!important;
}

.inFamilyGuideRelated__grid span{
  color:var(--fg-gold);

  font-family:"Noto Serif JP",serif!important;

  font-size:.52rem;
}

.inFamilyGuideRelated__grid
a > p:first-of-type{
  margin:10px 0 0!important;

  color:var(--fg-muted);

  font-size:.44rem;

  letter-spacing:.12em;
}

.inFamilyGuideRelated__grid h3{
  margin:16px 0 0!important;

  color:var(--fg-navy);

  font-size:1rem!important;
}

.inFamilyGuideRelated__grid
a > p:last-child{
  margin:12px 0 0!important;

  font-size:.7rem;

  line-height:1.9;
}

.inFamilyGuideDisclaimer{
  margin:0!important;

  padding:27px 20px 35px;

  color:var(--fg-muted);

  font-size:.58rem;

  line-height:1.85;

  text-align:center;
}


/* FLOATING TOC */

.inFamilyGuideFloatingToc{
  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;
}

.inFamilyGuideFloatingToc.is-visible{
  opacity:1;

  pointer-events:auto;

  transform:none;
}

.inFamilyGuideFloatingToc > span{
  position:relative;

  width:16px;
  height:12px;

  border-top:1px solid var(--fg-gold);
  border-bottom:1px solid var(--fg-gold);
}

.inFamilyGuideFloatingToc > span::after{
  content:"";

  position:absolute;

  top:5px;
  left:0;

  width:16px;
  height:1px;

  background:var(--fg-gold);
}

.inFamilyGuideFloatingToc strong{
  font-family:"Noto Serif JP",serif!important;

  font-size:.45rem;

  font-weight:500;
}


/* DRAWER */

.inFamilyGuideDrawer{
  position:fixed;

  inset:0;

  z-index:9998;

  visibility:hidden;

  opacity:0;

  pointer-events:none;

  transition:
    opacity .3s ease,
    visibility 0s linear .3s;
}

.inFamilyGuideDrawer.is-open{
  visibility:visible;

  opacity:1;

  pointer-events:auto;

  transition-delay:0s;
}

.inFamilyGuideDrawer__backdrop{
  position:absolute;

  inset:0;

  z-index:1;

  width:100%;

  border:0!important;

  background:
    rgba(5,20,33,.63)!important;
}

.inFamilyGuideDrawer__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(--fg-ivory);

  transform:translateX(102%);

  transition:
    transform .42s cubic-bezier(.22,1,.36,1);
}

.inFamilyGuideDrawer.is-open
.inFamilyGuideDrawer__panel{
  transform:none;
}

.inFamilyGuideDrawer__panel header{
  display:flex;

  justify-content:space-between;

  gap:25px;

  padding-bottom:25px;
}

.inFamilyGuideDrawer__panel
header p{
  margin:0 0 7px!important;

  color:var(--fg-gold);

  font-size:.48rem;

  letter-spacing:.16em;
}

.inFamilyGuideDrawer__panel
header h2{
  margin:0!important;

  color:var(--fg-navy);

  font-size:1.12rem!important;
}

.inFamilyGuideDrawer__close{
  position:relative;

  width:37px;
  height:37px;

  border:0!important;

  background:transparent!important;
}

.inFamilyGuideDrawer__close span{
  position:absolute;

  top:18px;
  left:7px;

  width:23px;
  height:1px;

  background:var(--fg-navy);
}

.inFamilyGuideDrawer__close
span:first-child{
  transform:rotate(45deg);
}

.inFamilyGuideDrawer__close
span:last-child{
  transform:rotate(-45deg);
}

.inFamilyGuideDrawer nav{
  display:grid;
}

.inFamilyGuideDrawer nav a{
  display:grid;

  grid-template-columns:
    35px minmax(0,1fr);

  gap:12px;

  padding:15px 2px;

  border-top:1px solid var(--fg-border);

  color:var(--fg-text)!important;

  font-size:.72rem;
}

.inFamilyGuideDrawer nav span{
  color:var(--fg-gold);

  font-family:"Noto Serif JP",serif!important;

  font-size:.5rem;
}

html.in-family-drawer-open{
  overflow:hidden;
}


/* REVEAL */

.in-family-has-js
.inFamilyGuide
.js-family-reveal{
  opacity:0;

  transform:translateY(23px);

  transition:
    opacity .8s ease var(--family-delay,0ms),
    transform .8s cubic-bezier(.22,1,.36,1)
    var(--family-delay,0ms);
}

.in-family-has-js
.inFamilyGuide
.js-family-reveal.is-visible{
  opacity:1;

  transform:none;
}


/* TABLET */

@media(max-width:1100px){

  .inFamilyGuideChapterIndicator{
    display:none;
  }

  .inFamilyGuideContents__nav{
    grid-template-columns:
      repeat(3,minmax(0,1fr));
  }

  .inFamilyGuideFacts{
    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }

  .inFamilyGuideJourney{
    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }

}


@media(max-width:900px){

  .inFamilyGuideIntro__layout,
  .inFamilyGuideChapterHead{
    grid-template-columns:1fr;
  }

  .inFamilyGuideChapterHead{
    gap:28px;
  }

  .inFamilyGuidePlace,
  .inFamilyGuidePlace--reverse{
    grid-template-columns:1fr;
  }

  .inFamilyGuidePlace--reverse figure,
  .inFamilyGuidePlace--reverse
  .inFamilyGuidePlace__copy{
    grid-column:auto;
    grid-row:auto;
  }

  .inFamilyGuideDinnerFeature{
    grid-template-columns:1fr;
  }

  .inFamilyGuideLastDay{
    grid-template-columns:
      60px minmax(0,1fr);
  }

  .inFamilyGuideLastDay dl{
    grid-column:2;
  }

}


/* MOBILE */

@media(max-width:767px){

  .inFamilyGuide__wide,
  .inFamilyGuide__article,
  .inFamilyGuideEnding__inner{
    width:calc(100% - 34px);
  }


  /* BOOKMARK */

  .inFamilyGuideMobileBookmark{
    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;
  }

  .inFamilyGuideMobileBookmark.is-visible{
    opacity:.87;

    transform:none;
  }

  .inFamilyGuideMobileBookmark__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);
  }

  .inFamilyGuideMobileBookmark__chapter{
    color:var(--fg-gold);

    font-family:"Noto Serif JP",serif!important;

    font-size:.38rem;

    white-space:nowrap;
  }

  .inFamilyGuideMobileBookmark__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;
  }

  .inFamilyGuideMobileBookmark__progress{
    color:rgba(16,41,67,.32);

    font-family:"Noto Serif JP",serif!important;

    font-size:.38rem;
  }

  .inFamilyGuideMobileBookmark.is-dark
  .inFamilyGuideMobileBookmark__inner{
    background:
      rgba(7,24,39,.77);
  }

  .inFamilyGuideMobileBookmark.is-dark
  .inFamilyGuideMobileBookmark__title{
    color:rgba(255,255,255,.78);
  }


  /* NOTICE */

  .inFamilyGuideChapterNotice{
    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);
  }

  .inFamilyGuideChapterNotice span{
    flex:0 0 auto;

    font-size:.38rem;
  }

  .inFamilyGuideChapterNotice strong{
    overflow:hidden;

    color:rgba(255,255,255,.84);

    font-size:.57rem;

    white-space:nowrap;

    text-overflow:ellipsis;
  }


  /* HERO */

  .inFamilyGuideHero,
  .inFamilyGuideHero__inner{
    min-height:620px;
  }

  .inFamilyGuideHero__inner{
    width:calc(100% - 34px);

    padding:50px 0 30px;
  }

  .inFamilyGuideHero__copy{
    width:100%;

    padding:37px 0 24px;
  }

  body .inFamilyGuide
  .inFamilyGuideHero h1{
    font-size:
      clamp(1.42rem,6vw,1.72rem)!important;

    line-height:1.62!important;
  }

  .inFamilyGuideHero__lead{
    margin-top:20px!important;

    font-size:.73rem;

    line-height:2;
  }

  .inFamilyGuideHero__pcBreak,
  .inFamilyGuideHero__caption{
    display:none;
  }

  .inFamilyGuideHero__overlay{
    background:
      linear-gradient(
        180deg,
        rgba(7,25,42,.15) 0%,
        rgba(7,25,42,.4) 38%,
        rgba(7,25,42,.93) 100%
      );
  }


  /* SECTIONS */

  .inFamilyGuideIntro,
  .inFamilyGuideOverview,
  .inFamilyGuideDayOne,
  .inFamilyGuideDayTwo,
  .inFamilyGuidePlaces,
  .inFamilyGuidePause,
  .inFamilyGuideDinner,
  .inFamilyGuideDayThree,
  .inFamilyGuideChange,
  .inFamilyGuideChecklistSection,
  .inFamilyGuideFaqSection,
  .inFamilyGuideEnding,
  .inFamilyGuideRelated{
    padding-top:77px;
    padding-bottom:83px;

    scroll-margin-top:39px;
  }

  .inFamilyGuideIntro h2,
  .inFamilyGuideContents h2,
  .inFamilyGuideChapterHead h2,
  .inFamilyGuidePlaces h2,
  .inFamilyGuidePause h2,
  .inFamilyGuideDinner h2,
  .inFamilyGuideNoteHead h2,
  .inFamilyGuideEnding h2,
  .inFamilyGuideRelated h2{
    font-size:1.33rem!important;

    line-height:1.74!important;
  }

  .inFamilyGuideChapterHead{
    margin-bottom:42px;
  }


  /* INTRO */

  .inFamilyGuideIntro__lead{
    font-size:.79rem;

    line-height:2.02;
  }

  .inFamilyGuideIntroPhrase{
    margin-top:55px;
  }

  .inFamilyGuideIntroPhrase
  > p:last-child{
    font-size:1rem;
  }

  .inFamilyGuideFacts{
    grid-template-columns:1fr;

    margin-top:50px;
  }

  .inFamilyGuideFacts article{
    min-height:0;

    padding:25px 22px 28px;
  }

  .inFamilyGuideImportant{
    padding:29px 22px 32px;
  }


  /* CONTENTS */

  .inFamilyGuideContents{
    padding:75px 0 80px;
  }

  .inFamilyGuideContents__head{
    text-align:left;
  }

  .inFamilyGuideContents__details{
    margin-top:30px;
  }

  .inFamilyGuideContents__details > summary{
    display:flex;

    min-height:55px;

    align-items:center;
    justify-content:space-between;

    padding:14px 16px!important;

    background:#fff;

    color:var(--fg-navy);

    font-family:"Noto Serif JP",serif!important;

    font-size:.72rem;
  }

  .inFamilyGuideContents__nav{
    grid-template-columns:1fr;

    padding-top:8px;
  }

  .inFamilyGuideContents__nav a{
    min-height:101px;
  }


  /* OVERVIEW */

  .inFamilyGuideJourney{
    grid-template-columns:1fr;
  }

  .inFamilyGuideJourney article{
    min-height:0;

    padding:28px 23px 31px;
  }


  /* DAY 1 */

  .inFamilyGuideDayOneFlow article{
    grid-template-columns:
      44px minmax(0,1fr);

    gap:15px;

    padding:24px 0;
  }

  .inFamilyGuideDayOneFlow
  > article > span{
    font-size:1.2rem;
  }


  /* INTERLUDE */

  .inFamilyGuideInterlude{
    min-height:500px;
  }

  .inFamilyGuideInterlude__copy{
    width:calc(100% - 34px);

    min-height:500px;

    padding:50px 0;
  }

  .inFamilyGuideInterlude__copy h2{
    font-size:1.35rem!important;
  }

  .inFamilyGuideInterlude__overlay{
    background:
      linear-gradient(
        180deg,
        rgba(4,18,30,.04) 0%,
        rgba(4,18,30,.18) 42%,
        rgba(4,18,30,.88) 100%
      );
  }


  /* DAY 2 */

  .inFamilyGuideDayTwoSplit{
    grid-template-columns:1fr;

    gap:25px;

    padding:29px 23px 32px;
  }

  .inFamilyGuideDayTwoSplit > span{
    width:100%;
    height:1px;
  }


  /* PLACES */

  .inFamilyGuidePlaces__head{
    margin-bottom:38px;
  }

  .inFamilyGuidePlace{
    min-height:0;
  }

  .inFamilyGuidePlace
  + .inFamilyGuidePlace{
    margin-top:27px;
  }

  .inFamilyGuidePlace figure{
    min-height:0;
  }

  .inFamilyGuidePlace img{
    aspect-ratio:4/3;

    height:auto!important;
  }

  .inFamilyGuidePlace__visual--text{
    min-height:340px;

    padding:31px 25px;
  }

  .inFamilyGuidePlace__visual--text strong{
    font-size:1.35rem;
  }

  .inFamilyGuidePlace__copy{
    padding:30px 23px 34px;
  }

  .inFamilyGuidePlace h3{
    font-size:1.3rem!important;
  }

  .inFamilyGuidePlace__catch{
    font-size:.88rem;
  }


  /* PAUSE */

  .inFamilyGuidePauseGrid{
    grid-template-columns:1fr;
  }

  .inFamilyGuidePauseGrid article{
    min-height:0;

    padding:29px 23px 32px;
  }


  /* DINNER */

  .inFamilyGuideDinnerFeature figure{
    min-height:0;
  }

  .inFamilyGuideDinnerFeature img{
    aspect-ratio:4/3;

    height:auto!important;
  }

  .inFamilyGuideDinnerFeature > div{
    padding:30px 23px 34px;
  }


  /* DAY 3 */

  .inFamilyGuideLastDay{
    grid-template-columns:1fr;

    gap:20px;

    padding:30px 23px 34px;
  }

  .inFamilyGuideLastDay dl{
    grid-column:auto;
  }

  .inFamilyGuideLastDay__number{
    font-size:1.35rem;
  }


  /* TABS */

  .inFamilyGuideTabs__buttons{
    grid-template-columns:1fr;
  }

  .inFamilyGuideTabs__buttons button{
    min-height:59px;
  }

  .inFamilyGuideTabPanel{
    grid-template-columns:1fr;

    gap:17px;

    min-height:0;

    padding:30px 22px 33px;
  }


  /* CHECKLIST */

  .inFamilyGuideChecklist__toolbar{
    align-items:flex-start;

    flex-direction:column;

    padding:24px 21px;
  }

  .inFamilyGuideChecklist__toolbar > div{
    flex-wrap:wrap;
  }

  .inFamilyGuideChecklist__items{
    grid-template-columns:1fr;

    padding:16px 20px 22px;
  }

  .inFamilyGuideChecklist
  label:nth-child(even){
    border-left:0;
  }

  .inFamilyGuideChecklist
  label+label{
    border-top:
      1px solid var(--fg-border);
  }


  /* FAQ */

  .inFamilyGuideFaq summary{
    min-height:66px;

    padding:16px 2px!important;

    font-size:.81rem!important;
  }

  .inFamilyGuideFaq details > div{
    padding:0 30px 21px 2px;
  }


  /* RELATED */

  .inFamilyGuideRelated__grid{
    grid-template-columns:1fr;
  }

  .inFamilyGuideDisclaimer{
    text-align:left;
  }


  /* FLOAT */

  .inFamilyGuideFloatingToc{
    right:14px;
    bottom:67px;

    min-width:49px;
    min-height:49px;

    padding:11px!important;
  }

  .inFamilyGuideFloatingToc strong{
    display:none;
  }

  .inFamilyGuideDrawer__panel{
    width:min(400px,94vw);

    padding:48px 23px 40px;
  }

}


/* ELEMENTOR */

.elementor-widget-html:has(.inFamilyGuide){
  margin:0!important;
}

.elementor-element:has(
  > .elementor-widget-html
  .inFamilyGuide
){
  margin:0!important;

  padding:0!important;
}


/* FOCUS */

.inFamilyGuide a:focus-visible,
.inFamilyGuide button:focus-visible,
.inFamilyGuide summary:focus-visible,
.inFamilyGuide input:focus-visible{
  outline:
    2px solid var(--fg-gold)!important;

  outline-offset:4px!important;
}


/* REDUCED MOTION */

@media(prefers-reduced-motion:reduce){

  .inFamilyGuide *,
  .inFamilyGuide *::before,
  .inFamilyGuide *::after{
    animation:none!important;

    transition:none!important;
  }

  .in-family-has-js
  .inFamilyGuide
  .js-family-reveal{
    opacity:1!important;

    transform:none!important;
  }

  .in-family-has-js
  .inFamilyGuide
  .js-family-image::after{
    display:none!important;
  }

  .in-family-has-js
  .inFamilyGuide
  .js-family-image img{
    transform:none!important;
  }

  .inFamilyGuideChapterNotice{
    display:none!important;
  }

}/* End custom CSS */