@charset "UTF-8";
:root{--navy:#183247;--navy-2:#203e52;--deep:#112c3f;--ink:#263b47;--muted:#657680;--light:#f8f7f4;--cream:#f1eee7;--line:#dddeda;--orange:#a95a3b;--orange-dark:#8e472b;--leaf:#829c8a;--white:#fff;--shadow:0 19px 48px rgba(27,48,58,.13);--sans:"Noto Sans JP","Noto Sans CJK JP",-apple-system,BlinkMacSystemFont,"Yu Gothic",sans-serif;--serif:"Noto Serif JP","Noto Serif CJK JP","Yu Mincho",serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:88px}
body{margin:0;background:var(--light);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.86;-webkit-font-smoothing:antialiased}
button,input{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible{outline:3px solid #f0b27c;outline-offset:3px}
a{color:inherit}a:hover{opacity:.75}.shell{width:min(1160px,calc(100% - 80px));margin-inline:auto}
.skip-link{position:absolute;left:10px;top:-80px;z-index:999;background:#fff;padding:10px}.skip-link:focus{top:10px}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.only-mobile{display:none}
.site-header{position:relative;z-index:5;background:rgba(252,251,248,.98);border-bottom:1px solid #e7e5df}.header-inner{height:92px;display:flex;align-items:center;gap:30px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;min-width:0;color:var(--navy)}.brand-mark{width:43px;height:43px;display:grid;place-items:center;border:1.5px solid var(--navy);border-radius:3px;flex-shrink:0}.brand strong{display:block;font-size:13px;letter-spacing:.015em;font-weight:800;line-height:1.3}.brand small{display:block;font-size:10px;letter-spacing:.035em;color:var(--muted);margin-top:4px}.desktop-nav{display:flex;gap:29px;margin-left:auto;white-space:nowrap}.desktop-nav a{color:#566a75;font-size:12px;font-weight:700;text-decoration:none}.nav-cta{margin-left:6px;border:1px solid var(--navy);background:transparent;color:var(--navy);font-size:12px;font-weight:800;white-space:nowrap;padding:10px 16px;transition:.2s}.nav-cta span{margin-left:10px}.nav-cta:hover{background:var(--navy);color:#fff}
.hero{position:relative;overflow:hidden;background:#faf9f5}.hero::before{content:"";position:absolute;top:-150px;left:-140px;width:450px;height:450px;border:1px solid rgba(61,87,86,.08);border-radius:50%;pointer-events:none}.hero-grid{display:grid;grid-template-columns:1.03fr .97fr;gap:25px;align-items:center;min-height:670px;padding:77px 0 82px}.hero-copy{position:relative;z-index:2;padding:10px 0 18px}.eyebrow{margin:0 0 31px;display:flex;align-items:center;gap:11px;color:#6b655d;font-weight:800;font-size:12px;letter-spacing:.04em}.eyebrow-dash{width:25px;height:1px;background:var(--orange);flex:0 0 25px}.hero-pretitle{margin:0 0 13px;font-size:22px;letter-spacing:.02em;font-weight:700;color:var(--navy)}.hero-pretitle em{font-style:normal;color:var(--orange);font-weight:900}.hero h1{font-size:clamp(36px,3.3vw,49px);line-height:1.43;letter-spacing:-.055em;font-weight:900;color:var(--navy);margin:0}.hero-highlight{position:relative;white-space:nowrap}.hero-highlight::after{position:absolute;content:"";width:100%;height:7px;bottom:0;left:0;background:rgba(207,152,104,.29);transform:rotate(-2deg);z-index:-1}.hero-lead{font-size:15px;line-height:2.05;letter-spacing:.015em;color:#51636f;margin:24px 0 29px;max-width:530px}.hero-cta{max-width:370px}.button{border:0;display:flex;justify-content:space-between;align-items:center;text-align:left;gap:24px;text-decoration:none;font-size:16px;line-height:1.4;letter-spacing:.03em;font-weight:900;padding:19px 20px 19px 25px;min-height:68px;transition:background .2s,transform .2s,box-shadow .2s;white-space:nowrap}.button:hover{transform:translateY(-2px);box-shadow:0 12px 20px rgba(95,51,23,.16)}.button--primary{background:var(--orange);color:#fff;width:100%;border-radius:3px;box-shadow:0 6px 0 #e7d5c8}.button--primary:hover{background:var(--orange-dark)}.button-arrow{background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.5);width:30px;height:30px;display:grid;place-items:center;font-size:19px;font-weight:400;flex:0 0 auto}.cta-notes{display:flex;align-items:center;justify-content:space-between;color:#5c6a6e;font-weight:800;font-size:11px;letter-spacing:.04em;padding:16px 4px 0}.note-pill{display:inline-flex;gap:5px;align-items:center}.note-pill svg{color:#648d79}.fineprint{font-size:11px;line-height:1.9;color:#69777b;margin:24px 0 0;max-width:430px}
.hero-visual{height:577px;position:relative;min-width:0;display:grid;place-items:center;isolation:isolate}.hero-visual::before{position:absolute;content:"";width:468px;height:468px;border:1px solid #c7c9be;border-radius:50%;left:53px;top:26px;z-index:-2}.hero-visual::after{content:"";position:absolute;right:-15%;top:7%;width:55%;height:80%;background:#e7ece7;border-radius:50%;filter:blur(65px);z-index:-3}.visual-scene{position:absolute;inset:10% -14% 0 -8%;background-image:url('town-scene.webp');background-size:cover;background-position:69% center;opacity:.9;z-index:-1;mask-image:linear-gradient(90deg,transparent 0%,#000 23%,#000 94%,transparent 100%);-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 23%,#000 94%,transparent 100%)}.publication-wrap{position:absolute;left:20%;top:7%;width:300px;height:436px;filter:drop-shadow(25px 35px 25px rgba(17,49,64,.15));transform:rotate(-5deg);transition:transform .4s}.hero-visual:hover .publication-wrap{transform:rotate(-2deg) translateY(-5px)}.book-pages{position:absolute;inset:5px -9px -6px 8px;background:repeating-linear-gradient(90deg,#fff 0 2px,#dedfd9 3px 4px);border:1px solid #cfd3cf;box-shadow:7px 3px 1px #e9e8e0}.book-cover{position:relative;overflow:hidden;isolation:isolate;width:300px;height:420px;background:#fbf9f3;border:1px solid #d8d9d2;box-shadow:0 5px 12px rgba(9,30,49,.12);font-family:var(--sans);color:var(--navy)}.cover-upper{height:76px;background:var(--navy);color:#fff;padding:16px 21px 10px;position:relative}.cover-serial{font-family:Georgia,serif;font-size:11px;letter-spacing:.16em;opacity:.83}.cover-serial span{float:right;color:#e7b18f}.cover-target{margin:9px 0 0;font-size:9px;letter-spacing:.06em}.cover-rule{position:absolute;bottom:0;left:21px;width:38px;height:3px;background:var(--orange)}.cover-main{padding:26px 22px 0;position:relative;z-index:2}.cover-small{font-size:17px;font-weight:800;line-height:1.65;margin:0 0 13px}.cover-small strong{font-weight:900;color:var(--orange);font-size:23px}.cover-title{font-size:25px;line-height:1.45;font-weight:900;letter-spacing:-.05em;white-space:nowrap}.cover-title span{display:inline-block;background:var(--navy);color:#fff;font-size:18px;letter-spacing:.04em;padding:3px 8px;margin-left:7px;vertical-align:3px}.cover-desc{font-size:9px;line-height:1.85;color:#536777;margin:11px 0 0;font-weight:700}.cover-map{position:absolute;left:0;bottom:33px;width:100%;height:129px;opacity:.9;z-index:1}.cover-bottom{position:absolute;bottom:0;left:0;right:0;height:36px;background:#e9ede8;border-top:1px solid #d2dcd2;padding:10px 21px;display:flex;justify-content:space-between;font-size:10px;letter-spacing:.09em;font-weight:800;z-index:2}.floating-meta{position:absolute;bottom:42px;right:-22px;display:flex;align-items:center;gap:10px;padding:12px 15px;background:#fff;box-shadow:0 8px 20px rgba(22,48,62,.1);font-size:11px;color:var(--navy);font-weight:800;letter-spacing:.04em;transform:rotate(2deg)}.floating-meta b{font-family:Georgia,serif;font-size:15px}.floating-meta-dot{width:8px;height:8px;background:var(--orange);border-radius:50%}.hero-visual-caption{position:absolute;right:-30px;bottom:8px;transform:rotate(-90deg);transform-origin:right center;display:flex;align-items:center;gap:12px;color:#57736f;font-size:11px;letter-spacing:.08em}.caption-line{width:40px;height:1px;background:#7e9a90}
.section{padding:123px 0}.section-label{display:flex;align-items:center;gap:15px;color:#938d82;font-family:Georgia,serif;letter-spacing:.14em;font-size:11px;font-weight:700;margin:0 0 26px}.section-index{color:var(--orange);font-size:13px;letter-spacing:0}.section-label::after{content:"";height:1px;width:52px;background:#d3d2cb}.section-kicker{font-size:13px;font-weight:800;letter-spacing:.07em;color:#bd825a;margin:0 0 9px}.section h2,.closing h2{font-family:var(--serif);font-weight:700;color:var(--navy);line-height:1.55;letter-spacing:-.035em;font-size:clamp(29px,3.0vw,41px);margin:0}.section h2 span{color:#617f72}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:48px}.heading-sidenote{font-family:var(--serif);color:#a49d91;font-size:14px;writing-mode:vertical-rl;letter-spacing:.16em;margin:0}
.worries{background:#f4f2ed}.worries-layout{display:grid;grid-template-columns:.78fr 1.22fr;gap:72px;align-items:center}.worry-intro{max-width:325px}.worry-art{width:195px;height:145px;display:grid;place-items:center;color:var(--navy);margin-bottom:22px;opacity:.85}.worry-art svg{width:100%}.worry-intro p{margin:0;font-size:15px;line-height:2.1;font-weight:700;color:var(--navy)}.worry-list,.audience-list{list-style:none;padding:0;margin:0}.worry-list{background:#fff;padding:13px 30px;border:1px solid #e4e3dd;box-shadow:0 14px 32px rgba(38,55,57,.035)}.worry-list li{display:flex;gap:16px;align-items:baseline;padding:19px 0;font-size:15px;font-weight:700;line-height:1.85;border-bottom:1px solid #eeeae4}.worry-list li:last-child{border:0}.worry-list li::before{content:"";width:8px;height:8px;border:2px solid var(--orange);transform:rotate(45deg);flex:0 0 8px;margin-top:8px}
.how{background:var(--navy);color:#fff;overflow:hidden}.how-grid{display:grid;grid-template-columns:1fr 1fr;gap:78px;align-items:center;min-height:385px}.section-label--light{color:#a6bbc0}.how h2{color:#fff;font-size:clamp(28px,2.7vw,38px);margin-bottom:30px}.how h2 span{color:#e4b192}.how .section-kicker{color:#e1b293}.how-copy>p:not(.section-kicker):not(.how-disclaimer){font-size:15px;line-height:2.15;color:#d4e0e0;max-width:492px}.how-disclaimer{color:#a1b9be;font-size:11px;margin-top:16px}.search-device{background:#fafbf8;border:9px solid #243947;border-radius:28px;width:min(100%,410px);min-height:420px;margin:0 auto;transform:rotate(2.5deg);padding:16px 14px 14px;box-shadow:30px 30px 0 rgba(8,26,39,.25),0 28px 42px rgba(0,0,0,.15)}.device-top{display:flex;justify-content:space-between;padding:0 6px 14px;align-items:center}.device-signal{width:38px;height:5px;background:#d6e0df;border-radius:5px}.device-camera{width:8px;height:8px;border-radius:50%;background:#889e9a}.fake-search{height:45px;display:flex;align-items:center;gap:10px;color:var(--navy);font-size:13px;font-weight:700;padding:0 14px;background:#fff;border:1px solid #dfe5e0;border-radius:9px;margin-bottom:12px}.fake-search-menu{margin-left:auto;height:3px;width:18px;background:#c5cfce;box-shadow:0 -6px 0 #c5cfce,0 6px 0 #c5cfce}.fake-map{position:relative;overflow:hidden;height:145px;border-radius:5px;background:#edf1e8}.fake-map svg{display:block;width:100%;height:100%}.fake-pin{position:absolute;display:block;width:18px;height:18px;background:var(--navy);border:4px solid #fff;box-shadow:0 2px 8px #203e5260;border-radius:50% 50% 50% 0;transform:rotate(-45deg)}.pin-one{top:26%;left:33%}.pin-two{top:65%;left:67%;background:#bd754d}.pin-three{top:20%;left:76%}.fake-result{display:flex;align-items:center;gap:11px;border-bottom:1px solid #e5e9e5;padding:13px 2px}.fake-result:last-child{border-bottom:0}.fake-result b{color:var(--navy);font-size:11px;display:block;line-height:1.4}.fake-result small{color:#7d9094;font-size:9px;display:block}.fake-business-icon{height:43px;width:51px;display:block;flex-shrink:0;background:linear-gradient(#ccd8cf 0 50%,#a0ada2 50%);border-radius:4px;position:relative}.fake-business-icon::before{content:"";height:15px;width:35px;position:absolute;bottom:5px;left:8px;border:2px solid #fff;background:#e6ede7}.fake-business-icon.icon-b{background:linear-gradient(#c9d3df 0 50%,#a6b2be 50%)}.fake-star{margin-left:auto;color:#ba8955;font-size:8px;white-space:nowrap}
.reasons{background:#fff}.giant-count{font-family:Georgia,serif;color:#e8ebe6;font-size:90px;font-weight:400;line-height:.85}.reason-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.reason-card{min-height:300px;background:#fcfcfa;border:1px solid #e8ebe7;padding:31px 29px 35px;position:relative;transition:transform .3s,box-shadow .3s}.reason-card:hover{transform:translateY(-4px);box-shadow:0 15px 30px rgba(20,48,66,.06)}.reason-num{position:absolute;top:28px;right:26px;color:#c8d1cc;font:italic 20px Georgia,serif}.reason-icon{height:65px;width:65px;margin-bottom:28px;color:var(--navy)}.reason-icon svg{width:100%;height:100%}.reason-card h3{font-weight:900;color:var(--navy);font-size:17px;line-height:1.7;margin:0 0 14px;letter-spacing:-.02em}.reason-card p{font-size:13px;line-height:2.05;color:#60727a;margin:0}.reason-card:nth-child(4){grid-column:1 / 2}.reason-card:nth-child(5){grid-column:2 / 4}
.contents{background:#eaece7}.contents-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:92px;align-items:start}.contents-copy{position:sticky;top:100px}.contents-subtext{font-weight:700;font-size:14px;color:#64746e;margin-top:27px;max-width:260px;line-height:2}.contents-cover-mini{margin-top:46px;display:flex;gap:8px}.contents-cover-mini span{font-family:Georgia,serif;font-size:12px;border:1px solid #bdc8c1;padding:9px 14px;color:#4b6c5a;letter-spacing:.05em}.chapter-list{margin:5px 0 0;padding:0;list-style:none}.chapter-list li{display:grid;grid-template-columns:80px 1fr;gap:17px;align-items:start;border-bottom:1px solid #cbd2cb;padding:17px 2px}.chapter-list li:first-child{border-top:1px solid #cbd2cb}.chapter-list span{font-size:13px;font-weight:800;white-space:nowrap;color:#84958c}.chapter-list p{font-size:15px;color:var(--navy);font-weight:700;line-height:1.85;margin:0;letter-spacing:.005em}
.audience{background:#faf9f5}.audience-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.audience-illustration{margin-top:25px;max-width:320px;opacity:.85}.audience-illustration svg{width:100%}.audience-list{counter-reset:audience}.audience-list li{counter-increment:audience;display:flex;gap:14px;align-items:baseline;padding:20px 0;border-bottom:1px solid #e1e3de;font-size:15px;font-weight:700;color:var(--navy);line-height:1.9}.audience-list li:first-child{border-top:1px solid #e1e3de}.audience-list li::before{content:"✓";font-size:16px;color:var(--orange);font-weight:900}
.profile{background:#f0efe9}.profile-panel{display:grid;grid-template-columns:260px 1fr;align-items:center;gap:64px;background:#fff;border:1px solid #e2e2da;padding:58px 68px}.profile-emblem{width:188px;height:188px;border-radius:50%;border:1px solid #c5d1c8;display:flex;align-items:center;justify-content:center;flex-direction:column;color:var(--navy);position:relative}.profile-emblem::after{content:"";inset:8px;position:absolute;border:1px solid #c5d1c8;border-radius:50%}.profile-emblem span{font-family:Georgia,serif;font-size:52px;letter-spacing:.04em;line-height:1.2}.profile-emblem small{font-family:Georgia,serif;font-size:10px;letter-spacing:.17em;text-align:center;line-height:1.5}.profile-copy h2{font-size:27px;font-family:var(--sans);margin:0 0 4px}.profile-company{font-size:14px;color:#536775;margin:0 0 21px;font-weight:800}.profile-copy>p:last-child{font-size:14px;line-height:2.2;color:#65747a;max-width:650px;margin-bottom:0}
.faq{background:#fff}.faq-grid{display:grid;grid-template-columns:.76fr 1.24fr;gap:90px}.faq-list{border-top:1px solid #d9dfda}.faq-list details{border-bottom:1px solid #d9dfda}.faq-list summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;color:var(--navy);font-size:15px;font-weight:800;padding:27px 0;cursor:pointer}.faq-list summary::-webkit-details-marker{display:none}.faq-toggle{width:27px;height:27px;border-radius:50%;border:1px solid #cbd3cc;flex:0 0 27px;position:relative}.faq-toggle::before,.faq-toggle::after{content:"";position:absolute;left:8px;right:8px;top:12px;height:1.5px;background:#587665;transition:transform .2s}.faq-toggle::after{transform:rotate(90deg)}.faq-list details[open] .faq-toggle::after{transform:rotate(0deg)}.faq-list details p{font-size:14px;line-height:2.08;color:#64757b;margin:-5px 42px 28px 0}
.closing{padding:105px 0 96px;background:#1c394e;color:#fff;position:relative;overflow:hidden}.closing::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 50%,rgba(146,175,151,.08) 50%),repeating-linear-gradient(45deg,transparent 0 85px,rgba(255,255,255,.03) 86px 87px);pointer-events:none}.closing-inner{position:relative;z-index:1;text-align:center}.closing-eyebrow{font-family:Georgia,serif;letter-spacing:.19em;color:#c2d1cc;font-size:11px}.closing h2{color:#fff;margin:16px 0 16px;font-size:38px}.closing p{font-size:15px;color:#d3e0df;margin:0 auto 30px;max-width:650px}.closing .button{max-width:390px;margin:0 auto}.closing .closing-note{font-size:12px;margin:20px auto 0;color:#c6d5d4}.closing-decor{position:absolute;right:12%;top:-80px;font-family:Georgia,serif;font-weight:400;font-size:260px;color:rgba(255,255,255,.045);line-height:1}
.footer{background:#142d3e;color:#9fb1b8;padding:46px 0 45px;font-size:12px}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid #365161;padding-bottom:27px;margin-bottom:23px}.footer-name{color:#e4e9e6;font-weight:700}.footer-links{display:flex;gap:18px;flex-wrap:wrap}.footer-links a{color:#c2d0d0;text-decoration:none}.footer>div>p{margin:12px 0 0}.footer-disclaimer{font-size:11px;line-height:2.1;max-width:960px}.footer-implementation{font-size:10px;line-height:1.8;color:#c8a98e}
.mobile-sticky{display:none}
.signup-dialog{border:0;box-shadow:0 24px 100px rgba(4,24,36,.35);border-radius:6px;max-width:500px;width:calc(100% - 36px);padding:45px 46px;color:var(--navy);position:fixed}.signup-dialog::backdrop{background:rgba(11,34,48,.65);backdrop-filter:blur(5px)}.dialog-close{border:0;background:transparent;color:#63727a;position:absolute;top:14px;right:18px;font-size:32px;line-height:1;width:38px;height:38px}.dialog-label{color:var(--orange);font-size:12px;font-weight:900;letter-spacing:.12em;margin:0 0 6px}.signup-dialog h2{font-size:25px;letter-spacing:-.03em;line-height:1.5;margin:0 0 20px}.dialog-sub{font-size:13px;font-weight:800;color:#536879;margin:0 0 8px}.signup-dialog input{width:100%;padding:14px 15px;border:1px solid #bdc9c5;border-radius:3px;font-size:16px}.dialog-consent{font-size:12px;line-height:1.9;color:#66787c;margin:18px 0 22px}.dialog-consent a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.signup-dialog .button{font-size:14px}.form-error{font-size:12px;color:#a44231;line-height:1.5;margin:5px 0}.prototype-warning{font-size:11px;line-height:1.8;color:#96735b;margin:17px 0 0}
@media(max-width:1100px){.desktop-nav{gap:14px}.header-inner{gap:14px}.brand strong{font-size:12px}.hero h1{font-size:39px}.hero-grid{gap:0}.hero-visual{transform:scale(.9);transform-origin:center}.worries-layout{gap:35px}.how-grid,.contents-grid,.audience-grid{gap:45px}.profile-panel{gap:35px}.faq-grid{gap:45px}}
@media(max-width:800px){.shell{width:calc(100% - 42px)}.desktop-nav{display:none}.nav-cta{margin-left:auto}.hero-grid{display:block;min-height:0;padding:52px 0 54px}.hero-copy{padding:0}.hero h1{font-size:clamp(32px,5.8vw,45px)}.hero-visual{height:490px;transform:none;max-width:540px;margin:10px auto 0}.hero-visual::before{left:calc(50% - 230px)}.publication-wrap{left:calc(50% - 155px);top:25px}.visual-scene{inset:5% -6% 0 -6%}.floating-meta{right:3%}.section{padding:85px 0}.how-grid{grid-template-columns:1fr;gap:35px}.how-copy>p:not(.section-kicker):not(.how-disclaimer){max-width:100%}.search-device{transform:none}.worries-layout,.contents-grid,.audience-grid,.faq-grid{grid-template-columns:1fr;gap:30px}.worry-intro{max-width:none;display:flex;gap:30px;align-items:center}.worry-art{flex:0 0 160px;margin:0}.reason-grid{grid-template-columns:repeat(2,1fr)}.reason-card:nth-child(4),.reason-card:nth-child(5){grid-column:auto}.contents-copy{position:static}.contents-cover-mini{margin-top:20px}.audience-illustration{display:none}.profile-panel{grid-template-columns:170px 1fr;padding:35px;gap:35px}.profile-emblem{width:145px;height:145px}.profile-emblem span{font-size:40px}.faq-grid{gap:34px}}
@media(max-width:540px){html{scroll-padding-top:64px}.shell{width:calc(100% - 38px)}body{font-size:15px}.desktop-only{display:none}.only-mobile{display:block}.site-header .header-inner{height:64px;gap:10px}.brand{gap:7px}.brand-mark{width:32px;height:32px;border-width:1px}.brand-mark svg{width:22px}.brand strong{font-size:9.5px;letter-spacing:-.03em;white-space:nowrap}.brand small{font-size:7px;margin-top:2px;letter-spacing:-.02em;white-space:nowrap}.nav-cta{font-size:10px;padding:9px 10px;margin-left:auto;border-radius:2px}.nav-cta span{display:none}.hero-grid{padding:52px 0 30px}.eyebrow{font-size:10px;gap:8px;line-height:1.6;margin-bottom:25px;letter-spacing:-.025em}.eyebrow-dash{flex:0 0 15px;width:15px}.hero-pretitle{font-size:20px;margin-bottom:11px;white-space:nowrap}.hero h1{font-size:clamp(29px,8.35vw,36px);line-height:1.52;letter-spacing:-.055em}.hero-lead{font-size:14px;line-height:1.95;margin:17px 0 25px}.hero-cta{max-width:none}.button{min-height:61px;font-size:15px;padding:15px 15px 15px 20px}.cta-notes{padding:15px 2px 0;font-size:11px}.fineprint{font-size:11px;line-height:1.8;margin-top:15px}.hero-visual{height:430px;margin-top:23px;max-width:100%;overflow:visible}.hero-visual::before{width:330px;height:330px;left:calc(50% - 165px);top:28px}.visual-scene{inset:9% -5% 0 -5%;background-position:66% center;opacity:.73}.publication-wrap{width:230px;height:335px;left:calc(50% - 115px);top:19px;transform:rotate(-4deg)}.hero-visual:hover .publication-wrap{transform:rotate(-4deg)}.book-pages{inset:5px -6px -5px 7px}.book-cover{width:230px;height:322px}.cover-upper{height:58px;padding:9px 15px 6px}.cover-serial{font-size:9px}.cover-target{font-size:7px;margin-top:8px}.cover-rule{left:15px}.cover-main{padding:18px 16px 0}.cover-small{font-size:13px;margin-bottom:9px}.cover-small strong{font-size:17px}.cover-title{font-size:19px;line-height:1.5}.cover-title span{font-size:12px;padding:3px 6px;vertical-align:2px;margin-left:4px}.cover-desc{font-size:7px;margin-top:8px}.cover-map{height:98px;bottom:27px}.cover-bottom{height:27px;font-size:8px;padding:5px 15px}.floating-meta{bottom:30px;right:0;font-size:9px;padding:9px}.floating-meta b{font-size:12px}.hero-visual-caption{display:none}.section{padding:73px 0}.section-label{margin-bottom:18px;font-size:10px}.section h2{font-size:clamp(28px,8vw,34px);line-height:1.55}.section-kicker{font-size:12px;margin-bottom:7px}.section-heading{margin-bottom:26px}.heading-sidenote,.giant-count{display:none}.worries-layout{gap:25px}.worry-intro{display:block}.worry-art{width:122px;height:90px;margin-bottom:18px}.worry-intro p{font-size:14px;line-height:1.9}.worry-list{padding:5px 18px}.worry-list li{font-size:14px;padding:15px 0;gap:11px;line-height:1.8}.worry-list li::before{width:7px;height:7px;flex-basis:7px}.how-grid{gap:32px}.how h2{font-size:29px;margin-bottom:20px}.how-copy>p:not(.section-kicker):not(.how-disclaimer){font-size:14px;line-height:2}.how-disclaimer{font-size:10px}.search-device{width:min(100%,345px);border-width:7px;min-height:370px;padding:12px 10px 8px;box-shadow:12px 14px 0 rgba(8,26,39,.22)}.fake-map{height:122px}.fake-result{padding:11px 2px}.fake-star{font-size:7px}.reason-grid{display:block}.reason-card{padding:23px 23px 25px;min-height:auto;margin-bottom:12px}.reason-card:last-child{margin-bottom:0}.reason-card h3{font-size:16px;margin-bottom:9px}.reason-card p{font-size:13px;line-height:1.9}.reason-icon{width:53px;height:53px;margin-bottom:13px}.reason-num{top:22px;right:22px}.contents-grid{gap:25px}.contents-subtext{margin-top:16px}.contents-cover-mini{margin-top:17px}.contents-cover-mini span{padding:7px 10px;font-size:10px}.chapter-list li{grid-template-columns:49px 1fr;gap:8px;padding:14px 0}.chapter-list span{font-size:11px}.chapter-list p{font-size:13px;line-height:1.8}.audience-grid{gap:21px}.audience-list li{font-size:14px;padding:16px 0}.profile-panel{display:block;padding:26px}.profile-emblem{width:112px;height:112px;margin-bottom:27px}.profile-emblem span{font-size:31px}.profile-emblem small{font-size:7px}.profile-copy h2{font-size:23px}.profile-copy>p:last-child{font-size:13px;line-height:2.05}.faq-grid{gap:21px}.faq-list summary{font-size:14px;line-height:1.65;padding:23px 0}.faq-list details p{font-size:13px;line-height:1.95;margin:-2px 5px 22px 0}.closing{padding:75px 0 96px}.closing h2{font-size:29px;line-height:1.5}.closing p{font-size:13px;line-height:2}.closing .button{max-width:none}.closing .closing-note{font-size:11px}.footer{padding:40px 0 113px}.footer-top{display:block}.footer-name{font-size:11px}.footer-links{margin-top:18px;gap:15px}.footer-links a{font-size:11px}.footer-disclaimer{font-size:10px}.mobile-sticky{display:none;position:fixed;z-index:20;bottom:0;left:0;right:0;padding:10px 18px max(12px,env(safe-area-inset-bottom));background:rgba(251,250,247,.96);box-shadow:0 -4px 18px rgba(20,47,60,.1);backdrop-filter:blur(8px)}.mobile-sticky .button{min-height:53px;max-width:450px;margin:0 auto;padding:11px 15px 11px 18px;font-size:14px;box-shadow:none}.mobile-sticky .button-arrow{width:25px;height:25px;font-size:17px}.signup-dialog{padding:38px 22px 25px}.signup-dialog h2{font-size:22px}.dialog-close{top:11px;right:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* Editorial cover: keep map graphic below the title, without decorative overprinting */
.cover-desc{display:none}
@media(min-width:801px){.hero h1{font-size:clamp(38px,3.15vw,46px);line-height:1.47}}

@media(max-width:540px){.mobile-sticky.show{display:block}}

/* Remove decorative vertical type that could interfere with narrow desktop crops */
.hero-visual-caption{display:none}

/* ===== 本番用の追加（2026-11-04）：送信中のボタン・発行元（出版実績）の段 ===== */
.button[disabled]{opacity:.6;cursor:wait}
.publisher{background:#f8f7f4;border-top:1px solid var(--line)}
.publisher-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:64px;align-items:center}
.publisher-copy>p:not(.section-kicker){font-size:15px;line-height:2.05;color:#51636f;margin:22px 0 0}
.publisher-stats{list-style:none;padding:0;margin:30px 0 0;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.publisher-stats li{padding:16px 6px;text-align:center;border-left:1px solid var(--line)}
.publisher-stats li:first-child{border-left:0}
.publisher-stats strong{display:block;font-family:var(--serif);font-size:30px;line-height:1.2;color:var(--navy)}
.publisher-stats span{display:block;font-size:11px;font-weight:800;color:var(--muted);letter-spacing:.06em;margin-top:4px}
.publisher-link{display:inline-block;margin-top:24px;font-size:14px;font-weight:800;color:var(--orange);text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:3px}
.publisher-covers{display:block;text-decoration:none;background:#fff;border:1px solid #e2e2da;padding:28px}
.publisher-covers ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.publisher-covers li{aspect-ratio:180/256;background:var(--cream);overflow:hidden;box-shadow:0 6px 14px rgba(27,48,58,.12)}
.publisher-covers img{display:block;width:100%;height:100%;object-fit:cover}
.publisher-covers:hover{opacity:1}.publisher-covers:hover li{box-shadow:0 8px 20px rgba(27,48,58,.18)}
@media(max-width:800px){.publisher-grid{grid-template-columns:1fr;gap:34px}}
@media(max-width:540px){.publisher-copy>p:not(.section-kicker){font-size:14px;line-height:1.95}.publisher-stats strong{font-size:24px}.publisher-stats span{font-size:10px}.publisher-covers{padding:16px}.publisher-covers ul{grid-template-columns:repeat(4,1fr);gap:9px}}

/* キャンペーン価格の出し分け（初めての表示の間だけ110円。main.js が body に cmp-on / cmp-off を付ける） */
.only-reg{display:none}
body.cmp-off .only-cmp{display:none}
body.cmp-off .only-reg{display:inline}
body.cmp-wait .only-cmp{visibility:hidden}

/* キャンペーンの告知（今だけ・1回だけ110円。キャンペーン中だけ表示） */
.cmp-bar{position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:center;gap:12px;padding:10px 18px;background:var(--orange);color:#fff;font-size:13px;font-weight:700;line-height:1.6;text-align:left}
.cmp-bar-tag{flex:0 0 auto;background:#fff;color:var(--orange);font-weight:900;font-size:12px;padding:2px 9px;border-radius:2px;letter-spacing:.04em}
.cmp-bar s{opacity:.8}.cmp-bar b{font-size:16px;font-weight:900}
.cmp-offer{margin:0 0 22px;max-width:520px;border:2px solid var(--orange);background:#fff;padding:18px 20px 16px;position:relative;box-shadow:6px 6px 0 rgba(169,90,59,.14)}
.cmp-offer-tag{display:inline-block;margin:0 0 8px;background:var(--orange);color:#fff;font-size:12.5px;font-weight:900;letter-spacing:.06em;padding:3px 10px}
.cmp-offer-price{margin:0 0 10px;display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 10px;color:var(--navy)}
.cmp-offer-price s{font-size:16px;color:var(--muted);font-weight:700}
.cmp-arrow{color:var(--orange);font-weight:900;font-size:18px}
.cmp-offer-price b{font-size:52px;line-height:1;font-weight:900;color:var(--orange);letter-spacing:-.02em}
.cmp-offer-price b small{font-size:22px;margin-left:2px}
.cmp-offer-price em{font-style:normal;font-size:13px;font-weight:700;color:var(--muted)}
.cmp-offer-list{margin:0;padding:0;list-style:none;font-size:13.5px;line-height:1.8;color:var(--ink)}
.cmp-offer-list li{position:relative;padding-left:18px}
.cmp-offer-list li::before{content:"";position:absolute;left:3px;top:.72em;width:7px;height:7px;background:var(--orange);transform:rotate(45deg)}
.cmp-offer-list b{color:var(--orange-dark)}
.cmp-closing{display:inline-block;margin:0 0 18px!important;background:var(--orange);color:#fff!important;font-weight:900;font-size:15px!important;padding:8px 16px}
@media(max-width:540px){.cmp-bar{font-size:11.5px;gap:8px;padding:8px 12px}.cmp-bar-tag{font-size:10.5px;padding:2px 6px}.cmp-bar b{font-size:14px}.cmp-offer{padding:15px 15px 13px;margin-bottom:18px}.cmp-offer-price b{font-size:44px}.cmp-offer-list{font-size:12.5px}.cmp-closing{font-size:13px!important}}

/* 見出しの下の一行（検索される言葉を、目に見える形で） */
.hero-kw{margin:18px 0 0;font-size:15px;font-weight:800;color:var(--navy);letter-spacing:.01em;line-height:1.6}
.hero-kw span{display:block;font-size:12.5px;font-weight:700;color:var(--muted);margin-top:2px}
@media(max-width:540px){.hero-kw{font-size:13.5px;margin-top:14px}.hero-kw span{font-size:11.5px}}
