.elementor-19481 .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 08 / EAST COAST HALF DAY
================================================== */

.inEastHalf{
  --eh-navy:#102943;
  --eh-deep:#071827;
  --eh-gold:#c2a878;
  --eh-ivory:#f8f5ef;
  --eh-soft:#f1eee7;
  --eh-white:#ffffff;
  --eh-text:#596775;
  --eh-muted:rgba(28,53,87,.56);
  --eh-border:rgba(16,41,67,.12);

  position:relative;

  width:100%;

  margin:0!important;

  overflow:hidden;

  background:#fff;

  color:var(--eh-text);

  font-family:
    "Noto Sans JP",
    "Yu Gothic",
    "YuGothic",
    sans-serif!important;

  font-size:16px;

  -webkit-font-smoothing:antialiased;
}


.inEastHalf *,
.inEastHalf *::before,
.inEastHalf *::after{
  box-sizing:border-box;
}


.inEastHalf img{
  display:block;

  width:100%;

  max-width:none;

  height:auto;

  margin:0;
}


.inEastHalf figure{
  margin:0;
}


.inEastHalf a{
  text-decoration:none;
}


.inEastHalf button,
.inEastHalf input,
.inEastHalf summary{
  font:inherit;
}


.inEastHalf button{
  appearance:none;
}


.inEastHalf summary{
  list-style:none;
}


.inEastHalf summary::-webkit-details-marker{
  display:none;
}


.inEastHalf :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;
}


.inEastHalf__wide{
  width:min(
    1180px,
    calc(100% - 72px)
  );

  margin:0 auto;
}


.inEastHalf__article{
  width:min(
    930px,
    calc(100% - 72px)
  );

  margin:0 auto;
}


.inEastHalfLabel{
  margin:0!important;

  color:
    var(--eh-gold)!important;

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:.56rem!important;

  font-weight:500!important;

  line-height:1.5!important;

  letter-spacing:.18em!important;
}


/* ==================================================
   PROGRESS
================================================== */

.inEastHalfProgress{
  position:fixed;

  top:0;
  right:0;
  left:0;

  z-index:9999;

  height:3px;

  pointer-events:none;
}


.inEastHalfProgress span{
  display:block;

  width:100%;
  height:100%;

  background:
    var(--eh-gold);

  transform:scaleX(0);

  transform-origin:left center;
}


/* ==================================================
   PC CHAPTER
================================================== */

.inEastHalfChapter{
  position:fixed;

  top:50%;
  left:20px;

  z-index:190;

  display:grid;

  grid-template-columns:
    1px auto;

  grid-template-rows:
    auto auto;

  gap:0 12px;

  align-items:center;

  opacity:0;

  pointer-events:none;

  transform:
    translateY(-50%)
    translateX(-5px);

  transition:
    opacity .35s ease,
    transform .35s ease;
}


.inEastHalfChapter.is-visible{
  opacity:.8;

  transform:
    translateY(-50%);
}


.inEastHalfChapter__line{
  grid-row:1/3;

  width:1px;
  height:70px;

  background:
    linear-gradient(
      to bottom,
      var(--eh-gold) 0 22%,
      rgba(16,41,67,.12) 22% 100%
    );
}


.inEastHalfChapter > div{
  display:grid;

  min-width:115px;

  gap:3px;
}


.inEastHalfChapter small{
  color:
    var(--eh-gold);

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:.41rem;

  letter-spacing:.12em;
}


.inEastHalfChapter strong{
  color:
    rgba(16,41,67,.8);

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:.58rem;

  font-weight:500;
}


.inEastHalfChapter__progress{
  margin-top:5px;

  color:
    rgba(16,41,67,.3);

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:.4rem;
}


.inEastHalfChapter.is-dark strong{
  color:
    rgba(255,255,255,.82);
}


.inEastHalfChapter.is-dark
.inEastHalfChapter__progress{
  color:
    rgba(255,255,255,.34);
}


/* ==================================================
   SP BOOKMARK
================================================== */

.inEastHalfBookmark{
  display:none;
}


/* ==================================================
   NOTICE
================================================== */

.inEastHalfNotice{
  position:fixed;

  left:24px;
  bottom:26px;

  z-index:270;

  display:grid;

  width:245px;

  gap:4px;

  padding:
    13px 17px 14px;

  border-left:
    1px solid
    rgba(194,168,120,.68);

  background:
    rgba(248,245,239,.9);

  box-shadow:
    0 8px 28px
    rgba(7,24,39,.06);

  backdrop-filter:
    blur(10px);

  opacity:0;

  pointer-events:none;

  transform:
    translate3d(-8px,4px,0);

  transition:
    opacity .3s ease,
    transform .4s
    cubic-bezier(.22,1,.36,1);
}


.inEastHalfNotice span{
  color:
    var(--eh-gold);

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:.41rem;

  letter-spacing:.13em;
}


.inEastHalfNotice strong{
  color:
    var(--eh-navy);

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:.66rem;

  font-weight:500;
}


.inEastHalfNotice.is-showing{
  opacity:.94;

  transform:none;
}


/* ==================================================
   HERO
================================================== */

.inEastHalfHero{
  position:relative;

  min-height:680px;

  overflow:hidden;

  background:
    var(--eh-deep);

  color:#fff;
}


.inEastHalfHero__media{
  position:absolute;

  inset:0;

  z-index:0;

  width:100%;

  height:100%;

  overflow:hidden;
}


.inEastHalfHero__media img{
  width:100%!important;

  height:100%!important;

  object-fit:cover!important;

  object-position:
    center center!important;

  filter:
    saturate(.93)
    contrast(1.02)
    brightness(.87);

  transform:
    scale(1.02);
}


.inEastHalfHero__overlay{
  position:absolute;

  inset:0;

  z-index:1;

  background:
    linear-gradient(
      90deg,
      rgba(7,25,42,.92) 0%,
      rgba(7,25,42,.67) 42%,
      rgba(7,25,42,.2) 73%,
      rgba(7,25,42,.03) 100%
    ),
    linear-gradient(
      180deg,
      rgba(7,25,42,.02) 0%,
      rgba(7,25,42,.08) 55%,
      rgba(7,25,42,.65) 100%
    );
}


.inEastHalfHero__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;
}


.inEastHalfBreadcrumb{
  display:flex;

  align-items:center;

  gap:11px;

  overflow:hidden;

  color:
    rgba(255,255,255,.58);

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:.51rem;

  white-space:nowrap;
}


.inEastHalfBreadcrumb a{
  color:inherit!important;
}


.inEastHalfBreadcrumb
> span:not(:last-child){
  width:22px;

  height:1px;

  background:
    var(--eh-gold);
}


.inEastHalfHero__copy{
  align-self:center;

  width:min(
    850px,
    80%
  );

  padding:
    48px 0 40px;
}


.inEastHalfHero__pageName{
  margin:0!important;

  color:
    rgba(255,255,255,.84);

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:.76rem;
}


.inEastHalfHero__en{
  margin:
    9px 0 0!important;

  color:
    var(--eh-gold);

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:.56rem;

  letter-spacing:.18em;
}


body
.inEastHalf
.inEastHalfHero h1{
  max-width:830px!important;

  margin:
    26px 0 0!important;

  color:#fff!important;

  font-size:
    clamp(
      1.7rem,
      2.65vw,
      2.58rem
    )!important;

  line-height:
    1.6!important;

  letter-spacing:
    .014em!important;
}


.inEastHalfHero__lead{
  max-width:760px;

  margin:
    25px 0 0!important;

  color:
    rgba(255,255,255,.77);

  font-size:.84rem;

  line-height:2.06;
}


.inEastHalfHero__discover{
  display:inline-flex;

  width:fit-content;

  align-items:center;

  gap:16px;

  margin-top:31px;

  color:#fff!important;

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:.52rem;

  letter-spacing:.16em;
}


.inEastHalfHero__discover
> span:last-child{
  width:50px;

  height:1px;

  background:
    var(--eh-gold);

  transition:
    width .35s ease;
}


.inEastHalfHero__caption{
  display:flex;

  justify-content:
    space-between;

  color:
    rgba(255,255,255,.43);

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:.46rem;

  letter-spacing:.14em;
}


/* ==================================================
   COMMON HEADINGS
================================================== */

.inEastHalfIntro h2,
.inEastHalfContents h2,
.inEastHalfChapterHead h2,
.inEastHalfShiraho h2,
.inEastHalfMiyara h2,
.inEastHalfDecision h2,
.inEastHalfTamatori h2,
.inEastHalfSimpleHead h2,
.inEastHalfEnding h2,
.inEastHalfRelated h2{
  margin:
    14px 0 0!important;

  color:
    var(--eh-navy)!important;

  font-size:
    clamp(
      1.5rem,
      2.3vw,
      2.04rem
    )!important;

  line-height:
    1.72!important;
}


.inEastHalfChapterHead{
  display:grid;

  grid-template-columns:
    minmax(0,1.15fr)
    minmax(310px,.85fr);

  gap:
    clamp(
      45px,
      6vw,
      82px
    );

  margin-bottom:62px;
}


.inEastHalfChapterHead__catch{
  margin:0!important;

  color:
    var(--eh-navy);

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:
    clamp(
      1.02rem,
      1.45vw,
      1.28rem
    );

  line-height:1.82;
}


.inEastHalfChapterHead__text{
  margin:
    18px 0 0!important;

  font-size:.8rem;

  line-height:2;
}


/* ==================================================
   INTRO
================================================== */

.inEastHalfIntro{
  padding:
    118px 0 126px;

  background:#fff;
}


.inEastHalfIntro__layout{
  display:grid;

  grid-template-columns:
    minmax(330px,.86fr)
    minmax(0,1.14fr);

  gap:
    clamp(
      60px,
      8vw,
      110px
    );
}


.inEastHalfIntro__lead{
  font-size:.89rem;

  line-height:2.14;
}


.inEastHalfIntro__lead p{
  margin:0!important;
}


.inEastHalfIntro__lead p+p{
  margin-top:
    1.35em!important;
}


.inEastHalfPhrase{
  width:min(
    790px,
    100%
  );

  margin:
    80px auto 0;

  text-align:center;
}


.inEastHalfPhrase
> p:last-child{
  margin:
    20px 0 0!important;

  color:
    var(--eh-navy);

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:
    clamp(
      1.12rem,
      1.8vw,
      1.45rem
    );

  line-height:2;
}


.inEastHalfFacts{
  display:grid;

  grid-template-columns:
    repeat(
      4,
      minmax(0,1fr)
    );

  gap:1px;

  margin-top:73px;

  background:
    var(--eh-border);
}


.inEastHalfFacts article{
  min-height:215px;

  padding:
    29px 27px 32px;

  background:
    var(--eh-ivory);
}


.inEastHalfFacts span{
  color:
    var(--eh-gold);

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:.52rem;
}


.inEastHalfFacts
article > p:first-of-type{
  margin:
    10px 0 0!important;

  color:
    var(--eh-muted);

  font-size:.44rem;

  letter-spacing:.13em;
}


.inEastHalfFacts h3{
  margin:
    21px 0 0!important;

  color:
    var(--eh-navy);

  font-size:.96rem!important;
}


.inEastHalfFacts
article > p:last-child{
  margin:
    14px 0 0!important;

  font-size:.71rem;

  line-height:1.92;
}


.inEastHalfImportant{
  width:min(
    860px,
    100%
  );

  margin:
    61px auto 0;

  padding:
    35px 40px;

  background:
    var(--eh-navy);
}


.inEastHalfImportant h3{
  margin:
    16px 0 0!important;

  color:#fff;

  font-size:
    1.06rem!important;

  line-height:1.8;
}


.inEastHalfImportant
> p:last-child{
  margin:
    18px 0 0!important;

  color:
    rgba(255,255,255,.68);

  font-size:.75rem;

  line-height:2;
}


/* ==================================================
   CONTENTS
================================================== */

.inEastHalfContents{
  padding:
    99px 0 106px;

  background:
    var(--eh-soft);
}


.inEastHalfContents__head{
  max-width:760px;

  margin:0 auto;

  text-align:center;
}


.inEastHalfContents__head
> p:last-child{
  margin:
    20px 0 0!important;

  font-size:.76rem;

  line-height:1.95;
}


.inEastHalfContents__details{
  margin-top:45px;
}


.inEastHalfContents__details
> summary{
  display:none;
}


.inEastHalfContents__nav{
  display:grid;

  grid-template-columns:
    repeat(
      4,
      minmax(0,1fr)
    );

  gap:1px;

  background:
    var(--eh-border);
}


.inEastHalfContents__nav a{
  position:relative;

  min-height:140px;

  padding:
    25px 24px 31px;

  background:#fff;

  color:inherit!important;
}


.inEastHalfContents__nav a span{
  color:
    var(--eh-gold);

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:.5rem;
}


.inEastHalfContents__nav small{
  display:block;

  margin-top:10px;

  color:
    var(--eh-muted);

  font-size:.42rem;

  letter-spacing:.12em;
}


.inEastHalfContents__nav strong{
  display:block;

  margin-top:8px;

  color:
    var(--eh-navy);

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:.79rem;

  font-weight:500;

  line-height:1.65;
}


.inEastHalfContents__nav a::after{
  content:"";

  position:absolute;

  right:21px;
  bottom:20px;

  width:23px;

  height:1px;

  background:
    var(--eh-gold);
}


/* ==================================================
   ARRIVAL
================================================== */

.inEastHalfArrival{
  padding:
    118px 0 126px;

  background:#fff;
}


.inEastHalfArrivalSteps{
  display:grid;

  grid-template-columns:
    repeat(
      3,
      minmax(0,1fr)
    );

  gap:1px;

  background:
    var(--eh-border);
}


.inEastHalfArrivalSteps article{
  min-height:220px;

  padding:
    31px 29px 34px;

  background:
    var(--eh-ivory);
}


.inEastHalfArrivalSteps span{
  color:
    var(--eh-gold);

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:.53rem;
}


.inEastHalfArrivalSteps h3{
  margin:
    22px 0 0!important;

  color:
    var(--eh-navy);

  font-size:
    1.02rem!important;
}


.inEastHalfArrivalSteps p{
  margin:
    15px 0 0!important;

  font-size:.72rem;

  line-height:1.95;
}


/* ==================================================
   SHIRAHO
================================================== */

.inEastHalfShiraho{
  padding:
    126px 0 134px;

  background:
    var(--eh-ivory);
}


.inEastHalfShiraho__scene{
  display:grid;

  grid-template-columns:
    105px minmax(0,1fr);

  gap:43px;
}


.inEastHalfShiraho__number{
  padding-top:5px;
}


.inEastHalfShiraho__number span{
  display:block;

  color:
    var(--eh-gold);

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:1.4rem;
}


.inEastHalfShiraho__number small{
  display:block;

  margin-top:8px;

  color:
    var(--eh-muted);

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:.43rem;

  letter-spacing:.13em;
}


.inEastHalfShiraho__lead{
  margin:
    25px 0 0!important;

  color:
    var(--eh-navy);

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:1.01rem;

  line-height:1.95;
}


.inEastHalfShiraho__scene
> div:last-child
> p:not(.inEastHalfLabel):not(.inEastHalfShiraho__lead){
  margin:
    18px 0 0!important;

  font-size:.78rem;

  line-height:2.04;
}


.inEastHalfShiraho dl{
  margin:
    27px 0 0;
}


.inEastHalfShiraho
dl > div{
  display:grid;

  grid-template-columns:
    110px minmax(0,1fr);

  gap:13px;

  padding:
    10px 0;
}


.inEastHalfShiraho
dl > div+div{
  border-top:
    1px solid
    var(--eh-border);
}


.inEastHalfShiraho dt{
  color:
    var(--eh-muted);

  font-size:.59rem;
}


.inEastHalfShiraho dd{
  margin:0;

  color:
    var(--eh-navy);

  font-size:.68rem;

  line-height:1.75;
}


.inEastHalfShiraho a{
  display:inline-flex;

  margin-top:22px;

  color:
    var(--eh-navy)!important;

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:.63rem;

  text-decoration:underline;

  text-underline-offset:5px;
}


.inEastHalfShiraho__phrase{
  margin:
    69px 0 0!important;

  padding-left:
    148px;

  color:
    var(--eh-navy);

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:
    clamp(
      1.05rem,
      1.7vw,
      1.36rem
    );

  line-height:2;
}


/* ==================================================
   MIYARA
   全面背景写真
================================================== */

.inEastHalfMiyara{
  position:relative;

  min-height:710px;

  overflow:hidden;

  isolation:isolate;

  background:
    var(--eh-deep);
}


/* 1層目：写真 */
.inEastHalfMiyara__media{
  position:absolute!important;

  inset:0!important;

  z-index:0!important;

  display:block!important;

  width:100%!important;

  height:100%!important;

  margin:0!important;

  overflow:hidden!important;
}


.inEastHalfMiyara__media img{
  display:block!important;

  width:100%!important;

  height:100%!important;

  max-width:none!important;

  min-width:100%!important;

  min-height:100%!important;

  object-fit:cover!important;

  object-position:
    center center!important;

  opacity:1!important;

  visibility:visible!important;

  transform:none!important;
}


/* 2層目：オーバーレイ */
.inEastHalfMiyara__overlay{
  position:absolute!important;

  inset:0!important;

  z-index:1!important;

  display:block!important;

  pointer-events:none;

  background:
    linear-gradient(
      90deg,
      rgba(5,25,30,.88) 0%,
      rgba(5,25,30,.66) 42%,
      rgba(5,25,30,.19) 72%,
      rgba(5,25,30,.03) 100%
    ),
    linear-gradient(
      180deg,
      rgba(5,25,30,.02) 0%,
      rgba(5,25,30,.07) 58%,
      rgba(5,25,30,.42) 100%
    );
}


/* 3層目：文章 */
.inEastHalfMiyara__inner{
  position:relative!important;

  z-index:2!important;

  display:flex;

  align-items:center;

  width:min(
    1180px,
    calc(100% - 72px)
  );

  min-height:710px;

  margin:0 auto;
}


.inEastHalfMiyara__copy{
  width:min(
    630px,
    60%
  );
}


.inEastHalfMiyara h2{
  color:#fff!important;
}


.inEastHalfMiyara__lead{
  margin:
    26px 0 0!important;

  color:#fff;

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:1rem;

  line-height:1.95;
}


.inEastHalfMiyara__copy
> p:not(.inEastHalfLabel):not(.inEastHalfMiyara__lead){
  margin:
    18px 0 0!important;

  color:
    rgba(255,255,255,.78);

  font-size:.77rem;

  line-height:2.03;
}


.inEastHalfMiyara dl{
  margin:
    27px 0 0;
}


.inEastHalfMiyara
dl > div{
  display:grid;

  grid-template-columns:
    100px minmax(0,1fr);

  gap:13px;

  padding:
    10px 0;
}


.inEastHalfMiyara
dl > div+div{
  border-top:
    1px solid
    rgba(255,255,255,.18);
}


.inEastHalfMiyara dt{
  color:
    rgba(255,255,255,.55);

  font-size:.58rem;
}


.inEastHalfMiyara dd{
  margin:0;

  color:
    rgba(255,255,255,.92);

  font-size:.67rem;

  line-height:1.75;
}


.inEastHalfMiyara a{
  display:inline-flex;

  margin-top:23px;

  color:#fff!important;

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:.63rem;

  text-decoration:underline;

  text-underline-offset:5px;
}


/* ==================================================
   DECISION
================================================== */

.inEastHalfDecision{
  padding:
    119px 0 127px;

  background:#fff;
}


.inEastHalfDecision__head{
  max-width:740px;
}


.inEastHalfDecision__head
> p:last-child{
  margin:
    20px 0 0!important;

  font-size:.78rem;

  line-height:2;
}


.inEastHalfDecisionGrid{
  display:grid;

  grid-template-columns:
    repeat(
      2,
      minmax(0,1fr)
    );

  gap:1px;

  margin-top:51px;

  background:
    var(--eh-border);
}


.inEastHalfDecisionGrid article{
  min-height:225px;

  padding:
    34px 32px 37px;

  background:
    var(--eh-ivory);
}


.inEastHalfDecisionGrid span{
  color:
    var(--eh-gold);

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:.52rem;

  letter-spacing:.14em;
}


.inEastHalfDecisionGrid h3{
  margin:
    23px 0 0!important;

  color:
    var(--eh-navy);

  font-size:
    1.11rem!important;
}


.inEastHalfDecisionGrid p{
  margin:
    16px 0 0!important;

  font-size:.74rem;

  line-height:1.98;
}


.inEastHalfDecisionNote{
  width:min(
    820px,
    100%
  );

  margin:
    54px auto 0;

  padding:
    35px 39px;

  background:
    var(--eh-navy);
}


.inEastHalfDecisionNote h3{
  margin:
    16px 0 0!important;

  color:#fff;

  font-size:
    1.05rem!important;

  line-height:1.8;
}


.inEastHalfDecisionNote
> p:last-child{
  margin:
    18px 0 0!important;

  color:
    rgba(255,255,255,.68);

  font-size:.75rem;

  line-height:2;
}


/* ==================================================
   TAMATORI
   全面背景写真
================================================== */

.inEastHalfTamatori{
  position:relative;

  min-height:735px;

  overflow:hidden;

  isolation:isolate;

  background:
    var(--eh-navy);
}


/* 1層目：写真 */
.inEastHalfTamatori__media{
  position:absolute!important;

  inset:0!important;

  z-index:0!important;

  display:block!important;

  width:100%!important;

  height:100%!important;

  margin:0!important;

  overflow:hidden!important;
}


.inEastHalfTamatori__media img{
  display:block!important;

  width:100%!important;

  height:100%!important;

  max-width:none!important;

  min-width:100%!important;

  min-height:100%!important;

  object-fit:cover!important;

  object-position:
    center center!important;

  opacity:1!important;

  visibility:visible!important;

  transform:none!important;

  filter:
    saturate(.94)
    contrast(1.02);
}


/* 2層目：オーバーレイ */
.inEastHalfTamatori__overlay{
  position:absolute!important;

  inset:0!important;

  z-index:1!important;

  display:block!important;

  pointer-events:none;

  background:
    linear-gradient(
      90deg,
      rgba(7,24,39,.84) 0%,
      rgba(7,24,39,.59) 40%,
      rgba(7,24,39,.15) 70%,
      rgba(7,24,39,.02) 100%
    ),
    linear-gradient(
      180deg,
      rgba(7,24,39,.02) 0%,
      rgba(7,24,39,.05) 55%,
      rgba(7,24,39,.4) 100%
    );
}


/* 3層目：文章 */
.inEastHalfTamatori__inner{
  position:relative!important;

  z-index:2!important;

  display:flex;

  align-items:center;

  width:min(
    1180px,
    calc(100% - 72px)
  );

  min-height:735px;

  margin:0 auto;
}


.inEastHalfTamatori__copy{
  width:min(
    640px,
    61%
  );
}


.inEastHalfTamatori h2{
  color:#fff!important;
}


.inEastHalfTamatori__lead{
  margin:
    26px 0 0!important;

  color:#fff;

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:1.01rem;

  line-height:1.95;
}


.inEastHalfTamatori__copy
> p:not(.inEastHalfLabel):not(.inEastHalfTamatori__lead){
  margin:
    18px 0 0!important;

  color:
    rgba(255,255,255,.78);

  font-size:.77rem;

  line-height:2.03;
}


.inEastHalfTamatori dl{
  margin:
    27px 0 0;
}


.inEastHalfTamatori
dl > div{
  display:grid;

  grid-template-columns:
    100px minmax(0,1fr);

  gap:13px;

  padding:
    10px 0;
}


.inEastHalfTamatori
dl > div+div{
  border-top:
    1px solid
    rgba(255,255,255,.18);
}


.inEastHalfTamatori dt{
  color:
    rgba(255,255,255,.55);

  font-size:.58rem;
}


.inEastHalfTamatori dd{
  margin:0;

  color:
    rgba(255,255,255,.92);

  font-size:.67rem;

  line-height:1.75;
}


.inEastHalfTamatori a{
  display:inline-flex;

  margin-top:23px;

  color:#fff!important;

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:.63rem;

  text-decoration:underline;

  text-underline-offset:5px;
}


/* ==================================================
   DINNER
================================================== */

.inEastHalfDinner{
  padding:
    118px 0 126px;

  background:
    var(--eh-ivory);
}


.inEastHalfDinnerFeature{
  display:grid;

  grid-template-columns:
    minmax(0,.95fr)
    minmax(360px,1.05fr);

  overflow:hidden;

  background:
    var(--eh-navy);
}


.inEastHalfDinnerFeature figure{
  position:relative;

  min-height:500px;

  overflow:hidden;
}


.inEastHalfDinnerFeature img{
  height:100%!important;

  object-fit:cover;
}


.inEastHalfDinnerFeature > div{
  display:flex;

  flex-direction:column;

  justify-content:center;

  padding:
    47px 46px;
}


.inCourseGuide
.inCoursePartnerBadge{
  display:inline-flex;

  width:fit-content;

  margin:
    0 0 16px;

  padding:
    6px 10px;

  border:
    1px solid
    rgba(194,168,120,.65);

  color:
    var(--eh-gold);

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:.5rem;

  letter-spacing:.12em;
}


.inEastHalfDinnerFeature h3{
  margin:
    15px 0 0!important;

  color:#fff;

  font-size:
    clamp(
      1.35rem,
      2.2vw,
      1.82rem
    )!important;

  line-height:1.75;
}


.inEastHalfDinnerFeature
> div
> p:not(.inEastHalfLabel){
  margin:
    18px 0 0!important;

  color:
    rgba(255,255,255,.69);

  font-size:.76rem;

  line-height:2;
}


.inEastHalfDinnerFeature strong{
  display:block;

  margin-top:20px;

  color:#fff;

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:.73rem;

  font-weight:500;
}


.inEastHalfDinnerFeature 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;
}


.inCourseGuide
.inCoursePartnerDisclosure{
  width:min(
    930px,
    100%
  );

  margin:
    32px auto 0;

  padding:
    20px 23px;

  border-left:
    2px solid
    var(--eh-gold);

  background:#fff;

  color:
    var(--eh-text);

  font-size:.67rem;

  line-height:1.9;
}


/* ==================================================
   CHANGE
================================================== */

.inEastHalfChange{
  padding:
    118px 0 126px;

  background:
    var(--eh-soft);
}


.inEastHalfTabs__buttons{
  display:grid;

  grid-template-columns:
    repeat(
      3,
      minmax(0,1fr)
    );

  gap:1px;

  background:
    var(--eh-border);
}


.inEastHalfTabs__buttons button{
  min-height:74px;

  padding:
    10px 12px!important;

  border:0!important;

  border-radius:0!important;

  background:#fff!important;

  color:
    var(--eh-muted)!important;

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:.76rem;

  cursor:pointer;
}


.inEastHalfTabs__buttons
button span{
  display:block;

  margin-top:5px;

  font-size:.4rem;

  letter-spacing:.12em;
}


.inEastHalfTabs__buttons
button[aria-selected="true"]{
  background:
    var(--eh-navy)!important;

  color:#fff!important;
}


.inEastHalfTabs__panels{
  margin-top:1px;
}


.inEastHalfTabPanel{
  display:grid;

  grid-template-columns:
    72px
    minmax(0,1fr)
    minmax(240px,.65fr);

  gap:34px;

  align-items:center;

  min-height:290px;

  padding:42px;

  border:
    1px solid
    var(--eh-border);

  background:#fff;
}


.inEastHalfTabPanel[hidden]{
  display:none!important;
}


.inEastHalfTabPanel__number{
  color:
    var(--eh-gold);

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:2.1rem;
}


.inEastHalfTabPanel h3{
  margin:
    14px 0 0!important;

  color:
    var(--eh-navy);

  font-size:
    1.27rem!important;

  line-height:1.76;
}


.inEastHalfTabPanel
> div
> p:last-child{
  margin:
    17px 0 0!important;

  font-size:.76rem;

  line-height:2;
}


.inEastHalfTabPanel ul{
  margin:0;

  padding:0;

  list-style:none;
}


.inEastHalfTabPanel li{
  position:relative;

  padding-left:16px;

  color:
    var(--eh-navy);

  font-size:.69rem;

  line-height:1.85;
}


.inEastHalfTabPanel li+li{
  margin-top:8px;
}


.inEastHalfTabPanel li::before{
  content:"";

  position:absolute;

  top:.85em;
  left:0;

  width:7px;
  height:1px;

  background:
    var(--eh-gold);
}


/* ==================================================
   PRACTICAL
================================================== */

.inEastHalfPractical{
  padding:
    118px 0 126px;

  background:#fff;
}


.inEastHalfPracticalGrid{
  display:grid;

  grid-template-columns:
    repeat(
      4,
      minmax(0,1fr)
    );

  gap:1px;

  background:
    var(--eh-border);
}


.inEastHalfPracticalGrid article{
  min-height:210px;

  padding:
    29px 27px 32px;

  background:
    var(--eh-ivory);
}


.inEastHalfPracticalGrid span{
  color:
    var(--eh-gold);

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:.49rem;

  letter-spacing:.12em;
}


.inEastHalfPracticalGrid h3{
  margin:
    21px 0 0!important;

  color:
    var(--eh-navy);

  font-size:.97rem!important;
}


.inEastHalfPracticalGrid p{
  margin:
    14px 0 0!important;

  font-size:.7rem;

  line-height:1.92;
}


/* ==================================================
   CHECKLIST / FAQ
================================================== */

.inEastHalfChecklistSection,
.inEastHalfFaqSection{
  padding:
    105px 0 112px;
}


.inEastHalfChecklistSection{
  background:
    var(--eh-soft);
}


.inEastHalfFaqSection{
  background:#fff;
}


.inEastHalfSimpleHead{
  max-width:760px;

  margin-bottom:44px;
}


.inEastHalfSimpleHead
> p:last-child{
  margin:
    19px 0 0!important;

  font-size:.76rem;

  line-height:1.95;
}


.inEastHalfChecklist{
  overflow:hidden;

  background:#fff;

  box-shadow:
    0 22px 60px
    rgba(16,41,67,.08);
}


.inEastHalfChecklist__toolbar{
  display:flex;

  align-items:center;

  justify-content:
    space-between;

  gap:24px;

  padding:
    27px 30px;

  background:
    var(--eh-navy);
}


.inEastHalfChecklist__toolbar
> div{
  display:flex;

  align-items:flex-end;

  gap:9px;
}


.inEastHalfChecklist__toolbar
.inEastHalfLabel{
  margin-right:
    12px!important;
}


.inEastHalfChecklist__toolbar strong{
  color:#fff;

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:1.2rem;

  font-weight:500;
}


.inEastHalfChecklist__toolbar button{
  padding:
    9px 15px!important;

  border:
    1px solid
    rgba(194,168,120,.65)!important;

  border-radius:0!important;

  background:
    transparent!important;

  color:#fff!important;

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:.6rem;
}


.inEastHalfChecklist__progress{
  height:4px;

  background:
    rgba(16,41,67,.08);
}


.inEastHalfChecklist__progress span{
  display:block;

  width:100%;
  height:100%;

  background:
    var(--eh-gold);

  transform:scaleX(0);

  transform-origin:left;

  transition:
    transform .3s ease;
}


.inEastHalfChecklist__items{
  display:grid;

  grid-template-columns:
    repeat(
      2,
      minmax(0,1fr)
    );

  padding:
    18px 27px 25px;
}


.inEastHalfChecklist label{
  display:grid;

  grid-template-columns:
    21px minmax(0,1fr);

  gap:11px;

  align-items:center;

  min-height:50px;

  padding:8px;

  cursor:pointer;
}


.inEastHalfChecklist
label:nth-child(even){
  border-left:
    1px solid
    var(--eh-border);
}


.inEastHalfChecklist
label:nth-child(n+3){
  border-top:
    1px solid
    var(--eh-border);
}


.inEastHalfChecklist input{
  width:18px;

  height:18px;

  margin:0;

  appearance:none;

  border:
    1px solid
    rgba(16,41,67,.3);

  border-radius:0;

  background:#fff;
}


.inEastHalfChecklist
input:checked{
  border-color:
    var(--eh-navy);

  background:
    var(--eh-navy);
}


.inEastHalfChecklist
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);
}


.inEastHalfChecklist label span{
  font-size:.74rem;

  line-height:1.72;
}


.inEastHalfChecklist
label.is-checked{
  background:
    var(--eh-ivory);
}


.inEastHalfChecklist
label.is-checked span{
  text-decoration:
    line-through;

  text-decoration-color:
    rgba(194,168,120,.75);
}


.inEastHalfChecklist__privacy{
  margin:0!important;

  padding:
    18px 30px 21px;

  border-top:
    1px solid
    var(--eh-border);

  color:
    var(--eh-muted);

  font-size:.54rem;
}


/* FAQ */

.inEastHalfFaq{
  border-top:
    1px solid
    var(--eh-border);
}


.inEastHalfFaq details{
  border-bottom:
    1px solid
    var(--eh-border);
}


.inEastHalfFaq summary{
  display:flex!important;

  min-height:73px;

  align-items:center;

  justify-content:
    space-between;

  gap:25px;

  padding:
    19px 3px!important;

  color:
    var(--eh-navy);

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:.86rem!important;

  cursor:pointer;
}


.inEastHalfFaq
summary > span:last-child{
  position:relative;

  flex:0 0 auto;

  width:21px;

  height:21px;
}


.inEastHalfFaq
summary > span:last-child::before,
.inEastHalfFaq
summary > span:last-child::after{
  content:"";

  position:absolute;

  top:10px;
  left:4px;

  width:13px;

  height:1px;

  background:
    var(--eh-gold);
}


.inEastHalfFaq
summary > span:last-child::after{
  transform:
    rotate(90deg);
}


.inEastHalfFaq
details[open]
summary > span:last-child::after{
  transform:none;
}


.inEastHalfFaq details > div{
  padding:
    0 46px 24px 3px;
}


.inEastHalfFaq p{
  margin:0!important;

  font-size:.75rem;

  line-height:2;
}


/* ==================================================
   ENDING
================================================== */

.inEastHalfEnding{
  padding:
    126px 0 136px;

  background:
    var(--eh-deep);
}


.inEastHalfEnding h2{
  max-width:820px;

  color:#fff!important;
}


.inEastHalfEnding
p:not(.inEastHalfLabel){
  max-width:730px;

  margin:
    21px 0 0!important;

  color:
    rgba(255,255,255,.7);

  font-size:.79rem;

  line-height:2.07;
}


.inEastHalfEnding a{
  display:inline-flex;

  width:fit-content;

  align-items:center;

  gap:30px;

  margin-top:31px;

  padding-bottom:7px;

  border-bottom:
    1px solid
    var(--eh-gold);

  color:#fff!important;

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:.64rem;
}


/* ==================================================
   RELATED
================================================== */

.inEastHalfRelated{
  padding:
    106px 0 114px;

  background:#fff;
}


.inEastHalfRelated header{
  margin-bottom:44px;
}


.inEastHalfRelated__grid{
  display:grid;

  grid-template-columns:
    repeat(
      3,
      minmax(0,1fr)
    );

  gap:1px;

  background:
    var(--eh-border);
}


.inEastHalfRelated__grid a{
  padding:
    30px 27px 34px;

  background:
    var(--eh-ivory);

  color:inherit!important;
}


.inEastHalfRelated__grid span{
  color:
    var(--eh-gold);

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:.52rem;
}


.inEastHalfRelated__grid
a > p:first-of-type{
  margin:
    10px 0 0!important;

  color:
    var(--eh-muted);

  font-size:.43rem;

  letter-spacing:.12em;
}


.inEastHalfRelated__grid h3{
  margin:
    16px 0 0!important;

  color:
    var(--eh-navy);

  font-size:1rem!important;
}


.inEastHalfRelated__grid
a > p:last-child{
  margin:
    12px 0 0!important;

  font-size:.7rem;

  line-height:1.9;
}


.inEastHalfDisclaimer{
  margin:0!important;

  padding:
    27px 20px 35px;

  background:#fff;

  color:
    var(--eh-muted);

  font-size:.58rem;

  line-height:1.85;

  text-align:center;
}


/* ==================================================
   FLOATING TOC
================================================== */

.inEastHalfFloatingToc{
  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;
}


.inEastHalfFloatingToc.is-visible{
  opacity:1;

  pointer-events:auto;

  transform:none;
}


.inEastHalfFloatingToc
> span{
  position:relative;

  width:16px;

  height:12px;

  border-top:
    1px solid
    var(--eh-gold);

  border-bottom:
    1px solid
    var(--eh-gold);
}


.inEastHalfFloatingToc
> span::after{
  content:"";

  position:absolute;

  top:5px;
  left:0;

  width:16px;

  height:1px;

  background:
    var(--eh-gold);
}


.inEastHalfFloatingToc strong{
  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:.45rem;

  font-weight:500;
}


/* ==================================================
   DRAWER
================================================== */

.inEastHalfDrawer{
  position:fixed;

  inset:0;

  z-index:9998;

  visibility:hidden;

  opacity:0;

  pointer-events:none;

  transition:
    opacity .3s ease,
    visibility 0s linear .3s;
}


.inEastHalfDrawer.is-open{
  visibility:visible;

  opacity:1;

  pointer-events:auto;

  transition-delay:0s;
}


.inEastHalfDrawer__backdrop{
  position:absolute;

  inset:0;

  z-index:1;

  width:100%;

  border:0!important;

  background:
    rgba(5,20,33,.63)!important;
}


.inEastHalfDrawer__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(--eh-ivory);

  transform:
    translateX(102%);

  transition:
    transform .42s
    cubic-bezier(.22,1,.36,1);
}


.inEastHalfDrawer.is-open
.inEastHalfDrawer__panel{
  transform:none;
}


.inEastHalfDrawer__panel header{
  display:flex;

  justify-content:
    space-between;

  gap:25px;

  padding-bottom:25px;
}


.inEastHalfDrawer__panel
header p{
  margin:
    0 0 7px!important;

  color:
    var(--eh-gold);

  font-size:.48rem;

  letter-spacing:.16em;
}


.inEastHalfDrawer__panel
header h2{
  margin:0!important;

  color:
    var(--eh-navy);

  font-size:
    1.12rem!important;
}


.inEastHalfDrawer__close{
  position:relative;

  width:37px;

  height:37px;

  border:0!important;

  background:
    transparent!important;
}


.inEastHalfDrawer__close span{
  position:absolute;

  top:18px;

  left:7px;

  width:23px;

  height:1px;

  background:
    var(--eh-navy);
}


.inEastHalfDrawer__close
span:first-child{
  transform:
    rotate(45deg);
}


.inEastHalfDrawer__close
span:last-child{
  transform:
    rotate(-45deg);
}


.inEastHalfDrawer nav{
  display:grid;
}


.inEastHalfDrawer nav a{
  display:grid;

  grid-template-columns:
    35px minmax(0,1fr);

  gap:12px;

  padding:
    15px 2px;

  border-top:
    1px solid
    var(--eh-border);

  color:
    var(--eh-text)!important;

  font-size:.72rem;
}


.inEastHalfDrawer nav span{
  color:
    var(--eh-gold);

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:.5rem;
}


html.in-east-drawer-open{
  overflow:hidden;
}


/* ==================================================
   IMAGE REVEAL
   カード系のみ
   背景全面型にはclassを付けない
================================================== */

.in-east-has-js
.inEastHalf
.js-east-image{
  position:relative;

  overflow:hidden;
}


.in-east-has-js
.inEastHalf
.js-east-image::after{
  content:"";

  position:absolute;

  inset:0;

  z-index:3;

  background:
    var(--eh-navy);

  transform:
    translateX(0);

  transition:
    transform 1.03s
    cubic-bezier(.77,0,.18,1);

  pointer-events:none;
}


.in-east-has-js
.inEastHalf
.js-east-image.is-image-visible::after{
  transform:
    translateX(101%);
}


/* ==================================================
   REVEAL
================================================== */

.in-east-has-js
.inEastHalf
.js-east-reveal{
  opacity:0;

  transform:
    translateY(23px);

  transition:
    opacity .8s ease
    var(--east-delay,0ms),
    transform .8s
    cubic-bezier(.22,1,.36,1)
    var(--east-delay,0ms);
}


.in-east-has-js
.inEastHalf
.js-east-reveal.is-visible{
  opacity:1;

  transform:none;
}


/* ==================================================
   HOVER
================================================== */

@media(hover:hover){

  .inEastHalfHero__discover:hover
  > span:last-child{
    width:67px;
  }


  .inEastHalfContents__nav a:hover,
  .inEastHalfRelated__grid a:hover{
    background:#fff;
  }


  .inEastHalfChecklist__toolbar
  button:hover{
    background:
      var(--eh-gold)!important;

    color:
      var(--eh-navy)!important;
  }

}


/* ==================================================
   TABLET
================================================== */

@media(max-width:1100px){

  .inEastHalfChapter{
    display:none;
  }


  .inEastHalfFacts,
  .inEastHalfPracticalGrid{
    grid-template-columns:
      repeat(
        2,
        minmax(0,1fr)
      );
  }


  .inEastHalfContents__nav{
    grid-template-columns:
      repeat(
        3,
        minmax(0,1fr)
      );
  }

}


@media(max-width:900px){

  .inEastHalfIntro__layout,
  .inEastHalfChapterHead{
    grid-template-columns:1fr;
  }


  .inEastHalfChapterHead{
    gap:28px;
  }


  .inEastHalfDinnerFeature{
    grid-template-columns:1fr;
  }


  .inEastHalfDinnerFeature figure{
    min-height:370px;
  }


  .inEastHalfMiyara__copy,
  .inEastHalfTamatori__copy{
    width:min(
      670px,
      78%
    );
  }

}


/* ==================================================
   MOBILE
================================================== */

@media(max-width:767px){

  .inEastHalf__wide,
  .inEastHalf__article{
    width:
      calc(100% - 34px);
  }


  /* BOOKMARK */

  .inEastHalfBookmark{
    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;
  }


  .inEastHalfBookmark.is-visible{
    opacity:.87;

    transform:none;
  }


  .inEastHalfBookmark__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);
  }


  .inEastHalfBookmark__chapter{
    color:
      var(--eh-gold);

    font-family:
      "Noto Serif JP",
      serif!important;

    font-size:.38rem;

    white-space:nowrap;
  }


  .inEastHalfBookmark__title{
    overflow:hidden;

    color:
      rgba(16,41,67,.8);

    font-family:
      "Noto Serif JP",
      serif!important;

    font-size:.55rem;

    font-weight:500;

    white-space:nowrap;

    text-overflow:ellipsis;
  }


  .inEastHalfBookmark__progress{
    color:
      rgba(16,41,67,.3);

    font-family:
      "Noto Serif JP",
      serif!important;

    font-size:.38rem;
  }


  .inEastHalfBookmark.is-dark
  .inEastHalfBookmark__inner{
    background:
      rgba(7,24,39,.78);
  }


  .inEastHalfBookmark.is-dark
  .inEastHalfBookmark__title{
    color:
      rgba(255,255,255,.8);
  }


  /* NOTICE */

  .inEastHalfNotice{
    right:13px;
    bottom:14px;
    left:13px;

    display:flex;

    width:auto;

    min-height:40px;

    align-items:center;

    gap:10px;

    padding:
      10px 13px;

    border-left:0;

    border-top:
      1px solid
      rgba(194,168,120,.43);

    background:
      rgba(7,24,39,.84);

    transform:
      translateY(7px);
  }


  .inEastHalfNotice span{
    flex:0 0 auto;

    font-size:.38rem;
  }


  .inEastHalfNotice strong{
    overflow:hidden;

    color:
      rgba(255,255,255,.84);

    font-size:.57rem;

    white-space:nowrap;

    text-overflow:ellipsis;
  }


  /* HERO */

  .inEastHalfHero,
  .inEastHalfHero__inner{
    min-height:620px;
  }


  .inEastHalfHero__inner{
    width:
      calc(100% - 34px);

    padding:
      50px 0 30px;
  }


  .inEastHalfHero__copy{
    width:100%;

    align-self:end;

    padding:
      38px 0 24px;
  }


  body
  .inEastHalf
  .inEastHalfHero h1{
    max-width:100%!important;

    font-size:
      clamp(
        1.42rem,
        6vw,
        1.74rem
      )!important;

    line-height:
      1.65!important;
  }


  .inEastHalfHero__lead{
    margin-top:
      20px!important;

    font-size:.73rem;

    line-height:2;
  }


  .inEastHalfHero__pcBreak,
  .inEastHalfHero__caption{
    display:none;
  }


  .inEastHalfHero__overlay{
    background:
      linear-gradient(
        180deg,
        rgba(7,25,42,.1) 0%,
        rgba(7,25,42,.37) 38%,
        rgba(7,25,42,.94) 100%
      );
  }


  /* SECTIONS */

  .inEastHalfIntro,
  .inEastHalfArrival,
  .inEastHalfShiraho,
  .inEastHalfDecision,
  .inEastHalfDinner,
  .inEastHalfChange,
  .inEastHalfPractical,
  .inEastHalfChecklistSection,
  .inEastHalfFaqSection,
  .inEastHalfEnding,
  .inEastHalfRelated{
    padding-top:77px;

    padding-bottom:83px;

    scroll-margin-top:39px;
  }


  .inEastHalfIntro h2,
  .inEastHalfContents h2,
  .inEastHalfChapterHead h2,
  .inEastHalfShiraho h2,
  .inEastHalfMiyara h2,
  .inEastHalfDecision h2,
  .inEastHalfTamatori h2,
  .inEastHalfSimpleHead h2,
  .inEastHalfEnding h2,
  .inEastHalfRelated h2{
    font-size:
      1.33rem!important;

    line-height:
      1.74!important;
  }


  .inEastHalfChapterHead{
    margin-bottom:42px;
  }


  /* INTRO */

  .inEastHalfIntro__lead{
    font-size:.79rem;

    line-height:2.03;
  }


  .inEastHalfPhrase{
    margin-top:55px;
  }


  .inEastHalfPhrase
  > p:last-child{
    font-size:1rem;
  }


  .inEastHalfFacts{
    grid-template-columns:1fr;

    margin-top:50px;
  }


  .inEastHalfFacts article{
    min-height:0;

    padding:
      25px 22px 28px;
  }


  .inEastHalfImportant{
    padding:
      29px 22px 32px;
  }


  /* CONTENTS */

  .inEastHalfContents{
    padding:
      75px 0 80px;
  }


  .inEastHalfContents__head{
    text-align:left;
  }


  .inEastHalfContents__details{
    margin-top:30px;
  }


  .inEastHalfContents__details
  > summary{
    display:flex;

    min-height:55px;

    align-items:center;

    justify-content:
      space-between;

    padding:
      14px 16px!important;

    background:#fff;

    color:
      var(--eh-navy);

    font-family:
      "Noto Serif JP",
      serif!important;

    font-size:.72rem;
  }


  .inEastHalfContents__details
  > summary
  > span:last-child{
    position:relative;

    width:18px;

    height:18px;
  }


  .inEastHalfContents__details
  > summary
  > span:last-child::before,
  .inEastHalfContents__details
  > summary
  > span:last-child::after{
    content:"";

    position:absolute;

    top:8px;

    left:3px;

    width:12px;

    height:1px;

    background:
      var(--eh-gold);
  }


  .inEastHalfContents__details
  > summary
  > span:last-child::after{
    transform:
      rotate(90deg);
  }


  .inEastHalfContents__details[open]
  > summary
  > span:last-child::after{
    transform:none;
  }


  .inEastHalfContents__nav{
    grid-template-columns:1fr;

    padding-top:8px;
  }


  .inEastHalfContents__nav a{
    min-height:101px;
  }


  /* ARRIVAL */

  .inEastHalfArrivalSteps{
    grid-template-columns:1fr;
  }


  .inEastHalfArrivalSteps article{
    min-height:0;

    padding:
      27px 23px 30px;
  }


  /* SHIRAHO */

  .inEastHalfShiraho__scene{
    grid-template-columns:1fr;

    gap:18px;
  }


  .inEastHalfShiraho__number{
    display:flex;

    align-items:center;

    gap:10px;
  }


  .inEastHalfShiraho__number span{
    font-size:1rem;
  }


  .inEastHalfShiraho__phrase{
    margin-top:
      50px!important;

    padding-left:0;
  }


  /* MIYARA */

  .inEastHalfMiyara,
  .inEastHalfMiyara__inner{
    min-height:680px;
  }


  .inEastHalfMiyara__media{
    position:absolute!important;

    inset:0!important;

    width:100%!important;

    height:100%!important;
  }


  .inEastHalfMiyara__media img{
    width:100%!important;

    height:100%!important;

    object-fit:cover!important;

    object-position:
      center center!important;
  }


  .inEastHalfMiyara__inner{
    width:
      calc(100% - 34px);

    align-items:flex-end;

    padding:
      85px 0 50px;
  }


  .inEastHalfMiyara__copy{
    width:100%;
  }


  .inEastHalfMiyara__overlay{
    background:
      linear-gradient(
        180deg,
        rgba(5,25,30,.05) 0%,
        rgba(5,25,30,.18) 34%,
        rgba(5,25,30,.93) 100%
      );
  }


  /* DECISION */

  .inEastHalfDecisionGrid{
    grid-template-columns:1fr;
  }


  .inEastHalfDecisionGrid article{
    min-height:0;

    padding:
      28px 23px 31px;
  }


  .inEastHalfDecisionNote{
    padding:
      29px 22px 32px;
  }


  /* TAMATORI */

  .inEastHalfTamatori,
  .inEastHalfTamatori__inner{
    min-height:690px;
  }


  .inEastHalfTamatori__media{
    position:absolute!important;

    inset:0!important;

    width:100%!important;

    height:100%!important;
  }


  .inEastHalfTamatori__media img{
    width:100%!important;

    height:100%!important;

    object-fit:cover!important;

    object-position:
      center center!important;
  }


  .inEastHalfTamatori__inner{
    width:
      calc(100% - 34px);

    align-items:flex-end;

    padding:
      85px 0 50px;
  }


  .inEastHalfTamatori__copy{
    width:100%;
  }


  .inEastHalfTamatori__overlay{
    background:
      linear-gradient(
        180deg,
        rgba(7,24,39,.04) 0%,
        rgba(7,24,39,.17) 35%,
        rgba(7,24,39,.93) 100%
      );
  }


  /* DINNER */

  .inEastHalfDinnerFeature figure{
    min-height:0;
  }


  .inEastHalfDinnerFeature img{
    aspect-ratio:4/3;

    height:auto!important;
  }


  .inEastHalfDinnerFeature > div{
    padding:
      30px 23px 34px;
  }


  /* TABS */

  .inEastHalfTabs__buttons{
    grid-template-columns:1fr;
  }


  .inEastHalfTabs__buttons button{
    min-height:60px;
  }


  .inEastHalfTabPanel{
    grid-template-columns:1fr;

    gap:18px;

    min-height:0;

    padding:
      30px 22px 33px;
  }


  /* PRACTICAL */

  .inEastHalfPracticalGrid{
    grid-template-columns:1fr;
  }


  .inEastHalfPracticalGrid article{
    min-height:0;

    padding:
      27px 23px 30px;
  }


  /* CHECKLIST */

  .inEastHalfChecklist__toolbar{
    align-items:flex-start;

    flex-direction:column;

    padding:
      24px 21px;
  }


  .inEastHalfChecklist__items{
    grid-template-columns:1fr;

    padding:
      16px 20px 22px;
  }


  .inEastHalfChecklist
  label:nth-child(even){
    border-left:0;
  }


  .inEastHalfChecklist
  label+label{
    border-top:
      1px solid
      var(--eh-border);
  }


  /* FAQ */

  .inEastHalfFaq summary{
    min-height:66px;

    padding:
      16px 2px!important;

    font-size:
      .81rem!important;
  }


  .inEastHalfFaq
  details > div{
    padding:
      0 30px 21px 2px;
  }


  /* RELATED */

  .inEastHalfRelated__grid{
    grid-template-columns:1fr;
  }


  .inEastHalfDisclaimer{
    text-align:left;
  }


  /* FLOATING */

  .inEastHalfFloatingToc{
    right:14px;

    bottom:67px;

    min-width:49px;

    min-height:49px;

    padding:
      11px!important;
  }


  .inEastHalfFloatingToc strong{
    display:none;
  }


  .inEastHalfDrawer__panel{
    width:min(
      400px,
      94vw
    );

    padding:
      48px 23px 40px;
  }

}


/* ==================================================
   ELEMENTOR
================================================== */

.elementor-widget-html:has(.inEastHalf){
  margin:0!important;
}


.elementor-element:has(
  > .elementor-widget-html
  .inEastHalf
){
  margin:0!important;

  padding:0!important;
}


/* ==================================================
   FOCUS
================================================== */

.inEastHalf a:focus-visible,
.inEastHalf button:focus-visible,
.inEastHalf summary:focus-visible,
.inEastHalf input:focus-visible{
  outline:
    2px solid
    var(--eh-gold)!important;

  outline-offset:
    4px!important;
}


/* ==================================================
   REDUCED MOTION
================================================== */

@media(prefers-reduced-motion:reduce){

  .inEastHalf *,
  .inEastHalf *::before,
  .inEastHalf *::after{
    animation:none!important;

    transition:none!important;
  }


  .in-east-has-js
  .inEastHalf
  .js-east-reveal{
    opacity:1!important;

    transform:none!important;
  }


  .in-east-has-js
  .inEastHalf
  .js-east-image::after{
    display:none!important;
  }


  .inEastHalfNotice{
    display:none!important;
  }

}/* End custom CSS */