:root { --resetColor: #18202f; --resetBgColor: #343434; --resetFontFamily: var(--gothic); --resetFontSize: 1.5rem; --resetFontWeight: 400; --resetLineHeight: normal; --resetLetterSpacing: normal; --accent100: #f5f5f5; --accent200: #e0e0e0; --accent300: #bdbdbd; --accent: #333333; --gray100: #f9f9f9; --gray300: #b7b7b7; --gray500: #8e8e8e; --gray600: #696969; --gray700: #464646; --black400: #43434a; --black500: #36363c; --black: #1d1d1d; --white: #fff; --gothic: Noto Sans JP, YuGothic, Yu Gothic, Meiryo, メイリオ, sans-serif; --serif: Noto Sans JP, YuGothic, Yu Gothic, Meiryo, メイリオ, sans-serif; --en: Font En Name, sans-serif; --en02: Font En Name, sans-serif; --fz100: 1.2rem; --fz110: 1.4rem; --fz120: 1.5rem; --fz130: 1.6rem; --fz140: 1.8rem; --fz200: 2rem; --fz210: 2.4rem; --fz220: 2.8rem; --fz300: 3rem; --fz310: 3.2rem; --fz320: 3.4rem; --fz340: 3.7rem; --fz350: 3.8rem; --fz600: 6.2rem; --fz610: 6.7rem; --fz900: 9rem; --fz1000: 10.2rem; }
:root { --fontRegular: 400; --fontMedium: 500; --fontBold: 700; --lh300: 1.3; --lh500: 1.6; --lh600: 1.8; --lh700: 2; --ls100: 0em; --ls300: 0.03em; --ls400: 0.04em; --ls500: 0.05em; --ls600: 0.08em; --ls700: 0.07em; --ls900: 0.09em; --ls1000: 0.1em; --ls1200: 0.12em; --sp100: .4rem; --sp200: .8rem; --sp300: 1.2rem; --sp400: 1.6rem; --sp500: 2rem; --sp600: 2.4rem; --sp700: 3.2rem; --sp800: 4rem; --sp900: 4.8rem; --sp1000: 6.4rem; --radius-s: .4rem; --radius-m: .8rem; --radius-l: 1.6rem; --radius-xl: 2.4rem; --radius-full: 9999px; --shadow-xs: 0 1px 3px rgba(0, 0, 0, .08); --shadow-s: 0 2px 8px rgba(0, 0, 0, .08); --shadow-m: 0 4px 16px rgba(0, 0, 0, .10); --shadow-l: 0 8px 32px rgba(0, 0, 0, .12); --shadow-xl: 0 16px 48px rgba(0, 0, 0, .14); --tr-fast: .15s; --tr-base: .3s; --tr-slow: .5s; --tr-slower: .7s; --z-base: 1; --z-content: 5; --z-dropdown: 20; --z-sticky: 50; --z-header: 100; --z-overlay: 200; --z-modal: 300; --z-toast: 400; --z-loader: 500; --opacity500: .6; --width: 120rem; }
:root { --linear: cubic-bezier(0.250, 0.250, 0.750, 0.750); --easeInSine: cubic-bezier(0.47, 0, 0.745, 0.715); --easeOutSine: cubic-bezier(0.39, 0.575, 0.565, 1); --easeInOutSine: cubic-bezier(0.445, 0.05, 0.55, 0.95); --easeInQuad: cubic-bezier(0.55, 0.085, 0.68, 0.53); --easeOutQuad: cubic-bezier(0.25, 0.46, 0.45, 0.94); --easeInOutQuad: cubic-bezier(0.455, 0.03, 0.515, 0.955); --easeInCubic: cubic-bezier(0.55, 0.055, 0.675, 0.19); --easeOutCubic: cubic-bezier(0.215, 0.61, 0.355, 1); --easeInOutCubic: cubic-bezier(0.645, 0.045, 0.355, 1); --easeInQuart: cubic-bezier(0.895, 0.03, 0.685, 0.22); --easeOutQuart: cubic-bezier(0.165, 0.84, 0.44, 1); --easeInOutQuart: cubic-bezier(0.77, 0, 0.175, 1); --easeInQuint: cubic-bezier(0.755, 0.05, 0.855, 0.06); --easeOutQuint: cubic-bezier(0.23, 1, 0.32, 1); --easeInOutQuint: cubic-bezier(0.86, 0, 0.07, 1); --easeInExpo: cubic-bezier(0.95, 0.05, 0.795, 0.035); --easeOutExpo: cubic-bezier(0.19, 1, 0.22, 1); --easeInOutExpo: cubic-bezier(1, 0, 0, 1); --easeInCirc: cubic-bezier(0.6, 0.04, 0.98, 0.335); --easeOutCirc: cubic-bezier(0.075, 0.82, 0.165, 1); --easeInOutCirc: cubic-bezier(0.785, 0.135, 0.15, 0.86); --easeInBack: cubic-bezier(0.6, -0.28, 0.735, 0.045); --easeOutBack: cubic-bezier(0.175, 0.885, 0.32, 1.275); --easeInOutBack: cubic-bezier(0.68, -0.55, 0.265, 1.55); }
*, ::before, ::after { box-sizing: border-box; border-style: solid; border-width: 0px; }
html { line-height: 1.15; text-size-adjust: 100%; -webkit-tap-highlight-color: transparent; }
body { margin: 0px; overflow-x: clip; }
main { display: block; }
p, table, blockquote, address, pre, iframe, form, figure, dl { margin: 0px; }
h1, h2, h3, h4, h5, h6 { font-size: inherit; font-weight: inherit; margin: 0px; }
ul, ol { margin: 0px; padding: 0px; list-style: none; }
a { background-color: transparent; text-decoration: none; color: inherit; }
img, embed, object, iframe { vertical-align: bottom; }
button, input, optgroup, select, textarea { appearance: none; vertical-align: middle; color: inherit; font: inherit; background: transparent; padding: 0px; margin: 0px; border-radius: 0px; text-align: inherit; text-transform: inherit; }
button, [type="button"], [type="reset"], [type="submit"] { cursor: pointer; }
button:disabled, [type="button"]:disabled, [type="reset"]:disabled, [type="submit"]:disabled { cursor: default; }
::-webkit-file-upload-button { appearance: button; font: inherit; }
::after, ::before { user-select: none; }
html { font-size: 0.520833vw; overflow-x: clip; }
picture img { width: 100%; }
body { font-family: var(--gothic); font-size: var(--resetFontSize); font-weight: var(--resetFontWeight); line-height: var(--resetLineHeight); color: var(--resetColor); background: var(--resetBgColor); letter-spacing: var(--resetLetterSpacing); text-size-adjust: 100%; }
body * { outline: none; }
::-webkit-scrollbar { width: 0.8rem; height: 0.8rem; }
::-webkit-scrollbar-track { background: rgb(229, 229, 229); }
::-webkit-scrollbar-thumb { background: rgb(114, 114, 114); border-radius: 100px; border: 1px solid rgba(0, 0, 0, 0.2); }
h1, h2, h3, h4, h5, h6, a, i, span, em, strong, dl dt, dl dd, ul li, ol li, figcaption, table th, table td { font-style: normal; font-weight: inherit; line-height: inherit; letter-spacing: inherit; color: inherit; text-decoration: none; list-style: none; }
a { cursor: pointer; }
input, textarea, select, button { font-family: var(--gothic); font-size: var(--resetFontSize); font-weight: var(--resetFontWeight); line-height: var(--resetLineHeight); color: var(--resetColor); background: var(--resetBgColor); letter-spacing: var(--resetLetterSpacing); text-size-adjust: 100%; overflow-x: clip; outline: none; width: 100%; padding: 0px; border-width: medium; border-style: none; border-color: currentcolor; border-image: none; border-radius: 0px; }
input[type="submit"], input[type="reset"], input[type="button"], button { cursor: pointer; }
html.lenis, html.lenis body { height: auto; }
.lenis.lenis-smooth { scroll-behavior: auto !important; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0px; margin: -1px; overflow: hidden; clip: rect(0px, 0px, 0px, 0px); white-space: nowrap; border: 0px; }
div.main { position: relative; width: 192rem; overflow: clip; background: rgb(255, 255, 255); }
:where(div.main) :is(h1, h2, h3, h4, h5, h6) { font-weight: bold; }
:where(div.main) :is(b, strong) { font-weight: bolder; }
:where(div.main) :is(em, i) { font-style: italic; }
:where(div.main) :is(th, td) { vertical-align: middle; }
:where(div.main a[data-link]) { display: block; color: inherit; text-decoration: none; }
div.main a[data-link] { cursor: pointer; }
div.main a[data-link]:focus-visible { outline: rgb(27, 27, 27) solid 2px; outline-offset: 4px; }
[data-hv-box] { transition: background-color 0.3s, color 0.3s, box-shadow 0.3s, border-color 0.3s; }
div.main a[data-hv], div.main a[data-hv] * { transition: color 0.3s, stroke 0.3s, fill 0.3s, background-color 0.3s, border-color 0.3s !important; }
[data-hv-box] * { transition: color 0.3s, stroke 0.3s, fill 0.3s, background-color 0.3s, border-color 0.3s !important; }
@media (hover: hover){a[data-hv-box="green"]:hover, a[data-hv="green"]:hover [data-hv-box], [data-hv-box="green"].is-hv { background-color: rgb(238, 125, 26) !important; border-color: rgb(238, 125, 26) !important; }a[data-hv-box="dark"]:hover, a[data-hv-box="light"]:hover, a[data-hv="dark"]:hover [data-hv-box], a[data-hv="light"]:hover [data-hv-box], [data-hv-box="dark"].is-hv, [data-hv-box="light"].is-hv { background-color: rgb(105, 184, 51) !important; border-color: rgb(105, 184, 51) !important; }div.main a[data-hv="green"]:is(:hover, .is-hv), div.main a[data-hv="green"]:is(:hover, .is-hv) * { color: rgb(255, 255, 255) !important; }div.main a[data-hv="green"]:is(:hover, .is-hv) path[stroke]:not([stroke="none"]) { stroke: rgb(255, 255, 255); }div.main a[data-hv="dark"]:is(:hover, .is-hv), div.main a[data-hv="dark"]:is(:hover, .is-hv) *, div.main a[data-hv="light"]:is(:hover, .is-hv), div.main a[data-hv="light"]:is(:hover, .is-hv) * { color: rgb(255, 255, 255) !important; }div.main a[data-hv="dark"]:is(:hover, .is-hv) path[stroke]:not([stroke="none"]), div.main a[data-hv="light"]:is(:hover, .is-hv) path[stroke]:not([stroke="none"]) { stroke: rgb(255, 255, 255); }div.main a[data-hv="text"]:is(:hover, .is-hv), div.main a[data-hv="text"]:is(:hover, .is-hv) * { color: rgb(105, 184, 51) !important; }div.main a[data-hv="text"]:is(:hover, .is-hv) path[stroke]:not([stroke="none"]) { stroke: rgb(105, 184, 51); }}
svg[width="100%"][height="100%"] { overflow: visible !important; }
.l-header { --logo-color: #ffffff; --nav-color: #ffffff; position: fixed; top: 0px; left: 0px; z-index: 100; width: 100%; height: 10.712rem; pointer-events: none; }
.l-header[data-theme-logo="light"] { --logo-color: #373737; }
.l-header[data-theme-nav="light"] { --nav-color: #373737; }
.l-header a, .l-header button { pointer-events: auto; }
.l-header__logo { position: absolute; top: 3.022rem; left: 4.632rem; display: block; width: 26.835rem; height: 4.473rem; color: var(--logo-color); transition: color 0.3s; }
.c-logo { display: block; width: 100%; height: auto; }
.c-swap { --swap-ja-size: .8em; display: inline-grid; place-items: center; }
.c-swap__size, .c-swap__text { grid-area: 1 / 1; white-space: nowrap; }
.c-swap__size { visibility: hidden; }
.c-swap__size + .c-swap__size { font-size: var(--swap-ja-size); }
.c-swap { line-height: 3.2rem; }
.c-swap__text { font-feature-settings: "palt"; }
.l-header__actions { position: absolute; top: 2.325rem; right: 5.48rem; display: flex; align-items: center; gap: 4rem; }
.l-header__menu { display: grid; grid-auto-columns: 1fr; grid-auto-flow: column; gap: 1.6rem; margin: 0px; padding: 0px; list-style: none; }
.l-header__link { display: block; text-align: center; color: var(--nav-color); font-family: Afacad, "Noto Sans JP", sans-serif; font-size: 2.4rem; font-weight: bold; line-height: normal; white-space: nowrap; text-decoration: none; transition: color 0.3s; }
.l-header__link:hover { opacity: 1; }
.l-header__item { position: relative; }
.l-header__sub { position: absolute; top: 100%; left: 50%; padding-top: 1.6rem; opacity: 0; visibility: hidden; translate: -50% -0.8rem; transition: opacity 0.25s, translate 0.25s, visibility 0.25s; pointer-events: none; }
.l-header__item:hover .l-header__sub, .l-header__item:focus-within .l-header__sub { opacity: 1; visibility: visible; translate: -50%; pointer-events: auto; }
.l-header__subList { margin: 0px; padding: 0.8rem; list-style: none; border: 1px solid rgba(255, 255, 255, 0.12); border-radius: 1.2rem; background-color: rgba(20, 20, 20, 0.6); backdrop-filter: blur(1.2rem); }
.l-header__subLink { display: block; padding: 1.2rem 2rem; border-radius: 0.8rem; color: rgb(255, 255, 255); font-family: "Noto Sans JP", sans-serif; font-size: 1.6rem; font-weight: bold; letter-spacing: 0.06em; white-space: nowrap; text-decoration: none; transition: background-color 0.2s, color 0.2s; }
.l-header__subLink:hover, .l-header__subLink:focus-visible { opacity: 1; background-color: rgba(255, 255, 255, 0.12); color: rgb(255, 255, 255); }
.l-header__cta, .l-drawer__cta { display: flex; align-items: center; justify-content: center; border-radius: 500rem; background-color: rgb(105, 184, 51); color: rgb(255, 255, 255); font-family: Afacad, "Noto Sans JP", sans-serif; font-weight: bold; line-height: 1; white-space: nowrap; text-decoration: none; transition: background-color 0.3s, color 0.3s, box-shadow 0.3s; }
@media (hover: hover){.l-header__cta:hover, .l-drawer__cta:hover { background-color: rgb(238, 125, 26); color: rgb(255, 255, 255); }}
.l-header__cta { width: 26.391rem; height: 5.437rem; font-size: 2.4rem; }
.l-header__toggle { display: none; }
.l-header__toggle span { display: block; width: 2.2rem; height: 0.2rem; border-radius: 0.2rem; background-color: currentcolor; transition: transform 0.3s; }
.l-drawer { position: fixed; inset: 0px; z-index: 99; padding: 8.4rem 2rem 4rem; overflow-y: auto; background-color: rgb(36, 36, 36); opacity: 0; transform: translateY(-1rem); transition: opacity 0.3s, transform 0.3s; }
@media screen and (min-width: 768px){.l-drawer { display: none; }}
.l-drawer__menu { margin: 0px 0px 2.4rem; padding: 0px; list-style: none; border-top: 1px solid rgba(255, 255, 255, 0.15); }
.l-drawer__menu li { border-bottom: 1px solid rgba(255, 255, 255, 0.15); }
.l-drawer__link { display: block; padding: 1.2rem 0.4rem; color: rgb(255, 255, 255); font-family: "Noto Sans JP", sans-serif; font-size: 1.6rem; font-weight: bold; letter-spacing: 0.08em; text-decoration: none; }
.l-drawer__row { display: flex; align-items: center; }
.l-drawer__row .l-drawer__link { flex: 1 1 0%; }
.l-drawer__subToggle { position: relative; flex-shrink: 0; width: 4.4rem; height: 4.4rem; margin: 0px; padding: 0px; border: 0px; background: none; color: rgb(255, 255, 255); cursor: pointer; }
.l-drawer__subToggle::before, .l-drawer__subToggle::after { content: ""; position: absolute; top: 50%; left: 50%; width: 1.4rem; height: 0.2rem; border-radius: 0.2rem; background-color: currentcolor; translate: -50% -50%; transition: rotate 0.3s; }
.l-drawer__subToggle::after { rotate: 90deg; }
.l-drawer__sub { margin: 0px; padding: 0px 0px 1.2rem 1.6rem; list-style: none; }
.l-drawer__sub li { border: 0px; }
.l-drawer__subLink { display: block; padding: 0.8rem 0.4rem; color: rgba(255, 255, 255, 0.8); font-family: "Noto Sans JP", sans-serif; font-size: 1.4rem; letter-spacing: 0.06em; text-decoration: none; }
.l-drawer__cta { height: 5.2rem; font-family: "Noto Sans JP", sans-serif; font-size: 1.6rem; letter-spacing: 0.08em; }
.p-news__content :is(h2, h3)[id] { scroll-margin-top: 10rem; }
.c-pageCard:is(.p-news__card, .p-news__article) .c-newsGrid, .c-pageCard:is(.p-news__card, .p-news__article) .c-newsFilter__list { margin: 0px; padding: 0px; }
.c-pageCard:is(.p-news__card, .p-news__article) .c-newsGrid li, .c-pageCard:is(.p-news__card, .p-news__article) .c-newsFilter__list li { margin: 0px; list-style: none; }
.c-pageCard:is(.p-news__card, .p-news__article) .c-newsFilter { margin-bottom: 4.8rem; }
.c-pageCard:is(.p-news__card, .p-news__article) .c-newsCard__link, .c-pageCard:is(.p-news__card, .p-news__article) .c-newsFilter__link, .c-pageCard:is(.p-news__card, .p-news__article) .c-newsSection__more, .c-pageCard:is(.p-news__card, .p-news__article) .c-newsCard__cat { text-decoration: none; }
.c-pageCard:is(.p-news__card, .p-news__article) .c-newsCard__link { color: rgb(36, 36, 36); }
.c-pageCard:is(.p-news__card, .p-news__article) .c-newsCard__cat { color: rgb(105, 184, 51); }
.c-pageCard:is(.p-news__card, .p-news__article) .c-newsFilter__link.is-current { color: rgb(255, 255, 255); }
.c-pageCard:is(.p-news__card, .p-news__article) .c-newsSection__more { color: rgb(36, 36, 36); }
@media (hover: hover){.c-pageCard:is(.p-news__card, .p-news__article) .c-newsSection__more:hover { color: rgb(255, 255, 255); }}
.c-pageCard:is(.p-news__card, .p-news__article) .c-newsCard__title { margin: 0px; font-size: 1.7rem; }
.c-pageCard:is(.p-news__card, .p-news__article) .c-newsCard.is-project .c-newsCard__title { font-size: 2rem; }
.c-pageCard:is(.p-news__card, .p-news__article) .c-newsCard__excerpt { margin: 0px; }
.rv-ready:not(.rv-init) :is(.wrap-visual__title, .wrap-visual__logo, .wrap-visual__content) { opacity: 0.01; }
.rv-ready .wrap-visual [data-rv="chars"] .rv-char, .rv-ready .wrap-visual [data-rv="svg"] .rv-part:not(.is-draw) { opacity: 0.01; }
.rv-ready [data-rv]:not(.is-shown) { opacity: 0 !important; transition: none !important; }
.rv-ready [data-rv="text"], .rv-ready [data-rv="rider"], .rv-ready [data-rv="item"] { opacity: 0; }
.rv-ready [data-rv="text"].is-shown, .rv-ready [data-rv="rider"].is-shown, .rv-ready [data-rv="item"].is-shown { animation-duration: 1s; animation-timing-function: cubic-bezier(0.22, 1, 0.36, 1); animation-iteration-count: 1; animation-direction: normal; animation-fill-mode: both; animation-play-state: running; animation-name: rv-up; animation-timeline: auto; animation-range: normal; animation-delay: calc(var(--rv-wait, 0s) + var(--rv-base, 0s) + var(--gi, 0) * 0.14s); }
.rv-ready [data-rv="chars"] .rv-char { display: inline-block; opacity: 0; }
.rv-ready [data-rv="chars"].is-shown .rv-char { animation-duration: 0.6s; animation-timing-function: cubic-bezier(0.22, 1, 0.36, 1); animation-iteration-count: 1; animation-direction: normal; animation-fill-mode: both; animation-play-state: running; animation-name: rv-char; animation-timeline: auto; animation-range: normal; animation-delay: calc(var(--rv-wait, 0s) + var(--rv-base, 0s) + var(--ci) * min(0.03s, 0.5s / var(--cn, 20))); }
.rv-ready [data-rv="svg"] .rv-part { opacity: 0; transform-box: fill-box; transform-origin: center center; }
.rv-ready [data-rv="svg"].is-shown .rv-part { animation-duration: 0.8s; animation-timing-function: cubic-bezier(0.22, 1, 0.36, 1); animation-iteration-count: 1; animation-direction: normal; animation-fill-mode: both; animation-play-state: running; animation-name: rv-part; animation-timeline: auto; animation-range: normal; animation-delay: calc(var(--rv-base, 0s) + var(--pd, 0s)); }
.rv-ready .wrap-visual .wrap-visual__title { --rv-base: .1s; }
.rv-ready .wrap-visual .wrap-visual__title.is-shown .rv-char { animation-name: rv-fv-char; animation-duration: 0.9s; animation-delay: calc(var(--rv-base) + var(--ci) * 0.045s); }
.rv-ready .wrap-visual .wrap-visual__title.is-shown .wrap-visual__title--emphasis .rv-char { animation-delay: calc(1.3s + (var(--ci) - 8) * 0.05s); }
.rv-ready .wrap-visual .wrap-visual__logo { --rv-base: .8s; }
.rv-ready .wrap-visual .wrap-visual__logo.is-shown .rv-part { animation-name: rv-fv-part; animation-duration: 1.2s; }
.rv-ready .wrap-visual .wrap-text-57, .rv-ready .wrap-visual .wrap-title { --rv-base: 1.7s; }
.rv-ready .wrap-visual .wrap-lead { --rv-base: 1.85s; }
.rv-ready .wrap-visual .wrap-label { --rv-base: 2.05s; }
@media screen and (min-width: 768px){.rv-ready .p-top .wrap-visual__bg { animation: 0.6s cubic-bezier(0.76, 0, 0.24, 1) 0s 1 normal both paused rv-fv-bg; }.rv-ready .p-top .wrap-visual__inner.--002 { animation: 0.6s cubic-bezier(0.76, 0, 0.24, 1) 0s 1 normal both paused rv-fv-panel; }.rv-ready .p-top .wrap-visual__inner.--002::before { content: ""; position: absolute; inset: 0px; background-color: rgb(255, 255, 255); animation: 1.8s ease 0s 1 normal both paused rv-fv-fade-out; }.rv-ready .p-top .wrap-visual__decoration { animation: 1.8s ease 0s 1 normal both paused rv-fv-fade-in; }.rv-init .p-top .wrap-visual__bg, .rv-init .p-top .wrap-visual__inner.--002 { animation-play-state: running; animation-delay: 0.7s; }.rv-init .p-top .wrap-visual__inner.--002::before, .rv-init .p-top .wrap-visual__decoration { animation-play-state: running; animation-delay: 0.9s; }}
@media screen and (min-width: 768px){.p-top .main { height: 1306.24rem; }}
.p-top .wrap { width: 192.177rem; position: relative; height: 1306.27rem; overflow: hidden; margin: -0.01rem 0px 0px; }
.p-top .wrap__investigation { width: 192.391rem; position: absolute; top: -0.012rem; left: 0.029rem; height: 1164.86rem; overflow: visible; display: flow-root; }
.p-top .wrap__investigation--hero { width: 100%; position: relative; height: 113.441rem; overflow: hidden; background-color: rgb(36, 36, 36); margin: 0px; }
.p-top .wrap-visual { width: 236.598rem; position: relative; height: 110.938rem; overflow: visible; margin: 0.262rem 0px 0px -4.006rem; display: flow-root; }
.p-top .wrap-visual__inner.--001 { width: 236.598rem; position: relative; height: 110.939rem; overflow: hidden; background-color: rgb(36, 36, 36); margin: 0px; display: flex; align-items: flex-start; }
.p-top .wrap-visual__artwork { width: 142.183rem; position: absolute; top: 7.072rem; left: 77.676rem; height: 75.763rem; overflow: visible; }
.p-top .wrap-visual__artwork--shape.--001 { width: 106.233rem; mix-blend-mode: multiply; position: absolute; top: 27.163rem; left: -19.799rem; height: 21.438rem; border-radius: 65.62rem; transform: scaleX(0.738134) scaleY(0.738134) rotate(45deg); }
.p-top .wrap-visual__artwork--shape.--002 { width: 123.721rem; mix-blend-mode: multiply; position: absolute; top: 27.163rem; left: 6.729rem; height: 21.438rem; border-radius: 65.62rem; transform: scaleX(0.738134) scaleY(0.738134) rotate(45deg); }
.p-top .wrap-visual__artwork--shape.--003 { width: 117.2rem; mix-blend-mode: multiply; position: absolute; top: 27.163rem; left: 47.405rem; height: 21.438rem; border-radius: 65.62rem; transform: scaleX(0.738134) scaleY(0.738134) rotate(45deg); }
.p-top .wrap-visual__artwork--shape.--004 { width: 79.556rem; mix-blend-mode: multiply; position: absolute; top: 27.787rem; left: -5.907rem; height: 21.438rem; border-radius: 65.62rem; transform: scaleX(0.738134) scaleY(0.738134) rotateX(180deg) rotate(45deg); }
.p-top .wrap-visual__artwork--shape.--005 { width: 85.484rem; mix-blend-mode: multiply; position: absolute; top: 27.787rem; left: 26.413rem; height: 21.438rem; border-radius: 65.62rem; transform: scaleX(0.738134) scaleY(0.738134) rotateX(180deg) rotate(45deg); }
.p-top .wrap-visual__artwork--shape.--006 { width: 84.298rem; mix-blend-mode: multiply; position: absolute; top: 27.787rem; left: 64.42rem; height: 21.438rem; border-radius: 65.62rem; transform: scaleX(0.738134) scaleY(0.738134) rotateX(180deg) rotate(45deg); }
.p-top .wrap-visual__bg { width: 192rem; position: absolute; top: -0.422rem; left: 4.021rem; height: 35.615rem; border-bottom-right-radius: 2rem; border-bottom-left-radius: 2rem; overflow: hidden; background-color: rgb(255, 255, 255); }
.p-top .wrap-visual__inner.--002 { width: 192.009rem; position: absolute; top: 56.788rem; left: 3.963rem; height: 52.098rem; border-top-left-radius: 2rem; border-top-right-radius: 2rem; border-bottom-left-radius: 2rem; overflow: hidden; background-color: rgb(243, 243, 243); background-image: url("../../img/common/bg-paper-texture.webp"); background-size: 10rem auto; }
.p-top .wrap-visual__decoration { mask-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2021.336043107970955%2042.90071776760306%22%20width%3D%22100%25%22%20height%3D%22100%25%22%20preserveAspectRatio%3D%22none%22%20style%3D%22overflow%3Avisible%22%3E%3Cdefs%3E%3ClinearGradient%20id%3D%22svg-fill-node-1704%22%20x1%3D%2249.99999999999999%25%22%20y1%3D%220%25%22%20x2%3D%2250.00000000000001%25%22%20y2%3D%22100%25%22%3E%3Cstop%20offset%3D%2225.3%25%22%20stop-color%3D%22%23242424%22%20stop-opacity%3D%220%22%20%2F%3E%3Cstop%20offset%3D%22100%25%22%20stop-color%3D%22%23242424%22%20stop-opacity%3D%221%22%20%2F%3E%3C%2FlinearGradient%3E%3C%2Fdefs%3E%3Cpath%20d%3D%22M%200%200%20C%200%200%2021.336043%200%2021.336043%200%20C%2021.336043%200%2021.336043%2042.900718%2021.336043%2042.900718%20C%2021.336043%2042.900718%200%2042.900718%200%2042.900718%20C%200%2042.900718%200%200%200%200%20Z%22%20fill%3D%22url(%23svg-fill-node-1704)%22%20fill-opacity%3D%221%22%20fill-rule%3D%22nonzero%22%20stroke%3D%22none%22%20stroke-opacity%3D%221%22%20stroke-width%3D%220%22%20stroke-linecap%3D%22butt%22%20stroke-linejoin%3D%22miter%22%20stroke-miterlimit%3D%224%22%20%2F%3E%3C%2Fsvg%3E"); mask-size: 203.953rem 33.594rem; mask-position: 0.056rem 0.028rem; mask-repeat: no-repeat; mask-mode: alpha; width: 203.923rem; opacity: 0.37; mix-blend-mode: multiply; position: absolute; top: 19.893rem; left: -6.024rem; height: 31.446rem; overflow: visible; display: flow-root; }
.p-top .wrap-visual__decoration--pattern { width: 247.609rem; position: relative; height: 75.716rem; overflow: visible; margin: -12.119rem 0px 0px -10.573rem; display: flow-root; }
.p-top .wrap-row.--001 { width: 142.183rem; position: absolute; top: 0px; left: 0px; height: 75.763rem; overflow: visible; }
.p-top .wrap-row__shape.--001 { width: 106.233rem; mix-blend-mode: multiply; position: absolute; top: 27.163rem; left: -19.799rem; height: 21.438rem; border-radius: 65.62rem; transform: scaleX(0.738134) scaleY(0.738134) rotate(45deg); }
.p-top .wrap-row__shape.--002 { width: 123.721rem; mix-blend-mode: multiply; position: absolute; top: 27.163rem; left: 6.729rem; height: 21.438rem; border-radius: 65.62rem; transform: scaleX(0.738134) scaleY(0.738134) rotate(45deg); }
.p-top .wrap-row__shape.--003 { width: 117.2rem; mix-blend-mode: multiply; position: absolute; top: 27.163rem; left: 45.253rem; height: 21.438rem; border-radius: 65.62rem; transform: scaleX(0.738134) scaleY(0.738134) rotate(45deg); }
.p-top .wrap-row__shape.--004 { width: 79.556rem; mix-blend-mode: multiply; position: absolute; top: 27.787rem; left: -5.907rem; height: 21.438rem; border-radius: 65.62rem; transform: scaleX(0.738134) scaleY(0.738134) rotateX(180deg) rotate(45deg); }
.p-top .wrap-row__shape.--005 { width: 85.484rem; mix-blend-mode: multiply; position: absolute; top: 27.787rem; left: 26.413rem; height: 21.438rem; border-radius: 65.62rem; transform: scaleX(0.738134) scaleY(0.738134) rotateX(180deg) rotate(45deg); }
.p-top .wrap-row__shape.--006 { width: 84.298rem; mix-blend-mode: multiply; position: absolute; top: 27.787rem; left: 62.268rem; height: 21.438rem; border-radius: 65.62rem; transform: scaleX(0.738134) scaleY(0.738134) rotateX(180deg) rotate(45deg); }
.p-top .wrap-row.--002 { width: 142.183rem; position: absolute; top: 0px; left: 105.467rem; height: 75.763rem; overflow: visible; }
.p-top .wrap-row__shape.--007 { width: 106.233rem; mix-blend-mode: multiply; position: absolute; top: 27.163rem; left: -19.799rem; height: 21.438rem; border-radius: 65.62rem; transform: scaleX(0.738134) scaleY(0.738134) rotate(45deg); }
.p-top .wrap-row__shape.--008 { width: 123.721rem; mix-blend-mode: multiply; position: absolute; top: 27.163rem; left: 6.729rem; height: 21.438rem; border-radius: 65.62rem; transform: scaleX(0.738134) scaleY(0.738134) rotate(45deg); }
.p-top .wrap-row__shape.--009 { width: 117.2rem; mix-blend-mode: multiply; position: absolute; top: 27.163rem; left: 45.253rem; height: 21.438rem; border-radius: 65.62rem; transform: scaleX(0.738134) scaleY(0.738134) rotate(45deg); }
.p-top .wrap-row__shape.--010 { width: 79.556rem; mix-blend-mode: multiply; position: absolute; top: 27.787rem; left: -5.907rem; height: 21.438rem; border-radius: 65.62rem; transform: scaleX(0.738134) scaleY(0.738134) rotateX(180deg) rotate(45deg); }
.p-top .wrap-row__shape.--011 { width: 85.484rem; mix-blend-mode: multiply; position: absolute; top: 27.787rem; left: 26.413rem; height: 21.438rem; border-radius: 65.62rem; transform: scaleX(0.738134) scaleY(0.738134) rotateX(180deg) rotate(45deg); }
.p-top .wrap-row__shape.--012 { width: 84.298rem; mix-blend-mode: multiply; position: absolute; top: 27.787rem; left: 62.268rem; height: 21.438rem; border-radius: 65.62rem; transform: scaleX(0.738134) scaleY(0.738134) rotateX(180deg) rotate(45deg); }
.p-top .wrap-visual__content { width: 79.675rem; position: absolute; top: 3.622rem; left: 20.054rem; height: 22.308rem; overflow: visible; }
.p-top .wrap-visual__content--head { width: 49.402rem; position: absolute; top: 15.03rem; left: 0px; height: 5.828rem; overflow: visible; }
.p-top .wrap-label.--001 { width: 33.096rem; position: absolute; top: 0px; left: 16.306rem; height: 5.828rem; border-radius: 500rem; border: 1px solid rgb(105, 184, 51); overflow: hidden; background-color: rgb(243, 243, 243); }
.p-top .wrap-label__caption.--001 { width: auto; color: rgb(105, 184, 51); position: absolute; top: 1.89rem; left: 10.352rem; height: auto; font-size: 1.92rem; line-height: 1; letter-spacing: 0px; font-family: Afacad; font-weight: bold; white-space: nowrap; }
.p-top .wrap-label__mark.--001 { width: 1.452rem; position: absolute; top: 2.08rem; left: 28.128rem; height: 1.526rem; overflow: visible; }
.p-top .wrap-label.--002 { width: 24.804rem; position: absolute; top: 0px; left: 0px; height: 5.828rem; border-radius: 500rem; overflow: hidden; background-color: rgb(56, 157, 56); display: flex; align-items: flex-start; }
.p-top .wrap-label__caption.--002 { width: fit-content; color: rgb(255, 255, 255); position: relative; height: auto; font-size: 1.92rem; line-height: 1; letter-spacing: 0px; font-family: Afacad; font-weight: bold; white-space: nowrap; margin: 2.062rem 0px 0px 4.728rem; flex-shrink: 0; display: flow-root; }
.p-top .wrap-label__mark.--002 { width: 1.458rem; position: relative; height: 1.526rem; overflow: visible; margin: 2.08rem 0px 0px 1.663rem; flex-shrink: 0; display: flow-root; }
.p-top .wrap-visual__content--body { width: 78.822rem; position: absolute; top: -0.124rem; left: 0.169rem; height: 12.677rem; overflow: visible; display: flex; align-items: flex-start; }
.p-top .wrap-title { width: auto; color: rgb(36, 36, 36); position: absolute; top: 0.956rem; left: 0px; height: auto; border-bottom: 1px dotted rgb(178, 178, 178); font-size: 3.319rem; letter-spacing: 0.09em; font-family: Afacad, sans-serif; font-weight: 700; white-space: nowrap; }
.p-top .wrap-title__br.--001 { display: none; }
.p-top .wrap-title__br.--002 { display: none; }
.p-top .wrap-lead { width: auto; color: rgb(36, 36, 36); position: absolute; top: 7.159rem; left: 0px; height: auto; font-size: 1.911rem; letter-spacing: 0.09em; font-family: Afacad, sans-serif; font-weight: 600; white-space: nowrap; }
.p-top .wrap-lead__br.--001 { display: none; }
.p-top .wrap-lead__br.--002 { display: block; }
.p-top .wrap-lead__br.--003 { display: none; }
.p-top .wrap-text-57.--001 { width: fit-content; color: rgb(36, 36, 36); position: relative; height: auto; font-size: 1.166rem; letter-spacing: 0.09em; font-family: Afacad, sans-serif; font-weight: 600; white-space: nowrap; margin: 0px 0px 0px 0.928rem; flex-shrink: 0; display: flow-root; }
.p-top .wrap-text-57.--002 { width: fit-content; color: rgb(36, 36, 36); position: relative; height: auto; font-size: 1.166rem; letter-spacing: 0.09em; font-family: Afacad, sans-serif; font-weight: 600; white-space: nowrap; margin: 0px 0px 0px 5.406rem; flex-shrink: 0; display: flow-root; }
.p-top .wrap-text-57.--003 { width: fit-content; color: rgb(36, 36, 36); position: relative; height: auto; font-size: 1.166rem; letter-spacing: 0.09em; font-family: Afacad, sans-serif; font-weight: 600; white-space: nowrap; margin: 0px 0px 0px 12.519rem; flex-shrink: 0; display: flow-root; }
.p-top .wrap-text-57.--004 { width: fit-content; color: rgb(36, 36, 36); position: relative; height: auto; font-size: 1.166rem; letter-spacing: 0.09em; font-family: Afacad, sans-serif; font-weight: 600; white-space: nowrap; margin: 0px 0px 0px 30.541rem; flex-shrink: 0; display: flow-root; }
.p-top .wrap-visual__title { width: fit-content; color: rgb(36, 36, 36); position: relative; height: auto; font-size: 21.919rem; line-height: 0.9; font-family: Afacad, sans-serif; font-weight: 700; white-space: nowrap; margin: 15.096rem 0px 0px 20.657rem; flex-shrink: 0; display: flow-root; }
.p-top .wrap-visual__title--br.--001 { display: none; }
.p-top .wrap-visual__title--br.--002 { display: block; font-size: 21.919rem; }
.p-top .wrap-visual__title--emphasis { width: 49.158rem; color: rgb(255, 255, 255); position: relative; height: 23.996rem; display: inline; padding-left: 3.343rem; font-size: 21.919rem; overflow: visible; }
.p-top .wrap-visual__logo { width: 58.778rem; position: relative; height: 58.778rem; overflow: visible; margin: 15.95rem 0px 0px 11.192rem; flex-shrink: 0; display: flow-root; filter: drop-shadow(rgba(0, 0, 0, 0.1) 0px 0.4rem 3.2rem); }
.p-top .wrap__investigation--research-overview { width: 100%; position: absolute; top: 101.17rem; left: 0px; height: 249.599rem; border-top-left-radius: 8rem; border-top-right-radius: 8rem; overflow: hidden; background-color: rgb(36, 36, 36); }
.p-top .wrap-bg { width: 201.333rem; position: absolute; top: -2.492rem; left: -4.481rem; height: 108.977rem; overflow: hidden; display: block; }
.p-top .wrap-list { width: 63.341rem; position: absolute; top: 24.332rem; left: 91.869rem; height: 60.177rem; overflow: visible; }
.p-top .wrap-list__item.--002 { width: 39.716rem; position: absolute; top: 0px; left: 11.814rem; height: 39.716rem; border-radius: 500rem; border: 1px solid rgb(255, 255, 255); overflow: hidden; background-color: color-mix(in srgb, rgb(0, 0, 0) 16%, transparent 84%); }
.p-top .wrap-list__item--title.--002 { width: auto; color: rgb(255, 255, 255); position: absolute; top: 10.728rem; left: 17.399rem; height: auto; border-radius: 0.5rem; font-size: 1.8rem; line-height: 1.4; letter-spacing: 0.13em; font-family: "Noto Sans JP", sans-serif; font-weight: 400; text-align: center; white-space: nowrap; }
.p-top .wrap-list__item--label.--002 { width: auto; color: rgb(245, 245, 245); position: absolute; top: 12.276rem; left: 14.439rem; height: auto; font-size: 3.7rem; letter-spacing: 0px; font-family: Afacad, sans-serif; font-weight: 700; white-space: nowrap; transform: rotate(-90deg) rotate(90deg); }
.p-top .wrap-content { width: 75.446rem; position: absolute; top: 19.612rem; left: 13.155rem; height: 61.266rem; overflow: visible; display: flex; align-items: flex-start; }
.p-top .wrap-content__head { width: 3.083rem; position: relative; height: 16.444rem; overflow: visible; margin: 2.044rem 0px 0px; flex-shrink: 0; display: flow-root; }
.p-top .wrap-content__head--subtitle { width: auto; color: rgb(245, 245, 245); position: absolute; top: 6.68rem; left: -6.68rem; height: auto; font-size: 2.4rem; letter-spacing: 0px; font-family: Afacad; font-weight: bold; white-space: nowrap; transform: rotate(90deg); }
.p-top .wrap-content__body { width: 68.204rem; position: relative; height: 61.267rem; overflow: visible; margin: 0px 0px 0px 4.162rem; flex-shrink: 0; display: flow-root; }
.p-top .wrap-content__body--group { width: 68.205rem; position: relative; height: 43.057rem; overflow: visible; margin: 0px; display: flow-root; }
.p-top .wrap-group.--001 { width: 65.536rem; position: relative; height: 20.045rem; overflow: visible; margin: 0px 0px 0px 0.352rem; display: flow-root; }
.p-top .wrap-group__text-57.--001 { width: auto; color: rgb(255, 255, 255); position: absolute; top: 0.231rem; left: 0px; height: auto; border-radius: 0.5rem; font-size: 6.806rem; letter-spacing: 0.07em; font-family: Afacad, sans-serif; font-weight: 700; white-space: nowrap; }
.p-top .wrap-group__text-57--br.--001 { display: block; font-size: 6.76rem; }
.p-top .wrap-group__text-57.--002 { width: fit-content; color: rgb(255, 255, 255); position: relative; height: auto; font-size: 1.466rem; letter-spacing: 0.09em; font-family: Afacad, sans-serif; font-weight: 600; white-space: nowrap; margin: 0px 0px 0px 2.71rem; display: flow-root; }
.p-top .wrap-group__text-57.--003 { width: fit-content; color: rgb(255, 255, 255); position: relative; height: auto; font-size: 1.466rem; letter-spacing: 0.09em; font-family: Afacad, sans-serif; font-weight: 600; white-space: nowrap; margin: 7.469rem 0px 0px 2.091rem; display: flow-root; }
.p-top .wrap-group.--003 { width: 203.921rem; position: absolute; top: 106.456rem; left: -7.146rem; height: 116.262rem; overflow: hidden; }
.p-top .wrap-group__group.--001 { width: 151.672rem; position: absolute; top: 0px; left: 27.358rem; height: 92.292rem; overflow: hidden; }
.p-top .wrap-group__group--group.--002 { width: 60.971rem; position: absolute; top: 11.328rem; left: 45.856rem; height: 15.87rem; overflow: visible; }
.p-top .wrap-text-57.--006 { width: auto; color: rgb(255, 255, 255); position: absolute; top: 3.824rem; left: 0px; height: auto; border-radius: 0.5rem; font-size: 4.304rem; line-height: 1.4; letter-spacing: 0.09em; font-family: Afacad, sans-serif; font-weight: 600; text-align: center; white-space: nowrap; }
.p-top .wrap-text-57__br.--006 { display: none; }
.p-top .wrap__investigation--client-concerns { width: 100%; position: relative; height: 232.413rem; border-top-left-radius: 8rem; border-top-right-radius: 8rem; font-weight: 800; overflow: hidden; background-color: rgb(238, 240, 243); margin: 203.754rem 0px 0px 0.034rem; }
.p-top .wrap-group.--008 { width: 69.507rem; position: absolute; top: 20.42rem; left: 12.576rem; height: 16.936rem; font-weight: 800; overflow: visible; }
.p-top .wrap-group__group.--002 { width: 61.974rem; position: absolute; top: 0px; left: 7.535rem; height: 10.074rem; overflow: visible; display: flex; align-items: flex-start; }
.p-top .wrap-group__group--text-57.--001 { width: auto; color: rgb(36, 36, 36); position: absolute; top: 1.147rem; left: 0px; height: auto; border-radius: 0.5rem; font-size: 6.377rem; line-height: 1.4; letter-spacing: 0.08em; font-family: Afacad, sans-serif; font-weight: 900; text-align: left; white-space: nowrap; }
.p-top .wrap-br.--005 { display: none; }
.p-top .wrap__investigation--post-investigation { width: 100%; position: absolute; top: 540.612rem; left: 0px; height: 624.248rem; border-top-left-radius: 8rem; border-top-right-radius: 8rem; overflow: hidden; background-color: rgb(36, 36, 36); }
.p-top .wrap-group.--033 { width: 151.798rem; position: relative; height: 54.385rem; overflow: visible; margin: 5.955rem 0px 0px 20.074rem; display: flow-root; }
.p-top .wrap-group__frame.--012 { width: 151.799rem; position: absolute; top: 6.979rem; left: 0px; height: 47.407rem; border-radius: 1rem; border: 1px solid rgb(18, 18, 18); overflow: hidden; background-color: color-mix(in srgb, rgb(0, 0, 0) 24%, transparent 76%); }
.p-top .wrap-group__frame--text-57.--004 { width: auto; color: rgb(255, 255, 255); position: absolute; top: 15.349rem; left: 42.694rem; height: auto; font-size: 1.84rem; line-height: 1.8; letter-spacing: 0.15em; font-family: Afacad, sans-serif; font-weight: 300; text-align: center; white-space: nowrap; }
.p-top .wrap-br.--013 { display: none; }
.p-top .wrap-br.--014 { display: none; }
.p-top .wrap-br.--016 { display: none; }
.p-top .wrap-group__frame--text-57.--005 { width: auto; color: rgb(255, 255, 255); position: absolute; top: 7.577rem; left: 22.552rem; height: auto; border-radius: 0.5rem; font-size: 4.373rem; line-height: 1.4; letter-spacing: 0.09em; font-family: Afacad, sans-serif; font-weight: 600; text-align: center; white-space: nowrap; }
.p-top .wrap-br.--017 { display: none; }
.p-top .wrap-group__group.--019 { width: 51.921rem; position: absolute; top: 0px; left: 49.828rem; height: 13.956rem; overflow: visible; }
.p-top .wrap-group__group--shape.--002 { width: 51.922rem; position: absolute; top: 0.057rem; left: 0px; height: 11.423rem; }
.p-top .wrap { overflow: clip; height: auto; }
.p-top .wrap__investigation { height: auto; }
.p-top .wrap__investigation--post-investigation { height: auto; overflow: clip; }
.p-top .wrap__investigation--post-investigation { padding-bottom: 16rem; }
.p-top .wrap { height: auto; }
.p-top .wrap > .wrap__investigation { position: relative; top: auto; left: auto; margin-top: -0.011rem; }
.p-top .wrap__investigation > .wrap__investigation--hero { position: relative; top: auto; left: auto; margin-top: 0px; }
.p-top .wrap__investigation > .wrap__investigation--research-overview { position: relative; top: auto; left: auto; margin-top: -12.272rem; }
.p-top .wrap__investigation > .wrap__investigation--client-concerns { position: relative; top: auto; left: auto; margin-top: -33.573rem; }
.p-top .wrap__investigation > .wrap__investigation--post-investigation { position: relative; top: auto; left: auto; margin-top: -8.995rem; }
.p-top div.main { height: auto; }
@media screen and (max-width: 767px){:root { --fz100: 1rem; --fz110: 1.3rem; --fz120: 1.5rem; --fz130: 1.5rem; --fz140: 1.5rem; --fz200: 1.5rem; --fz210: 1.9rem; --fz220: 2.3rem; --fz300: 3rem; --fz310: 3rem; --fz320: 2.3rem; --fz340: 2.3rem; --fz350: 2.8rem; --fz600: 3.5rem; --fz610: 3.8rem; --fz900: 3.8rem; --fz1000: 3.8rem; }}
@media screen and (max-width: 767px){:root { --width: 100%; }}
@media screen and (max-width: 767px){html { font-size: 2.66667vw; }}
@media screen and (max-width: 767px){div.main { width: 37.5rem; height: 1452.9rem; }}
@media screen and (max-width: 767px){.l-header { height: 6.322rem; }}
@media screen and (max-width: 767px){.l-header__logo { top: 1.298rem; left: 2.057rem; width: 17.702rem; height: 1.95rem; }}
@media screen and (max-width: 767px){.l-header__actions { display: none; }}
@media screen and (max-width: 767px){.l-header__toggle { position: absolute; top: 1.061rem; right: 1.6rem; display: grid; place-content: center; gap: 0.6rem; width: 4.2rem; height: 4.2rem; margin: 0px; padding: 0px; border: 0px; border-radius: 50%; background: none; color: var(--nav-color); cursor: pointer; }}
@media screen and (max-width: 767px){a[data-link], a.creative-service-p, a.investigation-p, a.site-maintenance-p, #l_footer a, .c-quality__sheetMore a, .c-pageHero__breadcrumb a { min-height: 2.5rem; }.l-header__logo { top: 0.973rem; display: flex; align-items: center; height: 2.6rem; }}
@media screen and (max-width: 767px){.c-pageCard:is(.p-news__card, .p-news__article) .c-newsFilter { margin-bottom: 2.4rem; }}
@media screen and (max-width: 767px){.c-pageCard:is(.p-news__card, .p-news__article) .c-newsCard__title { font-size: 1.5rem; }}
@media screen and (max-width: 767px){.c-pageCard:is(.p-news__card, .p-news__article) .c-newsCard.is-project .c-newsCard__title { font-size: 1.6rem; }}
@media screen and (max-width: 767px){.p-top .wrap { width: 37.5rem; height: 1306.28rem; margin: 0.019rem 0px 0px 0.026rem; }}
@media screen and (max-width: 767px){.p-top .wrap__investigation { width: 37.743rem; top: auto; left: auto; height: 1086.04rem; position: relative; margin: -0.006rem 0px 0px -0.152rem; display: flow-root; }}
@media screen and (max-width: 767px){.p-top .wrap__investigation--hero { width: 37.66rem; height: 80.343rem; margin: 0px 0px 0px 0.084rem; }}
@media screen and (max-width: 767px){.p-top .wrap-visual { width: 236.597rem; height: 82.602rem; margin: -2.277rem 0px 0px -3.935rem; }}
@media screen and (max-width: 767px){.p-top .wrap-visual__inner.--001 { height: 82.602rem; display: flow-root; }}
@media screen and (max-width: 767px){.p-top .wrap-visual__artwork { width: 96.368rem; top: 9.341rem; left: -5.329rem; height: 61.565rem; }}
@media screen and (max-width: 767px){.p-top .wrap-visual__artwork--shape.--001 { width: 172.207rem; opacity: 0.6; top: 19.737rem; left: -55.608rem; transform: scaleX(0.387112) scaleY(0.387112) rotate(45deg); }}
@media screen and (max-width: 767px){.p-top .wrap-visual__artwork--shape.--002 { top: 19.737rem; left: -12.867rem; transform: scaleX(0.387112) scaleY(0.387112) rotate(45deg); }}
@media screen and (max-width: 767px){.p-top .wrap-visual__artwork--shape.--003 { width: 181.389rem; top: 19.737rem; left: -22.087rem; transform: scaleX(0.387112) scaleY(0.387112) rotate(45deg); }}
@media screen and (max-width: 767px){.p-top .wrap-visual__artwork--shape.--004 { width: 203.475rem; top: 20.064rem; left: -70.955rem; transform: scaleX(0.387112) scaleY(0.387112) rotateX(180deg) rotate(45deg); }}
@media screen and (max-width: 767px){.p-top .wrap-visual__artwork--shape.--005 { top: 20.064rem; left: 6.546rem; transform: scaleX(0.387112) scaleY(0.387112) rotateX(180deg) rotate(45deg); }}
@media screen and (max-width: 767px){.p-top .wrap-visual__artwork--shape.--006 { top: 20.064rem; left: 26.752rem; transform: scaleX(0.387112) scaleY(0.387112) rotateX(180deg) rotate(45deg); }}
@media screen and (max-width: 767px){.p-top .wrap-visual__bg { width: 41.315rem; top: auto; left: auto; height: 30.849rem; position: relative; margin: 2.277rem 0px 0px 5.677rem; }}
@media screen and (max-width: 767px){.p-top .wrap-visual__inner.--002 { width: 40.847rem; top: auto; left: auto; height: 38.558rem; position: relative; margin: 12.108rem 0px 0px -1.555rem; }}
@media screen and (max-width: 767px){.p-top .wrap-visual__decoration { mask-size: 43.516rem 15.946rem; mask-position: -0.015rem -0.003rem; width: 43.5rem; top: 19.542rem; left: -0.425rem; height: 15.9rem; overflow: visible; }}
@media screen and (max-width: 767px){.p-top .wrap-visual__decoration--pattern { width: 97.523rem; position: relative; height: 30.097rem; margin: -2.218rem 0px 0px -10.658rem; }}
@media screen and (max-width: 767px){.p-top .wrap-row.--001 { width: 55.626rem; position: absolute; top: 0px; left: 0px; height: 30.098rem; }}
@media screen and (max-width: 767px){.p-top .wrap-row__shape.--001 { width: 42.203rem; top: 10.791rem; left: -7.865rem; height: 8.517rem; }}
@media screen and (max-width: 767px){.p-top .wrap-row__shape.--002 { width: 49.151rem; top: 10.791rem; left: 2.666rem; height: 8.517rem; }}
@media screen and (max-width: 767px){.p-top .wrap-row__shape.--003 { width: 46.56rem; top: 10.791rem; left: 17.973rem; height: 8.517rem; }}
@media screen and (max-width: 767px){.p-top .wrap-row__shape.--004 { width: 31.605rem; top: 11.038rem; left: -2.346rem; height: 8.517rem; }}
@media screen and (max-width: 767px){.p-top .wrap-row__shape.--005 { width: 33.96rem; top: 11.038rem; left: 10.487rem; height: 8.517rem; }}
@media screen and (max-width: 767px){.p-top .wrap-row__shape.--006 { width: 33.489rem; top: 11.038rem; left: 24.73rem; height: 8.517rem; }}
@media screen and (max-width: 767px){.p-top .wrap-row.--002 { width: 55.626rem; position: absolute; top: 0px; left: 41.898rem; height: 30.098rem; }}
@media screen and (max-width: 767px){.p-top .wrap-row__shape.--007 { width: 42.203rem; top: 10.791rem; left: -7.865rem; height: 8.517rem; }}
@media screen and (max-width: 767px){.p-top .wrap-row__shape.--008 { width: 49.151rem; top: 10.791rem; left: 2.67rem; height: 8.517rem; }}
@media screen and (max-width: 767px){.p-top .wrap-row__shape.--009 { width: 46.56rem; top: 10.791rem; left: 17.973rem; height: 8.517rem; }}
@media screen and (max-width: 767px){.p-top .wrap-row__shape.--010 { width: 31.605rem; top: 11.038rem; left: -2.346rem; height: 8.517rem; }}
@media screen and (max-width: 767px){.p-top .wrap-row__shape.--011 { width: 33.96rem; top: 11.038rem; left: 10.487rem; height: 8.517rem; }}
@media screen and (max-width: 767px){.p-top .wrap-row__shape.--012 { width: 33.489rem; top: 11.038rem; left: 24.732rem; height: 8.517rem; }}
@media screen and (max-width: 767px){.p-top .wrap-visual__content { width: 31.359rem; top: 2.538rem; left: 9.25rem; height: 26.072rem; }}
@media screen and (max-width: 767px){.p-top .wrap-visual__content--head { width: 28.141rem; position: absolute; top: 13.577rem; left: -0.001rem; height: 9.227rem; display: flow-root; }}
@media screen and (max-width: 767px){.p-top .wrap-label.--001 { width: 19.421rem; position: absolute; top: 0px; left: 3.675rem; height: 3.871rem; display: none; }}
@media screen and (max-width: 767px){.p-top .wrap-label__caption.--001 { top: 1.255rem; left: 4.692rem; font-size: 1.275rem; }}
@media screen and (max-width: 767px){.p-top .wrap-label__mark.--001 { width: 0.964rem; top: 1.319rem; left: 16.439rem; height: 1.014rem; }}
@media screen and (max-width: 767px){.p-top .wrap-label.--002 { width: 28.142rem; position: relative; top: auto; left: auto; height: 5.283rem; margin: 3.945rem 0px 0px; }}
@media screen and (max-width: 767px){.p-top .wrap-label__caption.--002 { font-size: 1.994rem; margin: 1.756rem 0px 0px 5.271rem; flex-shrink: 0; }}
@media screen and (max-width: 767px){.p-top .wrap-label__mark.--002 { width: 1.515rem; height: 1.586rem; margin: 1.775rem 0px 0px 1.737rem; flex-shrink: 0; }}
@media screen and (max-width: 767px){.p-top .wrap-visual__content--body { width: 31.092rem; position: absolute; top: 0px; left: 0.268rem; height: 15.347rem; }}
@media screen and (max-width: 767px){.p-top .wrap-title { top: 0.433rem; left: 0px; font-size: 2.234rem; }}
@media screen and (max-width: 767px){.p-top .wrap-title__br.--001 { display: none; }}
@media screen and (max-width: 767px){.p-top .wrap-title__br.--002 { display: block; }}
@media screen and (max-width: 767px){.p-top .wrap-lead { width: 31.093rem; top: 8.074rem; left: 0px; font-size: 1.252rem; white-space: normal; }}
@media screen and (max-width: 767px){.p-top .wrap-lead__br.--001 { display: block; }}
@media screen and (max-width: 767px){.p-top .wrap-lead__br.--002 { font-size: 1.276rem; }}
@media screen and (max-width: 767px){.p-top .wrap-lead__br.--003 { display: block; }}
@media screen and (max-width: 767px){.p-top .wrap-text-57.--001 { font-size: 0.784rem; margin: 0px 0px 0px 0.62rem; flex-shrink: 0; }}
@media screen and (max-width: 767px){.p-top .wrap-text-57.--002 { font-size: 0.784rem; margin: 0px 0px 0px 3.639rem; flex-shrink: 0; }}
@media screen and (max-width: 767px){.p-top .wrap-text-57.--003 { font-size: 0.784rem; margin: 0.001rem 0px 0px 8.548rem; flex-shrink: 0; }}
@media screen and (max-width: 767px){.p-top .wrap-text-57.--004 { top: 3.39rem; left: 17.339rem; font-size: 0.784rem; position: absolute; margin: 0px; }}
@media screen and (max-width: 767px){.p-top .wrap-visual__title { top: 15.096rem; left: 6.634rem; font-size: 11.346rem; line-height: 0.75; position: absolute; margin: 0px; }}
@media screen and (max-width: 767px){.p-top .wrap-visual__title--br.--001 { display: block; font-size: 11.346rem; }}
@media screen and (max-width: 767px){.p-top .wrap-visual__title--br.--002 { font-size: 11.346rem; }}
@media screen and (max-width: 767px){.p-top .wrap-visual__title--emphasis { width: 22.56rem; height: 11.012rem; display: block; padding-left: 1.085rem; margin-top: 2.355rem; font-size: 10.061rem; }}
@media screen and (max-width: 767px){.p-top .wrap-visual__logo { width: 25.928rem; top: 12.121rem; left: 26.303rem; height: 25.928rem; position: absolute; margin: 0px; }}
@media screen and (max-width: 767px){.p-top .wrap__investigation--research-overview { width: 37.737rem; top: 75.324rem; left: 0.006rem; height: 249.587rem; border-top-left-radius: 3rem; border-top-right-radius: 0px; }}
@media screen and (max-width: 767px){.p-top .wrap-bg { width: 37.857rem; top: -2.503rem; left: -0.252rem; }}
@media screen and (max-width: 767px){.p-top .wrap-content { width: 32.031rem; top: 6.645rem; left: 1.334rem; height: 67.34rem; }}
@media screen and (max-width: 767px){.p-top .wrap-content__head { width: 2.111rem; position: relative; height: 2.109rem; margin: 0.226rem 0px 0px; flex-shrink: 0; }}
@media screen and (max-width: 767px){.p-top .wrap-content__head--subtitle { position: relative; top: inherit; left: inherit; font-size: 1.6rem; white-space: nowrap; transform: rotate(90deg); }}
@media screen and (max-width: 767px){.p-top .wrap-content__body { width: 28.509rem; position: relative; height: 67.34rem; margin: 0px 0px 0px 1.412rem; flex-shrink: 0; }}
@media screen and (max-width: 767px){.p-top .wrap-content__body--group { width: 28.509rem; height: 30.623rem; margin: -0.004rem 0px 0px -0.009rem; }}
@media screen and (max-width: 767px){.p-top .wrap-group.--001 { width: 28.407rem; height: 8.689rem; margin: 0px 0px 0px 0.102rem; }}
@media screen and (max-width: 767px){.p-top .wrap-group__text-57.--001 { top: 0.1rem; left: 0px; font-size: 2.95rem; }}
@media screen and (max-width: 767px){.p-top .wrap-group__text-57--br.--001 { font-size: 2.95rem; }}
@media screen and (max-width: 767px){.p-top .wrap-group__text-57.--002 { font-size: 0.635rem; margin: 0px 0px 0px 1.175rem; }}
@media screen and (max-width: 767px){.p-top .wrap-group__text-57.--003 { font-size: 0.635rem; margin: 3.248rem 0px 0px 0.906rem; }}
.p-top .wrap-group.--002 { width: 68.21rem; position: relative; height: 4.8rem; overflow: visible; margin: 2.415rem 0px 0px; display: flex; align-items: flex-start; }
@media screen and (max-width: 767px){.p-top .wrap-group.--002 { width: 27.599rem; height: 1.968rem; margin: 1.131rem 0px 0px; }}
.p-top .wrap-group__frame.--001 { width: 15.688rem; position: relative; height: 4.784rem; border-radius: 50rem; border: 1px solid rgb(186, 186, 186); overflow: hidden; margin: 0px 0px 0px 25.439rem; flex-shrink: 0; }
@media screen and (max-width: 767px){.p-top .wrap-group__frame.--001 { width: 5.605rem; height: 1.969rem; margin: 0px 0px 0px 10.465rem; flex-shrink: 0; }}
.p-top .wrap-group__frame--text-57.--001 { width: auto; color: rgb(186, 186, 186); position: absolute; top: 0.883rem; left: 3.952rem; height: auto; border-radius: 0.5rem; font-size: 1.711rem; line-height: 1.6; letter-spacing: 0.12em; font-family: Afacad, sans-serif; font-weight: 400; }
@media screen and (max-width: 767px){.p-top .wrap-group__frame--text-57.--001 { top: 0.192rem; left: 0.636rem; font-size: 0.949rem; }}
.p-top .wrap-group__frame.--002 { width: 23.679rem; position: absolute; top: 0px; left: 0px; height: 4.784rem; border-radius: 50rem; border: 1px solid rgb(186, 186, 186); overflow: hidden; }
@media screen and (max-width: 767px){.p-top .wrap-group__frame.--002 { width: 9.745rem; top: 0px; left: 0px; height: 1.969rem; }}
.p-top .wrap-group__frame--text-57.--002 { width: auto; color: rgb(186, 186, 186); position: absolute; top: 0.883rem; left: 3.952rem; height: auto; border-radius: 0.5rem; font-size: 1.711rem; line-height: 1.6; letter-spacing: 0.12em; font-family: Afacad, sans-serif; font-weight: 400; }
@media screen and (max-width: 767px){.p-top .wrap-group__frame--text-57.--002 { top: 0.192rem; left: 0.636rem; font-size: 0.949rem; }}
.p-top .wrap-group__frame.--003 { width: 25.205rem; position: relative; height: 4.784rem; border-radius: 50rem; border: 1px solid rgb(186, 186, 186); overflow: hidden; margin: 0px 0px 0px 1.856rem; flex-shrink: 0; }
@media screen and (max-width: 767px){.p-top .wrap-group__frame.--003 { width: 10.811rem; height: 1.969rem; margin: 0px 0px 0px 0.72rem; flex-shrink: 0; }}
.p-top .wrap-group__frame--text-57.--003 { width: auto; color: rgb(186, 186, 186); position: absolute; top: 0.883rem; left: 3.952rem; height: auto; border-radius: 0.5rem; font-size: 1.711rem; line-height: 1.6; letter-spacing: 0.12em; font-family: Afacad, sans-serif; font-weight: 400; }
@media screen and (max-width: 767px){.p-top .wrap-group__frame--text-57.--003 { top: 0.192rem; left: 0.636rem; font-size: 0.949rem; }}
.p-top .wrap-text-57.--005 { width: fit-content; color: rgb(255, 255, 255); position: relative; height: auto; font-size: 1.811rem; line-height: 1.8; letter-spacing: 0.15em; font-family: Afacad, sans-serif; font-weight: 300; white-space: nowrap; margin: 2.737rem 0px 0px 0.466rem; display: flow-root; }
@media screen and (max-width: 767px){.p-top .wrap-text-57.--005 { width: 27.793rem; font-size: 1.4rem; white-space: normal; margin: 1.216rem 0px 0px 0.155rem; }}
.p-top .wrap-text-57__br.--001 { display: block; }
.p-top .wrap-text-57__br.--002 { display: block; }
@media screen and (max-width: 767px){.p-top .wrap-text-57__br.--002 { display: none; }}
.p-top .wrap-text-57__br.--003 { display: block; }
@media screen and (max-width: 767px){.p-top .wrap-text-57__br.--003 { display: none; }}
.p-top .wrap-content__body--text-57 { width: fit-content; color: rgb(255, 255, 255); position: relative; height: auto; font-size: 1.811rem; line-height: 1.8; letter-spacing: 0.15em; font-family: Afacad, sans-serif; font-weight: 300; white-space: nowrap; margin: 5.178rem 0px 0px 0.51rem; display: flow-root; }
@media screen and (max-width: 767px){.p-top .wrap-content__body--text-57 { width: 27.422rem; font-size: 1.4rem; white-space: normal; margin: 24.135rem 0px 0px 0.181rem; }}
.p-top .wrap-br.--001 { display: block; }
@media screen and (max-width: 767px){.p-top .wrap-br.--001 { display: none; }}
.p-top .wrap-br.--002 { display: block; }
@media screen and (max-width: 767px){.p-top .wrap-br.--002 { display: none; }}
.p-top .wrap-br.--003 { display: block; }
@media screen and (max-width: 767px){.p-top .wrap-br.--003 { display: none; }}
@media screen and (max-width: 767px){.p-top .wrap__investigation--post-investigation { width: 100%; top: 579.912rem; left: 0px; height: 506.126rem; border-top-left-radius: 3rem; border-top-right-radius: 3rem; }}
@media screen and (max-width: 767px){.p-top .wrap-group.--033 { width: 33.889rem; height: 62.276rem; margin: 10.976rem 0px 0px 1.946rem; }}
@media screen and (max-width: 767px){.p-top .wrap-group__frame.--012 { width: 33.889rem; top: 3.74rem; left: 0px; height: 58.538rem; }}
@media screen and (max-width: 767px){.p-top .wrap-group__frame--text-57.--005 { top: 4.474rem; left: 3.178rem; font-size: 2.322rem; }}
.p-top .wrap-span.--002 { width: auto; height: auto; white-space: nowrap; }
@media screen and (max-width: 767px){.p-top .wrap-span.--002 { display: none; font-size: 2.322rem; }}
@media screen and (max-width: 767px){.p-top .wrap-group__group.--019 { width: 27.833rem; top: 0px; left: 2.977rem; height: 7.481rem; }}
@media screen and (max-width: 767px){.p-top .wrap-group__group--shape.--002 { width: 27.833rem; top: 0.03rem; left: 0px; height: 6.123rem; }}
@media screen and (max-width: 767px){.p-top .wrap__investigation--post-investigation { padding-bottom: 8rem; }}
.c-works { --works-width: 148.4rem; position: relative; z-index: 1; margin-top: -12rem; color: rgb(255, 255, 255); }
@media screen and (max-width: 767px){.c-works { --works-width: 33.6rem; margin-top: -18rem; }}
.c-works__head, .c-works__cat { transition: opacity 0.7s; }
.c-works__head { display: grid; gap: 2.4rem; width: var(--works-width); margin: 0px auto 16rem; padding-left: 7rem; }
@media screen and (max-width: 767px){.c-works__head { margin-bottom: 8rem; padding-left: 3rem; }}
.c-works__lead { margin: 0px; font-size: 1.81rem; font-weight: 300; line-height: 1.8; letter-spacing: 0.15em; }
@media screen and (max-width: 767px){.c-works__lead { font-size: 1.3rem; }.c-works__lead br { display: none; }}
.c-works__cat { width: var(--works-width); margin: 0px auto 16rem; }
@media screen and (max-width: 767px){.c-works__cat { margin-bottom: 10rem; }}
.c-works__intro { text-align: center; }
.c-works__intro.is-center { margin-bottom: 4.8rem; }
@media screen and (max-width: 767px){.c-works__intro { margin-bottom: 3.2rem; }}
.c-works__text { margin: 1.6rem 0px 0px; font-size: 1.81rem; font-weight: 300; line-height: 1.8; letter-spacing: 0.15em; }
@media screen and (max-width: 767px){.c-works__text { font-size: 1.3rem; text-align: left; }.c-works__text br { display: none; }}
.c-works__logo { display: grid; grid-template-columns: 87.8rem 1fr; column-gap: 9.9rem; }
@media screen and (max-width: 767px){.c-works__logo { --works-sp-top: 6.3rem; grid-template-columns: 1fr; }.c-works__logo .c-works__sticky { position: sticky; top: var(--works-sp-top); z-index: 1; order: -1; align-self: start; padding-top: 1.1rem; background-color: rgb(36, 36, 36); }.c-works__logo .c-works__sticky::before { content: ""; position: absolute; right: 0px; bottom: 100%; left: 0px; height: var(--works-sp-top); background-color: inherit; }}
.c-works__webViewport { min-width: 0px; }
@media screen and (max-width: 767px){.c-works__webViewport { margin-inline: calc((100vw - var(--works-width)) / -2); padding-inline: calc((100vw - var(--works-width)) / 2); overflow-x: auto; scrollbar-width: none; }.c-works__webViewport::-webkit-scrollbar { display: none; }}
.c-works__webTrack { display: flex; gap: 1.7rem; margin: 0px; padding: 0px; list-style: none; transform: translateX(var(--scrub-x, 0px)); will-change: transform; }
@media screen and (max-width: 767px){.c-works__webTrack { gap: 1.6rem; transform: none; }}
.c-works__webItem { flex: 0 0 27.5rem; opacity: var(--web-opacity, 1); aspect-ratio: 27.5 / 49; overflow: hidden; border-radius: 0.6rem; }
@media screen and (max-width: 767px){.c-works__webItem { flex-basis: 21.9rem; }.c-works__webItem.is-clone { display: none; }}
.c-works__webItem img { width: 100%; height: 100%; object-fit: cover; }
.c-works__webLink { display: block; height: 100%; }
.c-works__webProgress { display: flex; width: 85.9rem; margin-top: 4rem; }
@media screen and (max-width: 767px){.c-works__webProgress { display: none; }}
.c-works__webBar { flex: 1 1 0%; height: 0.2rem; background-color: rgba(255, 255, 255, 0.25); }
.c-works__webBar > span { display: block; height: 100%; background-color: rgb(255, 255, 255); transform: scaleX(0); transform-origin: left center; }
.c-works__paper { width: auto; }
.c-works__paper .c-works__intro { width: var(--works-width); margin-inline: auto; }
.c-works__package { display: grid; grid-template-columns: 1fr 76rem; column-gap: 6rem; }
@media screen and (max-width: 767px){.c-works__package { grid-template-columns: 1fr; }}
@media screen and (max-width: 767px){.p-top .wrap > .wrap__investigation { margin-top: -0.005rem; }}
@media screen and (max-width: 767px){.p-top .wrap__investigation > .wrap__investigation--research-overview { margin-top: -5.019rem; }}
@media screen and (max-width: 767px){.p-top .wrap__investigation > .wrap__investigation--post-investigation { margin-top: -10.23rem; }}
@keyframes rv-up { 
  0% { opacity: 0.01; translate: 0px 2.4rem; }
  100% { opacity: 1; translate: none; }
}
@keyframes rv-char { 
  0% { opacity: 0; translate: 0px 0.5em; }
  100% { opacity: 1; translate: none; }
}
@keyframes rv-part { 
  0% { opacity: 0; scale: 0.92; }
  100% { opacity: 1; scale: none; }
}
@keyframes rv-fv-char { 
  0% { opacity: 0.01; translate: 0px 0.6em; filter: blur(0.12em); }
  100% { opacity: 1; translate: none; filter: none; }
}
@keyframes rv-fv-part { 
  0% { opacity: 0.01; }
  100% { opacity: 1; }
}
@keyframes rv-fv-bg { 
  0% { height: 46.415rem; border-radius: 0px; }
}
@keyframes rv-fv-panel { 
  0% { translate: 0px -10.8rem; border-radius: 0px; }
}
@keyframes rv-fv-fade-out { 
  0% { opacity: 1; }
  100% { opacity: 0; }
}
@keyframes rv-fv-fade-in { 
  0% { opacity: 0; }
}