
@font-face{font-family:'Open Sans';font-weight:400;font-style:normal;font-display:swap;src:url(fonts/open-sans-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'Open Sans';font-weight:700;font-style:normal;font-display:swap;src:url(fonts/open-sans-latin-700-normal.woff2) format('woff2')}
@font-face{font-family:'Open Sans';font-weight:400;font-style:italic;font-display:swap;src:url(fonts/open-sans-latin-400-italic.woff2) format('woff2')}
@font-face{font-family:'Playfair Display';font-weight:400;font-style:normal;font-display:swap;src:url(fonts/playfair-display-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'Playfair Display';font-weight:700;font-style:normal;font-display:swap;src:url(fonts/playfair-display-latin-700-normal.woff2) format('woff2')}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:#fff;color:#212121;font-family:'Open Sans',Arial,sans-serif;font-size:14.6667px;line-height:23.4667px}
a{color:inherit}
img{display:block;max-width:100%;border:0}
/* ---------- header ---------- */
.top{position:fixed;top:0;left:0;right:0;height:56px;background:#007bbf;z-index:20;display:flex;align-items:stretch;box-shadow:0 1px 3px rgba(0,0,0,.25)}
.brand{font-family:'Playfair Display',serif;font-size:26.6667px;line-height:56px;color:#fff;text-decoration:none;margin-left:28px;white-space:nowrap}
.top nav{margin-left:auto}
.top nav ul{list-style:none;margin:0;padding:0;display:flex;height:56px}
.top nav a{display:block;height:56px;line-height:56px;padding:0 15px;color:#fff;text-decoration:none;font-size:16px;border-bottom:4px solid transparent;position:relative}
.top nav a:hover{background:rgba(255,255,255,.08)}
.top nav a.on{font-weight:700;border-bottom-color:#fff;line-height:52px}
.srch{width:56px;display:flex;align-items:center;justify-content:center;margin-right:8px}
.srch svg{width:24px;height:24px;fill:#fff}
.menu-btn{display:none;background:none;border:0;color:#fff;width:56px;font-size:26px;cursor:pointer;margin-left:auto}
/* ---------- hero ---------- */
.hero{position:relative;background:#6a1b82 center/cover no-repeat;color:#fff;padding-top:120px}
.wrap{width:880px;max-width:100%;margin:0 auto}
.wide{width:896px;max-width:100%;margin:0 auto}
.hero h1{font-family:'Playfair Display',serif;font-weight:700;font-size:77.3333px;line-height:81.9733px;margin:0;padding:13px 0;text-align:center}
.hero h2{font-size:28px;line-height:35px;font-weight:700;margin:25px 0 0;text-align:center}
.hero h3{font-size:20px;line-height:25px;font-weight:700;margin:20px 0 0;text-align:center}
.hero p{margin:15px 0 0;text-align:center}
.hero a{color:#fff}
.hero::before{content:"";position:absolute;left:0;right:0;top:0;bottom:0;background:#212121;opacity:.4}
.hero>.wrap{position:relative}
.h-home{height:390px}.h-dvt{height:456px}.h-who{height:374px}.h-info{height:434px}.h-contact{height:512px}
.hero-row{display:flex;gap:31px;align-items:flex-start}
.hero-row .l{width:574px}
.hero-row .r{width:283px;margin-top:-8px}
.hero .c574{width:574px;max-width:100%;margin:0 auto}
.hero .c727{width:727px;max-width:100%;margin:0 auto}
/* ---------- body ---------- */
.div{height:18px;position:relative}
.div::after{content:"";position:absolute;left:0;right:0;top:9px;border-top:1px solid #cfcfcf}
.div i{display:block;width:896px;max-width:100%;margin:0 auto;position:relative;height:18px}
.div i::after{content:"";position:absolute;left:0;right:0;top:9px;border-top:1px solid #cfcfcf}
.div::after{display:none}
.sec{padding:24px 0}
.cols{width:896px;max-width:100%;margin:0 auto;display:flex;gap:23px;align-items:flex-start}
.col{width:437px;max-width:100%}
.pad{padding:0 8px}
.pad.s{padding-top:14px}
h2.dk{font-size:28px;line-height:35px;font-weight:700;color:#212121;text-align:center;margin:15px 0 28px}
h3.bl.ctr{margin-top:20px}
h3.bl{font-size:20px;line-height:25px;font-weight:700;color:#3367d6;margin:13px 0 15px}
h1.bl{font-family:'Playfair Display',serif;font-size:45.3333px;line-height:54.4px;font-weight:700;color:#3367d6;margin:0 0 27px;padding:13px 0;border-top:5px solid #f0f0f0;border-bottom:5px solid #f0f0f0}
h1.bl.sm32{font-size:32px}
h2.dk .bb,h3.bl .bb{color:#00f;font-size:24px}
p{margin:0 0 15px}
.j{text-align:justify}
.ctr{text-align:center}
ul.sq{margin:0 0 26px;padding:0 0 0 20px;list-style:square;font-style:italic;text-align:justify}
ul.sq li{margin:0 0 6.5px}
ol.dc{margin:0 0 6px;padding:0 0 0 20px;list-style:decimal}
ol.dc li{margin:0 0 6.5px}
.lnk{display:block}
.fullw{width:896px;max-width:100%;margin:0 auto}
.logo-r{display:flex;justify-content:flex-end}
.mid{margin:0 auto}
/* size chart card */
.chart{display:block;width:513px;max-width:100%;height:174px;overflow:hidden;position:relative;background:#fff;border:1px solid #eee;text-decoration:none;color:#000;font-family:Arial,Helvetica,sans-serif}
.chart .ttl{position:absolute;left:11px;top:6px;font-size:12px;color:#222}
.chart .grid{position:absolute;left:0;top:30px;right:0;bottom:22px;background-image:linear-gradient(#e6e6e6 1px,transparent 1px),linear-gradient(90deg,#e6e6e6 1px,transparent 1px);background-size:100% 20.5px,102px 100%;background-position:0 14px,17px 0}
.chart table{position:absolute;left:121px;top:54px;border-collapse:collapse;font-size:11px;table-layout:fixed;width:425px;background:#fff}
.chart td{border:2px solid #111;height:20.5px;text-align:center;padding:0;line-height:16px}
.chart td:first-child{font-weight:700}
.chart .note{position:absolute;left:245px;top:122px;font-size:11px;font-style:italic;white-space:nowrap}
.chart .bar{position:absolute;left:10px;bottom:3px;height:4px;background:#ccc;width:395px;border-radius:2px}
.hl-note{margin:0}
/* ---------- footer-ish spacing ---------- */
.end{height:0}
/* ---------- responsive ---------- */
@media (max-width:860px){
 .top nav,.srch{display:none}
 .menu-btn{display:block}
 .top.open{height:auto;flex-wrap:wrap}
 .top.open nav{display:block;width:100%;margin:0;order:3;background:#007bbf}
 .top.open nav ul{display:block;height:auto}
 .top.open nav a{height:auto;line-height:44px;padding:0 24px;border-bottom:0}
 .top.open nav a.on{line-height:44px;background:rgba(255,255,255,.18)}
 .hero{padding-left:20px;padding-right:20px}
 .hero h1{font-size:48px;line-height:54px}
 .hero-row{display:block}.hero-row .l,.hero-row .r{width:100%;margin:0 auto}.hero-row .r{max-width:283px}
 .h-home,.h-dvt,.h-who,.h-info,.h-contact{height:auto;padding-bottom:40px}
 .cols{display:block;padding:0 14px}.col{width:100%}
 .sec{padding:16px 14px}
 .wide,.fullw{padding:0}
 h1.bl{font-size:34px;line-height:40px}
 .narrow,.pad{padding-left:8px;padding-right:8px}
 .chart{width:100%}
}
