.elementor-19473 .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 09 / WEST COAST SUNSET
================================================== */

.inWestSunset{
  --ws-navy:#102943;
  --ws-deep:#071827;
  --ws-gold:#c2a878;
  --ws-ivory:#f8f5ef;
  --ws-soft:#f1eee7;
  --ws-white:#ffffff;
  --ws-text:#596775;
  --ws-muted:rgba(28,53,87,.56);
  --ws-border:rgba(16,41,67,.12);

  position:relative;

  width:100%;

  margin:0!important;

  overflow:hidden;

  background:#fff;

  color:var(--ws-text);

  font-family:
    "Noto Sans JP",
    "Yu Gothic",
    "YuGothic",
    sans-serif!important;

  font-size:16px;

  -webkit-font-smoothing:antialiased;
}


.inWestSunset *,
.inWestSunset *::before,
.inWestSunset *::after{
  box-sizing:border-box;
}


.inWestSunset img{
  display:block;

  width:100%;

  max-width:none;

  height:auto;

  margin:0;
}


.inWestSunset figure{
  margin:0;
}


.inWestSunset a{
  text-decoration:none;
}


.inWestSunset button,
.inWestSunset input,
.inWestSunset summary{
  font:inherit;
}


.inWestSunset button{
  appearance:none;
}


.inWestSunset summary{
  list-style:none;
}


.inWestSunset summary::-webkit-details-marker{
  display:none;
}


.inWestSunset :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;
}


.inWestSunset__wide{
  width:min(
    1180px,
    calc(100% - 72px)
  );

  margin:0 auto;
}


.inWestSunset__article{
  width:min(
    930px,
    calc(100% - 72px)
  );

  margin:0 auto;
}


.inWestSunsetLabel{
  margin:0!important;

  color:var(--ws-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
================================================== */

.inWestSunsetProgress{
  position:fixed;

  top:0;
  right:0;
  left:0;

  z-index:9999;

  height:3px;

  pointer-events:none;
}


.inWestSunsetProgress span{
  display:block;

  width:100%;
  height:100%;

  background:var(--ws-gold);

  transform:scaleX(0);

  transform-origin:left center;
}


/* ==================================================
   PC CHAPTER
================================================== */

.inWestSunsetChapter{
  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;
}


.inWestSunsetChapter.is-visible{
  opacity:.8;

  transform:
    translateY(-50%);
}


.inWestSunsetChapter__line{
  grid-row:1/3;

  width:1px;
  height:70px;

  background:
    linear-gradient(
      to bottom,
      var(--ws-gold) 0 22%,
      rgba(16,41,67,.12) 22% 100%
    );
}


.inWestSunsetChapter > div{
  display:grid;

  min-width:115px;

  gap:3px;
}


.inWestSunsetChapter small{
  color:var(--ws-gold);

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:.41rem;

  letter-spacing:.12em;
}


.inWestSunsetChapter strong{
  color:rgba(16,41,67,.8);

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:.58rem;

  font-weight:500;
}


.inWestSunsetChapter__progress{
  margin-top:5px;

  color:rgba(16,41,67,.3);

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:.4rem;
}


.inWestSunsetChapter.is-dark strong{
  color:rgba(255,255,255,.82);
}


.inWestSunsetChapter.is-dark
.inWestSunsetChapter__progress{
  color:rgba(255,255,255,.34);
}


/* ==================================================
   SP BOOKMARK
================================================== */

.inWestSunsetBookmark{
  display:none;
}


/* ==================================================
   NOTICE
================================================== */

.inWestSunsetNotice{
  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);
}


.inWestSunsetNotice span{
  color:var(--ws-gold);

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:.41rem;

  letter-spacing:.13em;
}


.inWestSunsetNotice strong{
  color:var(--ws-navy);

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:.66rem;

  font-weight:500;
}


.inWestSunsetNotice.is-showing{
  opacity:.94;

  transform:none;
}


/* ==================================================
   HERO
================================================== */

.inWestSunsetHero{
  position:relative;

  min-height:680px;

  overflow:hidden;

  background:var(--ws-deep);

  color:#fff;
}


.inWestSunsetHero__media{
  position:absolute;

  inset:0;

  z-index:0;

  width:100%;
  height:100%;

  overflow:hidden;
}


.inWestSunsetHero__media img{
  width:100%!important;

  height:100%!important;

  max-width:none!important;

  object-fit:cover!important;

  object-position:center 48%!important;

  filter:
    saturate(.9)
    contrast(1.03)
    brightness(.84);

  transform:scale(1.02);
}


.inWestSunsetHero__overlay{
  position:absolute;

  inset:0;

  z-index:1;

  background:
    linear-gradient(
      90deg,
      rgba(7,24,39,.91) 0%,
      rgba(7,24,39,.68) 42%,
      rgba(7,24,39,.2) 73%,
      rgba(7,24,39,.03) 100%
    ),
    linear-gradient(
      180deg,
      rgba(7,24,39,.02) 0%,
      rgba(7,24,39,.08) 55%,
      rgba(7,24,39,.66) 100%
    );
}


.inWestSunsetHero__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;
}


.inWestSunsetBreadcrumb{
  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;
}


.inWestSunsetBreadcrumb a{
  color:inherit!important;
}


.inWestSunsetBreadcrumb
> span:not(:last-child){
  width:22px;

  height:1px;

  background:var(--ws-gold);
}


.inWestSunsetHero__copy{
  align-self:center;

  width:min(
    850px,
    80%
  );

  padding:
    48px 0 40px;
}


.inWestSunsetHero__pageName{
  margin:0!important;

  color:rgba(255,255,255,.84);

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:.76rem;
}


.inWestSunsetHero__en{
  margin:
    9px 0 0!important;

  color:var(--ws-gold);

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:.56rem;

  letter-spacing:.18em;
}


body
.inWestSunset
.inWestSunsetHero 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;
}


.inWestSunsetHero__lead{
  max-width:760px;

  margin:
    25px 0 0!important;

  color:rgba(255,255,255,.77);

  font-size:.84rem;

  line-height:2.06;
}


.inWestSunsetHero__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;
}


.inWestSunsetHero__discover
> span:last-child{
  width:50px;

  height:1px;

  background:var(--ws-gold);

  transition:
    width .35s ease;
}


.inWestSunsetHero__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
================================================== */

.inWestSunsetIntro h2,
.inWestSunsetContents h2,
.inWestSunsetChapterHead h2,
.inWestSunsetClock h2,
.inWestSunsetOganzaki h2,
.inWestSunsetSimpleHead h2,
.inWestSunsetEnding h2,
.inWestSunsetRelated h2{
  margin:
    14px 0 0!important;

  color:var(--ws-navy)!important;

  font-size:
    clamp(
      1.5rem,
      2.3vw,
      2.04rem
    )!important;

  line-height:1.72!important;
}


.inWestSunsetChapterHead{
  display:grid;

  grid-template-columns:
    minmax(0,1.15fr)
    minmax(310px,.85fr);

  gap:
    clamp(
      45px,
      6vw,
      82px
    );

  margin-bottom:62px;
}


.inWestSunsetChapterHead__catch{
  margin:0!important;

  color:var(--ws-navy);

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:
    clamp(
      1.02rem,
      1.45vw,
      1.28rem
    );

  line-height:1.82;
}


.inWestSunsetChapterHead__text{
  margin:
    18px 0 0!important;

  font-size:.8rem;

  line-height:2;
}


/* ==================================================
   INTRO
================================================== */

.inWestSunsetIntro{
  padding:
    118px 0 126px;

  background:#fff;
}


.inWestSunsetIntro__layout{
  display:grid;

  grid-template-columns:
    minmax(330px,.86fr)
    minmax(0,1.14fr);

  gap:
    clamp(
      60px,
      8vw,
      110px
    );
}


.inWestSunsetIntro__lead{
  font-size:.89rem;

  line-height:2.14;
}


.inWestSunsetIntro__lead p{
  margin:0!important;
}


.inWestSunsetIntro__lead p+p{
  margin-top:
    1.35em!important;
}


.inWestSunsetPhrase{
  width:min(
    790px,
    100%
  );

  margin:
    80px auto 0;

  text-align:center;
}


.inWestSunsetPhrase
> p:last-child{
  margin:
    20px 0 0!important;

  color:var(--ws-navy);

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:
    clamp(
      1.12rem,
      1.8vw,
      1.45rem
    );

  line-height:2;
}


.inWestSunsetFacts{
  display:grid;

  grid-template-columns:
    repeat(
      4,
      minmax(0,1fr)
    );

  gap:1px;

  margin-top:73px;

  background:var(--ws-border);
}


.inWestSunsetFacts article{
  min-height:215px;

  padding:
    29px 27px 32px;

  background:var(--ws-ivory);
}


.inWestSunsetFacts span{
  color:var(--ws-gold);

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:.52rem;
}


.inWestSunsetFacts
article > p:first-of-type{
  margin:
    10px 0 0!important;

  color:var(--ws-muted);

  font-size:.44rem;

  letter-spacing:.13em;
}


.inWestSunsetFacts h3{
  margin:
    21px 0 0!important;

  color:var(--ws-navy);

  font-size:.96rem!important;
}


.inWestSunsetFacts
article > p:last-child{
  margin:
    14px 0 0!important;

  font-size:.71rem;

  line-height:1.92;
}


.inWestSunsetImportant{
  width:min(
    860px,
    100%
  );

  margin:
    61px auto 0;

  padding:
    35px 40px;

  background:var(--ws-navy);
}


.inWestSunsetImportant h3{
  margin:
    16px 0 0!important;

  color:#fff;

  font-size:
    1.06rem!important;

  line-height:1.8;
}


.inWestSunsetImportant
> p:last-child{
  margin:
    18px 0 0!important;

  color:rgba(255,255,255,.68);

  font-size:.75rem;

  line-height:2;
}


/* ==================================================
   CONTENTS
================================================== */

.inWestSunsetContents{
  padding:
    99px 0 106px;

  background:var(--ws-soft);
}


.inWestSunsetContents__head{
  max-width:760px;

  margin:0 auto;

  text-align:center;
}


.inWestSunsetContents__head
> p:last-child{
  margin:
    20px 0 0!important;

  font-size:.76rem;

  line-height:1.95;
}


.inWestSunsetContents__details{
  margin-top:45px;
}


.inWestSunsetContents__details
> summary{
  display:none;
}


.inWestSunsetContents__nav{
  display:grid;

  grid-template-columns:
    repeat(
      4,
      minmax(0,1fr)
    );

  gap:1px;

  background:var(--ws-border);
}


.inWestSunsetContents__nav a{
  position:relative;

  min-height:140px;

  padding:
    25px 24px 31px;

  background:#fff;

  color:inherit!important;
}


.inWestSunsetContents__nav a span{
  color:var(--ws-gold);

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:.5rem;
}


.inWestSunsetContents__nav small{
  display:block;

  margin-top:10px;

  color:var(--ws-muted);

  font-size:.42rem;

  letter-spacing:.12em;
}


.inWestSunsetContents__nav strong{
  display:block;

  margin-top:8px;

  color:var(--ws-navy);

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:.79rem;

  font-weight:500;

  line-height:1.65;
}


.inWestSunsetContents__nav a::after{
  content:"";

  position:absolute;

  right:21px;
  bottom:20px;

  width:23px;
  height:1px;

  background:var(--ws-gold);
}


/* ==================================================
   KABIRA
================================================== */

.inWestSunsetKabira{
  padding:
    118px 0 126px;

  background:#fff;
}


.inWestSunsetKabiraFeature{
  display:grid;

  grid-template-columns:
    minmax(0,1.15fr)
    minmax(350px,.85fr);

  overflow:hidden;

  background:var(--ws-ivory);
}


.inWestSunsetKabiraFeature figure{
  min-height:540px;

  overflow:hidden;
}


.inWestSunsetKabiraFeature img{
  height:100%!important;

  object-fit:cover;
}


.inWestSunsetKabiraFeature > div{
  display:flex;

  flex-direction:column;

  justify-content:center;

  padding:
    44px 42px;
}


.inWestSunsetKabiraFeature h3{
  margin:
    17px 0 0!important;

  color:var(--ws-navy);

  font-size:
    clamp(
      1.35rem,
      2vw,
      1.75rem
    )!important;

  line-height:1.75;
}


.inWestSunsetKabiraFeature
> div
> p:not(.inWestSunsetLabel){
  margin:
    18px 0 0!important;

  font-size:.76rem;

  line-height:2;
}


.inWestSunsetKabiraFeature dl{
  margin:
    25px 0 0;
}


.inWestSunsetKabiraFeature
dl > div{
  display:grid;

  grid-template-columns:
    90px minmax(0,1fr);

  gap:12px;

  padding:
    9px 0;
}


.inWestSunsetKabiraFeature
dl > div+div{
  border-top:
    1px solid
    var(--ws-border);
}


.inWestSunsetKabiraFeature dt{
  color:var(--ws-muted);

  font-size:.59rem;
}


.inWestSunsetKabiraFeature dd{
  margin:0;

  color:var(--ws-navy);

  font-size:.68rem;

  line-height:1.74;
}


.inWestSunsetKabiraFeature a{
  display:inline-flex;

  width:fit-content;

  margin-top:21px;

  color:var(--ws-navy)!important;

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:.63rem;

  text-decoration:underline;

  text-underline-offset:5px;
}


/* ==================================================
   SUKUJI
   全面背景写真
================================================== */

.inWestSunsetSukuji{
  position:relative;

  min-height:710px;

  overflow:hidden;

  isolation:isolate;

  background:var(--ws-deep);
}


/* 写真 */
.inWestSunsetSukuji__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;
}


.inWestSunsetSukuji__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;
}


/* overlay */
.inWestSunsetSukuji__overlay{
  position:absolute!important;

  inset:0!important;

  z-index:1!important;

  pointer-events:none;

  background:
    linear-gradient(
      90deg,
      rgba(7,24,39,.86) 0%,
      rgba(7,24,39,.61) 40%,
      rgba(7,24,39,.16) 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%
    );
}


/* text */
.inWestSunsetSukuji__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;
}


.inWestSunsetSukuji__copy{
  width:min(
    630px,
    60%
  );
}


.inWestSunsetSukuji h2{
  margin:
    14px 0 0!important;

  color:#fff!important;

  font-size:
    clamp(
      1.5rem,
      2.3vw,
      2.04rem
    )!important;

  line-height:1.72!important;
}


.inWestSunsetSukuji__lead{
  margin:
    26px 0 0!important;

  color:#fff;

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:1rem;

  line-height:1.95;
}


.inWestSunsetSukuji__copy
> p:not(.inWestSunsetLabel):not(.inWestSunsetSukuji__lead){
  margin:
    18px 0 0!important;

  color:rgba(255,255,255,.78);

  font-size:.77rem;

  line-height:2.03;
}


.inWestSunsetSukuji dl{
  margin:
    27px 0 0;
}


.inWestSunsetSukuji
dl > div{
  display:grid;

  grid-template-columns:
    100px minmax(0,1fr);

  gap:13px;

  padding:
    10px 0;
}


.inWestSunsetSukuji
dl > div+div{
  border-top:
    1px solid
    rgba(255,255,255,.18);
}


.inWestSunsetSukuji dt{
  color:rgba(255,255,255,.55);

  font-size:.58rem;
}


.inWestSunsetSukuji dd{
  margin:0;

  color:rgba(255,255,255,.92);

  font-size:.67rem;

  line-height:1.75;
}


.inWestSunsetSukuji 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;
}


/* ==================================================
   SUNSET CLOCK
================================================== */

.inWestSunsetClock{
  padding:
    123px 0 132px;

  background:#fff;
}


.inWestSunsetClock__head{
  max-width:760px;
}


.inWestSunsetClock__head
> p:last-child{
  margin:
    20px 0 0!important;

  font-size:.79rem;

  line-height:2.04;
}


.inWestSunsetClockGrid{
  display:grid;

  grid-template-columns:
    repeat(
      3,
      minmax(0,1fr)
    );

  gap:1px;

  margin-top:52px;

  background:var(--ws-border);
}


.inWestSunsetClockGrid article{
  min-height:220px;

  padding:
    31px 29px 34px;

  background:var(--ws-ivory);
}


.inWestSunsetClockGrid span{
  color:var(--ws-gold);

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:.53rem;
}


.inWestSunsetClockGrid
article > p:first-of-type{
  margin:
    10px 0 0!important;

  color:var(--ws-muted);

  font-size:.44rem;

  letter-spacing:.13em;
}


.inWestSunsetClockGrid h3{
  margin:
    21px 0 0!important;

  color:var(--ws-navy);

  font-size:1rem!important;
}


.inWestSunsetClockGrid
article > p:last-child{
  margin:
    14px 0 0!important;

  font-size:.71rem;

  line-height:1.92;
}


.inWestSunsetClockNote{
  width:min(
    830px,
    100%
  );

  margin:
    56px auto 0;

  padding:
    36px 40px;

  background:var(--ws-navy);
}


.inWestSunsetClockNote h3{
  margin:
    16px 0 0!important;

  color:#fff;

  font-size:1.07rem!important;

  line-height:1.8;
}


.inWestSunsetClockNote
> p:last-child{
  margin:
    18px 0 0!important;

  color:rgba(255,255,255,.69);

  font-size:.75rem;

  line-height:2;
}


/* ==================================================
   OGANZAKI
   夕景の誌面演出
================================================== */

.inWestSunsetOganzaki{
  position:relative;

  min-height:740px;

  overflow:hidden;

  isolation:isolate;

  background:#102842;
}


/* 空 */
.inWestSunsetOganzaki__sky{
  position:absolute;

  inset:0;

  z-index:0;

  overflow:hidden;

  background:
    linear-gradient(
      180deg,
      #314b65 0%,
      #5a6670 30%,
      #9b7763 60%,
      #b58361 73%,
      #26384a 74%,
      #0b1d2c 100%
    );
}


/* 太陽 */
.inWestSunsetOganzaki__sun{
  position:absolute;

  right:13%;

  top:42%;

  width:86px;
  height:86px;

  border-radius:50%;

  background:
    rgba(232,188,122,.92);

  box-shadow:
    0 0 70px
    rgba(232,188,122,.22);

  transform:
    translateY(-50%);
}


/* 水平線 */
.inWestSunsetOganzaki__horizon{
  position:absolute;

  top:74%;
  right:0;
  left:0;

  height:1px;

  background:
    rgba(255,255,255,.16);
}


.inWestSunsetOganzaki::after{
  content:"";

  position:absolute;

  inset:0;

  z-index:1;

  background:
    linear-gradient(
      90deg,
      rgba(7,24,39,.87) 0%,
      rgba(7,24,39,.67) 42%,
      rgba(7,24,39,.2) 73%,
      rgba(7,24,39,.03) 100%
    ),
    linear-gradient(
      180deg,
      rgba(7,24,39,.05) 0%,
      rgba(7,24,39,.05) 50%,
      rgba(7,24,39,.54) 100%
    );

  pointer-events:none;
}


.inWestSunsetOganzaki__inner{
  position:relative;

  z-index:2;

  display:flex;

  align-items:center;

  width:min(
    1180px,
    calc(100% - 72px)
  );

  min-height:740px;

  margin:0 auto;
}


.inWestSunsetOganzaki__copy{
  width:min(
    640px,
    61%
  );
}


.inWestSunsetOganzaki h2{
  color:#fff!important;
}


.inWestSunsetOganzaki__lead{
  margin:
    26px 0 0!important;

  color:#fff;

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:1.01rem;

  line-height:1.95;
}


.inWestSunsetOganzaki__copy
> p:not(.inWestSunsetLabel):not(.inWestSunsetOganzaki__lead){
  margin:
    18px 0 0!important;

  color:rgba(255,255,255,.78);

  font-size:.77rem;

  line-height:2.03;
}


.inWestSunsetOganzaki dl{
  margin:
    27px 0 0;
}


.inWestSunsetOganzaki
dl > div{
  display:grid;

  grid-template-columns:
    100px minmax(0,1fr);

  gap:13px;

  padding:
    10px 0;
}


.inWestSunsetOganzaki
dl > div+div{
  border-top:
    1px solid
    rgba(255,255,255,.18);
}


.inWestSunsetOganzaki dt{
  color:rgba(255,255,255,.55);

  font-size:.58rem;
}


.inWestSunsetOganzaki dd{
  margin:0;

  color:rgba(255,255,255,.92);

  font-size:.67rem;

  line-height:1.75;
}


.inWestSunsetOganzaki 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;
}


/* ==================================================
   EVENING / PARTNERS
================================================== */

.inWestSunsetEvening{
  padding:
    118px 0 126px;

  background:var(--ws-ivory);
}


.inWestSunsetEveningGrid{
  display:grid;

  grid-template-columns:
    repeat(
      2,
      minmax(0,1fr)
    );

  gap:20px;
}


.inWestSunsetFeatureCard{
  overflow:hidden;

  background:var(--ws-navy);
}


.inWestSunsetFeatureCard figure{
  height:300px;

  overflow:hidden;
}


.inWestSunsetFeatureCard img{
  height:100%!important;

  object-fit:cover;
}


.inWestSunsetFeatureCard > div{
  padding:
    34px 32px 37px;
}


.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(--ws-gold);

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:.5rem;

  letter-spacing:.12em;
}


.inWestSunsetFeatureCard h3{
  margin:
    15px 0 0!important;

  color:#fff;

  font-size:
    1.27rem!important;

  line-height:1.72;
}


.inWestSunsetFeatureCard
> div
> p:not(.inWestSunsetLabel){
  margin:
    17px 0 0!important;

  color:rgba(255,255,255,.7);

  font-size:.74rem;

  line-height:1.98;
}


.inWestSunsetFeatureCard strong{
  display:block;

  margin-top:17px;

  color:#fff;

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:.71rem;

  font-weight:500;

  line-height:1.8;
}


.inWestSunsetFeatureCard a{
  display:inline-flex;

  margin-top:21px;

  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(--ws-gold);

  background:#fff;

  color:var(--ws-text);

  font-size:.67rem;

  line-height:1.9;
}


/* ==================================================
   CHANGE PLAN
================================================== */

.inWestSunsetChange{
  padding:
    118px 0 126px;

  background:var(--ws-soft);
}


.inWestSunsetTabs__buttons{
  display:grid;

  grid-template-columns:
    repeat(
      3,
      minmax(0,1fr)
    );

  gap:1px;

  background:var(--ws-border);
}


.inWestSunsetTabs__buttons button{
  min-height:74px;

  padding:
    10px 12px!important;

  border:0!important;

  border-radius:0!important;

  background:#fff!important;

  color:var(--ws-muted)!important;

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:.76rem;

  cursor:pointer;
}


.inWestSunsetTabs__buttons
button span{
  display:block;

  margin-top:5px;

  font-size:.4rem;

  letter-spacing:.12em;
}


.inWestSunsetTabs__buttons
button[aria-selected="true"]{
  background:var(--ws-navy)!important;

  color:#fff!important;
}


.inWestSunsetTabs__panels{
  margin-top:1px;
}


.inWestSunsetTabPanel{
  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(--ws-border);

  background:#fff;
}


.inWestSunsetTabPanel[hidden]{
  display:none!important;
}


.inWestSunsetTabPanel__number{
  color:var(--ws-gold);

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:2.1rem;
}


.inWestSunsetTabPanel h3{
  margin:
    14px 0 0!important;

  color:var(--ws-navy);

  font-size:
    1.27rem!important;

  line-height:1.76;
}


.inWestSunsetTabPanel
> div
> p:last-child{
  margin:
    17px 0 0!important;

  font-size:.76rem;

  line-height:2;
}


.inWestSunsetTabPanel ul{
  margin:0;

  padding:0;

  list-style:none;
}


.inWestSunsetTabPanel li{
  position:relative;

  padding-left:16px;

  color:var(--ws-navy);

  font-size:.69rem;

  line-height:1.85;
}


.inWestSunsetTabPanel li+li{
  margin-top:8px;
}


.inWestSunsetTabPanel li::before{
  content:"";

  position:absolute;

  top:.85em;
  left:0;

  width:7px;
  height:1px;

  background:var(--ws-gold);
}


/* ==================================================
   PRACTICAL
================================================== */

.inWestSunsetPractical{
  padding:
    118px 0 126px;

  background:#fff;
}


.inWestSunsetPracticalGrid{
  display:grid;

  grid-template-columns:
    repeat(
      4,
      minmax(0,1fr)
    );

  gap:1px;

  background:var(--ws-border);
}


.inWestSunsetPracticalGrid article{
  min-height:210px;

  padding:
    29px 27px 32px;

  background:var(--ws-ivory);
}


.inWestSunsetPracticalGrid span{
  color:var(--ws-gold);

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:.49rem;

  letter-spacing:.12em;
}


.inWestSunsetPracticalGrid h3{
  margin:
    21px 0 0!important;

  color:var(--ws-navy);

  font-size:.97rem!important;
}


.inWestSunsetPracticalGrid p{
  margin:
    14px 0 0!important;

  font-size:.7rem;

  line-height:1.92;
}


/* ==================================================
   CHECKLIST / FAQ
================================================== */

.inWestSunsetChecklistSection,
.inWestSunsetFaqSection{
  padding:
    105px 0 112px;
}


.inWestSunsetChecklistSection{
  background:var(--ws-soft);
}


.inWestSunsetFaqSection{
  background:#fff;
}


.inWestSunsetSimpleHead{
  max-width:760px;

  margin-bottom:44px;
}


.inWestSunsetSimpleHead
> p:last-child{
  margin:
    19px 0 0!important;

  font-size:.76rem;

  line-height:1.95;
}


.inWestSunsetChecklist{
  overflow:hidden;

  background:#fff;

  box-shadow:
    0 22px 60px
    rgba(16,41,67,.08);
}


.inWestSunsetChecklist__toolbar{
  display:flex;

  align-items:center;

  justify-content:
    space-between;

  gap:24px;

  padding:
    27px 30px;

  background:var(--ws-navy);
}


.inWestSunsetChecklist__toolbar
> div{
  display:flex;

  align-items:flex-end;

  gap:9px;
}


.inWestSunsetChecklist__toolbar
.inWestSunsetLabel{
  margin-right:12px!important;
}


.inWestSunsetChecklist__toolbar strong{
  color:#fff;

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:1.2rem;

  font-weight:500;
}


.inWestSunsetChecklist__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;
}


.inWestSunsetChecklist__progress{
  height:4px;

  background:rgba(16,41,67,.08);
}


.inWestSunsetChecklist__progress span{
  display:block;

  width:100%;
  height:100%;

  background:var(--ws-gold);

  transform:scaleX(0);

  transform-origin:left;

  transition:
    transform .3s ease;
}


.inWestSunsetChecklist__items{
  display:grid;

  grid-template-columns:
    repeat(
      2,
      minmax(0,1fr)
    );

  padding:
    18px 27px 25px;
}


.inWestSunsetChecklist label{
  display:grid;

  grid-template-columns:
    21px minmax(0,1fr);

  gap:11px;

  align-items:center;

  min-height:50px;

  padding:8px;

  cursor:pointer;
}


.inWestSunsetChecklist
label:nth-child(even){
  border-left:
    1px solid
    var(--ws-border);
}


.inWestSunsetChecklist
label:nth-child(n+3){
  border-top:
    1px solid
    var(--ws-border);
}


.inWestSunsetChecklist input{
  width:18px;

  height:18px;

  margin:0;

  appearance:none;

  border:
    1px solid
    rgba(16,41,67,.3);

  border-radius:0;

  background:#fff;
}


.inWestSunsetChecklist
input:checked{
  border-color:var(--ws-navy);

  background:var(--ws-navy);
}


.inWestSunsetChecklist
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);
}


.inWestSunsetChecklist label span{
  font-size:.74rem;

  line-height:1.72;
}


.inWestSunsetChecklist
label.is-checked{
  background:var(--ws-ivory);
}


.inWestSunsetChecklist
label.is-checked span{
  text-decoration:
    line-through;

  text-decoration-color:
    rgba(194,168,120,.75);
}


.inWestSunsetChecklist__privacy{
  margin:0!important;

  padding:
    18px 30px 21px;

  border-top:
    1px solid
    var(--ws-border);

  color:var(--ws-muted);

  font-size:.54rem;
}


/* FAQ */

.inWestSunsetFaq{
  border-top:
    1px solid
    var(--ws-border);
}


.inWestSunsetFaq details{
  border-bottom:
    1px solid
    var(--ws-border);
}


.inWestSunsetFaq summary{
  display:flex!important;

  min-height:73px;

  align-items:center;

  justify-content:
    space-between;

  gap:25px;

  padding:
    19px 3px!important;

  color:var(--ws-navy);

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:.86rem!important;

  cursor:pointer;
}


.inWestSunsetFaq
summary > span:last-child{
  position:relative;

  flex:0 0 auto;

  width:21px;

  height:21px;
}


.inWestSunsetFaq
summary > span:last-child::before,
.inWestSunsetFaq
summary > span:last-child::after{
  content:"";

  position:absolute;

  top:10px;
  left:4px;

  width:13px;

  height:1px;

  background:var(--ws-gold);
}


.inWestSunsetFaq
summary > span:last-child::after{
  transform:
    rotate(90deg);
}


.inWestSunsetFaq
details[open]
summary > span:last-child::after{
  transform:none;
}


.inWestSunsetFaq
details > div{
  padding:
    0 46px 24px 3px;
}


.inWestSunsetFaq p{
  margin:0!important;

  font-size:.75rem;

  line-height:2;
}


/* ==================================================
   ENDING
================================================== */

.inWestSunsetEnding{
  padding:
    126px 0 136px;

  background:var(--ws-deep);
}


.inWestSunsetEnding h2{
  max-width:820px;

  color:#fff!important;
}


.inWestSunsetEnding
p:not(.inWestSunsetLabel){
  max-width:730px;

  margin:
    21px 0 0!important;

  color:rgba(255,255,255,.7);

  font-size:.79rem;

  line-height:2.07;
}


.inWestSunsetEnding a{
  display:inline-flex;

  width:fit-content;

  align-items:center;

  gap:30px;

  margin-top:31px;

  padding-bottom:7px;

  border-bottom:
    1px solid
    var(--ws-gold);

  color:#fff!important;

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:.64rem;
}


/* ==================================================
   RELATED
================================================== */

.inWestSunsetRelated{
  padding:
    106px 0 114px;

  background:#fff;
}


.inWestSunsetRelated header{
  margin-bottom:44px;
}


.inWestSunsetRelated__grid{
  display:grid;

  grid-template-columns:
    repeat(
      3,
      minmax(0,1fr)
    );

  gap:1px;

  background:var(--ws-border);
}


.inWestSunsetRelated__grid a{
  padding:
    30px 27px 34px;

  background:var(--ws-ivory);

  color:inherit!important;
}


.inWestSunsetRelated__grid span{
  color:var(--ws-gold);

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:.52rem;
}


.inWestSunsetRelated__grid
a > p:first-of-type{
  margin:
    10px 0 0!important;

  color:var(--ws-muted);

  font-size:.43rem;

  letter-spacing:.12em;
}


.inWestSunsetRelated__grid h3{
  margin:
    16px 0 0!important;

  color:var(--ws-navy);

  font-size:1rem!important;
}


.inWestSunsetRelated__grid
a > p:last-child{
  margin:
    12px 0 0!important;

  font-size:.7rem;

  line-height:1.9;
}


.inWestSunsetDisclaimer{
  margin:0!important;

  padding:
    27px 20px 35px;

  background:#fff;

  color:var(--ws-muted);

  font-size:.58rem;

  line-height:1.85;

  text-align:center;
}


/* ==================================================
   FLOATING TOC
================================================== */

.inWestSunsetFloatingToc{
  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;
}


.inWestSunsetFloatingToc.is-visible{
  opacity:1;

  pointer-events:auto;

  transform:none;
}


.inWestSunsetFloatingToc
> span{
  position:relative;

  width:16px;

  height:12px;

  border-top:
    1px solid
    var(--ws-gold);

  border-bottom:
    1px solid
    var(--ws-gold);
}


.inWestSunsetFloatingToc
> span::after{
  content:"";

  position:absolute;

  top:5px;
  left:0;

  width:16px;

  height:1px;

  background:var(--ws-gold);
}


.inWestSunsetFloatingToc strong{
  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:.45rem;

  font-weight:500;
}


/* ==================================================
   DRAWER
================================================== */

.inWestSunsetDrawer{
  position:fixed;

  inset:0;

  z-index:9998;

  visibility:hidden;

  opacity:0;

  pointer-events:none;

  transition:
    opacity .3s ease,
    visibility 0s linear .3s;
}


.inWestSunsetDrawer.is-open{
  visibility:visible;

  opacity:1;

  pointer-events:auto;

  transition-delay:0s;
}


.inWestSunsetDrawer__backdrop{
  position:absolute;

  inset:0;

  z-index:1;

  width:100%;

  border:0!important;

  background:
    rgba(5,20,33,.63)!important;
}


.inWestSunsetDrawer__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(--ws-ivory);

  transform:
    translateX(102%);

  transition:
    transform .42s
    cubic-bezier(.22,1,.36,1);
}


.inWestSunsetDrawer.is-open
.inWestSunsetDrawer__panel{
  transform:none;
}


.inWestSunsetDrawer__panel header{
  display:flex;

  justify-content:
    space-between;

  gap:25px;

  padding-bottom:25px;
}


.inWestSunsetDrawer__panel
header p{
  margin:
    0 0 7px!important;

  color:var(--ws-gold);

  font-size:.48rem;

  letter-spacing:.16em;
}


.inWestSunsetDrawer__panel
header h2{
  margin:0!important;

  color:var(--ws-navy);

  font-size:
    1.12rem!important;
}


.inWestSunsetDrawer__close{
  position:relative;

  width:37px;
  height:37px;

  border:0!important;

  background:transparent!important;
}


.inWestSunsetDrawer__close span{
  position:absolute;

  top:18px;
  left:7px;

  width:23px;

  height:1px;

  background:var(--ws-navy);
}


.inWestSunsetDrawer__close
span:first-child{
  transform:
    rotate(45deg);
}


.inWestSunsetDrawer__close
span:last-child{
  transform:
    rotate(-45deg);
}


.inWestSunsetDrawer nav{
  display:grid;
}


.inWestSunsetDrawer nav a{
  display:grid;

  grid-template-columns:
    35px minmax(0,1fr);

  gap:12px;

  padding:
    15px 2px;

  border-top:
    1px solid
    var(--ws-border);

  color:var(--ws-text)!important;

  font-size:.72rem;
}


.inWestSunsetDrawer nav span{
  color:var(--ws-gold);

  font-family:
    "Noto Serif JP",
    serif!important;

  font-size:.5rem;
}


html.in-west-drawer-open{
  overflow:hidden;
}


/* ==================================================
   IMAGE REVEAL
   カード画像だけ。
   全面背景写真には使用しない。
================================================== */

.in-west-has-js
.inWestSunset
.js-west-image{
  position:relative;

  overflow:hidden;
}


.in-west-has-js
.inWestSunset
.js-west-image::after{
  content:"";

  position:absolute;

  inset:0;

  z-index:3;

  background:var(--ws-ivory);

  transform:
    translateX(0);

  transition:
    transform 1.03s
    cubic-bezier(.77,0,.18,1);

  pointer-events:none;
}


.in-west-has-js
.inWestSunset
.js-west-image.is-image-visible::after{
  transform:
    translateX(101%);
}


/* ==================================================
   REVEAL
================================================== */

.in-west-has-js
.inWestSunset
.js-west-reveal{
  opacity:0;

  transform:
    translateY(23px);

  transition:
    opacity .8s ease
    var(--west-delay,0ms),
    transform .8s
    cubic-bezier(.22,1,.36,1)
    var(--west-delay,0ms);
}


.in-west-has-js
.inWestSunset
.js-west-reveal.is-visible{
  opacity:1;

  transform:none;
}


/* ==================================================
   HOVER
================================================== */

@media(hover:hover){

  .inWestSunsetHero__discover:hover
  > span:last-child{
    width:67px;
  }


  .inWestSunsetContents__nav a:hover,
  .inWestSunsetRelated__grid a:hover{
    background:#fff;
  }


  .inWestSunsetChecklist__toolbar
  button:hover{
    background:
      var(--ws-gold)!important;

    color:
      var(--ws-navy)!important;
  }

}


/* ==================================================
   TABLET
================================================== */

@media(max-width:1100px){

  .inWestSunsetChapter{
    display:none;
  }


  .inWestSunsetFacts,
  .inWestSunsetPracticalGrid{
    grid-template-columns:
      repeat(
        2,
        minmax(0,1fr)
      );
  }


  .inWestSunsetContents__nav{
    grid-template-columns:
      repeat(
        3,
        minmax(0,1fr)
      );
  }

}


@media(max-width:900px){

  .inWestSunsetIntro__layout,
  .inWestSunsetChapterHead{
    grid-template-columns:1fr;
  }


  .inWestSunsetChapterHead{
    gap:28px;
  }


  .inWestSunsetKabiraFeature{
    grid-template-columns:1fr;
  }


  .inWestSunsetKabiraFeature figure{
    min-height:390px;
  }


  .inWestSunsetEveningGrid{
    grid-template-columns:1fr;
  }


  .inWestSunsetSukuji__copy,
  .inWestSunsetOganzaki__copy{
    width:min(
      670px,
      78%
    );
  }

}


/* ==================================================
   MOBILE
================================================== */

@media(max-width:767px){

  .inWestSunset__wide,
  .inWestSunset__article{
    width:
      calc(100% - 34px);
  }


  /* BOOKMARK */

  .inWestSunsetBookmark{
    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;
  }


  .inWestSunsetBookmark.is-visible{
    opacity:.87;

    transform:none;
  }


  .inWestSunsetBookmark__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);
  }


  .inWestSunsetBookmark__chapter{
    color:var(--ws-gold);

    font-family:
      "Noto Serif JP",
      serif!important;

    font-size:.38rem;

    white-space:nowrap;
  }


  .inWestSunsetBookmark__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;
  }


  .inWestSunsetBookmark__progress{
    color:
      rgba(16,41,67,.3);

    font-family:
      "Noto Serif JP",
      serif!important;

    font-size:.38rem;
  }


  .inWestSunsetBookmark.is-dark
  .inWestSunsetBookmark__inner{
    background:
      rgba(7,24,39,.78);
  }


  .inWestSunsetBookmark.is-dark
  .inWestSunsetBookmark__title{
    color:
      rgba(255,255,255,.8);
  }


  /* NOTICE */

  .inWestSunsetNotice{
    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);
  }


  .inWestSunsetNotice span{
    flex:0 0 auto;

    font-size:.38rem;
  }


  .inWestSunsetNotice strong{
    overflow:hidden;

    color:
      rgba(255,255,255,.84);

    font-size:.57rem;

    white-space:nowrap;

    text-overflow:ellipsis;
  }


  /* HERO */

  .inWestSunsetHero,
  .inWestSunsetHero__inner{
    min-height:620px;
  }


  .inWestSunsetHero__inner{
    width:
      calc(100% - 34px);

    padding:
      50px 0 30px;
  }


  .inWestSunsetHero__copy{
    width:100%;

    align-self:end;

    padding:
      38px 0 24px;
  }


  body
  .inWestSunset
  .inWestSunsetHero h1{
    max-width:100%!important;

    font-size:
      clamp(
        1.42rem,
        6vw,
        1.74rem
      )!important;

    line-height:1.65!important;
  }


  .inWestSunsetHero__lead{
    margin-top:
      20px!important;

    font-size:.73rem;

    line-height:2;
  }


  .inWestSunsetHero__pcBreak,
  .inWestSunsetHero__caption{
    display:none;
  }


  .inWestSunsetHero__overlay{
    background:
      linear-gradient(
        180deg,
        rgba(7,24,39,.1) 0%,
        rgba(7,24,39,.36) 38%,
        rgba(7,24,39,.94) 100%
      );
  }


  /* SECTIONS */

  .inWestSunsetIntro,
  .inWestSunsetKabira,
  .inWestSunsetClock,
  .inWestSunsetEvening,
  .inWestSunsetChange,
  .inWestSunsetPractical,
  .inWestSunsetChecklistSection,
  .inWestSunsetFaqSection,
  .inWestSunsetEnding,
  .inWestSunsetRelated{
    padding-top:77px;

    padding-bottom:83px;

    scroll-margin-top:39px;
  }


  .inWestSunsetIntro h2,
  .inWestSunsetContents h2,
  .inWestSunsetChapterHead h2,
  .inWestSunsetClock h2,
  .inWestSunsetSukuji h2,
  .inWestSunsetOganzaki h2,
  .inWestSunsetSimpleHead h2,
  .inWestSunsetEnding h2,
  .inWestSunsetRelated h2{
    font-size:
      1.33rem!important;

    line-height:1.74!important;
  }


  .inWestSunsetChapterHead{
    margin-bottom:42px;
  }


  /* INTRO */

  .inWestSunsetIntro__lead{
    font-size:.79rem;

    line-height:2.03;
  }


  .inWestSunsetPhrase{
    margin-top:55px;
  }


  .inWestSunsetPhrase
  > p:last-child{
    font-size:1rem;
  }


  .inWestSunsetFacts{
    grid-template-columns:1fr;

    margin-top:50px;
  }


  .inWestSunsetFacts article{
    min-height:0;

    padding:
      25px 22px 28px;
  }


  .inWestSunsetImportant{
    padding:
      29px 22px 32px;
  }


  /* CONTENTS */

  .inWestSunsetContents{
    padding:
      75px 0 80px;
  }


  .inWestSunsetContents__head{
    text-align:left;
  }


  .inWestSunsetContents__details{
    margin-top:30px;
  }


  .inWestSunsetContents__details
  > summary{
    display:flex;

    min-height:55px;

    align-items:center;

    justify-content:
      space-between;

    padding:
      14px 16px!important;

    background:#fff;

    color:var(--ws-navy);

    font-family:
      "Noto Serif JP",
      serif!important;

    font-size:.72rem;
  }


  .inWestSunsetContents__details
  > summary
  > span:last-child{
    position:relative;

    width:18px;
    height:18px;
  }


  .inWestSunsetContents__details
  > summary
  > span:last-child::before,
  .inWestSunsetContents__details
  > summary
  > span:last-child::after{
    content:"";

    position:absolute;

    top:8px;
    left:3px;

    width:12px;
    height:1px;

    background:var(--ws-gold);
  }


  .inWestSunsetContents__details
  > summary
  > span:last-child::after{
    transform:
      rotate(90deg);
  }


  .inWestSunsetContents__details[open]
  > summary
  > span:last-child::after{
    transform:none;
  }


  .inWestSunsetContents__nav{
    grid-template-columns:1fr;

    padding-top:8px;
  }


  .inWestSunsetContents__nav a{
    min-height:101px;
  }


  /* KABIRA */

  .inWestSunsetKabiraFeature figure{
    min-height:0;
  }


  .inWestSunsetKabiraFeature img{
    aspect-ratio:4/3;

    height:auto!important;
  }


  .inWestSunsetKabiraFeature > div{
    padding:
      30px 23px 34px;
  }


  /* SUKUJI */

  .inWestSunsetSukuji,
  .inWestSunsetSukuji__inner{
    min-height:680px;
  }


  .inWestSunsetSukuji__media{
    position:absolute!important;

    inset:0!important;

    width:100%!important;

    height:100%!important;
  }


  .inWestSunsetSukuji__media img{
    width:100%!important;

    height:100%!important;

    object-fit:cover!important;
  }


  .inWestSunsetSukuji__inner{
    width:
      calc(100% - 34px);

    align-items:flex-end;

    padding:
      85px 0 50px;
  }


  .inWestSunsetSukuji__copy{
    width:100%;
  }


  .inWestSunsetSukuji__overlay{
    background:
      linear-gradient(
        180deg,
        rgba(7,24,39,.04) 0%,
        rgba(7,24,39,.17) 34%,
        rgba(7,24,39,.93) 100%
      );
  }


  /* CLOCK */

  .inWestSunsetClockGrid{
    grid-template-columns:1fr;
  }


  .inWestSunsetClockGrid article{
    min-height:0;

    padding:
      27px 23px 30px;
  }


  .inWestSunsetClockNote{
    padding:
      29px 22px 32px;
  }


  /* OGANZAKI */

  .inWestSunsetOganzaki,
  .inWestSunsetOganzaki__inner{
    min-height:700px;
  }


  .inWestSunsetOganzaki__inner{
    width:
      calc(100% - 34px);

    align-items:flex-end;

    padding:
      85px 0 50px;
  }


  .inWestSunsetOganzaki__copy{
    width:100%;
  }


  .inWestSunsetOganzaki__sun{
    top:35%;
    right:13%;

    width:60px;
    height:60px;
  }


  .inWestSunsetOganzaki::after{
    background:
      linear-gradient(
        180deg,
        rgba(7,24,39,.05) 0%,
        rgba(7,24,39,.18) 39%,
        rgba(7,24,39,.94) 100%
      );
  }


  /* PARTNERS */

  .inWestSunsetFeatureCard figure{
    height:auto;
  }


  .inWestSunsetFeatureCard img{
    aspect-ratio:4/3;

    height:auto!important;
  }


  .inWestSunsetFeatureCard > div{
    padding:
      30px 23px 34px;
  }


  /* TABS */

  .inWestSunsetTabs__buttons{
    grid-template-columns:1fr;
  }


  .inWestSunsetTabs__buttons button{
    min-height:60px;
  }


  .inWestSunsetTabPanel{
    grid-template-columns:1fr;

    gap:18px;

    min-height:0;

    padding:
      30px 22px 33px;
  }


  /* PRACTICAL */

  .inWestSunsetPracticalGrid{
    grid-template-columns:1fr;
  }


  .inWestSunsetPracticalGrid article{
    min-height:0;

    padding:
      27px 23px 30px;
  }


  /* CHECKLIST */

  .inWestSunsetChecklist__toolbar{
    align-items:flex-start;

    flex-direction:column;

    padding:
      24px 21px;
  }


  .inWestSunsetChecklist__items{
    grid-template-columns:1fr;

    padding:
      16px 20px 22px;
  }


  .inWestSunsetChecklist
  label:nth-child(even){
    border-left:0;
  }


  .inWestSunsetChecklist
  label+label{
    border-top:
      1px solid
      var(--ws-border);
  }


  /* FAQ */

  .inWestSunsetFaq summary{
    min-height:66px;

    padding:
      16px 2px!important;

    font-size:
      .81rem!important;
  }


  .inWestSunsetFaq
  details > div{
    padding:
      0 30px 21px 2px;
  }


  /* RELATED */

  .inWestSunsetRelated__grid{
    grid-template-columns:1fr;
  }


  .inWestSunsetDisclaimer{
    text-align:left;
  }


  /* FLOATING */

  .inWestSunsetFloatingToc{
    right:14px;

    bottom:67px;

    min-width:49px;
    min-height:49px;

    padding:
      11px!important;
  }


  .inWestSunsetFloatingToc strong{
    display:none;
  }


  .inWestSunsetDrawer__panel{
    width:min(
      400px,
      94vw
    );

    padding:
      48px 23px 40px;
  }

}


/* ==================================================
   ELEMENTOR
================================================== */

.elementor-widget-html:has(.inWestSunset){
  margin:0!important;
}


.elementor-element:has(
  > .elementor-widget-html
  .inWestSunset
){
  margin:0!important;

  padding:0!important;
}


/* ==================================================
   FOCUS
================================================== */

.inWestSunset a:focus-visible,
.inWestSunset button:focus-visible,
.inWestSunset summary:focus-visible,
.inWestSunset input:focus-visible{
  outline:
    2px solid
    var(--ws-gold)!important;

  outline-offset:
    4px!important;
}


/* ==================================================
   REDUCED MOTION
================================================== */

@media(prefers-reduced-motion:reduce){

  .inWestSunset *,
  .inWestSunset *::before,
  .inWestSunset *::after{
    animation:none!important;

    transition:none!important;
  }


  .in-west-has-js
  .inWestSunset
  .js-west-reveal{
    opacity:1!important;

    transform:none!important;
  }


  .in-west-has-js
  .inWestSunset
  .js-west-image::after{
    display:none!important;
  }


  .inWestSunsetNotice{
    display:none!important;
  }

}/* End custom CSS */