@charset "UTF-8";
:root{--paper:#f8f3eb;--ink:#292537;--muted:#77707f;--peach:#e8867e;--teal:#64bdb4;--gold:#efbd68;--violet:#7667ab;--ease:cubic-bezier(.22,1,.36,1)}
*{box-sizing:border-box}html,body{margin:0;min-height:100%}body{background:var(--paper);color:var(--ink);font-family:Arial,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;-webkit-font-smoothing:antialiased}button,input{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,a:focus-visible{outline:3px solid #483e8c;outline-offset:4px}.atlas{height:100svh;min-height:690px;position:relative;overflow:hidden;isolation:isolate;background:radial-gradient(circle at 58% 49%,#fffdf5 0,#f9f1e7 49%,transparent 75%),radial-gradient(circle at 7% 82%,rgba(246,208,191,.38),transparent 30%),var(--paper)}.atlas:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.3;background-image:radial-gradient(#a69ba8 .55px,transparent .65px);background-size:13px 13px;mask-image:linear-gradient(90deg,black,transparent 70%)}.atlas:after{content:"";position:absolute;right:-12%;top:-21%;width:56%;aspect-ratio:1;border:1px solid rgba(145,130,160,.13);border-radius:50%;pointer-events:none}
.topbar{height:76px;position:relative;z-index:10;padding:0 4.5vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(76,60,83,.14)}.brand{color:inherit;text-decoration:none;font-size:17px;font-weight:800;letter-spacing:.18em;display:flex;align-items:center;gap:13px;white-space:nowrap}.brand small{font-size:10px;font-weight:500;letter-spacing:.07em;margin-left:8px}.brand-mark{width:29px;height:29px;position:relative;display:block;transform:rotate(-14deg)}.brand-mark i{position:absolute;left:2px;width:25px;height:8px;border-radius:8px;background:#ec897e;transform:skewY(-12deg)}.brand-mark i:nth-child(1){top:3px}.brand-mark i:nth-child(2){top:11px;background:#e9bb6d}.brand-mark i:nth-child(3){top:19px;background:#69bdb2}.topbar-center,.topbar-right{font-size:9px;font-weight:800;letter-spacing:.18em}.topbar-center b{font-weight:400;color:#c4a3ae;margin:0 12px}.topbar-right{display:flex;align-items:center;gap:11px}.topbar-right i{width:7px;height:7px;background:#79c9b2;border-radius:50%;box-shadow:0 0 0 4px #d2eadc}
.layout{height:calc(100% - 132px);position:relative;display:grid;grid-template-columns:27% 51% 22%;align-items:center}.intro{position:relative;z-index:3;padding:0 0 20px 4.5vw;align-self:center}.eyebrow{font-size:9px;letter-spacing:.22em;font-weight:800;display:flex;align-items:center;gap:12px;white-space:nowrap;margin:0 0 28px}.eyebrow-line{width:30px;height:1px;background:#bd9ea8}.intro h1{font-family:"Yu Mincho","Hiragino Mincho ProN",Georgia,serif;font-size:clamp(53px,5.2vw,96px);font-weight:400;letter-spacing:-.065em;line-height:1.17;margin:0;white-space:nowrap}.intro h1 em{font-weight:400;font-style:normal;color:#d66d79}.intro-en{font-family:Georgia,serif;font-size:clamp(20px,1.8vw,30px);font-style:italic;line-height:1.23;margin:21px 0 30px;color:#574867}.intro-description{font-size:12px;letter-spacing:.06em;line-height:2.06;margin:0;color:#68606c}.intro-instruction{display:flex;align-items:center;gap:10px;margin-top:35px;font-size:10px;letter-spacing:.08em;font-weight:700;color:#7c7181}.instruction-icon{width:34px;height:34px;border:1px solid #afa4ae;border-radius:50%;display:grid;place-items:center;font-size:15px;color:#a56977}
.terrain-section{height:100%;position:relative;z-index:2;display:flex;flex-direction:column;justify-content:center;align-items:center;margin-left:-8%;margin-right:-6%}.terrain-wrap{--tilt-x:0deg;--tilt-y:0deg;width:100%;aspect-ratio:1000/650;position:relative;transform:perspective(1300px) rotateX(var(--tilt-x)) rotateY(var(--tilt-y));transition:transform .25s ease-out;touch-action:pan-y;user-select:none}.terrain-aura{position:absolute;left:5%;right:2%;top:19%;bottom:4%;border-radius:50%;filter:blur(42px);background:radial-gradient(ellipse,rgba(243,164,142,.32) 0,rgba(114,191,196,.19) 45%,transparent 70%)}.terrain-svg{position:relative;z-index:1;width:100%;height:100%;display:block;overflow:visible}.stratum{stroke:rgba(255,255,255,.36);stroke-width:2;transition:transform .6s var(--ease),filter .6s,opacity .6s;transform-box:fill-box;transform-origin:center}.stratum.layer{filter:brightness(.88)}.stratum.layer.is-active{transform:translateY(-9px);filter:brightness(1.12) drop-shadow(0 8px 9px rgba(79,40,77,.22))}.stratum.layer.is-dim{opacity:.82}.contour{fill:none;stroke:#fff;stroke-opacity:.38;stroke-width:2}.top-lines{fill:none;stroke:#b7aaa1;stroke-opacity:.68;stroke-width:2}.top-edge{fill:none;stroke:#fffdf3;stroke-width:5;stroke-linecap:round;filter:drop-shadow(0 1px 1px rgba(69,53,80,.18))}.mineral-flecks{fill:#fff8e0;opacity:.55}.site-marker{position:absolute;z-index:4;width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.95);background:#fffaf0;color:#4c354b;font-family:Georgia,serif;font-size:15px;display:grid;place-items:center;box-shadow:0 10px 22px rgba(70,38,65,.18),0 0 0 8px rgba(255,255,255,.18);transform:translate(-50%,-50%);transition:background .3s,color .3s,scale .3s,box-shadow .3s}.site-marker:hover{scale:1.13}.site-marker[aria-pressed="true"]{background:#332c47;color:#fff;box-shadow:0 10px 22px rgba(70,38,65,.2),0 0 0 11px rgba(255,255,255,.25)}.marker-ring{position:absolute;inset:-16px;border:1px solid rgba(255,255,255,.75);border-radius:50%;animation:marker-pulse 2.7s ease-out infinite}.site-marker[aria-pressed="true"] .marker-ring{border-color:#fff;animation-duration:2s}.marker-0{left:26%;top:47%}.marker-1{left:55%;top:57%}.marker-2{left:78%;top:71%}.specimen-caption{position:absolute;z-index:2;font-size:8px;letter-spacing:.2em;font-weight:800;color:#9f8c9e}.caption-top{left:9%;top:8%}.caption-top b{font-size:16px;color:#cc8a83;margin-left:10px}.caption-bottom{right:4%;bottom:4%;color:#aa9eae}.depth-control{width:86%;margin-top:-15px;display:flex;align-items:center;gap:18px;position:relative;z-index:5}.depth-control label{font-size:9px;letter-spacing:.16em;font-weight:800;white-space:nowrap}.depth-control label span{display:block;font-size:10px;letter-spacing:.06em;color:#9c879a;font-weight:500;margin-top:6px}.range-wrap{flex:1;position:relative;display:flex;align-items:center}.range-wrap input{width:100%;appearance:none;background:transparent;height:30px;margin:0;cursor:pointer;position:relative;z-index:2}.range-wrap input::-webkit-slider-runnable-track{height:2px;background:linear-gradient(90deg,#e68f83,#e7bd76,#6ac4b6)}.range-wrap input::-moz-range-track{height:2px;background:linear-gradient(90deg,#e68f83,#e7bd76,#6ac4b6)}.range-wrap input::-webkit-slider-thumb{appearance:none;width:18px;height:18px;margin-top:-8px;border-radius:50%;background:#30283d;border:4px solid #fff;box-shadow:0 3px 10px rgba(37,23,50,.25)}.range-wrap input::-moz-range-thumb{width:11px;height:11px;border-radius:50%;background:#30283d;border:4px solid #fff;box-shadow:0 3px 10px rgba(37,23,50,.25)}.range-ticks{position:absolute;left:0;right:0;top:22px;display:flex;justify-content:space-between;pointer-events:none}.range-ticks i{width:1px;height:5px;background:#9c8c97}.depth-value{font-family:Georgia,serif;font-size:15px;white-space:nowrap;color:#4c4253}
.discovery-card{position:relative;z-index:6;width:min(20.5vw,355px);min-width:265px;max-height:calc(100% - 65px);margin:auto 4.2vw auto -1.5vw;padding:20px;border-radius:10px;background:rgba(255,253,249,.91);border:1px solid rgba(150,124,147,.18);box-shadow:0 26px 65px rgba(77,52,86,.15);backdrop-filter:blur(14px);overflow:hidden;transition:transform .6s var(--ease),opacity .4s}.discovery-card:before{content:"";position:absolute;left:0;top:0;right:0;height:4px;background:linear-gradient(90deg,#eb917e,#e8bf72,#69c6b4,#8276bc)}.discovery-card.is-switching{transform:translateY(9px);opacity:.57}.card-topline{display:flex;align-items:center;justify-content:space-between;font-size:9px;font-weight:800;letter-spacing:.2em;margin-bottom:15px}.card-topline span:first-child{display:flex;align-items:center;gap:8px}.card-topline i{width:6px;height:6px;border-radius:50%;background:#ed9b87}.card-topline b{font-family:Georgia,serif;font-size:15px;letter-spacing:0;margin-left:5px}.sparkle{font-size:26px;line-height:.7;font-weight:400;color:#d88891}.specimen-frame{height:min(26vh,225px);position:relative;overflow:hidden;border-radius:5px;background:#eee7df}.specimen-frame img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s var(--ease)}.discovery-card:hover .specimen-frame img{transform:scale(1.045)}.specimen-id{position:absolute;bottom:9px;left:10px;background:rgba(255,253,249,.9);padding:5px 7px;font-size:8px;font-weight:800;letter-spacing:.11em}.card-eyebrow{font-size:9px;letter-spacing:.16em;font-weight:800;color:#cb7d7c;margin:19px 0 9px}.discovery-card h2{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-weight:400;font-size:clamp(24px,2.2vw,36px);letter-spacing:.06em;line-height:1.3;margin:0}.card-text{font-size:11px;line-height:1.9;letter-spacing:.04em;color:#736977;margin:11px 0 19px;min-height:43px}.card-bottom{border-top:1px solid #dcd4d7;padding-top:12px;display:flex;align-items:baseline;justify-content:space-between;font-size:10px;font-weight:700}.card-bottom strong{font-family:Georgia,serif;font-size:20px;color:#c37e83}.card-bottom small{font-size:12px;color:#817784;font-weight:400}
.footer{height:56px;position:relative;z-index:8;border-top:1px solid rgba(89,68,93,.16);padding:0 4.5vw;display:flex;align-items:center;justify-content:space-between;font-size:9px;font-weight:800;letter-spacing:.16em;color:#857585}.footer-star{font-size:20px;vertical-align:middle;margin-right:8px;color:#df8a83;font-style:normal;font-weight:400}.footer b{font-weight:400;color:#c3a1a8;margin:0 5px}.atlas.is-complete .footer-star{color:#5daea9;animation:complete-glow 1.4s ease-in-out infinite alternate}
@keyframes marker-pulse{0%{transform:scale(.72);opacity:.8}70%,100%{transform:scale(1.2);opacity:0}}@keyframes complete-glow{from{transform:rotate(0) scale(1)}to{transform:rotate(30deg) scale(1.25)}}
@media(max-width:1250px){.layout{grid-template-columns:28% 48% 24%}.intro{padding-left:3vw}.intro h1{font-size:clamp(49px,5vw,75px)}.terrain-section{margin-left:-10%;margin-right:-10%}.discovery-card{min-width:235px;margin-right:2vw;padding:16px}.specimen-frame{height:21vh}.card-eyebrow{margin-top:13px}.card-text{margin-bottom:12px}}
@media(max-width:950px){.atlas{min-height:760px}.topbar{height:66px;padding:0 24px}.topbar-center{display:none}.layout{height:calc(100% - 112px);display:block}.intro{position:absolute;left:24px;top:32px;padding:0;width:45%;}.intro h1{font-size:55px}.intro-en{font-size:18px;margin:10px 0 14px}.intro-description{font-size:10px}.intro-instruction{margin-top:17px}.terrain-section{position:absolute;left:21%;right:-8%;top:50px;width:auto;height:520px;margin:0}.terrain-wrap{width:100%}.depth-control{width:77%;margin-top:-36px;margin-left:30px}.discovery-card{position:absolute;bottom:15px;right:24px;width:325px;margin:0;max-height:none}.specimen-frame{height:145px}.footer{height:46px;padding:0 24px}.footer span:nth-child(2){display:none}}
@media(max-width:600px){.atlas{height:100svh;min-height:640px}.topbar{height:59px;padding:0 17px}.brand{font-size:14px;gap:8px}.brand small{font-size:9px}.brand-mark{transform:scale(.8) rotate(-14deg)}.topbar-right{font-size:7px;gap:7px}.topbar-right i{width:5px;height:5px;box-shadow:0 0 0 3px #d2eadc}.layout{height:calc(100% - 97px)}.intro{top:17px;left:21px;width:calc(100% - 42px)}.eyebrow{font-size:8px;margin-bottom:8px}.eyebrow-line{width:21px}.intro h1{font-size:44px;line-height:1.04}.intro-en{display:none}.intro-description{font-size:9px;line-height:1.65;margin-top:9px}.intro-description br:first-child{display:none}.intro-instruction{display:none}.terrain-section{top:160px;left:-28px;right:-28px;width:auto;height:300px;display:block}.terrain-wrap{width:100%}.site-marker{width:29px;height:29px;font-size:11px;box-shadow:0 5px 12px rgba(70,38,65,.19),0 0 0 5px rgba(255,255,255,.18)}.marker-ring{inset:-10px}.site-marker[aria-pressed="true"]{box-shadow:0 5px 12px rgba(70,38,65,.19),0 0 0 6px rgba(255,255,255,.25)}.specimen-caption{font-size:6px}.caption-top{top:5%;left:10%}.caption-bottom{display:none}.depth-control{position:absolute;left:39px;right:39px;bottom:0;width:auto;margin:0;gap:10px}.depth-control label{font-size:7px;letter-spacing:.11em}.depth-control label span{font-size:8px;margin-top:3px}.depth-value{font-size:12px}.range-wrap input{height:24px}.range-ticks{top:18px}.discovery-card{left:15px;right:15px;bottom:7px;width:auto;min-width:0;height:246px;padding:12px 13px;display:grid;grid-template-columns:111px 1fr;grid-template-rows:23px 24px 43px 79px 43px;column-gap:13px;align-items:start}.card-topline{grid-column:1/3;grid-row:1;margin:0;font-size:8px}.sparkle{font-size:20px}.specimen-frame{grid-column:1;grid-row:2/5;width:111px;height:146px}.specimen-id{font-size:6px;bottom:5px;left:5px;padding:4px}.card-eyebrow{grid-column:2;grid-row:2;font-size:7px;letter-spacing:.08em;margin:3px 0 0}.discovery-card h2{grid-column:2;grid-row:3;font-size:24px;line-height:1.24;margin:0}.card-text{grid-column:2;grid-row:4;font-size:9px;line-height:1.65;margin:3px 0 0;min-height:0}.card-text br{display:none}.card-bottom{grid-column:1/3;grid-row:5;margin-top:6px;padding-top:8px;font-size:9px}.card-bottom strong{font-size:17px}.footer{height:38px;padding:0 17px;font-size:7px}.footer span:first-child{display:none}.footer span:nth-child(2){display:block}.footer-star{display:none}}
@media(max-width:390px) and (max-height:740px){.intro h1{font-size:39px}.terrain-section{top:142px}.discovery-card{height:224px;grid-template-rows:20px 21px 36px 71px 36px}.specimen-frame{height:130px}.card-text{font-size:8px}.discovery-card h2{font-size:21px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
.terrain-wrap:after{content:"";position:absolute;z-index:3;inset:10% 4%;pointer-events:none;background:radial-gradient(circle 95px at var(--pointer-x,50%) var(--pointer-y,50%),rgba(255,255,255,.26),transparent 74%);mix-blend-mode:screen;opacity:0;transition:opacity .25s}
.terrain-wrap:hover:after{opacity:1}
.stratum.layer{cursor:crosshair}
.stratum.layer.is-active{transform:translateY(-14px) scale(1.012)}
.terrain-svg rect,.terrain-svg .contour,.terrain-svg .mineral-flecks,.terrain-svg .top-lines,.terrain-svg .top-edge{pointer-events:none}
.slab-side{fill:#67518f;stroke:#a48ac1;stroke-width:2;filter:drop-shadow(0 17px 14px rgba(58,45,85,.2))}
@media(max-width:950px){.terrain-wrap:after{display:none}}
