:root{
  --u: calc(100vw / 1440);
  --white: #ffffff;
  --brown: #492710;
  --gold:  #bf954c;
  --blue:  #363eb6;
  --beige: #dbd6c9;
  --cream: #f5f4eb;
  --cream2:#eceadd;
  --rust:  #903419;
  --green: #6ba08c;
}

*{ margin:0; padding:0; box-sizing:border-box; }
html{ scroll-behavior:smooth; }
body{
  background:#01114b;
  font-family:'Noto Sans JP', sans-serif;
  font-feature-settings:"palt" 1;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
img{ display:block; }

.sp-join, .sp-bg2-full, .sp-bg2-loc{ display:none; }
.sp-br{ display:none; }

html{ scroll-padding-top:calc(var(--u)*110); }
.lp{
  position:relative;
  width:100%;
  height:calc(var(--u) * 6788);
  overflow:hidden;

  background:linear-gradient(180deg, #000107 0%, #000107 38%, var(--beige) 44%, var(--beige) 100%);
}
.abs{ position:absolute; }

.txt-serif{ font-family:'Noto Serif SC','Noto Serif JP',serif; font-weight:500; color:var(--white); }
.txt-sans{ font-family:'Noto Sans JP', sans-serif; font-weight:500; color:var(--white); }

.bg-full2{ left:0; top:calc(var(--u)*800); width:100%; height:calc(var(--u)*5698); }

.pl-hiru-migi,.pl-hiru-naka,.pl-yoru-ushiro,.pl-hiru-migishita,.pl-yoru-ue,.pl-yoru-shita{
  left:calc(var(--u)*-327); top:calc(var(--u)*-220); width:calc(var(--u)*2008);
}

.mo-sanshin { left:calc(var(--u)*985); top:calc(var(--u)*450); width:calc(var(--u)*278); }
.mo-hanagasa{ left:calc(var(--u)*5);   top:calc(var(--u)*90);  width:calc(var(--u)*273); }
.mo-pine    { left:calc(var(--u)*362); top:calc(var(--u)*499); width:calc(var(--u)*279); }
.mo-goya    { left:calc(var(--u)*582); top:calc(var(--u)*15);  width:calc(var(--u)*279); }
.mo-shisa   { left:calc(var(--u)*150); top:calc(var(--u)*293); width:calc(var(--u)*241); }
.mo-kuina   { left:calc(var(--u)*930); top:calc(var(--u)*189); width:calc(var(--u)*279); }

.ob{ opacity:0; will-change:transform, opacity; z-index:1; }
.kv-title{ z-index:2; }

@keyframes puru{
  0%{ transform:scale(1) rotate(0deg); }
  30%{ transform:scale(1.05) rotate(1.6deg); }
  60%{ transform:scale(.97) rotate(-1.2deg); }
  100%{ transform:scale(1) rotate(0deg); }
}
.ob.puru{ animation:puru .45s cubic-bezier(.36,.07,.19,.97); }

@keyframes puruSoft{
  0%{ transform:translate(0,0) rotate(0deg) scale(1); }
  35%{ transform:translate(0,0) rotate(.5deg) scale(1.008); }
  70%{ transform:translate(0,0) rotate(-.35deg) scale(1); }
  100%{ transform:translate(0,0) rotate(0deg) scale(1); }
}
.ob.puru-soft{ animation:puruSoft .55s ease; }

.kv-title{
  left:calc(var(--u)*707.45); transform:translateX(-50%);
  top:calc(var(--u)*262);
  width:max-content; text-align:center; color:var(--white);
  font-weight:700; text-decoration:none;
  opacity:0; will-change:opacity;
}
.kv-title img{ display:block; width:calc(var(--u)*455); height:auto; }

.scroll-ind{
  position:fixed;
  left:calc(var(--u)*708);
  bottom:32px;
  z-index:10;
  pointer-events:none;
  opacity:0;
}
.scroll-anim{
  position:relative;
  width:calc(var(--u)*29); height:calc(var(--u)*90);
  animation:scrollDrift 2.6s ease infinite;
  filter:drop-shadow(0 1px 4px rgba(1,17,75,.65));
}
.scroll-anim img{ display:block; width:100%; height:auto; }
@keyframes scrollDrift{
  0%{ opacity:0; transform:translateY(calc(var(--u)*-12)); }
  30%{ opacity:1; }
  70%{ opacity:1; }
  100%{ opacity:0; transform:translateY(calc(var(--u)*14)); }
}

.t-transform{
  left:50%; transform:translateX(-50%);
  top:calc(var(--u)*2086);
  width:max-content;
  font-size:calc(var(--u)*22); line-height:2; letter-spacing:.2em;
  text-align:center;
}

.person{
  transform-origin:50% 100%;
  animation:pyoko 3s steps(1) var(--pdel,0s) infinite;
  z-index:2;
}
@keyframes pyoko{
  0%, 50%, 100%{ transform:rotate(0deg); }
  25%{ transform:rotate(var(--pa,5deg)); }
  75%{ transform:rotate(calc(var(--pa,5deg) * -1)); }
}
.p-scope{ left:calc(var(--u)*1053); top:calc(var(--u)*2341); width:calc(var(--u)*56); }
.p-reader{ left:calc(var(--u)*995); top:calc(var(--u)*2986); width:calc(var(--u)*80); }
.p-group{ left:calc(var(--u)*295); top:calc(var(--u)*3707); width:calc(var(--u)*115); }

.t-lead{
  left:50%; transform:translateX(-50%);
  top:calc(var(--u)*2399);
  width:max-content;
  font-size:calc(var(--u)*20); line-height:2; letter-spacing:.1em;
  text-align:center;
}
.t-title-wrap{
  left:50%; transform:translateX(-50%);
  top:calc(var(--u)*2460);
  text-align:center; white-space:nowrap;
}
.t-furigana{
  font-family:'Noto Serif SC','Noto Serif JP',serif; font-weight:500; color:var(--white);
  font-size:calc(var(--u)*12); letter-spacing:.05em; line-height:1.7;
}
.t-title{
  position:relative; z-index:1;
  font-family:'Noto Serif SC','Noto Serif JP',serif; font-weight:500; color:var(--white);
  font-size:calc(var(--u)*22.4); letter-spacing:.05em; line-height:1.7;
  margin-top:calc(var(--u)*4);
}
.t-bar{
  position:absolute;
  left:50%; transform:translateX(-50%);

  top:auto; bottom:calc(var(--u)*3);
  width:calc(100% - var(--u)*24); height:calc(var(--u)*12);
  background:var(--brown);
}
.t-birth{
  left:50%; transform:translateX(-50%);
  top:calc(var(--u)*2543);
  font-size:calc(var(--u)*20); line-height:1.6; letter-spacing:.1em;
  text-align:center; white-space:nowrap;
}
.t-body1{
  left:50%; transform:translateX(-50%);
  top:calc(var(--u)*2602);
  width:max-content;
  font-size:calc(var(--u)*12); line-height:2.4; letter-spacing:.1em;
  text-align:center;
}

.t-dates{
  left:50%; transform:translateX(-50%);
  top:calc(var(--u)*4726);
  display:flex; align-items:flex-end; gap:calc(var(--u)*10);
  color:var(--brown); font-family:'Noto Serif SC','Noto Serif JP',serif; white-space:nowrap;
}
.d-col{ display:flex; flex-direction:column; align-items:flex-start; gap:calc(var(--u)*8); }
.d-y1{ font-size:calc(var(--u)*12.6); font-weight:500; letter-spacing:.1em; line-height:1; }
.d-day{ font-size:calc(var(--u)*44.8); font-weight:500; letter-spacing:.05em; line-height:1; }
.d-year{ font-size:calc(var(--u)*22.4); font-weight:900; letter-spacing:.05em; line-height:1.1; }
.d-dash{
  align-self:center;
  width:calc(var(--u)*45); height:calc(var(--u)*1.4);
  background:var(--brown);
  margin:0 calc(var(--u)*8);
  transform:translateY(calc(var(--u)*2.5));
}

.cta{
  left:50%; transform:translateX(-50%);
  top:calc(var(--u)*5318);
  display:flex; align-items:center; justify-content:center;
  width:calc(var(--u)*276); height:calc(var(--u)*74);
  background:var(--brown);
  border-radius:calc(var(--u)*20);
  font-family:'Noto Sans JP', sans-serif; font-weight:500;
  font-size:calc(var(--u)*15); letter-spacing:.1em;
  color:var(--white); text-decoration:none;
  box-shadow:0 calc(var(--u)*6) calc(var(--u)*18) rgba(73,39,16,.18);
}
.cta:hover{
  background:var(--gold);
  transform:translateX(-50%) translateY(calc(var(--u)*-6)) scale(1.02);
  box-shadow:0 calc(var(--u)*18) calc(var(--u)*36) rgba(73,39,16,.30);
  letter-spacing:.11em;
}
.cta:active{
  transform:translateX(-50%) translateY(calc(var(--u)*-2)) scale(1);
  box-shadow:0 calc(var(--u)*8) calc(var(--u)*16) rgba(73,39,16,.24);
  transition-duration:.15s;
}
.cta:focus-visible{ outline:3px solid var(--gold); outline-offset:3px; }
.cta-note{
  left:50%; transform:translateX(-50%);
  top:calc(var(--u)*5411);
  width:max-content;
  font-family:'Noto Sans JP', sans-serif; font-weight:500;
  font-size:calc(var(--u)*12); letter-spacing:.1em; line-height:2;
  color:var(--brown);
}

.ft-bar{
  left:0; top:calc(var(--u)*6498);
  width:100%; height:calc(var(--u)*290);
  background:var(--brown);
}
.ft-title{
  left:calc(var(--u)*80); top:calc(var(--u)*6548);
  padding:0; background:none; border:none; cursor:pointer;
  transition:opacity .3s ease;
}
.ft-title img{ display:block; width:calc(var(--u)*210); height:auto; }
.ft-title:hover{ opacity:.75; }
.ft-title:focus-visible{ outline:2px solid var(--gold); outline-offset:4px; }
.ft-nav{
  left:calc(var(--u)*330); top:calc(var(--u)*6576);
  display:flex; gap:calc(var(--u)*27); white-space:nowrap;
}
.ft-nav a{
  font-family:'Noto Sans JP', sans-serif; font-weight:500;
  font-size:calc(var(--u)*12); letter-spacing:.04em; line-height:2;
  color:var(--white); text-decoration:none; transition:opacity .3s ease;
}
.ft-nav a:hover{ opacity:.7; }
.ft-line{
  left:calc(var(--u)*40); top:calc(var(--u)*6655);
  width:calc(var(--u)*1360); height:1px;
  background:rgba(255,255,255,.35);
}
.ft-logo{
  left:calc(var(--u)*1143); top:calc(var(--u)*6687);
  display:block;
  transition:opacity .3s ease;
}
.ft-logo img{ display:block; width:calc(var(--u)*217); height:auto; }
.ft-logo:hover{ opacity:.75; }
.ft-copy{
  left:auto; right:calc(var(--u)*8);
  top:calc(var(--u)*6757);
  font-family:'Inter','Noto Sans JP', sans-serif; font-weight:500;
  font-size:calc(var(--u)*8.4); line-height:1.7; color:var(--white);
  white-space:nowrap;
}

.site-header{
  position:fixed; z-index:60;
  top:calc(var(--u)*54); left:50%; transform:translateX(-50%);
  width:calc(var(--u)*1140); height:calc(var(--u)*60);
  background:rgba(255,255,255,.85);
  border-radius:calc(var(--u)*80);
  opacity:0; pointer-events:none;
  transition:opacity .9s ease;
}
body.intro-done .site-header{ opacity:1; pointer-events:auto; }
.hd-logo{
  position:absolute; left:calc(var(--u)*80); top:50%; transform:translateY(-50%);
  display:block; width:calc(var(--u)*86);
}
.hd-logo img{
  display:block; width:100%; height:auto;
  filter:brightness(0) opacity(.87);
}
.hd-nav{
  position:absolute; left:calc(var(--u)*413); top:0; height:100%;
  display:flex; align-items:center; gap:calc(var(--u)*27); white-space:nowrap;
}
.hd-nav a{
  font-family:'Noto Sans JP', sans-serif; font-weight:500;
  font-size:calc(var(--u)*12); line-height:2; letter-spacing:.1em; color:#000;
  text-align:center; text-decoration:none;
  transition:color .3s ease, transform .3s cubic-bezier(.34,1.56,.64,1);
}
.hd-nav a:hover{ color:var(--rust); transform:scale(1.08); }

.stt-lang-select{
  position:fixed !important; left:auto !important;
  top:calc(var(--u)*66) !important; right:calc(var(--u)*230) !important;
  z-index:70 !important;
  border-radius:calc(var(--u)*10) !important;
  box-shadow:none !important; border:1px solid #d9d9d9 !important;
  overflow:hidden !important;
  transition:opacity .9s ease !important;
}
body:not(.intro-done) .stt-lang-select{
  opacity:0 !important; visibility:hidden !important; pointer-events:none !important;
}

body > .skiptranslate{ display:none; }
body{ top:0 !important; }
html.translated-ltr body, html.translated-rtl body{ top:0 !important; }

.anchor{ position:absolute; width:1px; height:1px; visibility:hidden; }
#about{    top:calc(var(--u)*3120); }
#theme{    top:calc(var(--u)*3920); }
#stay{     top:calc(var(--u)*5130); }
#location{ top:calc(var(--u)*5660); }

.sec-title{
  font-family:'Carattere', cursive; font-weight:400;
  font-size:calc(var(--u)*60); letter-spacing:.02em; line-height:.8;
  color:var(--brown);
  display:flex; align-items:center; gap:calc(var(--u)*24);
  white-space:nowrap;
}
.kasuri{ display:block; transform:translateY(calc(var(--u)*3)); }
.kasuri-s{ width:calc(var(--u)*202); height:calc(var(--u)*13); }
.kasuri-l{ width:calc(var(--u)*387); height:calc(var(--u)*13); }
.kasuri-loc{ width:calc(var(--u)*156); height:calc(var(--u)*13); }
.sec-sub{
  font-family:'Noto Sans JP', sans-serif; font-weight:500;
  font-size:calc(var(--u)*10); letter-spacing:.04em; line-height:1;
  color:var(--brown);
}

.st-about{ left:calc(var(--u)*398); top:calc(var(--u)*3254); }
.st-about-sub{ left:calc(var(--u)*398); top:calc(var(--u)*3305); }
.about-body{
  left:calc(var(--u)*398); top:calc(var(--u)*3340);
  font-size:calc(var(--u)*12); line-height:2; letter-spacing:.1em;
  color:var(--brown);
}
.about-photo{
  left:calc(var(--u)*834); top:calc(var(--u)*3372);
  width:calc(var(--u)*606); height:calc(var(--u)*394);
  object-fit:cover;
  border-radius:calc(var(--u)*20);
}

.st-theme{ left:50%; transform:translateX(-50%); top:calc(var(--u)*4022); }
.st-theme-sub{ left:50%; transform:translateX(-50%); top:calc(var(--u)*4070); }
.theme-card{
  left:50%; transform:translateX(-50%); top:calc(var(--u)*4288);
  width:calc(var(--u)*858); height:calc(var(--u)*704);
  background:var(--cream);
  border-radius:calc(var(--u)*20) calc(var(--u)*20) 0 0;
}
.theme-kv{
  left:50%; transform:translateX(-50%); top:calc(var(--u)*4190);
  width:calc(var(--u)*600); height:calc(var(--u)*331);
  background:#d9d9d9; border-radius:calc(var(--u)*20);
  display:flex; align-items:center; justify-content:center;
}
.theme-kv span{
  font-family:'Noto Sans JP', sans-serif; font-weight:500;
  font-size:calc(var(--u)*16); letter-spacing:.1em; color:#8f8f8f;
}

.theme-kv img{
  width:100%; height:100%; object-fit:cover;
  border-radius:inherit; display:block;
}
a.theme-kv{ transition:opacity .3s ease; }
a.theme-kv:hover{ opacity:.85; }
.theme-title{
  left:50%; transform:translateX(-50%);
  top:calc(var(--u)*4583);
  font-size:calc(var(--u)*22); letter-spacing:.04em; line-height:1.15;
  color:var(--brown); white-space:nowrap;
}
.theme-body{
  left:50%; transform:translateX(-50%);
  top:calc(var(--u)*4628);
  width:max-content; text-align:center;
  font-size:calc(var(--u)*12); line-height:2; letter-spacing:.1em;
  color:var(--brown);
}

.btn-detail{
  left:50%; transform:translateX(-50%);
  top:calc(var(--u)*4835);
  display:flex; align-items:center; justify-content:center;
  width:calc(var(--u)*210); height:calc(var(--u)*74);
  background:var(--rust);
  border-radius:calc(var(--u)*20);
  font-family:'Noto Sans JP', sans-serif; font-weight:500;
  font-size:calc(var(--u)*15); letter-spacing:.1em;
  color:var(--white); text-decoration:none;
  box-shadow:0 calc(var(--u)*6) calc(var(--u)*18) rgba(73,39,16,.18);
}
.btn-detail:hover{
  background:var(--gold);
  transform:translateX(-50%) translateY(calc(var(--u)*-6)) scale(1.02);
  box-shadow:0 calc(var(--u)*18) calc(var(--u)*36) rgba(73,39,16,.30);
  letter-spacing:.11em;
}
.btn-detail:active{
  transform:translateX(-50%) translateY(calc(var(--u)*-2)) scale(1);
  box-shadow:0 calc(var(--u)*8) calc(var(--u)*16) rgba(73,39,16,.24);
  transition-duration:.15s;
}
.btn-detail:focus-visible{ outline:3px solid var(--brown); outline-offset:3px; }

.stay-card{
  left:50%; transform:translateX(-50%); top:calc(var(--u)*5248);
  width:calc(var(--u)*864); height:calc(var(--u)*226);
  background:var(--cream2); border-radius:calc(var(--u)*20);
}
.st-loc{ left:calc(var(--u)*398); top:calc(var(--u)*5762); color:var(--white); }
.st-loc-sub{ left:calc(var(--u)*398); top:calc(var(--u)*5812); color:var(--white); }
.loc-addr{
  left:calc(var(--u)*398); top:calc(var(--u)*5850);
  font-size:calc(var(--u)*12); line-height:2; letter-spacing:.1em;
  color:var(--white);
}
.loc-map{
  left:calc(var(--u)*634); top:calc(var(--u)*5943);
  width:calc(var(--u)*519); height:calc(var(--u)*338);
  overflow:hidden;
  background:#dfeee6;
}
.loc-map iframe{ display:block; width:100%; height:100%; border:0; }

.hd-menu, .sp-drawer{ display:none; }

@media (max-width:767px){

  .site-header{
    top:calc(var(--us)*24);
    width:calc(var(--us)*350); height:calc(var(--us)*62);
    border-radius:calc(var(--us)*80);
  }
  .hd-logo{ left:calc(var(--us)*28); width:calc(var(--us)*63); }
  .hd-nav{ display:none; }
  .stt-lang-select{ top:calc(var(--us)*37) !important; right:calc(var(--us)*100) !important; }
  body.drawer-open .stt-lang-select{ display:none !important; }
  body.drawer-open{ overflow:hidden; }
  .hd-menu{
    display:block; position:absolute;
    left:calc(var(--us)*294); top:50%; transform:translateY(-50%);
    width:calc(var(--us)*28); height:calc(var(--us)*22);
    background:none; border:none; padding:0; cursor:pointer;
  }
  .hd-menu span{
    display:block; width:100%; height:2px; background:#000;
    position:absolute; left:0; transition:transform .3s ease, opacity .3s ease;
  }
  .hd-menu span:nth-child(1){ top:0; }
  .hd-menu span:nth-child(2){ top:calc(50% - 1px); }
  .hd-menu span:nth-child(3){ bottom:0; }

  .sp-drawer{
    display:block; position:fixed; inset:0; z-index:80;
    background:#010A62;
    transform:translateX(100%);
    transition:transform .45s cubic-bezier(.22,1,.36,1);
    overflow-y:auto;
  }
  body.drawer-open .sp-drawer{ transform:none; }
  .dr-logo{
    position:absolute; left:calc(var(--us)*48); top:calc(var(--us)*42);
    width:calc(var(--us)*63); height:auto;
  }
  .dr-close{
    position:absolute; left:calc(var(--us)*310); top:calc(var(--us)*38);
    width:calc(var(--us)*34); height:calc(var(--us)*34);
    background:none; border:none; padding:0; cursor:pointer;
  }
  .dr-close span{
    position:absolute; left:calc(var(--us)*3); top:50%;
    width:calc(var(--us)*28); height:2px; background:var(--white);
  }
  .dr-close span:nth-child(1){ transform:rotate(45deg); }
  .dr-close span:nth-child(2){ transform:rotate(-45deg); }
  .dr-nav{
    position:absolute; left:calc(var(--us)*48); top:calc(var(--us)*133);
    display:flex; flex-direction:column; gap:calc(var(--us)*32);
  }
  .dr-nav a{
    font-family:'Noto Sans JP', sans-serif; font-weight:500;
    font-size:calc(var(--us)*20); line-height:2; letter-spacing:.04em;
    color:var(--white); text-decoration:none;
  }
}

.reveal{
  opacity:0; translate:0 calc(var(--u)*26);
  transition:opacity 1.1s cubic-bezier(.22,1,.36,1), translate 1.1s cubic-bezier(.22,1,.36,1);
}
.reveal[data-d="1"]{ transition-delay:.15s; }
.reveal[data-d="2"]{ transition-delay:.3s; }
.reveal[data-d="3"]{ transition-delay:.45s; }
.reveal.on{ opacity:1; translate:0 0; }

.cta.reveal, .btn-detail.reveal{
  transition:opacity 1.1s cubic-bezier(.22,1,.36,1) .45s,
             translate 1.1s cubic-bezier(.22,1,.36,1) .45s,
             background-color .45s ease 0s,
             box-shadow .45s cubic-bezier(.22,1,.36,1) 0s,
             transform .45s cubic-bezier(.34,1.56,.64,1) 0s,
             letter-spacing .45s ease 0s;
}

@media (prefers-reduced-motion: reduce){
  html{ scroll-behavior:auto; }
  .kv-title, .scroll-ind{ animation:none; }
  .scroll-anim, .person{ animation:none; }
  .reveal{ opacity:1; translate:0 0; transition:none; }
}

.lang-en .t-transform br, .lang-en .t-lead br, .lang-en .t-body1 br{ display:none; }
.lang-en .t-furigana{ display:none; }
.lang-en .t-transform{ width:calc(var(--u)*1000); white-space:normal; font-size:calc(var(--u)*34); line-height:1.7; }
.lang-en .t-lead{ width:calc(var(--u)*1000); white-space:normal; font-size:calc(var(--u)*27); line-height:1.6; }
.lang-en .t-body1{ width:calc(var(--u)*840); font-size:calc(var(--u)*20); line-height:1.9; letter-spacing:.04em; }
.lang-en .cta-note{ width:calc(var(--u)*840); white-space:normal; letter-spacing:.06em; }
.lang-en .cta{
  font-size:calc(var(--u)*20); line-height:1.5; text-align:center;
  height:auto; min-height:calc(var(--u)*89);
  padding:calc(var(--u)*14) calc(var(--u)*36);
  width:auto; min-width:calc(var(--u)*384); max-width:calc(var(--u)*640);
}
.lang-en .cta-note{ text-align:center; }

@media (max-width:767px){
  :root{ --us: calc(100vw / 390); }

  .bg-full2{ display:none; }
  .sp-br{ display:inline; }
  .pc-br{ display:none; }

  .lp{
    height:calc(max(100vh,  var(--us)*700) + var(--us)*5441);
    height:calc(max(100svh, var(--us)*700) + var(--us)*5441);
    background:#050a24;
    z-index:0;
  }
  .kv{
    position:absolute; left:0; top:0; width:100%;
    height:max(100vh,  calc(var(--us)*700));
    height:max(100svh, calc(var(--us)*700));
  }

  .lower{
    position:absolute; left:0; width:100%;
    top:max(100vh,  calc(var(--us)*700));
    top:max(100svh, calc(var(--us)*700));
    height:calc(var(--us)*5441);
    background:linear-gradient(180deg,
      transparent 0%, transparent 39.4%,
      var(--beige) 40.2%, var(--beige) 79.4%,
      #6ba08c 80.2%, #6ba08c 100%);
  }
  .sp-bg2-full{ display:block; left:0; top:0; width:100%; }

  .sp-bg2-loc{
    display:block; left:0; top:calc(var(--us)*3860); width:100%;
    -webkit-mask-image:linear-gradient(180deg, transparent 0%, #000 4%, #000 100%);
    mask-image:linear-gradient(180deg, transparent 0%, #000 4%, #000 100%);
  }

  #about{    top:calc(var(--us)*2150); }
  #theme{    top:calc(var(--us)*2960); }
  #stay{     top:calc(var(--us)*3870); }
  #location{ top:calc(var(--us)*4310); }
  html{ scroll-padding-top:calc(var(--us)*100); }

  .t-transform{
    top:calc(var(--us)*1031);
    font-size:calc(var(--us)*24); line-height:2; letter-spacing:.2em;
  }

  .t-lead{
    top:calc(var(--us)*1294);
    font-size:calc(var(--us)*22); letter-spacing:.1em; line-height:1.7;
  }
  .t-title-wrap{ top:calc(var(--us)*1384); white-space:normal; width:calc(var(--us)*330); }
  .t-furigana{ font-size:calc(var(--us)*14); letter-spacing:.08em; }
  .t-title{ font-size:calc(var(--us)*24); line-height:1.6; margin-top:calc(var(--us)*6); }
  .t-bar{ display:none; }
  .t-title-in{
    background-image:linear-gradient(transparent 62%, var(--brown) 62%, var(--brown) 90%, transparent 90%);
    -webkit-box-decoration-break:clone; box-decoration-break:clone;
    padding:0 calc(var(--us)*4);
  }
  .t-birth{ top:calc(var(--us)*1498); font-size:calc(var(--us)*22); }
  .t-body1{
    top:calc(var(--us)*1557);
    left:50%; transform:translateX(-50%);
    width:calc(var(--us)*330); text-align:center;
    font-size:calc(var(--us)*14); line-height:2.4; letter-spacing:.1em;
  }
  .t-body1 br{ display:none; }

  .p-scope { left:calc(var(--us)*300); top:calc(var(--us)*1150); width:calc(var(--us)*40); }
  .p-reader{ left:calc(var(--us)*287); top:calc(var(--us)*2128); width:calc(var(--us)*59); }
  .p-group { left:0;                   top:calc(var(--us)*2897); width:calc(var(--us)*67); }

  .sec-title{ font-size:calc(var(--us)*32); gap:calc(var(--us)*14); }
  .sec-sub{ font-size:calc(var(--us)*12); }
  .kasuri-s, .kasuri-loc{ width:calc(var(--us)*124); height:calc(var(--us)*8); }
  .kasuri-l{ width:calc(var(--us)*39); height:calc(var(--us)*8); object-fit:cover; object-position:left; }
  .st-about{ left:calc(var(--us)*44); top:calc(var(--us)*2202); }
  .st-about-sub{ left:calc(var(--us)*44); top:calc(var(--us)*2246); }
  .about-body{
    left:calc(var(--us)*45); top:calc(var(--us)*2280);
    width:calc(var(--us)*318);
    font-size:calc(var(--us)*14); line-height:2.2; letter-spacing:.1em;
  }
  .about-body br{ display:none; }
  .about-photo{
    left:calc(var(--us)*42); top:calc(var(--us)*2595);
    width:calc(var(--us)*405); height:calc(var(--us)*270);
    border-radius:calc(var(--us)*10);
  }

  .st-theme{ top:calc(var(--us)*3016); }
  .st-theme-sub{ top:calc(var(--us)*3060); }
  .theme-kv{
    left:calc(var(--us)*26); top:calc(var(--us)*3114);
    width:calc(var(--us)*338); height:calc(var(--us)*194);
    transform:none;
    border-radius:calc(var(--us)*10);
  }
  .theme-kv span{ font-size:calc(var(--us)*12); }
  .theme-card{
    left:calc(var(--us)*-45); top:calc(var(--us)*3177);
    width:calc(var(--us)*482); height:calc(var(--us)*663);
    transform:none;
    border-radius:calc(var(--us)*24) calc(var(--us)*24) 0 0;
  }
  .theme-title{
    top:calc(var(--us)*3364);
    font-size:calc(var(--us)*22);
  }
  .theme-body{
    top:calc(var(--us)*3412);
    width:calc(var(--us)*317); white-space:normal;
    font-size:calc(var(--us)*14); line-height:2.2; letter-spacing:.1em;
  }
  .t-dates{ top:calc(var(--us)*3591); gap:calc(var(--us)*8); }
  .d-col{ gap:calc(var(--us)*5); }
  .d-y1{ font-size:calc(var(--us)*10.5); }
  .d-day{ font-size:calc(var(--us)*37.5); }
  .d-year{ font-size:calc(var(--us)*18.8); }
  .d-dash{ width:calc(var(--us)*37.5); height:2px; margin:0 calc(var(--us)*4); transform:none; }
  .btn-detail{
    top:calc(var(--us)*3685);
    width:calc(var(--us)*233); height:calc(var(--us)*79);
    border-radius:calc(var(--us)*20);
    font-size:calc(var(--us)*18);
    box-shadow:0 calc(var(--us)*4) calc(var(--us)*12) rgba(73,39,16,.18);
  }

  .stay-card{
    left:50%; transform:translateX(-50%);
    top:calc(var(--us)*3918);
    width:calc(var(--us)*352); height:calc(var(--us)*380);
    border-radius:calc(var(--us)*10);
  }
  .cta{
    left:50%;
    width:calc(var(--us)*300); height:calc(var(--us)*80);
    border-radius:calc(var(--us)*20);
    font-size:calc(var(--us)*18);
    box-shadow:0 calc(var(--us)*4) calc(var(--us)*12) rgba(73,39,16,.18);
  }
  .cta-note{
    top:calc(var(--us)*4089);
    left:50%; transform:translateX(-50%);
    width:calc(var(--us)*330); white-space:normal; text-align:center;
    font-size:calc(var(--us)*12); letter-spacing:.05em; line-height:1.7;
  }

  .st-loc{ left:calc(var(--us)*44); top:calc(var(--us)*4362); }
  .st-loc-sub{ left:calc(var(--us)*44); top:calc(var(--us)*4406); }
  .loc-addr{
    left:calc(var(--us)*45); top:calc(var(--us)*4440);
    font-size:calc(var(--us)*14); line-height:2.2; letter-spacing:.1em;
  }
  .loc-map{
    left:calc(var(--us)*45); top:calc(var(--us)*4592);
    width:calc(var(--us)*300); height:calc(var(--us)*196);
    border-radius:calc(var(--us)*8);
  }

  .ft-bar{ left:0; top:calc(var(--us)*4984); width:100%; height:calc(var(--us)*457); }
  .ft-title{ left:50%; transform:translateX(-50%); top:calc(var(--us)*5028); }
  .ft-title img{ width:calc(var(--us)*188); }
  .ft-nav{
    left:50%; transform:translateX(-50%); top:calc(var(--us)*5132);
    flex-direction:column; align-items:center; gap:calc(var(--us)*18);
  }

  .ft-nav a{ font-size:calc(var(--us)*14); letter-spacing:.04em; line-height:1.4; }

  .ft-line{ left:50%; transform:translateX(-50%); top:calc(var(--us)*5330); width:calc(var(--us)*352); }
  .ft-logo{ left:50%; transform:translateX(-50%); right:auto; top:calc(var(--us)*5351); }
  .ft-logo img{ width:calc(var(--us)*200); }
  .ft-copy{ left:50%; right:auto; transform:translateX(-50%); top:calc(var(--us)*5416); font-size:calc(var(--us)*10); white-space:nowrap; }

  .pl-hiru-migi,.pl-hiru-naka,.pl-yoru-ushiro,.pl-hiru-migishita,.pl-yoru-ue,.pl-yoru-shita{ left:0; top:0; width:100%; }

  .pl-yoru-shita   { top:auto; bottom:calc(var(--us)*42); }
  .pl-yoru-ushiro  { top:auto; bottom:calc(var(--us)*58); }
  .pl-hiru-migishita{ top:auto; bottom:calc(var(--us)*58); }

  .mo-hanagasa{ left:0;                   top:calc(var(--us)*150); width:calc(var(--us)*82); }
  .mo-goya    { left:calc(var(--us)*205); top:calc(var(--us)*52);  width:calc(var(--us)*167); }
  .mo-shisa   { left:0;                   top:calc(var(--us)*280); width:calc(var(--us)*68); }
  .mo-kuina   { left:auto; right:0;       top:calc(var(--us)*222); width:calc(var(--us)*117); }

  .mo-pine    { left:calc(var(--us)*60);  top:auto; bottom:calc(var(--us)*94); width:calc(var(--us)*167); }
  .mo-sanshin { left:calc(var(--us)*222); top:auto; bottom:calc(var(--us)*69); width:calc(var(--us)*162); }

  .kv-title{ left:50%; top:calc(var(--us)*196); transform:translateX(-50%); }

  .scroll-ind{ left:50%; transform:translateX(-50%); bottom:16px; }
  .scroll-anim{ width:calc(var(--us)*28); height:calc(var(--us)*90); }
  .lang-en .t-transform{ width:calc(var(--us)*340); font-size:calc(var(--us)*20); line-height:1.7; letter-spacing:.04em; }
  .lang-en .t-lead{ width:calc(var(--us)*340); font-size:calc(var(--us)*17); line-height:1.6; letter-spacing:.04em; }
  .lang-en .t-title-wrap{ width:calc(var(--us)*330); }
  .lang-en .t-body1{ font-size:calc(var(--us)*12); line-height:1.9; letter-spacing:.03em; }
  .lang-en .cta-note{ letter-spacing:.04em; }
  .lang-en .cta{
    font-size:calc(var(--us)*15); line-height:1.5; text-align:center;
    height:auto; min-height:calc(var(--us)*70);
    padding:calc(var(--us)*12) calc(var(--us)*24);
    width:auto; min-width:calc(var(--us)*300); max-width:calc(var(--us)*350);
  }
}

@media (min-width:768px){
  .kv{
    position:absolute; top:0; left:0; width:100%;
    height:max(100vh,  calc(var(--u)*800));
    height:max(100svh, calc(var(--u)*800));
  }
  .lower{
    position:absolute; left:0; width:100%;
    top:calc(max(100vh,  var(--u)*800) - var(--u)*800);
    top:calc(max(100svh, var(--u)*800) - var(--u)*800);
  }
  .lp{

    height:calc(var(--u)*5988 + max(100vh,  var(--u)*800));
    height:calc(var(--u)*5988 + max(100svh, var(--u)*800));
  }
}

@media (min-width:768px){
  :root{ --uk: max(calc(100vw/1440), calc(100vh/800)); }
  @supports (height:1svh){ :root{ --uk: max(calc(100vw/1440), calc(100svh/800)); } }

  .pl-hiru-migi,.pl-hiru-naka,.pl-yoru-ushiro,.pl-hiru-migishita,.pl-yoru-ue,.pl-yoru-shita{
    left:calc(50vw - var(--uk)*1047); top:calc(var(--uk)*-220); width:calc(var(--uk)*2008);
  }
  .mo-sanshin { left:calc(50vw + var(--uk)*215);  top:calc(var(--uk)*480); width:calc(var(--uk)*278); }
  .mo-hanagasa{ left:calc(50vw - var(--uk)*715);  top:calc(var(--uk)*90);  width:calc(var(--uk)*273); }
  .mo-pine    { left:calc(50vw - var(--uk)*358);  top:calc(var(--uk)*499); width:calc(var(--uk)*279); }
  .mo-goya    { left:calc(50vw - var(--uk)*138);  top:calc(var(--uk)*15);  width:calc(var(--uk)*279); }
  .mo-shisa   { left:calc(50vw - var(--uk)*570);  top:calc(var(--uk)*293); width:calc(var(--uk)*241); }
  .mo-kuina   { left:calc(50vw + var(--uk)*210);  top:calc(var(--uk)*189); width:calc(var(--uk)*279); }
  .kv-title{ left:calc(50vw - var(--uk)*12.55); top:calc(var(--uk)*262); }
  .kv-title img{ width:calc(var(--uk)*455); }
  .scroll-ind{ left:50vw; transform:translateX(-50%); }
}

@media (max-width:767px){
  :root{ --uks: max(calc(100vw/390), calc(100vh/700)); }
  @supports (height:1svh){ :root{ --uks: max(calc(100vw/390), calc(100svh/700)); } }

  :root{ --ukb: calc(var(--uks) * 1.3); }

  .pl-yoru-ue{
    left:calc(50vw - var(--ukb)*598); top:calc(var(--ukb)*-84); width:calc(var(--ukb)*1204);
  }
  .pl-hiru-naka{
    left:calc(50vw - var(--ukb)*623); top:calc(var(--ukb)*-121); width:calc(var(--ukb)*1204);
  }
  .pl-hiru-migi{
    left:calc(50vw - var(--ukb)*761); top:calc(var(--ukb)*-50); width:calc(var(--ukb)*1204);
  }

  .pl-yoru-shita{
    left:calc(50vw - var(--ukb)*195); top:auto; bottom:calc(var(--uks)*-120); width:calc(var(--ukb)*390);
  }
  .pl-hiru-migishita{
    left:calc(50vw - var(--ukb)*195); top:auto; bottom:calc(var(--uks)*-120 + var(--ukb)*16); width:calc(var(--ukb)*390);
  }
  .pl-yoru-ushiro{
    left:calc(50vw - var(--ukb)*195); top:auto; bottom:calc(var(--uks)*-150 + var(--ukb)*16); width:calc(var(--ukb)*390);
  }

  .mo-hanagasa{ left:0; top:calc(var(--uks)*150); width:calc(var(--uks)*96); }
  .mo-goya    { left:calc(50vw - var(--ukb)*83.5); top:calc(var(--ukb)*52 - 40px); width:calc(var(--ukb)*167); }
  .mo-shisa   { left:0; top:calc(var(--uks)*310); width:calc(var(--uks)*82); }
  .mo-kuina   { left:auto; right:0; top:calc(var(--uks)*130); width:calc(var(--uks)*135); z-index:2; }
  .mo-pine    { left:calc(50vw - var(--ukb)*160); top:auto; bottom:calc(var(--uks)*-10 + var(--ukb)*52); width:calc(var(--ukb)*167); }
  .mo-sanshin { left:calc(50vw - var(--ukb)*8);   top:auto; bottom:calc(var(--uks)*-15 + var(--ukb)*27); width:calc(var(--ukb)*162); }
  .kv-title{ left:50vw; top:50%; transform:translate(-50%,-50%); }
  .kv-title img{ width:calc(var(--us)*278); }
}

@media (min-width:768px){
  .translated .t-lead{
    top:calc(var(--u)*2408);
    width:calc(var(--u)*950); white-space:normal;
    font-size:calc(var(--u)*26); line-height:1.55;
  }
  .translated .t-title-wrap{ top:calc(var(--u)*2538); white-space:normal; width:calc(var(--u)*900); }
  .translated .t-bar{ display:none; }
  .translated .t-furigana{ display:none; }
  .translated .t-title{ font-size:calc(var(--u)*44); line-height:1.45; }

  .translated .t-title-in{
    background-image:linear-gradient(transparent 62%, var(--brown) 62%, var(--brown) 90%, transparent 90%);
    -webkit-box-decoration-break:clone; box-decoration-break:clone;
    padding:0 calc(var(--u)*10);
  }
  .translated .t-birth{ top:calc(var(--u)*2705); }
  .translated .t-body1{ top:calc(var(--u)*2775); width:calc(var(--u)*900); white-space:normal; }
}

html.translated .t-transform br, html.translated .t-lead br, html.translated .t-body1 br, html.translated .about-body br, html.translated .theme-body br{ display:none; }
html.translated .t-furigana, html.translated .t-bar{ display:none; }

html.translated .t-title-in{
  background-image:linear-gradient(transparent 74%, var(--brown) 74%, var(--brown) 97%, transparent 97%);
  -webkit-box-decoration-break:clone; box-decoration-break:clone;
}
@media (min-width:768px){
  html.translated .hd-nav{ left:calc(var(--u)*420); gap:calc(var(--u)*20); }
  html.translated .hd-nav a{ font-size:calc(var(--u)*11); letter-spacing:.02em; }
  html.translated .t-transform{ width:calc(var(--u)*900); white-space:normal; font-size:calc(var(--u)*20); line-height:1.7; letter-spacing:.08em; }
  html.translated .t-lead{ top:calc(var(--u)*2390); width:calc(var(--u)*900); white-space:normal; font-size:calc(var(--u)*17); line-height:1.6; letter-spacing:.06em; }
  html.translated .t-title-wrap{ top:calc(var(--u)*2455); width:calc(var(--u)*900); white-space:normal; }
  html.translated .t-title{ font-size:calc(var(--u)*22); line-height:1.5; }
  html.translated .t-title-in{ padding:0 calc(var(--u)*8); }
  html.translated .t-birth{ top:calc(var(--u)*2560); width:calc(var(--u)*900); white-space:normal; font-size:calc(var(--u)*18); }
  html.translated .t-body1{ top:calc(var(--u)*2610); width:calc(var(--u)*860); white-space:normal; font-size:calc(var(--u)*11.5); line-height:1.9; letter-spacing:.04em; }
  html.translated .about-body{ width:calc(var(--u)*400); font-size:calc(var(--u)*11); line-height:1.8; letter-spacing:.04em; }
  html.translated .theme-body{ width:calc(var(--u)*780); white-space:normal; font-size:calc(var(--u)*11); line-height:1.8; letter-spacing:.04em; }
  html.translated .cta{
    width:auto; min-width:calc(var(--u)*276); max-width:calc(var(--u)*560);
    height:auto; min-height:calc(var(--u)*74); padding:calc(var(--u)*12) calc(var(--u)*28);
    font-size:calc(var(--u)*14); line-height:1.4; white-space:normal; text-align:center;
  }
  html.translated .cta-note{ width:calc(var(--u)*800); white-space:normal; text-align:center; letter-spacing:.04em; }
}
@media (max-width:767px){
  html.translated .theme-body{ font-size:calc(var(--us)*12); line-height:1.7; letter-spacing:.03em; }
  html.translated .cta{
    width:calc(var(--us)*300); height:auto; min-height:calc(var(--us)*60);
    padding:calc(var(--us)*10) calc(var(--us)*16);
    font-size:calc(var(--us)*13); line-height:1.4; white-space:normal; text-align:center;
  }
}

html.translated .t-title-in{ background-image:none; padding:0; }
html.translated .t-title-wrap{ width:max-content; }
html.translated .t-bar{ display:block; left:50%; transform:translateX(-50%); top:auto; }

@media (min-width:768px){
  html.translated .t-lead{ width:calc(var(--u)*700); }
  html.translated .t-title-wrap{ max-width:calc(var(--u)*900); }
  html.translated .t-bar{ width:calc(100% + var(--u)*16); height:calc(var(--u)*10); bottom:calc(var(--u)*-2); }
}
@media (max-width:767px){
  html.translated .t-transform{ width:calc(var(--us)*340); white-space:normal; font-size:calc(var(--us)*19); line-height:1.7; letter-spacing:.04em; }
  html.translated .t-lead{ width:calc(var(--us)*330); white-space:normal; font-size:calc(var(--us)*16); line-height:1.6; letter-spacing:.04em; }
  html.translated .t-title-wrap{ max-width:calc(var(--us)*340); white-space:normal; }
  html.translated .t-title{ font-size:calc(var(--us)*18); line-height:1.5; }
  html.translated .t-bar{ width:calc(100% + var(--us)*12); height:calc(var(--us)*8); bottom:calc(var(--us)*-2); }
  html.translated .t-birth{ width:calc(var(--us)*330); white-space:normal; font-size:calc(var(--us)*16); }
  html.translated .t-body1{ width:calc(var(--us)*330); white-space:normal; font-size:calc(var(--us)*12); line-height:1.9; letter-spacing:.03em; }
  html.translated .theme-title{ width:calc(var(--us)*300); white-space:normal; font-size:calc(var(--us)*18); line-height:1.3; text-align:center; }

  html.translated .loc-addr{ width:calc(var(--us)*332); white-space:normal; font-size:calc(var(--us)*13); line-height:1.8; letter-spacing:.02em; }
  html.translated .cta-note{ width:calc(var(--us)*330); white-space:normal; }

  html.translated .about-body{ font-size:calc(var(--us)*13); line-height:2.0; letter-spacing:.03em; }
}

.stay-head{
  left:calc(var(--u)*536.5); transform:translateX(-50%);
  top:calc(var(--u)*5288); width:calc(var(--u)*330);
  font-family:'Noto Serif JP', serif; font-weight:600;
  font-size:calc(var(--u)*17); letter-spacing:.1em; line-height:1;
  color:var(--brown); text-align:center; white-space:nowrap;
}
.stay-head-2{ left:calc(var(--u)*901.5); }
.cta.cta-stay, .cta.cta-ticket{
  top:calc(var(--u)*5326); width:calc(var(--u)*292);
  line-height:1.5; text-align:center;
}
.cta.cta-stay{ left:calc(var(--u)*536.5); }
.cta.cta-ticket{ left:calc(var(--u)*901.5); background:#1A5F6D; }
.cta.cta-ticket:hover{ background:var(--gold); }
.cta-note{ left:calc(var(--u)*536.5); letter-spacing:.08em; }
.cta-note-ticket{ left:calc(var(--u)*901.5); text-align:center; line-height:1.6; letter-spacing:.04em; }

.follow-cta{
  position:fixed; z-index:50;
  right:calc(var(--u)*40); bottom:calc(var(--u)*30);
  width:calc(var(--u)*140); height:calc(var(--u)*140);
  box-sizing:border-box; border-radius:50%;
  border:calc(var(--u)*8) solid #1A5F6D; background:#002339;
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  font-family:'Noto Sans JP', sans-serif; font-weight:500; color:#fff;
  text-align:center; text-decoration:none; white-space:nowrap;
  box-shadow:0 calc(var(--u)*6) calc(var(--u)*18) rgba(0,20,40,.25);
  opacity:0; pointer-events:none;
  transition:opacity .5s ease, transform .35s cubic-bezier(.34,1.56,.64,1);
}
.follow-cta span{ font-size:calc(var(--u)*12); line-height:1.65; letter-spacing:.04em; }
.follow-cta b{ font-size:calc(var(--u)*15); font-weight:700; line-height:1.4; letter-spacing:.06em; margin-top:calc(var(--u)*2); }
.follow-cta:hover{ transform:scale(1.06); }
.follow-cta:focus-visible{ outline:3px solid var(--gold); outline-offset:3px; }
body.intro-done .follow-cta{ opacity:1; pointer-events:auto; }
body.intro-done .follow-cta.is-hidden{ opacity:0; pointer-events:none; }

@media (max-width:767px){

  .follow-cta{
    right:calc(var(--us)*9); bottom:calc(var(--us)*15);
    width:calc(var(--us)*120); height:calc(var(--us)*120);
    border-width:calc(var(--us)*7);
  }
  .follow-cta span{ font-size:calc(var(--us)*11); line-height:1.55; }
  .follow-cta b{ font-size:calc(var(--us)*13); margin-top:0; }
  body.drawer-open .follow-cta{ opacity:0; pointer-events:none; }

  .stay-head, .stay-head-2{ left:50%; width:calc(var(--us)*330); font-size:calc(var(--us)*19); }
  .stay-head-1{ top:calc(var(--us)*3955); }
  .stay-head-2{ top:calc(var(--us)*4147); }
  .cta.cta-stay, .cta.cta-ticket{ left:50%; width:calc(var(--us)*300); }
  .cta.cta-stay{ top:calc(var(--us)*3998); }
  .cta.cta-ticket{ top:calc(var(--us)*4186); }
  .cta-note{ left:50%; }
  .cta-note-ticket{ top:calc(var(--us)*4274); }
  .stay-card{ height:calc(var(--us)*420); }
}

html.translated .cta.cta-stay, html.translated .cta.cta-ticket,
.lang-en .cta.cta-stay, .lang-en .cta.cta-ticket{ min-width:calc(var(--u)*292); max-width:calc(var(--u)*340); }
html.translated .stay-head, .lang-en .stay-head{ white-space:normal; font-size:calc(var(--u)*15); line-height:1.3; }
@media (max-width:767px){
  html.translated .cta.cta-stay, html.translated .cta.cta-ticket,
  .lang-en .cta.cta-stay, .lang-en .cta.cta-ticket{ min-width:calc(var(--us)*300); max-width:calc(var(--us)*350); }
  html.translated .stay-head, .lang-en .stay-head{ font-size:calc(var(--us)*16); }
}

html.translated .stay-head{ transform:translate(-50%, -100%); top:calc(var(--u)*5318); letter-spacing:.02em; }
html.translated .follow-cta span{ white-space:normal; width:80%; font-size:calc(var(--u)*10); line-height:1.4; letter-spacing:0; }
html.translated .follow-cta b{ font-size:calc(var(--u)*12); }
@media (max-width:767px){
  html.translated .stay-head-1{ top:calc(var(--us)*3990); }
  html.translated .stay-head-2{ top:calc(var(--us)*4178); }
  html.translated .follow-cta span{ font-size:calc(var(--us)*9); }
  html.translated .follow-cta b{ font-size:calc(var(--us)*11); }
}

.top-plate, .kvt-in2{ display:none; }
@media (min-width:768px){
  .lp{ height:calc(var(--u)*4853 + max(100vh, var(--u)*800)); height:calc(var(--u)*4853 + max(100svh, var(--u)*800)); }
  .top-plate, .bg-full2{ display:block; left:0; width:calc(var(--u)*1440); }
  .top-plate-kv{ top:0; height:100%; min-height:calc(var(--u)*800); object-fit:cover; object-position:center bottom; }
  .top-plate-low{ top:calc(var(--u)*800); height:auto; -webkit-mask-image:linear-gradient(180deg, #000 calc(100% - var(--u)*160), transparent); mask-image:linear-gradient(180deg, #000 calc(100% - var(--u)*160), transparent); }
  .st-about .kasuri{ display:none; }

  .pl-hiru-migi, .pl-hiru-naka, .pl-yoru-ushiro, .pl-hiru-migishita, .pl-yoru-ue, .pl-yoru-shita{ width:calc(var(--u)*1646); }
  .pl-hiru-migi{ left:calc(var(--u)*-47.2); top:calc(var(--u)*-100.4); }
  .pl-hiru-naka{ left:calc(var(--u)*-91.5); top:calc(var(--u)*-123.5); }
  .pl-yoru-ushiro{ left:calc(var(--u)*-147.4); top:calc(var(--u)*-73.5); }
  .pl-hiru-migishita{ left:calc(var(--u)*-139.4); top:calc(var(--u)*-46.2); }
  .pl-yoru-ue{ left:calc(var(--u)*-181.3); top:calc(var(--u)*-92.4); }
  .pl-yoru-shita{ left:calc(var(--u)*-241); top:calc(var(--u)*-29.9); }
  .mo-kuina{ left:calc(var(--u)*966); top:calc(var(--u)*175); width:calc(var(--u)*228.41); }
  .mo-shisa{ left:calc(var(--u)*197); top:calc(var(--u)*372); width:calc(var(--u)*197.48); }
  .mo-goya{ left:calc(var(--u)*683.3); top:calc(var(--u)*62.25); width:calc(var(--u)*228.41); }
  .mo-pine{ left:calc(var(--u)*387); top:calc(var(--u)*531); width:calc(var(--u)*228.41); }
  .mo-hanagasa{ left:calc(var(--u)*55.98); top:calc(var(--u)*160.69); width:calc(var(--u)*223.65); }
  .mo-sanshin{ left:calc(var(--u)*1078.13); top:calc(var(--u)*504.6); width:calc(var(--u)*197.48); rotate:8.6deg; transform-origin:0 0; }

  .kv-title{ top:calc(var(--u)*290); }
  .kvt-in2{
    display:block; margin-top:calc(var(--u)*8);
    font-family:'Noto Serif JP','Noto Serif SC',serif; font-weight:900;
    font-size:calc(var(--u)*32); line-height:1.5; letter-spacing:.1em; color:#fff;
  }

  .t-transform{ top:calc(var(--u)*1132); font-size:calc(var(--u)*32); line-height:2; letter-spacing:.2em; }
  .p-scope{ left:calc(var(--u)*951); top:calc(var(--u)*1430); width:calc(var(--u)*49); }
  .t-lead{ top:calc(var(--u)*1619); font-size:calc(var(--u)*28); line-height:2; letter-spacing:.1em; }
  .t-title-wrap{ top:calc(var(--u)*1699); }
  .t-furigana{ font-size:calc(var(--u)*18); line-height:1.7; }
  .t-title{ font-size:calc(var(--u)*33.6); line-height:1.2; margin-top:calc(var(--u)*4); }
  .t-bar{ height:calc(var(--u)*16); bottom:calc(var(--u)*2); }
  .t-birth{ top:calc(var(--u)*1786); font-size:calc(var(--u)*28); line-height:1.6; }
  .t-body1{ top:calc(var(--u)*1848); font-size:calc(var(--u)*14); line-height:2.4; letter-spacing:.1em; }
  .p-reader{ left:calc(var(--u)*1039); top:calc(var(--u)*2120); width:calc(var(--u)*80); }
  .p-group{ left:calc(var(--u)*153); top:calc(var(--u)*2735); width:calc(var(--u)*105); }

  .st-about{ left:calc(var(--u)*392); top:calc(var(--u)*2366); font-size:calc(var(--u)*64); line-height:1; }
  .st-about-sub{ left:calc(var(--u)*382); top:calc(var(--u)*2436); font-size:calc(var(--u)*12); line-height:2; }
  .about-body{ left:calc(var(--u)*378); top:calc(var(--u)*2479); font-size:calc(var(--u)*14); line-height:2; letter-spacing:.1em; }
  .about-photo{ left:calc(var(--u)*910); top:calc(var(--u)*2291); width:calc(var(--u)*607); height:calc(var(--u)*357); }

  #about{ top:calc(var(--u)*2250); }
  #theme{ top:calc(var(--u)*2785); }
  #stay{ top:calc(var(--u)*3995); }
  #location{ top:calc(var(--u)*4525); }
  .bg-full2{ margin-top:calc(var(--u)*-1135); clip-path:inset(calc(var(--u)*3035) 0 0 0); }
  .sec-theme > .abs, .sec-stay > .abs, .sec-location > .abs, .footer > .abs{ margin-top:calc(var(--u)*-1135); }
}

@media (max-width:767px){
  .kv{ height:max(100vh, calc(var(--us)*844)); height:max(100svh, calc(var(--us)*844)); }
  .lower{
    top:max(100vh, calc(var(--us)*844)); top:max(100svh, calc(var(--us)*844));
    height:calc(var(--us)*4697);
    background:linear-gradient(180deg, transparent 0%, transparent 29.8%, var(--beige) 30.7%, var(--beige) 76.1%, #6ba08c 77.1%, #6ba08c 100%);
  }
  .lp{ height:calc(max(100vh, var(--us)*844) + var(--us)*4697); height:calc(max(100svh, var(--us)*844) + var(--us)*4697); }
  .top-plate{ display:block; left:0; width:100%; }
  .top-plate-kv{ top:0; height:100%; min-height:calc(var(--us)*844); object-fit:cover; object-position:center bottom; }
  .top-plate-low{ top:0; height:auto; -webkit-mask:linear-gradient(180deg, #000 calc(100% - var(--us)*160), transparent), radial-gradient(closest-side, #000 75%, transparent) left calc(var(--us)*-60) bottom calc(var(--us)*-60) / calc(var(--us)*250) calc(var(--us)*250) no-repeat; mask:linear-gradient(180deg, #000 calc(100% - var(--us)*160), transparent), radial-gradient(closest-side, #000 75%, transparent) left calc(var(--us)*-60) bottom calc(var(--us)*-60) / calc(var(--us)*250) calc(var(--us)*250) no-repeat; }
  .person, .t-bar, .st-about .kasuri{ display:none; }

  .pl-hiru-migi, .pl-hiru-naka, .pl-yoru-ushiro, .pl-hiru-migishita, .pl-yoru-ue, .pl-yoru-shita{ width:calc(var(--us)*1214); height:auto; }
  .pl-hiru-migi{ left:calc(var(--us)*-505.74); top:calc(var(--us)*104.72); }
  .pl-hiru-naka{ left:calc(var(--us)*-458.39); top:calc(var(--us)*-72.05); height:calc(var(--us)*757); }
  .pl-yoru-ushiro{ left:calc(var(--us)*-444.13); top:calc(var(--us)*163.8); }
  .pl-hiru-migishita{ left:calc(var(--us)*-470.66); top:calc(var(--us)*120.78); }
  .pl-yoru-ue{ left:calc(var(--us)*-397.62); top:calc(var(--us)*-51.42); }
  .pl-yoru-shita{ left:calc(var(--us)*-368.37); top:calc(var(--us)*124.3); }
  .mo-kuina{ left:calc(var(--us)*291.67); top:calc(var(--us)*229.92); width:calc(var(--us)*168.39); }
  .mo-shisa{ left:calc(var(--us)*-71.56); top:calc(var(--us)*411.71); width:calc(var(--us)*145.58); }
  .mo-goya{ left:calc(var(--us)*113.51); top:calc(var(--us)*119.45); width:calc(var(--us)*168.39); }
  .mo-hanagasa{ left:calc(var(--us)*-79.74); top:calc(var(--us)*237); width:calc(var(--us)*164.88); }
  .mo-pine{ left:calc(var(--us)*29.26); top:calc(var(--us)*535.99); width:calc(var(--us)*168.39); }
  .mo-sanshin{ left:calc(var(--us)*245.27); top:calc(var(--us)*574); width:calc(var(--us)*148); rotate:8.6deg; transform-origin:0 0; }

  .kv-title{ left:50%; top:calc(var(--us)*329); transform:translateX(-50%); }
  .kv-title img{ width:calc(var(--us)*273); }
  .kvt-in2{
    display:block; margin-top:calc(var(--us)*2);
    font-family:'Noto Serif JP','Noto Serif SC',serif; font-weight:900;
    font-size:calc(var(--us)*19.2); line-height:1.5; letter-spacing:.1em; color:#fff;
  }

  .t-transform{ top:calc(var(--us)*234); font-size:calc(var(--us)*24); line-height:2; letter-spacing:.2em; }
  .t-lead{ top:calc(var(--us)*682); font-size:calc(var(--us)*22); line-height:1.7; letter-spacing:.05em; }
  .t-title-wrap{ top:calc(var(--us)*772); width:calc(var(--us)*330); }
  .t-furigana{ font-size:calc(var(--us)*14); line-height:1.6; }
  .t-title{ font-size:calc(var(--us)*24); line-height:1.6; letter-spacing:.05em; margin-top:calc(var(--us)*4); }
  .t-birth{ top:calc(var(--us)*882); font-size:calc(var(--us)*22); line-height:1.6; letter-spacing:.1em; }
  .t-body1{ left:50%; top:calc(var(--us)*941); width:calc(var(--us)*330); font-size:calc(var(--us)*14); line-height:2.2; letter-spacing:.1em; text-align:center; }

  .st-about{ left:calc(var(--us)*57); top:calc(var(--us)*1542); font-size:calc(var(--us)*45); line-height:1; }
  .st-about-sub{ left:calc(var(--us)*44); top:calc(var(--us)*1594); font-size:calc(var(--us)*12); line-height:2; }
  .about-body{ left:calc(var(--us)*45); top:calc(var(--us)*1628); width:calc(var(--us)*318); font-size:calc(var(--us)*14); line-height:2.2; letter-spacing:.1em; }
  .about-photo{ left:calc(var(--us)*45); top:calc(var(--us)*1932); width:calc(var(--us)*351); height:calc(var(--us)*234); border-radius:calc(var(--us)*16) 0 0 calc(var(--us)*16); }

  .t-body1 br, .about-body br{ display:inline; }
  .t-body1 br.pc-br, .about-body br.pc-br{ display:none; }
  .sp-bg2-full{ margin-top:calc(var(--us)*-744); clip-path:inset(calc(var(--us)*2858) 0 0 0); }
  .sec-theme > .abs, .sec-stay > .abs, .sec-location > .abs, .footer > .abs, .sp-bg2-loc{ margin-top:calc(var(--us)*-744); }
  .sec-location > .abs{ margin-top:calc(var(--us)*-684); }
  .sp-bg2-loc{ margin-top:calc(var(--us)*-654); }
  .kasuri-loc{ height:calc(var(--us)*10.33); }
  #about{ top:calc(var(--us)*1500); }
  #theme{ top:calc(var(--us)*2216); }
  #stay{ top:calc(var(--us)*3126); }
  #location{ top:calc(var(--us)*3566); }
}

@media (max-width:767px){
  .dr-logo{ left:calc(var(--us)*47); top:calc(var(--us)*41); width:calc(var(--us)*73); }
  body.drawer-open .stt-lang-select{ display:block !important; z-index:90 !important; top:calc(var(--us)*41) !important; right:calc(var(--us)*100) !important; }
}
