﻿@charset "UTF-8";
/* --- デフォルトCSS設定 --- */

#FU260508newera {
  --pc-width: 1400;
  --sp-width: 750;
  --pc-artboard-width: 450;
  --sp-artboard-width: 750;
  --formula: calc(var(--variable) * var(--ratio));
  --formula_pc: calc(var(--variable) * 1);
}

@media (min-width: 1401px) {
  #FU260508newera {
    --ratio: calc(var(--pc-artboard-width) / var(--sp-artboard-width));
    --variable: 1px;
  }
}

@media (min-width: 768px) and (max-width: 1400px) {
  #FU260508newera {
    --ratio: calc(var(--pc-artboard-width) / var(--sp-artboard-width));
    --variable: calc(100vw / var(--pc-width));
  }
}

@media (max-width: 767px) {
  #FU260508newera {
    --ratio: 1;
    --variable: calc(100vw / var(--sp-width));
  }
}

#FU260508newera img,
#FU260508newera svg {
  display: block;
  width: 100%;
  height: auto;
}

#FU260508newera h2,
#FU260508newera h3,
#FU260508newera p,
#FU260508newera li {
  margin-block: calc((1em - 1lh) / 2);
}

#FU260508newera .invisible-heading {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

/* --- 抽出されたCSS（上から順） --- */

#FU260508newera {
  --font-credit: "sculpin-variable", sans-serif;
  --font-jpn: "nitalago-ruika", sans-serif;
  --font-nitalago: 100;
  --font-c-weight: "wght" 500;
  --black: #000000;
  --white: #ffffff;
  --pink: #ffe6e5;
  font-feature-settings: "palt";
  position: relative;
  min-width: 100%;
  display: flex;
  margin: 0 0 calc(200 * var(--formula)) 0;
}

#FU260508newera .lp-left-area,
#FU260508newera .lp-right-area {
  flex: 1;
  top: 12.3rem;
  position: sticky;
  height: calc(100vh - 12.3rem);
  background-image: url(../img/lp-pc-bg-01.jpg);
  background-size: cover;
  display: grid;
  place-items: center;
  align-self: flex-start;
}
#FU260508newera .lp-right-area {
  background-position-x: right;
}
#FU260508newera .lp-main-area {
  width: calc(450 * var(--formula_pc));
  overflow-x: clip;
  display: flex;
  flex-direction: column;
  align-items: center;
}
#FU260508newera .lp-pc-txt-01 {
  width: calc(347 * var(--formula_pc));
  margin: calc(-1 * var(--formula_pc)) 0 0 0;
}

#FU260508newera .sec-set {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
}

#FU260508newera [class*="__inner--vertical"] {
  display: flex;
  flex-direction: column;
  align-items: center;
}

#FU260508newera [class*="__txt"] {
  font-family: var(--font-jpn);
  color: var(--black);
  font-size: calc(24 * var(--formula));
  line-height: calc(52.8 / 24);
  letter-spacing: 0.05em;
  text-align: center;
  font-weight: var(--font-nitalago);
}

#FU260508newera .border-radius-tl-br {
  position: relative;
  border-top-left-radius: calc(150 * var(--formula));
  border-bottom-right-radius: calc(150 * var(--formula));
  border-top-right-radius: 0;
  border-bottom-left-radius: 0;
  overflow: hidden;
  /* Safariで角丸のクリッピングを正しく動作させるための魔法 */
  -webkit-mask-image: -webkit-radial-gradient(white, black);
  /* スタッキングコンテキストを強制し、Safariのレンダリングを安定させる */
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  z-index: 1;
}
#FU260508newera .border-radius-tl-br::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  border-width: calc(8 * var(--formula));
  border-style: solid;
  border-color: var(--white);
  border-top-left-radius: calc(150 * var(--formula));
  border-bottom-right-radius: calc(150 * var(--formula));
  border-top-right-radius: 0;
  border-bottom-left-radius: 0;
  pointer-events: none;
  box-sizing: border-box;
  /* --- 修正ポイント：最前面に固定する --- */
  z-index: 10; /* 画像やリンクより上に持ってくる */
  opacity: 1 !important; /* ホバー時の不透明度変更を拒否 */
  visibility: visible !important;

  /* Safari向け：3Dアクセラレーションを有効にして描画を安定化 */
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
}
#FU260508newera .border-radius-tl-br:hover::before {
  opacity: 1 !important;
  border-color: var(--white) !important;
}
#FU260508newera [class*="__inner--typewrite"] svg path,
#FU260508newera .scroll-blur-in {
  visibility: hidden;
}
#FU260508newera [class*="-img-"]:has(a) {
  background: var(--white);
}

#FU260508newera [class*="__credit"] {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(17 * var(--formula));
}

#FU260508newera [class*="__credit"] li {
  display: flex;
  font-family: var(--font-credit);
  color: var(--black);
  font-size: calc(22 * var(--formula));
  line-height: 1;
  letter-spacing: 0.05em;
  text-align: center;
  font-variation-settings: var(--font-c-weight);
  gap: calc(18 * var(--formula));
}
#FU260508newera .common-btn {
  display: none;
}

#FU260508newera .lp-mv-img-01 {
  width: calc(750 * var(--formula));
}

#FU260508newera .particle-wrap {
  background: var(--pink);
  position: relative;
  overflow: hidden;
}
#FU260508newera .particle-item {
  position: absolute;
  top: 0;
  left: 0;
  pointer-events: none;
  z-index: 1;
  height: auto !important;
  max-width: none !important;
  will-change: transform;
  backface-visibility: visible;
}
#FU260508newera .is-flower-01 {
  width: calc(24 * var(--formula)) !important;
}
#FU260508newera .is-flower-02 {
  width: calc(40 * var(--formula)) !important;
}
#FU260508newera .is-flower-03 {
  width: calc(42 * var(--formula)) !important;
}
#FU260508newera .is-flower-04 {
  width: calc(30 * var(--formula)) !important;
}
#FU260508newera .is-flower-05 {
  width: calc(50 * var(--formula)) !important;
}
#FU260508newera .is-flower-06 {
  width: calc(30 * var(--formula)) !important;
}

#FU260508newera .sec1 {
  margin: calc(120 * var(--formula)) 0 calc(100 * var(--formula)) 0;
}

#FU260508newera .sec1-txt-01 {
  width: calc(520 * var(--formula));
}

#FU260508newera .sec1__inner--vertical {
  margin: calc(80 * var(--formula)) 0 0 0;
  gap: calc(64 * var(--formula));
}

#FU260508newera .sec1__txt3 {
  padding: 0 0 0 calc(13 * var(--formula));
}

#FU260508newera .sec1__inner--timedate {
  margin: calc(62 * var(--formula)) 0 0 0;
}

#FU260508newera .sec1-txt-02 {
  width: calc(530 * var(--formula));
}

#FU260508newera .sec2-img-01 {
  width: calc(600 * var(--formula));
}

#FU260508newera .sec2-img-02 {
  width: calc(600 * var(--formula));
}

#FU260508newera .sec2__inner--typewrite {
  margin: calc(130 * var(--formula)) 0 calc(89 * var(--formula))
    calc(18 * var(--formula));
  width: calc(408 * var(--formula));
}

#FU260508newera .sec2-img-03 {
  width: calc(750 * var(--formula));
}

#FU260508newera .sec2__credit {
  margin: calc(61 * var(--formula)) 0 calc(181 * var(--formula))
    calc(1 * var(--formula));
}

#FU260508newera .common-btn-01 {
  width: calc(250 * var(--formula));
}

#FU260508newera .sec3a {
  margin: calc(180 * var(--formula)) 0 0 0;
}

#FU260508newera .sec3__inner--typewrite {
  margin: calc(130 * var(--formula)) 0 calc(82 * var(--formula)) 0;
  width: calc(465 * var(--formula));
}
#FU260508newera .sec3-img-01 {
  width: calc(600 * var(--formula));
}

#FU260508newera .sec3-img-02 {
  width: calc(600 * var(--formula));
}

#FU260508newera .sec3-img-03 {
  width: calc(750 * var(--formula));
}

#FU260508newera .sec3b {
  margin: calc(61 * var(--formula)) 0 0 0;
}

#FU260508newera .sec3__credit {
  margin: 0 0 calc(181 * var(--formula)) 0;
}

#FU260508newera .sec4__inner--sticky {
  padding: calc(180 * var(--formula)) 0 0 0;
}

#FU260508newera .sec4-img-01 {
  width: calc(570 * var(--formula));
  position: sticky;
  top: calc(50vh - (836 * var(--formula) / 2));
  z-index: 0;
}

#FU260508newera .sec4-img-02 {
  width: calc(450 * var(--formula));
  z-index: 5;
  position: relative;
  margin: calc(88 * var(--formula)) 0;
}

#FU260508newera .sec4__inner--typewrite {
  margin: calc(130 * var(--formula)) 0 calc(88 * var(--formula))
    calc(3 * var(--formula));
  width: calc(388 * var(--formula));
}

#FU260508newera .sec4-img-03 {
  width: calc(750 * var(--formula));
}

#FU260508newera .sec4__credit {
  margin: calc(61 * var(--formula)) 0 0 0;
}

#FU260508newera .lp-footer {
  margin: calc(261 * var(--formula)) 0 calc(140 * var(--formula)) 0;
}

#FU260508newera .footer__inner--absolute {
  position: relative;
  background-image: url(../img/lp-footer-bg-01.jpg);
  border-radius: 50%;
  width: calc(1000 * var(--formula));
  height: calc(700 * var(--formula));
  background-size: cover;
}

#FU260508newera .lp-footer-obj-01 {
  width: calc(213 * var(--formula));
  top: calc(-79 * var(--formula));
  right: calc(167 * var(--formula));
}

#FU260508newera .z5-absolute {
  z-index: 5;
  position: absolute;
}

#FU260508newera .lp-footer-obj-02 {
  width: calc(180 * var(--formula));
  bottom: calc(-71 * var(--formula));
  left: calc(175 * var(--formula));
}

#FU260508newera .lp-footer-txt-01 {
  width: calc(390 * var(--formula));
  margin: calc(121 * var(--formula)) 0 calc(61 * var(--formula)) 0;
}

#FU260508newera .z1-relative {
  z-index: 1;
  position: relative;
}

#FU260508newera .lp-footer-obj-03 {
  width: calc(440 * var(--formula));
  margin: calc(241 * var(--formula)) 0 calc(198 * var(--formula))
    calc(-16 * var(--formula));
  position: relative;
  cursor: pointer;
  transition: transform 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
#FU260508newera .lp-footer-obj-03::after {
  content: "";
  position: absolute;
  width: calc(439 * var(--formula));
  height: calc(113 * var(--formula));
  border-width: max(1px, calc(2 * var(--formula)));
  border-style: solid;
  border-color: #ef0303;
  z-index: -1;
  top: calc(14 * var(--formula));
  right: calc(-17 * var(--formula));
  transition: transform 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
#FU260508newera .lp-footer-obj-03:hover::after {
  transform: translate(calc(-16 * var(--formula)), calc(-15 * var(--formula)));
}
#FU260508newera .lp-footer-obj-03:active {
  transform: translate(calc(18 * var(--formula)), calc(17 * var(--formula)));
  transition: duration 0.05s;
}
#FU260508newera .lp-footer-obj-03:hover {
  transform: translate(calc(16 * var(--formula)), calc(15 * var(--formula)));
}

#FU260508newera .lp-footer-obj-03:hover a:hover {
  opacity: 1;
}
#FU260508newera .footer__staff-credit {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin: calc(67 * var(--formula)) 0 calc(124 * var(--formula)) 0;
  gap: calc(27.5 * var(--formula));
}
#FU260508newera .footer__staff-credit li {
  display: flex;
  font-family: var(--font-credit);
  color: var(--black);
  font-size: calc(23 * var(--formula));
  line-height: 1;
  letter-spacing: 0.05em;
  text-align: center;
  font-variation-settings: var(--font-c-weight);
  gap: calc(18 * var(--formula));
}

#FU260508newera .lp-footer-txt-02 {
  width: calc(177 * var(--formula));
}

#FU260508newera .lp-footer-txt-03 {
  width: calc(361 * var(--formula));
}

#FU260508newera .lp-footer-img-01 {
  width: calc(660 * var(--formula));
}

#FU260508newera .lp-pc-btn-01 {
  width: calc(198 * var(--formula_pc));
  margin: calc(4 * var(--formula_pc)) 0 0 0;
}
@media (max-width: 767px) {
  #FU260508newera .lp-left-area,
  #FU260508newera .lp-right-area {
    display: none;
  }
  #FU260508newera .lp-main-area {
    width: 100%;
  }
  #FU260508newera .common-btn {
    display: block;
    width: calc(170 * var(--formula));
    bottom: calc(25 * var(--formula));
    right: calc(25 * var(--formula));
    margin-left: auto;
    z-index: 100;
    position: fixed;
    transition: opacity 0.3s;
  }
}
