
:root{--ink:#172b4d;--green:#18365f;--mint:#edf1f7;--paper:#ffffff;--line:#dce5f0;--yellow:#dce5f1}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;color:var(--ink);font-family:'Yu Gothic','Meiryo',sans-serif;background:var(--paper)}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a{ -webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #cd811b;outline-offset:4px}header{background:#fff;border-bottom:1px solid var(--line);padding:22px 4%;display:flex;justify-content:space-between;align-items:center;gap:25px}.logo{font:800 35px Georgia,serif;letter-spacing:-1.5px;white-space:nowrap}.logo span{font:italic 23px Georgia,serif;margin-left:5px}.brand small{display:block;font-size:10px;letter-spacing:.12em;margin-top:5px}nav{display:flex;gap:27px;font-size:13px;font-weight:bold}nav a:hover{color:var(--green);text-decoration:underline}.wrap{max-width:1200px;margin:auto;padding:0 32px}.hero{padding:66px 0 47px;display:grid;grid-template-columns:1.1fr 1fr;gap:42px;align-items:center}.eyebrow{font-size:11px;font-weight:bold;letter-spacing:.16em;color:var(--green)}h1{font-size:clamp(27px,3.4vw,45px);line-height:1.65;letter-spacing:.01em;margin:18px 0 22px}h1 em{font-style:normal;background:linear-gradient(transparent 68%,var(--yellow) 68%)}.lead{font-size:14px;line-height:2.1;margin:0;max-width:510px}.hero-art{position:relative;min-height:365px;background:var(--mint);border-radius:50% 50% 4px 4px;overflow:hidden;padding:42px 28px}.art-label{font:italic 30px Georgia,serif;text-align:center;color:#526887;line-height:1.1;margin-bottom:26px}.desk{background:#fff;border:1px solid #cbdcee;border-radius:12px;box-shadow:12px 16px 0 #d6e0ed;transform:rotate(-4deg);padding:20px 22px;max-width:340px;margin:auto}.desk-head{font-size:12px;font-weight:bold;border-bottom:1px solid var(--line);padding-bottom:14px;display:flex;justify-content:space-between}.dots{color:#b3c7df;letter-spacing:3px}.flow{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:24px 0}.flow div{background:#eff3f8;padding:14px 8px;border-radius:8px;font-size:12px;text-align:center;flex:1}.flow b{display:block;font-size:24px;margin-bottom:6px}.lines{display:flex;gap:10px;align-items:flex-end;height:55px}.lines i{background:#a4b7d0;flex:1;border-radius:3px 3px 0 0}.lines i:nth-child(2n){background:#264974}.art-tag{position:absolute;bottom:21px;right:18px;background:var(--yellow);padding:12px 17px;border-radius:30px;font-size:12px;transform:rotate(5deg)}.searchbox{background:var(--green);color:white;border-radius:12px;padding:25px 32px;display:flex;align-items:center;gap:32px}.searchbox label{font-size:15px;font-weight:bold;white-space:nowrap}.searchbox form{display:flex;background:white;border-radius:6px;padding:5px;flex:1}.searchbox input{border:0;background:transparent;padding:12px;width:100%;min-width:0;font-size:13px}.searchbox button{background:var(--yellow);border:0;border-radius:4px;color:var(--ink);font-weight:bold;padding:10px 25px;cursor:pointer}.searchhint{font-size:11px;color:#697d95;padding:12px 4px}.categories{display:grid;grid-template-columns:repeat(6,1fr);margin:24px 0 66px;border:1px solid var(--line);border-radius:8px;background:white;overflow:hidden}.cat{padding:24px 8px;border-right:1px solid var(--line);text-align:center;font-size:12px;font-weight:bold;cursor:pointer;background:white;border-top:0;border-bottom:0;border-left:0;color:var(--ink)}.cat:last-child{border-right:0}.cat:hover,.cat.active{background:var(--mint)}.cat span{display:block;font-size:26px;color:var(--green);margin-bottom:10px}.cat small{display:block;font:10px Georgia,serif;margin-top:6px;color:#72869e}.section{padding:0 0 66px}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:25px;gap:20px}h2{font-size:25px;letter-spacing:.04em;margin:8px 0 0}.more{font-size:12px;border-bottom:1px solid var(--ink);padding:6px 0}.features{display:grid;grid-template-columns:1.2fr 1fr;gap:25px}.feature{border-radius:8px;min-height:285px;overflow:hidden;position:relative;display:flex;align-items:flex-end;padding:28px;color:white;background:var(--green)}.feature img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.feature:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent,#102f54e6)}.feature-content{z-index:1;position:relative}.tag{display:inline-block;font-size:10px;font-weight:bold;padding:5px 9px;background:var(--yellow);color:var(--ink);border-radius:3px}.feature h3{font-size:23px;line-height:1.6;margin:12px 0}.feature small{font-size:12px}.feature.alt{background:#e9eff7;color:var(--ink);align-items:center}.feature.alt:after{display:none}.feature.alt .big{position:absolute;right:20px;bottom:-22px;font:italic 150px Georgia;color:#c5d1e1}.feature.alt h3{font-size:27px}.subtle{font-size:11px;color:#6e8199}.editorial{display:grid;grid-template-columns:1fr 285px;gap:42px}.articles{display:grid;grid-template-columns:repeat(2,1fr);gap:28px}.card{display:block}.thumb{height:180px;background:#eaf2fb;border-radius:6px;overflow:hidden;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:bold;position:relative}.thumb img{width:100%;height:100%;object-fit:cover}.thumb.word{background:#edf2f8}.thumb.word:before{content:'A → B';position:absolute;font:70px Georgia;opacity:.1;right:10px;top:10px}.thumb.blue{background:#eaf0f7}.thumb.yellow{background:#eff3f8}.card .meta{font-size:10px;margin-top:14px;color:var(--green)}.card h3{font-size:16px;line-height:1.8;margin:8px 0}.card:hover h3{text-decoration:underline}.aside{background:#f0f3f8;border-radius:8px;padding:27px 24px;align-self:start}.aside h3{font-size:18px;margin:9px 0 20px}.step{border-top:1px solid #d6e3f2;padding:18px 0;display:flex;gap:14px;font-size:13px;line-height:1.7}.step b{font:italic 25px Georgia;color:#8aa9ce}.aside p{font-size:12px;line-height:1.9}.pill{display:inline-block;border:1px solid var(--line);border-radius:25px;padding:11px 18px;background:white;font-size:12px;margin:5px;cursor:pointer;color:var(--ink)}.pill:hover{border-color:var(--green);background:var(--mint)}.purpose{background:#eff3f8;padding:42px;border-radius:10px}.purpose h2{margin-bottom:22px}.glossary{display:grid;grid-template-columns:repeat(3,1fr);gap:0 30px}.term{border-top:1px solid var(--line);padding:21px 0;display:flex;justify-content:space-between;gap:15px;font-size:15px}.term small{display:block;font-size:10px;margin-bottom:7px;color:#71849d}.about{border-top:1px solid var(--line);padding:46px 0;display:flex;gap:50px;align-items:center}.about p{font-size:12px;line-height:2;max-width:610px}footer{background:#172b4d;color:white;padding:35px 4%;display:flex;justify-content:space-between;font-size:11px}.preview{font-size:10px;text-align:center;background:#f0f5fb;padding:8px;color:#61748d}.result{margin:20px 0;padding:24px;border:1px solid var(--line);background:white;border-radius:8px}.result h2{font-size:19px}.result a{display:block;padding:15px 0;border-bottom:1px solid var(--line);font-size:14px}.result button{border:0;background:none;text-decoration:underline;cursor:pointer;float:right}[hidden]{display:none!important}.menu{display:none} @media(max-width:900px){nav{gap:13px;font-size:11px}.hero{gap:24px}.hero-art{min-height:320px;padding:36px 15px}.editorial{grid-template-columns:1fr}.aside{display:none}.searchbox{gap:15px;padding:20px}.searchbox label{font-size:12px}}@media(max-width:650px){header{padding:18px 22px;flex-wrap:wrap}.logo{font-size:29px}.logo span{font-size:20px}.brand small{font-size:8px}.menu{display:block;background:none;border:1px solid var(--line);border-radius:4px;padding:8px;color:var(--ink)}nav{display:none;width:100%;flex-wrap:wrap;padding-top:12px}nav.open{display:flex}.wrap{padding:0 22px}.hero{grid-template-columns:1fr;padding:34px 0 25px;gap:24px}h1{font-size:29px;margin:12px 0 15px}.lead{font-size:12px}.hero-art{min-height:260px;max-height:280px}.art-label{font-size:25px;margin-bottom:15px}.desk{max-width:270px;padding:14px}.flow{padding:14px 0}.flow b{font-size:18px}.lines{height:28px}.searchbox{display:block;padding:18px}.searchbox form{margin-top:12px}.searchbox button{padding:8px 16px}.categories{grid-template-columns:repeat(3,1fr);margin:20px 0 43px}.cat{padding:17px 6px;border-bottom:1px solid var(--line)}.features{grid-template-columns:1fr}.feature{min-height:240px}.feature.alt{min-height:220px}.section{padding-bottom:43px}h2{font-size:21px}.articles{gap:24px 17px}.thumb{height:120px;font-size:17px}.card h3{font-size:13px}.purpose{padding:25px 20px}.pill{padding:9px 12px;font-size:11px}.glossary{grid-template-columns:repeat(2,1fr);gap:0 20px}.term{font-size:13px}.about{display:block;padding:30px 0}.more{font-size:10px}footer{gap:25px;line-height:1.8}.preview{font-size:9px}}
@media(max-width:650px){header{gap:10px}.brand small{font-size:7px;letter-spacing:.03em}.menu{font-size:11px;padding:7px}h1{font-size:25px}.hero-art{min-height:295px;max-height:none}.art-tag{font-size:10px;bottom:13px}}
.searchbox button{flex-shrink:0;white-space:nowrap}
.cat svg{width:32px;height:32px;display:block;margin:auto}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.product-card{display:flex;flex-direction:column;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:8px;padding:26px;min-height:185px;transition:border-color .2s,transform .2s}.product-card:hover{border-color:var(--green);transform:translateY(-3px)}.product-category{font-size:11px;background:var(--mint);padding:5px 10px;border-radius:4px;color:var(--green)}.product-card h3{font-size:21px;margin:22px 0 25px;line-height:1.5}.product-link{font-size:12px;margin-top:auto;display:flex;justify-content:space-between;width:100%;border-top:1px solid var(--line);padding-top:14px}@media(max-width:650px){.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.product-card{padding:18px 14px;min-height:180px}.product-card h3{font-size:16px;overflow-wrap:anywhere}.product-link{font-size:10px}.product-category{font-size:10px;padding:4px 7px}}
.product-thumb{width:calc(100% + 52px);margin:-26px -26px 20px;aspect-ratio:16/9;background:#fff;border-bottom:1px solid var(--line);overflow:hidden;border-radius:8px 8px 0 0}.product-thumb img{width:100%;height:100%;object-fit:contain;display:block}.product-card h3{margin:14px 0 20px}@media(max-width:650px){.product-thumb{width:calc(100% + 28px);margin:-18px -14px 15px}.product-card h3{margin:12px 0 18px}}
.product-link{justify-content:center;gap:10px;text-align:center}.feature-content{width:100%}.feature-content>small{display:block;text-align:center}.aside>.more{display:block;text-align:center}
.searchbox{background:#18365f}.searchbox button{background:#fff;color:#18365f;border:1px solid #ccdef3}.art-tag{background:#dce5f1;color:#18365f}.site-footer{display:block;background:#edf2f8;color:var(--ink);padding:48px max(4%,22px) 22px;border-top:1px solid var(--line)}.footer-main{max-width:1136px;margin:auto;display:flex;justify-content:space-between;gap:50px;align-items:flex-start}.site-footer .logo{font-size:35px}.site-footer .logo span{font-size:23px}.footer-map{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;font-weight:normal}.footer-map h3{font-size:13px;margin:0 0 16px}.footer-map a{display:block;font-size:12px;line-height:2.4}.footer-bottom{max-width:1136px;margin:32px auto 0;border-top:1px solid var(--line);padding-top:18px;font-size:10px;color:#647a94}@media(max-width:800px){.footer-main{display:block}.footer-map{margin-top:30px;gap:22px}}@media(max-width:500px){.footer-map{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.footer-map h3{font-size:12px}.footer-map a{font-size:11px}}
.product-card h3{margin-bottom:10px}.product-description{font-size:12px;line-height:1.8;color:#61748d;margin:0 0 20px;min-height:3.6em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}@media(max-width:650px){.product-card h3{margin-bottom:8px}.product-description{font-size:11px;margin-bottom:16px}}
