@charset "UTF-8";
/*
 * idea-data.net pages.css
 * Page-specific styles. Each block is scoped by a body page class.
 * Generated 2026-08-30
 */

/* =====================================================================
   index.html  [page-home]
   ===================================================================== */
body.page-home{
  --navy:#0a4f82;
  --text:#323737;
  --sub:#5e6670;
  --accent:#0c66a6;
  --accent-soft:#f1f6fb;
  --line:#dde3e8;
  --red:#c10f23;
  --soft:#f5f7f9;
  --white:#fff;
  --max:1120px;
}
body.page-home *{box-sizing:border-box}
html{scroll-behavior:smooth}
body.page-home{margin:0;font-family:"Noto Sans JP","Yu Gothic",YuGothic,"Hiragino Kaku Gothic ProN",Meiryo,sans-serif;color:var(--text);background:#fff;line-height:1.8;-webkit-font-smoothing:antialiased}
body.page-home a{color:inherit}
body.page-home img{max-width:100%;height:auto}
body.page-home .container{width:min(var(--max),calc(100% - 48px));margin:auto}
body.page-home .eyebrow{margin:0 0 10px;color:var(--accent);font-size:13px;font-weight:700;letter-spacing:.12em}
body.page-home .section-title{margin:0;color:var(--navy);font-size:32px;line-height:1.45}
body.page-home .section-lead{margin:18px auto 0;color:var(--sub);font-size:16px;line-height:1.9;max-width:760px}
body.page-home .section-head{text-align:center;margin-bottom:48px}
body.page-home .btn{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:0 28px;border-radius:6px;border:1px solid transparent;text-decoration:none;font-size:16px;font-weight:700;transition:.2s ease}
body.page-home .btn-primary{background:var(--accent);color:#fff}
body.page-home .btn-primary:hover{opacity:.9}
body.page-home .btn-secondary{background:#fff;color:var(--navy);border-color:var(--navy)}
body.page-home .btn-secondary:hover{background:var(--soft)}
body.page-home .text-link{color:var(--accent);font-weight:700;text-decoration:none}
body.page-home .text-link:hover{text-decoration:underline}
body.page-home .site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:blur(8px);border-bottom:1px solid rgba(221,227,232,.8)}
body.page-home .header-inner{height:82px;display:flex;align-items:center;gap:28px}
body.page-home .brand{margin-right:auto;text-decoration:none;display:flex;align-items:center;gap:12px}
body.page-home .brand img{display:block;width:158px;height:auto}
body.page-home .brand-tagline{padding-left:12px;border-left:1px solid var(--line);color:var(--sub);font-size:11px;line-height:1.45;letter-spacing:.04em;white-space:nowrap}
body.page-home .global-nav{display:flex;gap:24px;align-items:center}
body.page-home .global-nav a{text-decoration:none;font-size:14px;font-weight:700;color:var(--text)}
body.page-home .global-nav a:hover{color:var(--accent)}
body.page-home .header-cta{min-height:44px;padding:0 18px;font-size:14px}
body.page-home .menu-btn{display:none;border:0;background:transparent;font-size:24px;color:var(--navy)}
body.page-home .hero{
  min-height:520px;
  display:flex;
  align-items:center;
  padding:92px 0;
  background-image:
    linear-gradient(rgba(7,78,132,.60),rgba(7,78,132,.60)),
    url("../img/top_hero.webp");
  background-size:cover;
  background-position:center center;
  color:#fff;
  position:relative;
}
body.page-home .hero-grid{display:block}
body.page-home .hero-copy{max-width:900px;margin:0 auto;text-align:center}
body.page-home .hero-kicker{margin:0 0 18px;color:rgba(255,255,255,.94);font-size:16px;font-weight:800;letter-spacing:.06em;text-shadow:0 1px 10px rgba(0,0,0,.18)}
body.page-home .hero h1{margin:0;color:#fff;font-size:48px;line-height:1.35;letter-spacing:.01em;font-weight:800;text-shadow:0 2px 16px rgba(0,0,0,.30)}
body.page-home .hero-lead{margin:26px auto 0;max-width:820px;color:#fff;font-size:18px;line-height:1.9;font-weight:700;text-shadow:0 2px 12px rgba(0,0,0,.28)}
body.page-home .hero-features{display:flex;justify-content:center;gap:0;flex-wrap:wrap;margin:28px 0 0;padding:0;list-style:none;color:#fff;font-size:15px;font-weight:800;text-shadow:0 1px 8px rgba(0,0,0,.22)}
body.page-home .hero-features li+li:before{content:"";display:inline-block;width:1px;height:14px;background:rgba(255,255,255,.65);margin:0 24px;vertical-align:-2px}
body.page-home .hero-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin-top:34px}
body.page-home .hero .btn-primary{background:#fff;border-color:#fff;color:var(--accent)}
body.page-home .hero .btn-primary:hover{background:#f5f7f9;border-color:#f5f7f9}
body.page-home .hero .btn-secondary{background:rgba(0,0,0,.08);border-color:rgba(255,255,255,.85);color:#fff}
body.page-home .hero .btn-secondary:hover{background:rgba(255,255,255,.14);border-color:#fff}
body.page-home .trust{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}
body.page-home .trust-grid{display:grid;grid-template-columns:repeat(4,1fr)}
body.page-home .trust-item{padding:28px 24px;text-align:center;border-left:1px solid var(--line)}
body.page-home .trust-item:first-child{border-left:0}
body.page-home .trust-item strong{display:block;color:var(--navy);font-size:18px}
body.page-home .trust-item span{display:block;margin-top:5px;color:var(--sub);font-size:13px}
body.page-home .services{padding:96px 0 104px;background:var(--soft)}
body.page-home .service-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:24px}
body.page-home .service-card{grid-column:span 2}
body.page-home .service-card:nth-child(4){grid-column:2 / span 2}
body.page-home .service-card:nth-child(5){grid-column:4 / span 2}
body.page-home .service-card{min-height:360px;background:#fff;border:1px solid var(--line);border-radius:8px;text-decoration:none;display:flex;flex-direction:column;overflow:hidden;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
body.page-home .service-card:hover{transform:translateY(-3px);border-color:var(--accent);box-shadow:0 12px 28px rgba(10,79,130,.08)}
body.page-home .service-card__image{position:relative;aspect-ratio:16/9;overflow:hidden;background:#e9eef2}
body.page-home .service-card__image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
body.page-home .service-card:hover .service-card__image img{transform:scale(1.025)}
body.page-home .service-card__body{padding:28px 28px 30px;display:flex;flex:1;flex-direction:column}
body.page-home .service-card h3{margin:0;color:var(--navy);font-size:22px;line-height:1.5}
body.page-home .service-card .catch{margin:15px 0 0;font-size:16px;font-weight:700;line-height:1.75}
body.page-home .service-card .desc{margin:11px 0 0;color:var(--sub);font-size:15px;line-height:1.8}
body.page-home .service-card .more{margin-top:auto;padding-top:20px;color:var(--accent);font-size:15px;font-weight:700}
body.page-home .services-foot{margin-top:34px;display:flex;justify-content:center;align-items:center;gap:22px;color:var(--sub);font-size:15px}
body.page-home .services-foot p{margin:0}
body.page-home .services-foot .btn{width:auto}
body.page-home .services-foot .services-consult{color:var(--accent);font-weight:700;text-decoration:none}
body.page-home .services-foot .services-consult:hover{text-decoration:underline}
body.page-home .reasons{padding:104px 0;background:#fff}
body.page-home .reason-grid{display:grid;grid-template-columns:repeat(3,1fr)}
body.page-home .reason{padding:4px 40px 0;border-left:1px solid var(--line)}
body.page-home .reason:first-child{padding-left:0;border-left:0}
body.page-home .reason:last-child{padding-right:0}
body.page-home .reason .num{display:block;margin-bottom:20px;color:var(--accent);font-weight:700;letter-spacing:.12em;font-size:14px}
body.page-home .reason h3{margin:0;color:var(--navy);font-size:22px;line-height:1.55}
body.page-home .reason p{margin:18px 0 0;color:#4f5e6b;font-size:16px;line-height:1.9}
body.page-home .reason a{display:inline-block;margin-top:20px}
body.page-home .works{padding:104px 0;background:var(--soft)}
body.page-home .works-head{display:grid;grid-template-columns:.75fr 1.25fr;gap:64px;align-items:end;margin-bottom:48px}
body.page-home .works-head p{margin:0;color:#4f5e6b}
body.page-home .works-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
body.page-home .work-card{padding:36px;background:#fff;border:1px solid var(--line);border-radius:8px;text-decoration:none;color:inherit;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
body.page-home .work-card:hover{transform:translateY(-2px);border-color:var(--accent);box-shadow:0 10px 24px rgba(10,79,130,.06)}
body.page-home .work-card .cat{margin:0 0 12px;color:var(--accent);font-size:12px;font-weight:700;letter-spacing:.1em}
body.page-home .work-card h3{margin:0;color:var(--navy);font-size:24px}
body.page-home .work-card .examples{margin:24px 0 0;font-weight:700;line-height:1.8}
body.page-home .work-card .desc{margin:16px 0 0;color:var(--sub);font-size:15px}
body.page-home .works-foot{margin-top:32px;display:flex;justify-content:space-between;align-items:center;gap:32px}
body.page-home .works-note{margin:0;color:var(--sub);font-size:14px}
body.page-home .price{padding:104px 0;background:#fff}
body.page-home .price-box{display:grid;grid-template-columns:.9fr 1.1fr;border:1px solid var(--line);border-radius:8px;overflow:hidden}
body.page-home .price-main{padding:48px;background:var(--soft)}
body.page-home .price-main .label{margin:0;color:var(--navy);font-size:18px;font-weight:700}
body.page-home .price-num{margin-top:18px;color:var(--navy)}
body.page-home .price-num strong{font-size:44px;line-height:1.2}
body.page-home .price-num strong span{font-size:22px}
body.page-home .price-num p{margin:6px 0 0;color:var(--sub);font-size:15px}
body.page-home .delivery{margin-top:30px;padding-top:22px;border-top:1px solid #d5dde3;display:flex;gap:16px;align-items:baseline}
body.page-home .delivery span{color:var(--sub);font-size:15px}
body.page-home .delivery strong{color:var(--accent);font-size:24px}
body.page-home .price-info{padding:42px 48px}
body.page-home .price-info section+section{margin-top:30px;padding-top:30px;border-top:1px solid var(--line)}
body.page-home .price-info h3{margin:0;color:var(--navy);font-size:19px}
body.page-home .price-info p{margin:10px 0 0;color:var(--sub);font-size:15px}
body.page-home .price-actions{display:flex;justify-content:center;gap:12px;margin-top:32px}
body.page-home .security{padding:104px 0;background:var(--navy);color:#fff}
body.page-home .security-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:88px}
body.page-home .security .eyebrow{color:#9ed1d3}
body.page-home .security h2{margin:0;color:#fff;font-size:32px;line-height:1.5}
body.page-home .security-lead{margin:24px 0 0;color:rgba(255,255,255,.82)}
body.page-home .security-link{display:inline-block;margin-top:28px;color:#fff;font-weight:700;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.4)}
body.page-home .security-points{border-top:1px solid rgba(255,255,255,.22)}
body.page-home .security-point{display:grid;grid-template-columns:44px 1fr;gap:20px;padding:28px 0;border-bottom:1px solid rgba(255,255,255,.22)}
body.page-home .security-point .num{color:#9ed1d3;font-size:14px;font-weight:700}
body.page-home .security-point h3{margin:0;font-size:19px}
body.page-home .security-point p{margin:9px 0 0;color:rgba(255,255,255,.75);font-size:15px}
body.page-home .flow{padding:104px 0;background:#fff}
body.page-home .flow-list{display:grid;grid-template-columns:repeat(4,1fr);margin:0;padding:0;list-style:none;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
body.page-home .flow-item{padding:34px 30px 38px;border-left:1px solid var(--line)}
body.page-home .flow-item:first-child{border-left:0}
body.page-home .flow-item .num{display:block;color:var(--accent);font-size:14px;font-weight:700;letter-spacing:.1em;margin-bottom:16px}
body.page-home .flow-item h3{margin:0;color:var(--navy);font-size:20px}
body.page-home .flow-item p{margin:14px 0 0;color:var(--sub);font-size:15px}
body.page-home .flow-action{text-align:center;margin-top:32px}
body.page-home .faq{padding:104px 0;background:var(--soft)}
body.page-home .faq-list{max-width:900px;margin:auto;border-top:1px solid #d5dde3}
body.page-home .faq-item{border-bottom:1px solid #d5dde3}
body.page-home .faq-item summary{position:relative;padding:24px 54px 24px 0;color:var(--navy);font-size:17px;font-weight:700;cursor:pointer;list-style:none}
body.page-home .faq-item summary::-webkit-details-marker{display:none}
body.page-home .faq-item summary:before{content:"Q.";margin-right:12px;color:var(--accent)}
body.page-home .faq-item summary:after{content:"+";position:absolute;right:4px;top:50%;transform:translateY(-50%);color:var(--accent);font-size:28px;font-weight:400}
body.page-home .faq-item[open] summary:after{content:"−"}
body.page-home .faq-answer{padding:0 54px 24px 36px;color:var(--sub);font-size:15px}
body.page-home .faq-foot{text-align:center;margin-top:34px}
body.page-home .final-cta{padding:96px 0;background:#fff}
body.page-home .cta-box{padding:64px 48px;background:var(--accent-soft);border-radius:8px;text-align:center}
body.page-home .cta-box h2{margin:0;color:var(--navy);font-size:32px;line-height:1.5}
body.page-home .cta-box .lead{margin:18px 0 0;color:#4f5e6b}
body.page-home .cta-actions{margin-top:30px;display:flex;justify-content:center;align-items:center;gap:32px}
body.page-home .tel{text-align:left}
body.page-home .tel span{display:block;color:var(--sub);font-size:13px}
body.page-home .tel a{color:var(--navy);font-size:25px;font-weight:700;text-decoration:none}
body.page-home .news{padding:72px 0 80px}
body.page-home .news-grid{display:grid;grid-template-columns:220px 1fr;gap:64px}
body.page-home .news h2{margin:0;color:var(--navy);font-size:26px}
body.page-home .news-list{margin:0;padding:0;list-style:none;border-top:1px solid var(--line)}
body.page-home .news-item{display:grid;grid-template-columns:110px 1fr;gap:24px;padding:18px 0;border-bottom:1px solid var(--line)}
body.page-home .news-item time{color:var(--sub);font-size:14px}
body.page-home .news-item a{text-decoration:none;font-size:15px}
body.page-home .news-more{display:inline-block;margin-top:18px;color:var(--accent);font-weight:700;text-decoration:none}
body.page-home .footer{padding:72px 0 28px;background:var(--navy);color:#fff}
body.page-home .footer-top{display:grid;grid-template-columns:.8fr 1.2fr;gap:88px}
body.page-home .footer-brand strong{font-size:24px;letter-spacing:.08em}
body.page-home .footer-brand p{margin:10px 0 0;color:rgba(255,255,255,.72);font-size:14px}
body.page-home .footer-nav{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}
body.page-home .footer-nav h3{margin:0 0 16px;font-size:15px}
body.page-home .footer-nav ul{list-style:none;margin:0;padding:0}
body.page-home .footer-nav li+li{margin-top:8px}
body.page-home .footer-nav a{color:rgba(255,255,255,.72);text-decoration:none;font-size:14px}
body.page-home .footer-nav a:hover{color:#fff}
body.page-home .related{margin-top:56px;padding:22px 0;border-top:1px solid rgba(255,255,255,.18);border-bottom:1px solid rgba(255,255,255,.18);display:flex;justify-content:space-between;color:rgba(255,255,255,.72);font-size:14px}
body.page-home .related a{color:#fff;font-weight:700;text-decoration:none}
body.page-home .copyright{padding-top:24px;color:rgba(255,255,255,.5);font-size:12px}
body.page-home .hero-photo{display:block;width:100%;height:420px;object-fit:cover;object-position:center center}
body.page-home .reason-num, body.page-home .flow-num{color:var(--red)}
body.page-home .btn-primary{background:var(--accent);border-color:var(--accent)}
body.page-home .btn-primary:hover{background:#095688;border-color:#095688}
body.page-home .btn-secondary{color:var(--accent);border-color:var(--accent)}
body.page-home .btn-secondary:hover{background:#f1f6fb}
body.page-home .security{background:#0a4f82}
body.page-home .final-cta-box{background:var(--accent-soft)}
body.page-home .site-footer{background:#0a4f82}
@media (max-width:900px){body.page-home .global-nav{display:none}
body.page-home .menu-btn{display:block}
body.page-home .header-cta{margin-left:auto}
body.page-home .hero-grid{grid-template-columns:1fr;gap:40px}
body.page-home .hero-visual{min-height:340px}
body.page-home .trust-grid{grid-template-columns:repeat(2,1fr)}
body.page-home .trust-item:nth-child(3){border-left:0;border-top:1px solid var(--line)}
body.page-home .trust-item:nth-child(4){border-top:1px solid var(--line)}
body.page-home .service-grid{grid-template-columns:repeat(2,1fr)}
body.page-home .service-card{grid-column:auto}
body.page-home .service-card:nth-child(4){grid-column:auto}
body.page-home .service-card:nth-child(5){grid-column:1 / -1;width:calc(50% - 12px);justify-self:center}
body.page-home .reason-grid{grid-template-columns:1fr}
body.page-home .reason{padding:28px 0;border-left:0;border-top:1px solid var(--line)}
body.page-home .reason:first-child{border-top:0}
body.page-home .works-head{grid-template-columns:1fr;gap:16px}
body.page-home .price-box{grid-template-columns:1fr}
body.page-home .security-grid{grid-template-columns:1fr;gap:48px}
body.page-home .flow-list{grid-template-columns:repeat(2,1fr)}
body.page-home .flow-item:nth-child(3){border-left:0;border-top:1px solid var(--line)}
body.page-home .flow-item:nth-child(4){border-top:1px solid var(--line)}
body.page-home .footer-top{grid-template-columns:1fr;gap:44px}}
@media (max-width:767px){body.page-home .container{width:min(var(--max),calc(100% - 44px))}
body.page-home .header-inner{height:66px}
body.page-home .brand img{width:132px}
body.page-home .brand-tagline{display:none}
body.page-home .header-cta{display:none}
body.page-home .hero{min-height:440px;padding:68px 0;background-position:58% center}
body.page-home .hero-copy{text-align:left}
body.page-home .hero h1{font-size:34px;line-height:1.4}
body.page-home .hero-kicker{font-size:14px;margin-bottom:14px}
body.page-home .hero-lead{font-size:16px;margin-top:20px;font-weight:700}
body.page-home .hero-features{justify-content:flex-start;display:grid;grid-template-columns:1fr;gap:6px;margin-top:20px}
body.page-home .hero-features li+li:before{display:none}
body.page-home .hero-actions{justify-content:flex-start;display:grid;margin-top:28px}
body.page-home .btn{width:100%}
body.page-home .trust-item{padding:22px 12px}
body.page-home .trust-item strong{font-size:16px}
body.page-home .trust-item span{font-size:12px}
body.page-home .section-title{font-size:26px}
body.page-home .section-head{text-align:left;margin-bottom:32px}
body.page-home .section-lead{margin-left:0}
body.page-home .services{padding:64px 0 44px}
body.page-home .service-grid{grid-template-columns:1fr;gap:16px}
body.page-home .service-card{min-height:0;grid-column:auto;width:100%;padding:0}
body.page-home .service-card:nth-child(4), body.page-home .service-card:nth-child(5){grid-column:auto;width:100%;justify-self:stretch}
body.page-home .service-card h3{font-size:20px}
body.page-home .service-card .catch{margin-top:14px}
body.page-home .service-card .more{padding-top:18px}
body.page-home .guide{padding:12px 0 64px}
body.page-home .guide-head h2{font-size:24px}
body.page-home .guide-list{grid-template-columns:1fr}
body.page-home .guide-item{display:block;padding:18px 0}
body.page-home .guide-item .answer{display:block;margin-top:6px}
body.page-home .guide-cta{display:block}
body.page-home .guide-cta a{display:inline-block;margin-top:6px}
body.page-home .reasons, body.page-home .works, body.page-home .price, body.page-home .security, body.page-home .flow, body.page-home .faq{padding:64px 0}
body.page-home .works-grid{grid-template-columns:1fr;gap:16px}
body.page-home .work-card{padding:26px 24px}
body.page-home .works-foot{display:block}
body.page-home .works-foot .btn{margin-top:18px}
body.page-home .price-main, body.page-home .price-info{padding:30px 24px}
body.page-home .price-num strong{font-size:38px}
body.page-home .price-actions{display:grid}
body.page-home .security h2{font-size:26px}
body.page-home .security-point{grid-template-columns:36px 1fr;gap:14px}
body.page-home .flow-list{grid-template-columns:1fr;border-bottom:0}
body.page-home .flow-item{border-left:0;border-bottom:1px solid var(--line);padding:24px 0}
body.page-home .flow-item:nth-child(3), body.page-home .flow-item:nth-child(4){border-top:0}
body.page-home .faq-item summary{padding:20px 44px 20px 0;font-size:16px}
body.page-home .faq-answer{padding:0 0 22px 30px}
body.page-home .final-cta{padding:64px 0}
body.page-home .cta-box{padding:42px 24px}
body.page-home .cta-box h2{font-size:26px}
body.page-home .cta-actions{display:block}
body.page-home .tel{text-align:center;margin-top:24px}
body.page-home .news{padding:56px 0 64px}
body.page-home .news-grid{grid-template-columns:1fr;gap:24px}
body.page-home .news-item{grid-template-columns:1fr;gap:4px}
body.page-home .footer{padding:56px 0 24px}
body.page-home .footer-nav{grid-template-columns:1fr;gap:30px}
body.page-home .related{display:block}
body.page-home .related a{display:block;margin-top:6px}}
@media (max-width:767px){body.page-home .service-card__image{aspect-ratio:16/9}
body.page-home .service-card__body{padding:24px 22px 26px}
body.page-home .services-foot{display:block;text-align:left}
body.page-home .services-foot .btn{width:100%}
body.page-home .services-foot .services-consult{display:inline-block;margin-top:16px}}
body.page-home .site-header{background:#fff;backdrop-filter:none}
body.page-home .header-inner{height:76px}
body.page-home .brand img{width:168px}
body.page-home .brand-tagline{font-size:12px}
body.page-home .global-nav{gap:25px}
body.page-home .header-cta{border-radius:6px}
body.page-home .hero{min-height:520px}
body.page-home .news{scroll-margin-top:90px}
body.page-home .news-item a{text-decoration:none}
body.page-home .news-item a:hover{text-decoration:underline}
body.page-home .final-common-footer{padding:62px 0 26px;background:#0A4F82;color:#fff}
body.page-home .final-common-footer .footer-main{display:grid;grid-template-columns:1.05fr 1.95fr;gap:76px}
body.page-home .final-common-footer .footer-brand img{width:176px;filter:brightness(0) invert(1);opacity:.96}
body.page-home .final-common-footer .footer-brand .company{margin:22px 0 0;font-size:15px;font-weight:700;color:#fff}
body.page-home .final-common-footer .footer-brand .address, body.page-home .final-common-footer .footer-brand .phones{margin:8px 0 0;font-size:13px;line-height:1.85;color:rgba(255,255,255,.76)}
body.page-home .final-common-footer .footer-brand .phones{margin-top:17px}
body.page-home .final-common-footer .footer-brand .phones strong{display:inline-block;min-width:112px;color:#fff}
body.page-home .final-common-footer .footer-nav{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:42px}
body.page-home .final-common-footer .footer-col h3{margin:0 0 15px;padding-bottom:10px;border-bottom:1px solid rgba(255,255,255,.18);font-size:14px;color:#fff}
body.page-home .final-common-footer .footer-col a{display:block;margin:9px 0;color:rgba(255,255,255,.76);text-decoration:none;font-size:13px}
body.page-home .final-common-footer .footer-col a:hover{color:#fff;text-decoration:underline}
body.page-home .final-common-footer .footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-top:40px;padding-top:20px;border-top:1px solid rgba(255,255,255,.18)}
body.page-home .final-common-footer .footer-bottom-nav{display:flex;flex-wrap:wrap;gap:18px}
body.page-home .final-common-footer .footer-bottom-nav a, body.page-home .final-common-footer .copyright{color:rgba(255,255,255,.56);text-decoration:none;font-size:11px}
@media (max-width:800px){body.page-home .header-inner{height:64px}
body.page-home .brand img{width:145px}
body.page-home .final-common-footer .footer-main, body.page-home .final-common-footer .footer-nav{grid-template-columns:1fr}
body.page-home .final-common-footer .footer-main{gap:42px}
body.page-home .final-common-footer .footer-nav{gap:28px}
body.page-home .final-common-footer .footer-bottom{align-items:flex-start;flex-direction:column;gap:14px}}
body.page-home .site-header{
  position:sticky;
  top:0;
  z-index:100;
  background:#fff;
  border-bottom:1px solid #DDE3E8;
}
body.page-home .header-inner{
  height:76px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
}
body.page-home .brand{
  display:flex;
  align-items:center;
  gap:14px;
  flex:0 0 auto;
  color:#323737;
  text-decoration:none;
}
body.page-home .brand img{width:168px;height:auto}
body.page-home .brand span{
  font-size:12px;
  line-height:1.35;
  color:#5E6670;
  white-space:nowrap;
}
body.page-home .header-right{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:20px;
  min-width:0;
  margin-left:auto;
}
body.page-home .gnav{
  display:flex;
  align-items:center;
  gap:21px;
  white-space:nowrap;
}
body.page-home .gnav a{
  color:#323737;
  text-decoration:none;
  font-size:14px;
  font-weight:700;
}
body.page-home .gnav a:hover{color:#0C66A6}
body.page-home .header-phone{
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
  padding-left:17px;
  border-left:1px solid #DDE3E8;
  text-decoration:none;
  white-space:nowrap;
  line-height:1.2;
}
body.page-home .header-phone span{
  font-size:10px;
  font-weight:700;
  color:#5E6670;
  letter-spacing:.04em;
}
body.page-home .header-phone strong{
  margin-top:4px;
  font-size:16px;
  color:#0A4F82;
  letter-spacing:.02em;
}
body.page-home .header-contact{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:0 17px;
  border-radius:6px;
  background:#0C66A6;
  color:#fff;
  text-decoration:none;
  font-size:13px;
  font-weight:700;
  white-space:nowrap;
}
body.page-home .header-contact:hover{background:#0A4F82}
body.page-home .header-mobile-actions{display:none}
@media (max-width:1080px){body.page-home .header-inner{gap:16px}
body.page-home .brand span{display:none}
body.page-home .gnav{gap:15px}
body.page-home .gnav a{font-size:13px}
body.page-home .header-right{gap:14px}
body.page-home .header-phone{padding-left:13px}
body.page-home .header-phone strong{font-size:14px}
body.page-home .header-contact{padding:0 14px}}
@media (max-width:860px){body.page-home .header-inner{height:64px}
body.page-home .brand img{width:145px}
body.page-home .header-right{display:none}
body.page-home .header-mobile-actions{
    display:flex;
    align-items:center;
    gap:8px;
    margin-left:auto;
  }
body.page-home .mobile-phone, body.page-home .mobile-contact{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:40px;
    padding:0 12px;
    border-radius:6px;
    text-decoration:none;
    font-size:12px;
    font-weight:700;
  }
body.page-home .mobile-phone{
    border:1px solid #0C66A6;
    background:#fff;
    color:#0C66A6;
  }
body.page-home .mobile-contact{
    background:#0C66A6;
    color:#fff;
  }}
body.page-home .site-header{position:sticky;top:0;z-index:200;background:#fff;border-bottom:1px solid #DDE3E8}
body.page-home .header-inner{height:76px;display:flex;align-items:center;justify-content:space-between;gap:22px}
body.page-home .brand{display:flex;align-items:center;gap:14px;flex:0 0 auto;text-decoration:none;color:#323737}
body.page-home .brand img{width:168px;height:auto}
body.page-home .brand span{font-size:12px;line-height:1.35;color:#5E6670;white-space:nowrap}
body.page-home .header-right{display:flex;align-items:center;justify-content:flex-end;gap:19px;margin-left:auto;min-width:0}
body.page-home .gnav{display:flex;align-items:center;gap:20px;white-space:nowrap}
body.page-home .gnav>a, body.page-home .nav-parent{color:#323737;text-decoration:none;font-size:14px;font-weight:700}
body.page-home .gnav>a:hover, body.page-home .nav-parent:hover, body.page-home .nav-parent.active{color:#0C66A6}
body.page-home .nav-dropdown{position:relative;padding:26px 0}
body.page-home .nav-arrow{margin-left:3px;font-size:10px}
body.page-home .dropdown-panel{position:absolute;top:68px;padding:8px;background:#fff;border:1px solid #DDE3E8;border-radius:8px;box-shadow:0 12px 28px rgba(15,45,65,.11);opacity:0;visibility:hidden;transform:translateY(-5px);transition:.16s ease}
body.page-home .nav-dropdown:hover .dropdown-panel, body.page-home .nav-dropdown:focus-within .dropdown-panel{opacity:1;visibility:visible;transform:translateY(0)}
body.page-home .service-dropdown{left:-18px;width:310px}
body.page-home .company-dropdown{right:-20px;width:285px}
body.page-home .dropdown-panel a{display:block;padding:11px 13px;border-radius:5px;text-decoration:none}
body.page-home .dropdown-panel a:hover{background:#F1F6FB}
body.page-home .dropdown-panel a.all{padding-bottom:13px;margin-bottom:5px;border-bottom:1px solid #DDE3E8;border-radius:5px 5px 0 0}
body.page-home .dropdown-panel strong{display:block;color:#0A4F82;font-size:13px}
body.page-home .dropdown-panel span{display:block;margin-top:2px;color:#5E6670;font-size:11px;font-weight:400}
body.page-home .header-phone{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding-left:16px;border-left:1px solid #DDE3E8;text-decoration:none;white-space:nowrap;line-height:1.2}
body.page-home .header-phone span{font-size:10px;font-weight:700;color:#5E6670}
body.page-home .header-phone strong{margin-top:4px;font-size:16px;color:#0A4F82}
body.page-home .header-contact{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 17px;border-radius:6px;background:#0C66A6;color:#fff!important;text-decoration:none;font-size:13px;font-weight:700;white-space:nowrap}
body.page-home .header-contact:hover{background:#0A4F82}
body.page-home .mobile-actions, body.page-home .mobile-menu{display:none}
@media (max-width:1100px){body.page-home .brand span{display:none}
body.page-home .gnav{gap:14px}
body.page-home .gnav>a, body.page-home .nav-parent{font-size:13px}
body.page-home .header-right{gap:13px}
body.page-home .header-phone{padding-left:12px}
body.page-home .header-phone strong{font-size:14px}
body.page-home .header-contact{padding:0 13px}}
@media (max-width:880px){body.page-home .header-inner{height:64px}
body.page-home .brand img{width:140px}
body.page-home .header-right{display:none}
body.page-home .mobile-actions{display:flex;align-items:center;gap:7px;margin-left:auto}
body.page-home .mobile-phone, body.page-home .mobile-contact{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 10px;border-radius:6px;text-decoration:none;font-size:11px;font-weight:700}
body.page-home .mobile-phone{border:1px solid #0C66A6;color:#0C66A6;background:#fff}
body.page-home .mobile-contact{background:#0C66A6;color:#fff}
body.page-home .mobile-menu-button{width:42px;height:42px;padding:7px 8px 5px;border:0;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px}
body.page-home .mobile-menu-button span{display:block;width:22px;height:2px;background:#323737}
body.page-home .mobile-menu-button b{font-size:7px;line-height:1;color:#5E6670}
body.page-home .mobile-menu{display:none;position:absolute;left:0;right:0;top:64px;background:#fff;border-top:1px solid #DDE3E8;border-bottom:1px solid #DDE3E8;box-shadow:0 12px 24px rgba(15,45,65,.09)}
body.page-home .mobile-menu.open{display:block}
body.page-home .mobile-menu-inner{width:calc(100% - 40px);margin:auto;padding:8px 0 18px}
body.page-home .mobile-menu-inner>a, body.page-home .mobile-parent-row{border-bottom:1px solid #E7EBEE}
body.page-home .mobile-menu-inner>a, body.page-home .mobile-parent-row>a{display:block;padding:14px 4px;color:#323737;text-decoration:none;font-size:14px;font-weight:700}
body.page-home .mobile-parent-row{display:grid;grid-template-columns:1fr 48px;align-items:center}
body.page-home .mobile-toggle{height:100%;border:0;background:#fff;color:#0C66A6;font-size:21px}
body.page-home .mobile-sub{display:none;padding:4px 0 9px;background:#F5F7F9}
body.page-home .mobile-sub.open{display:block}
body.page-home .mobile-sub a{display:block;padding:10px 16px;color:#323737;text-decoration:none;font-size:13px}}


/* =====================================================================
   service/index.html  [page-service]
   ===================================================================== */
body.page-service{--navy:#0a4f82;--blue:#0c66a6;--blue-deep:#084b7a;--red:#c10f23;--text:#323737;--sub:#5e6670;--soft:#f5f7f9;--soft-blue:#f1f6fb;--line:#dde3e8;--white:#fff;--max:1120px}
body.page-service *{box-sizing:border-box}
html{scroll-behavior:smooth}
body.page-service{margin:0;font-family:"Noto Sans JP","Yu Gothic",YuGothic,"Hiragino Kaku Gothic ProN",Meiryo,sans-serif;color:var(--text);background:#fff;line-height:1.8;-webkit-font-smoothing:antialiased}
body.page-service a{color:inherit}
body.page-service img{max-width:100%;height:auto}
body.page-service .container{width:min(var(--max),calc(100% - 48px));margin:auto}
body.page-service .eyebrow{margin:0 0 10px;color:var(--blue);font-size:13px;font-weight:700;letter-spacing:.12em}
body.page-service .section-title{margin:0;color:var(--navy);font-size:32px;line-height:1.45}
body.page-service .section-lead{margin:18px auto 0;color:var(--sub);font-size:16px;line-height:1.9;max-width:760px}
body.page-service .section-head{text-align:center;margin-bottom:48px}
body.page-service .btn{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:0 28px;border-radius:6px;border:1px solid transparent;text-decoration:none;font-size:16px;font-weight:700;transition:.2s}
body.page-service .btn-primary{background:var(--blue);color:#fff}
body.page-service .btn-primary:hover{background:#095688}
body.page-service .btn-secondary{background:#fff;color:var(--blue);border-color:var(--blue)}
body.page-service .btn-secondary:hover{background:var(--soft-blue)}
body.page-service .text-link{color:var(--blue);font-weight:700;text-decoration:none}
body.page-service .text-link:hover{text-decoration:underline}
body.page-service .site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.97);border-bottom:1px solid rgba(221,227,232,.9);backdrop-filter:blur(8px)}
body.page-service .header-inner{height:82px;display:flex;align-items:center;gap:28px}
body.page-service .brand{margin-right:auto;display:flex;align-items:center;gap:12px;text-decoration:none}
body.page-service .brand img{display:block;width:158px;height:auto}
body.page-service .brand-tag{padding-left:12px;border-left:1px solid var(--line);font-size:11px;line-height:1.45;color:var(--sub);white-space:nowrap}
body.page-service .nav{display:flex;align-items:center;gap:24px}
body.page-service .nav a{text-decoration:none;font-size:14px;font-weight:700}
body.page-service .nav a:hover, body.page-service .nav a.active{color:var(--blue)}
body.page-service .header-cta{min-height:44px;padding:0 18px;font-size:14px}
body.page-service .menu-btn{display:none;border:0;background:none;color:var(--navy);font-size:25px}
body.page-service .hero{min-height:390px;display:flex;align-items:center;background-image:linear-gradient(rgba(7,78,132,.64),rgba(7,78,132,.64)),url("../img/pic05.webp");background-size:cover;background-position:center 52%;color:#fff;padding:72px 0}
body.page-service .hero-inner{max-width:860px}
body.page-service .hero .eyebrow{color:#fff;opacity:.88}
body.page-service .hero h1{margin:0;color:#fff;font-size:44px;line-height:1.35;letter-spacing:.01em}
body.page-service .hero p{margin:22px 0 0;color:rgba(255,255,255,.95);font-size:18px;line-height:1.9;font-weight:600;text-shadow:0 1px 2px rgba(0,0,0,.15)}
body.page-service .breadcrumb{padding:16px 0;border-bottom:1px solid var(--line);background:#fff;font-size:13px;color:var(--sub)}
body.page-service .breadcrumb a{color:var(--blue);text-decoration:none}
body.page-service .services{padding:96px 0 100px;background:#fff}
body.page-service .service-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:24px}
body.page-service .service-card{grid-column:span 2;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#fff;text-decoration:none;transition:.2s}
body.page-service .service-card:nth-child(4){grid-column:2/span 2}
body.page-service .service-card:nth-child(5){grid-column:4/span 2}
body.page-service .service-card:hover{transform:translateY(-3px);border-color:var(--blue);box-shadow:0 12px 28px rgba(10,79,130,.08)}
body.page-service .service-image{aspect-ratio:16/9;overflow:hidden;background:#e9eef2}
body.page-service .service-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s}
body.page-service .service-card:hover img{transform:scale(1.025)}
body.page-service .service-body{padding:28px;display:flex;flex-direction:column;flex:1}
body.page-service .service-body h2{margin:0;color:var(--navy);font-size:22px;line-height:1.45}
body.page-service .service-body p{margin:14px 0 0;color:var(--sub);font-size:15px;line-height:1.8}
body.page-service .service-more{margin-top:auto;padding-top:20px;color:var(--blue);font-size:15px;font-weight:700}
body.page-service .guide{padding:96px 0;background:var(--soft)}
body.page-service .guide-wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:72px;align-items:start}
body.page-service .guide-head{position:sticky;top:112px}
body.page-service .guide-head .section-title{font-size:30px}
body.page-service .guide-head p:last-child{margin:18px 0 0;color:var(--sub)}
body.page-service .guide-list{border-top:1px solid #cfd8df}
body.page-service .guide-item{display:grid;grid-template-columns:1fr 190px;gap:24px;align-items:center;padding:22px 4px;border-bottom:1px solid #cfd8df;text-decoration:none}
body.page-service .guide-item:hover .guide-answer{text-decoration:underline}
body.page-service .guide-need{font-size:16px;font-weight:600}
body.page-service .guide-answer{color:var(--blue);font-size:15px;font-weight:700;text-align:right}
body.page-service .compare{padding:100px 0;background:#fff}
body.page-service .table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:8px}
body.page-service table{border-collapse:collapse;width:100%;min-width:880px;background:#fff}
body.page-service th, body.page-service td{padding:18px 14px;border-bottom:1px solid var(--line);border-right:1px solid var(--line);text-align:center;font-size:14px;vertical-align:middle}
body.page-service th:last-child, body.page-service td:last-child{border-right:0}
body.page-service tr:last-child td{border-bottom:0}
body.page-service thead th{background:var(--soft-blue);color:var(--navy);font-size:14px}
body.page-service tbody th{text-align:left;background:#fafbfc;color:var(--text);font-weight:700}
body.page-service .best{color:var(--blue);font-weight:800;font-size:17px}
body.page-service .dash{color:#a5adb4}
body.page-service .compare-note{margin:18px 0 0;color:var(--sub);font-size:13px;line-height:1.7}
body.page-service .quality{padding:100px 0;background:var(--soft)}
body.page-service .quality-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #d3dbe1;border-bottom:1px solid #d3dbe1}
body.page-service .quality-item{padding:32px 28px;border-left:1px solid #d3dbe1}
body.page-service .quality-item:first-child{border-left:0}
body.page-service .quality-num{display:block;color:var(--red);font-size:14px;font-weight:800;letter-spacing:.12em;margin-bottom:14px}
body.page-service .quality-item h3{margin:0;color:var(--navy);font-size:19px;line-height:1.5}
body.page-service .quality-item p{margin:13px 0 0;color:var(--sub);font-size:14px;line-height:1.8}
body.page-service .price{padding:96px 0;background:#fff}
body.page-service .price-box{max-width:900px;margin:auto;display:grid;grid-template-columns:.9fr 1.1fr;border:1px solid var(--line);border-radius:8px;overflow:hidden}
body.page-service .price-main{padding:42px;background:var(--soft-blue)}
body.page-service .price-label{margin:0;color:var(--navy);font-weight:700}
body.page-service .price-number{margin:15px 0 0;color:var(--navy);font-weight:800;font-size:40px;line-height:1.25}
body.page-service .price-number span{font-size:20px}
body.page-service .price-tax{margin:5px 0 0;color:var(--sub);font-size:14px}
body.page-service .price-delivery{margin-top:25px;padding-top:20px;border-top:1px solid #cfd8df;display:flex;gap:16px;align-items:baseline}
body.page-service .price-delivery strong{color:var(--blue);font-size:22px}
body.page-service .price-side{padding:42px}
body.page-service .price-side h3{margin:0;color:var(--navy);font-size:19px}
body.page-service .price-side p{margin:12px 0 0;color:var(--sub);font-size:15px}
body.page-service .price-actions{margin-top:28px;display:flex;gap:12px;justify-content:center}
body.page-service .cta{padding:88px 0;background:var(--soft)}
body.page-service .cta-box{padding:56px 40px;text-align:center;background:#fff;border:1px solid var(--line);border-radius:8px}
body.page-service .cta-box h2{margin:0;color:var(--navy);font-size:30px}
body.page-service .cta-box p{margin:18px auto 0;max-width:680px;color:var(--sub)}
body.page-service .cta-actions{margin-top:28px;display:flex;gap:16px;justify-content:center;align-items:center}
body.page-service .tel{font-size:23px;color:var(--navy);font-weight:800;text-decoration:none}
body.page-service .footer{padding:64px 0 26px;background:var(--blue-deep);color:#fff}
body.page-service .footer-top{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}
body.page-service .footer-brand img{width:160px;filter:brightness(0) invert(1);opacity:.95}
body.page-service .footer-brand p{font-size:13px;color:rgba(255,255,255,.7)}
body.page-service .footer-nav{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}
body.page-service .footer-nav h3{margin:0 0 15px;font-size:14px}
body.page-service .footer-nav ul{margin:0;padding:0;list-style:none}
body.page-service .footer-nav li+li{margin-top:8px}
body.page-service .footer-nav a{font-size:13px;color:rgba(255,255,255,.72);text-decoration:none}
body.page-service .footer-nav a:hover{color:#fff}
body.page-service .copyright{margin-top:42px;padding-top:22px;border-top:1px solid rgba(255,255,255,.16);font-size:12px;color:rgba(255,255,255,.48)}
@media (max-width:900px){body.page-service .nav{display:none}
body.page-service .menu-btn{display:block}
body.page-service .service-grid{grid-template-columns:repeat(2,1fr)}
body.page-service .service-card, body.page-service .service-card:nth-child(4), body.page-service .service-card:nth-child(5){grid-column:auto}
body.page-service .guide-wrap{grid-template-columns:1fr;gap:36px}
body.page-service .guide-head{position:static}
body.page-service .quality-grid{grid-template-columns:repeat(2,1fr)}
body.page-service .quality-item:nth-child(3){border-left:0;border-top:1px solid #d3dbe1}
body.page-service .quality-item:nth-child(4){border-top:1px solid #d3dbe1}}
@media (max-width:767px){body.page-service .container{width:min(var(--max),calc(100% - 44px))}
body.page-service .header-inner{height:64px}
body.page-service .brand img{width:132px}
body.page-service .brand-tag{display:none}
body.page-service .header-cta{display:none}
body.page-service .hero{min-height:330px;padding:56px 0;background-position:center}
body.page-service .hero h1{font-size:32px}
body.page-service .hero p{font-size:16px}
body.page-service .section-title{font-size:26px}
body.page-service .section-head{text-align:left;margin-bottom:32px}
body.page-service .section-lead{margin-left:0}
body.page-service .services, body.page-service .guide, body.page-service .compare, body.page-service .quality, body.page-service .price{padding:64px 0}
body.page-service .service-grid{grid-template-columns:1fr;gap:16px}
body.page-service .service-body{padding:24px}
body.page-service .guide-item{grid-template-columns:1fr;padding:19px 0}
body.page-service .guide-answer{text-align:left;margin-top:3px}
body.page-service .quality-grid{grid-template-columns:1fr}
body.page-service .quality-item, body.page-service .quality-item:nth-child(3), body.page-service .quality-item:nth-child(4){border-left:0;border-top:1px solid #d3dbe1}
body.page-service .quality-item:first-child{border-top:0}
body.page-service .price-box{grid-template-columns:1fr}
body.page-service .price-main, body.page-service .price-side{padding:30px 24px}
body.page-service .price-actions, body.page-service .cta-actions{display:grid}
body.page-service .btn{width:100%}
body.page-service .cta{padding:64px 0}
body.page-service .cta-box{padding:40px 24px}
body.page-service .cta-box h2{font-size:25px}
body.page-service .footer-top{grid-template-columns:1fr;gap:40px}
body.page-service .footer-nav{grid-template-columns:1fr;gap:28px}}
body.page-service .site-header{position:sticky;top:0;z-index:200;background:#fff;border-bottom:1px solid #DDE3E8}
body.page-service .header-inner{height:76px;display:flex;align-items:center;justify-content:space-between;gap:22px}
body.page-service .brand{display:flex;align-items:center;gap:14px;flex:0 0 auto;text-decoration:none;color:#323737}
body.page-service .brand img{width:168px;height:auto}
body.page-service .brand span{font-size:12px;line-height:1.35;color:#5E6670;white-space:nowrap}
body.page-service .header-right{display:flex;align-items:center;justify-content:flex-end;gap:19px;margin-left:auto;min-width:0}
body.page-service .gnav{display:flex;align-items:center;gap:20px;white-space:nowrap}
body.page-service .gnav>a, body.page-service .nav-service-link{color:#323737;text-decoration:none;font-size:13px;font-weight:700}
body.page-service .gnav>a:hover, body.page-service .nav-service-link:hover, body.page-service .gnav .active{color:#0C66A6}
body.page-service .nav-service{position:relative;padding:26px 0}
body.page-service .nav-arrow{margin-left:3px;font-size:10px}
body.page-service .service-dropdown{position:absolute;top:68px;left:-18px;width:310px;padding:8px;background:#fff;border:1px solid #DDE3E8;border-radius:8px;box-shadow:0 12px 28px rgba(15,45,65,.11);opacity:0;visibility:hidden;transform:translateY(-5px);transition:.16s ease}
body.page-service .nav-service:hover .service-dropdown, body.page-service .nav-service:focus-within .service-dropdown{opacity:1;visibility:visible;transform:translateY(0)}
body.page-service .service-dropdown a{display:block;padding:11px 13px;border-radius:5px;text-decoration:none}
body.page-service .service-dropdown a:hover{background:#F1F6FB}
body.page-service .service-dropdown a.all{padding-bottom:13px;margin-bottom:5px;border-bottom:1px solid #DDE3E8;border-radius:5px 5px 0 0}
body.page-service .service-dropdown strong{display:block;color:#0A4F82;font-size:13px}
body.page-service .service-dropdown span{display:block;margin-top:2px;color:#5E6670;font-size:11px;font-weight:400}
body.page-service .header-phone{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding-left:16px;border-left:1px solid #DDE3E8;text-decoration:none;white-space:nowrap;line-height:1.2}
body.page-service .header-phone span{font-size:10px;font-weight:700;color:#5E6670}
body.page-service .header-phone strong{margin-top:4px;font-size:16px;color:#0A4F82}
body.page-service .header-contact{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 17px;border-radius:6px;background:#0C66A6;color:#fff!important;text-decoration:none;font-size:13px;font-weight:700;white-space:nowrap}
body.page-service .header-contact:hover{background:#0A4F82}
body.page-service .mobile-actions, body.page-service .mobile-menu{display:none}
body.page-service .breadcrumb{padding:16px 0;background:#fff;border-bottom:1px solid #DDE3E8;font-size:13px;color:#5E6670}
body.page-service .hero{min-height:390px}
body.page-service .hero h1{font-size:44px}
body.page-service .hero-lead{font-size:18px}
body.page-service .final-common-footer{padding:62px 0 26px;background:#0A4F82;color:#fff}
body.page-service .final-common-footer .footer-main{display:grid;grid-template-columns:1.05fr 1.95fr;gap:76px}
body.page-service .final-common-footer .footer-brand img{width:176px;filter:brightness(0) invert(1);opacity:.96}
body.page-service .final-common-footer .footer-brand .company{margin:22px 0 0;font-size:15px;font-weight:700;color:#fff}
body.page-service .final-common-footer .footer-brand .address, body.page-service .final-common-footer .footer-brand .phones{margin:8px 0 0;font-size:13px;line-height:1.85;color:rgba(255,255,255,.76)}
body.page-service .final-common-footer .footer-brand .phones{margin-top:17px}
body.page-service .final-common-footer .footer-brand .phones strong{display:inline-block;min-width:112px;color:#fff}
body.page-service .final-common-footer .footer-nav{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:42px}
body.page-service .final-common-footer .footer-col h3{margin:0 0 15px;padding-bottom:10px;border-bottom:1px solid rgba(255,255,255,.18);font-size:14px;color:#fff}
body.page-service .final-common-footer .footer-col a{display:block;margin:9px 0;color:rgba(255,255,255,.76);text-decoration:none;font-size:13px}
body.page-service .final-common-footer .footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-top:40px;padding-top:20px;border-top:1px solid rgba(255,255,255,.18)}
body.page-service .final-common-footer .footer-bottom-nav{display:flex;flex-wrap:wrap;gap:18px}
body.page-service .final-common-footer .footer-bottom-nav a, body.page-service .final-common-footer .copyright{color:rgba(255,255,255,.56);text-decoration:none;font-size:11px}
@media (max-width:1100px){body.page-service .brand span{display:none}
body.page-service .gnav{gap:14px}
body.page-service .gnav>a, body.page-service .nav-service-link{font-size:12px}
body.page-service .header-right{gap:13px}
body.page-service .header-phone{padding-left:12px}
body.page-service .header-phone strong{font-size:14px}
body.page-service .header-contact{padding:0 13px}}
@media (max-width:880px){body.page-service .header-inner{height:64px}
body.page-service .brand img{width:140px}
body.page-service .header-right{display:none}
body.page-service .mobile-actions{display:flex;align-items:center;gap:7px;margin-left:auto}
body.page-service .mobile-phone, body.page-service .mobile-contact{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 10px;border-radius:6px;text-decoration:none;font-size:11px;font-weight:700}
body.page-service .mobile-phone{border:1px solid #0C66A6;color:#0C66A6;background:#fff}
body.page-service .mobile-contact{background:#0C66A6;color:#fff}
body.page-service .mobile-menu-button{width:42px;height:42px;padding:7px 8px 5px;border:0;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px}
body.page-service .mobile-menu-button span{display:block;width:22px;height:2px;background:#323737}
body.page-service .mobile-menu-button b{font-size:7px;line-height:1;color:#5E6670}
body.page-service .mobile-menu{display:none;position:absolute;left:0;right:0;top:64px;background:#fff;border-top:1px solid #DDE3E8;border-bottom:1px solid #DDE3E8;box-shadow:0 12px 24px rgba(15,45,65,.09)}
body.page-service .mobile-menu.open{display:block}
body.page-service .mobile-menu-inner{width:calc(100% - 40px);margin:auto;padding:8px 0 18px}
body.page-service .mobile-menu-inner>a, body.page-service .mobile-service-row{border-bottom:1px solid #E7EBEE}
body.page-service .mobile-menu-inner>a, body.page-service .mobile-service-row>a{display:block;padding:14px 4px;color:#323737;text-decoration:none;font-size:14px;font-weight:700}
body.page-service .mobile-service-row{display:grid;grid-template-columns:1fr 48px;align-items:center}
body.page-service .mobile-service-toggle{height:100%;border:0;background:#fff;color:#0C66A6;font-size:21px}
body.page-service .mobile-service-sub{display:none;padding:4px 0 9px;background:#F5F7F9}
body.page-service .mobile-service-sub.open{display:block}
body.page-service .mobile-service-sub a{display:block;padding:10px 16px;color:#323737;text-decoration:none;font-size:13px}
body.page-service .hero{min-height:330px}
body.page-service .hero h1{font-size:32px}
body.page-service .hero-lead{font-size:16px}
body.page-service .final-common-footer .footer-main, body.page-service .final-common-footer .footer-nav{grid-template-columns:1fr}
body.page-service .final-common-footer .footer-main{gap:42px}
body.page-service .final-common-footer .footer-nav{gap:28px}
body.page-service .final-common-footer .footer-bottom{align-items:flex-start;flex-direction:column;gap:14px}}
body.page-service .site-header{position:sticky;top:0;z-index:200;background:#fff;border-bottom:1px solid #DDE3E8}
body.page-service .header-inner{height:76px;display:flex;align-items:center;justify-content:space-between;gap:22px}
body.page-service .brand{display:flex;align-items:center;gap:14px;flex:0 0 auto;text-decoration:none;color:#323737}
body.page-service .brand img{width:168px;height:auto}
body.page-service .brand span{font-size:12px;line-height:1.35;color:#5E6670;white-space:nowrap}
body.page-service .header-right{display:flex;align-items:center;justify-content:flex-end;gap:19px;margin-left:auto;min-width:0}
body.page-service .gnav{display:flex;align-items:center;gap:20px;white-space:nowrap}
body.page-service .gnav>a, body.page-service .nav-parent{color:#323737;text-decoration:none;font-size:14px;font-weight:700}
body.page-service .gnav>a:hover, body.page-service .nav-parent:hover, body.page-service .nav-parent.active{color:#0C66A6}
body.page-service .nav-dropdown{position:relative;padding:26px 0}
body.page-service .nav-arrow{margin-left:3px;font-size:10px}
body.page-service .dropdown-panel{position:absolute;top:68px;padding:8px;background:#fff;border:1px solid #DDE3E8;border-radius:8px;box-shadow:0 12px 28px rgba(15,45,65,.11);opacity:0;visibility:hidden;transform:translateY(-5px);transition:.16s ease}
body.page-service .nav-dropdown:hover .dropdown-panel, body.page-service .nav-dropdown:focus-within .dropdown-panel{opacity:1;visibility:visible;transform:translateY(0)}
body.page-service .service-dropdown{left:-18px;width:310px}
body.page-service .company-dropdown{right:-20px;width:285px}
body.page-service .dropdown-panel a{display:block;padding:11px 13px;border-radius:5px;text-decoration:none}
body.page-service .dropdown-panel a:hover{background:#F1F6FB}
body.page-service .dropdown-panel a.all{padding-bottom:13px;margin-bottom:5px;border-bottom:1px solid #DDE3E8;border-radius:5px 5px 0 0}
body.page-service .dropdown-panel strong{display:block;color:#0A4F82;font-size:13px}
body.page-service .dropdown-panel span{display:block;margin-top:2px;color:#5E6670;font-size:11px;font-weight:400}
body.page-service .header-phone{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding-left:16px;border-left:1px solid #DDE3E8;text-decoration:none;white-space:nowrap;line-height:1.2}
body.page-service .header-phone span{font-size:10px;font-weight:700;color:#5E6670}
body.page-service .header-phone strong{margin-top:4px;font-size:16px;color:#0A4F82}
body.page-service .header-contact{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 17px;border-radius:6px;background:#0C66A6;color:#fff!important;text-decoration:none;font-size:13px;font-weight:700;white-space:nowrap}
body.page-service .header-contact:hover{background:#0A4F82}
body.page-service .mobile-actions, body.page-service .mobile-menu{display:none}
@media (max-width:1100px){body.page-service .brand span{display:none}
body.page-service .gnav{gap:14px}
body.page-service .gnav>a, body.page-service .nav-parent{font-size:13px}
body.page-service .header-right{gap:13px}
body.page-service .header-phone{padding-left:12px}
body.page-service .header-phone strong{font-size:14px}
body.page-service .header-contact{padding:0 13px}}
@media (max-width:880px){body.page-service .header-inner{height:64px}
body.page-service .brand img{width:140px}
body.page-service .header-right{display:none}
body.page-service .mobile-actions{display:flex;align-items:center;gap:7px;margin-left:auto}
body.page-service .mobile-phone, body.page-service .mobile-contact{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 10px;border-radius:6px;text-decoration:none;font-size:11px;font-weight:700}
body.page-service .mobile-phone{border:1px solid #0C66A6;color:#0C66A6;background:#fff}
body.page-service .mobile-contact{background:#0C66A6;color:#fff}
body.page-service .mobile-menu-button{width:42px;height:42px;padding:7px 8px 5px;border:0;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px}
body.page-service .mobile-menu-button span{display:block;width:22px;height:2px;background:#323737}
body.page-service .mobile-menu-button b{font-size:7px;line-height:1;color:#5E6670}
body.page-service .mobile-menu{display:none;position:absolute;left:0;right:0;top:64px;background:#fff;border-top:1px solid #DDE3E8;border-bottom:1px solid #DDE3E8;box-shadow:0 12px 24px rgba(15,45,65,.09)}
body.page-service .mobile-menu.open{display:block}
body.page-service .mobile-menu-inner{width:calc(100% - 40px);margin:auto;padding:8px 0 18px}
body.page-service .mobile-menu-inner>a, body.page-service .mobile-parent-row{border-bottom:1px solid #E7EBEE}
body.page-service .mobile-menu-inner>a, body.page-service .mobile-parent-row>a{display:block;padding:14px 4px;color:#323737;text-decoration:none;font-size:14px;font-weight:700}
body.page-service .mobile-parent-row{display:grid;grid-template-columns:1fr 48px;align-items:center}
body.page-service .mobile-toggle{height:100%;border:0;background:#fff;color:#0C66A6;font-size:21px}
body.page-service .mobile-sub{display:none;padding:4px 0 9px;background:#F5F7F9}
body.page-service .mobile-sub.open{display:block}
body.page-service .mobile-sub a{display:block;padding:10px 16px;color:#323737;text-decoration:none;font-size:13px}}
@media (min-width:881px){body.page-service .hero{height:390px;min-height:390px;padding:0}
body.page-service .hero-inner{padding:0}}
@media (max-width:880px){body.page-service .hero{height:330px;min-height:330px;padding:0}
body.page-service .hero-inner{padding:0}}


/* =====================================================================
   service/general/index.html  [page-general]
   ===================================================================== */
body.page-general{
  --blue:#0c66a6;--blue-dark:#0a4f82;--red:#c10f23;--text:#323737;--sub:#5e6670;
  --soft:#f5f7f9;--soft-blue:#eef5fa;--line:#dde3e8;--white:#fff;--max:1120px;
}
body.page-general *{box-sizing:border-box}
html{scroll-behavior:smooth}
body.page-general{margin:0;font-family:"Noto Sans JP","Yu Gothic",YuGothic,"Hiragino Kaku Gothic ProN",Meiryo,sans-serif;color:var(--text);background:#fff;line-height:1.85}
body.page-general a{color:var(--blue)}
body.page-general img{max-width:100%;height:auto;display:block}
body.page-general .container{width:min(var(--max),calc(100% - 48px));margin:auto}
body.page-general .site-header{position:sticky;top:0;z-index:100;background:#fff;border-bottom:1px solid var(--line)}
body.page-general .header-inner{height:76px;display:flex;align-items:center;justify-content:space-between;gap:28px}
body.page-general .brand{display:flex;align-items:center;gap:14px;text-decoration:none;color:inherit}
body.page-general .brand img{width:168px}
body.page-general .brand span{font-size:12px;color:var(--sub)}
body.page-general .gnav{display:flex;align-items:center;gap:25px;font-size:14px;font-weight:700}
body.page-general .gnav a{text-decoration:none;color:var(--text)}
body.page-general .gnav .contact{padding:12px 18px;border-radius:6px;background:var(--blue);color:#fff}
body.page-general .breadcrumb{padding:16px 0;background:#fff;border-bottom:1px solid var(--line);font-size:13px;color:var(--sub)}
body.page-general .breadcrumb a{text-decoration:none;color:var(--blue)}
body.page-general .hero{min-height:390px;display:flex;align-items:center;position:relative;background:url("../img/service4_img.webp") center 52%/cover no-repeat;color:#fff}
body.page-general .hero:before{content:"";position:absolute;inset:0;background:rgba(7,78,132,.64)}
body.page-general .hero-inner{position:relative;max-width:860px;padding:72px 0}
body.page-general .eyebrow{margin:0 0 11px;font-size:13px;font-weight:700;letter-spacing:.13em;opacity:.9}
body.page-general .hero h1{margin:0;color:#fff;font-size:44px;line-height:1.35}
body.page-general .hero-lead{margin:22px 0 0;color:rgba(255,255,255,.96);font-size:18px;line-height:1.9;font-weight:600;text-shadow:0 1px 2px rgba(0,0,0,.12)}
body.page-general .hero-tags{display:flex;flex-wrap:wrap;gap:9px;margin-top:24px}
body.page-general .hero-tags span{padding:6px 11px;border:1px solid rgba(255,255,255,.5);border-radius:99px;font-size:13px}
body.page-general section{padding:88px 0}
body.page-general .soft{background:var(--soft)}
body.page-general .soft-blue{background:var(--soft-blue)}
body.page-general .section-head{max-width:800px;margin:0 auto 42px;text-align:center}
body.page-general .kicker{margin:0 0 9px;color:var(--blue);font-size:12px;font-weight:700;letter-spacing:.13em}
body.page-general h2{margin:0;color:var(--blue-dark);font-size:31px;line-height:1.45}
body.page-general .section-lead{margin:17px auto 0;color:var(--sub);font-size:16px;max-width:760px}
body.page-general .intro-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:62px;align-items:center}
body.page-general .intro-grid h2{font-size:30px}
body.page-general .intro-grid p{margin:16px 0 0}
body.page-general .intro-grid img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:8px}
body.page-general .use-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 28px;max-width:960px;margin:auto}
body.page-general .use-item{padding:20px 0;border-bottom:1px solid var(--line)}
body.page-general .use-item strong{display:block;color:var(--blue-dark);font-size:17px}
body.page-general .use-item span{display:block;margin-top:5px;color:var(--sub);font-size:14px}
body.page-general .reason-wrap{max-width:920px;margin:auto}
body.page-general .reason-block{padding:30px 0;border-top:1px solid var(--line)}
body.page-general .reason-block:last-child{border-bottom:1px solid var(--line)}
body.page-general .reason-block h3{margin:0;color:var(--blue-dark);font-size:21px}
body.page-general .reason-block p{margin:13px 0 0}
body.page-general .proof-box{margin-top:26px;padding:26px 28px;background:#fff;border:1px solid var(--line);border-radius:8px}
body.page-general .proof-box h3{margin:0 0 12px;color:var(--blue-dark);font-size:18px}
body.page-general .proof-box ul{margin:0;padding-left:22px}
body.page-general .proof-box li{margin:8px 0}
body.page-general .finish-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
body.page-general .finish-card{padding:28px;background:#fff;border:1px solid var(--line);border-radius:8px}
body.page-general .finish-card .num{color:var(--red);font-size:12px;font-weight:700;letter-spacing:.1em}
body.page-general .finish-card h3{margin:8px 0 0;color:var(--blue-dark);font-size:20px}
body.page-general .finish-card p{margin:12px 0 0;color:var(--sub);font-size:15px}
body.page-general .check-list{max-width:920px;margin:auto;padding:26px 30px;background:#fff;border:1px solid var(--line);border-radius:8px}
body.page-general .check-list p{margin-top:0}
body.page-general .check-list ul{margin:12px 0 0;padding-left:22px}
body.page-general .check-list li{margin:8px 0}
body.page-general .quality-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
body.page-general .quality{padding:26px;border-top:3px solid var(--blue);background:#fff}
body.page-general .quality h3{margin:0;color:var(--blue-dark);font-size:18px}
body.page-general .quality p{margin:10px 0 0;color:var(--sub);font-size:14px}
body.page-general .faq{max-width:900px;margin:auto;border-top:1px solid var(--line)}
body.page-general details{border-bottom:1px solid var(--line)}
body.page-general summary{position:relative;padding:22px 46px 22px 0;cursor:pointer;color:var(--blue-dark);font-size:16px;font-weight:700;list-style:none}
body.page-general summary::-webkit-details-marker{display:none}
body.page-general summary:after{content:"+";position:absolute;right:4px;top:18px;color:var(--blue);font-size:25px;font-weight:400}
body.page-general details[open] summary:after{content:"−"}
body.page-general details p{margin:0;padding:0 30px 22px;color:var(--sub);font-size:15px}
body.page-general .info-list{max-width:900px;margin:auto;padding:26px 30px;background:#fff;border:1px solid var(--line);border-radius:8px}
body.page-general .info-list ul{margin:0;padding-left:22px}
body.page-general .info-list li{margin:8px 0}
body.page-general .related-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
body.page-general .related{padding:22px;background:#fff;border:1px solid var(--line);border-radius:8px;text-decoration:none;color:inherit}
body.page-general .related strong{display:block;color:var(--blue-dark)}
body.page-general .related span{display:block;margin-top:6px;color:var(--sub);font-size:13px}
body.page-general .price-strip{max-width:900px;margin:auto;padding:32px 36px;border:1px solid var(--line);border-radius:8px;background:#fff;display:flex;justify-content:space-between;align-items:center;gap:30px}
body.page-general .price-strip strong{font-size:20px;color:var(--blue-dark)}
body.page-general .price-strip p{margin:5px 0 0;color:var(--sub)}
body.page-general .btns{display:flex;gap:12px;flex-wrap:wrap}
body.page-general .btn{display:inline-flex;min-height:52px;padding:0 25px;align-items:center;justify-content:center;border-radius:6px;font-weight:700;text-decoration:none}
body.page-general .btn-primary{background:var(--blue);color:#fff}
body.page-general .btn-outline{background:#fff;color:var(--blue);border:1px solid var(--blue)}
body.page-general .final{text-align:center}
body.page-general .final .section-lead{margin-bottom:26px}
body.page-general footer{padding:58px 0 26px;background:var(--blue-dark);color:#fff}
body.page-general .footer-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}
body.page-general .footer-logo{width:170px;filter:brightness(0) invert(1);opacity:.95}
body.page-general .footer-grid p{font-size:13px;color:rgba(255,255,255,.7)}
body.page-general .footer-nav{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
body.page-general .footer-nav h3{margin:0 0 12px;font-size:14px}
body.page-general .footer-nav a{display:block;margin:8px 0;color:rgba(255,255,255,.74);font-size:13px;text-decoration:none}
body.page-general .copyright{margin-top:35px;padding-top:20px;border-top:1px solid rgba(255,255,255,.18);font-size:11px;color:rgba(255,255,255,.55)}
@media (max-width:800px){body.page-general .container{width:min(var(--max),calc(100% - 40px))}
body.page-general .header-inner{height:64px}
body.page-general .brand img{width:145px}
body.page-general .brand span, body.page-general .gnav>a:not(.contact){display:none}
body.page-general .gnav{gap:0}
body.page-general .gnav .contact{padding:10px 13px;font-size:12px}
body.page-general .breadcrumb{font-size:13px;padding:13px 0}
body.page-general .hero{min-height:330px;background-position:center}
body.page-general .hero-inner{padding:56px 0}
body.page-general .hero h1{font-size:32px}
body.page-general .hero-lead{font-size:16px}
body.page-general section{padding:62px 0}
body.page-general h2{font-size:25px}
body.page-general .section-head{text-align:left;margin-bottom:30px}
body.page-general .section-lead{margin-left:0}
body.page-general .intro-grid, body.page-general .use-grid, body.page-general .finish-grid, body.page-general .quality-grid, body.page-general .related-grid{grid-template-columns:1fr}
body.page-general .intro-grid{gap:28px}
body.page-general .use-grid{gap:0}
body.page-general .finish-grid, body.page-general .quality-grid{gap:14px}
body.page-general .price-strip{display:block;padding:26px 22px}
body.page-general .btns{margin-top:20px;display:grid}
body.page-general .btn{width:100%}
body.page-general .footer-grid, body.page-general .footer-nav{grid-template-columns:1fr}}
@media (min-width:881px){body.page-general .hero{min-height:390px}}
@media (max-width:880px){body.page-general .hero{min-height:330px}}
@media (min-width:881px){body.page-general .hero{
    height:390px;
    min-height:390px;
    padding:0;
  }
body.page-general .hero-inner{
    padding:0;
  }}
@media (max-width:880px){body.page-general .hero{
    height:330px;
    min-height:330px;
    padding:0;
  }
body.page-general .hero-inner{
    padding:0;
  }
body.page-general .hero-lead{
    margin-top:16px;
  }
body.page-general .hero-tags{
    margin-top:16px;
    gap:7px;
  }
body.page-general .hero-tags span{
    padding:5px 9px;
    font-size:12px;
  }}
@media (min-width:881px){body.page-general > section:not(.hero) h2{font-size:31px}}
@media (max-width:880px){body.page-general > section:not(.hero) h2{font-size:25px}}


/* =====================================================================
   service/medical/index.html  [page-medical]
   ===================================================================== */
body.page-medical{
  --blue:#0c66a6;--blue-dark:#0a4f82;--red:#c10f23;--text:#323737;--sub:#5e6670;
  --soft:#f5f7f9;--soft-blue:#eef5fa;--line:#dde3e8;--white:#fff;--max:1120px;
}
body.page-medical *{box-sizing:border-box}
html{scroll-behavior:smooth}
body.page-medical{margin:0;font-family:"Noto Sans JP","Yu Gothic",YuGothic,"Hiragino Kaku Gothic ProN",Meiryo,sans-serif;color:var(--text);background:#fff;line-height:1.85}
body.page-medical a{color:var(--blue)}
body.page-medical img{max-width:100%;height:auto;display:block}
body.page-medical .container{width:min(var(--max),calc(100% - 48px));margin:auto}
body.page-medical .site-header{position:sticky;top:0;z-index:100;background:#fff;border-bottom:1px solid var(--line)}
body.page-medical .header-inner{height:76px;display:flex;align-items:center;justify-content:space-between;gap:28px}
body.page-medical .brand{display:flex;align-items:center;gap:14px;text-decoration:none;color:inherit}
body.page-medical .brand img{width:168px}
body.page-medical .brand span{font-size:12px;color:var(--sub)}
body.page-medical .gnav{display:flex;align-items:center;gap:25px;font-size:14px;font-weight:700}
body.page-medical .gnav a{text-decoration:none;color:var(--text)}
body.page-medical .gnav .contact{padding:12px 18px;border-radius:6px;background:var(--blue);color:#fff}
body.page-medical .breadcrumb{padding:16px 0;background:#fff;border-bottom:1px solid var(--line);font-size:13px;color:var(--sub)}
body.page-medical .breadcrumb a{text-decoration:none;color:var(--blue)}
body.page-medical .hero{min-height:390px;display:flex;align-items:center;position:relative;background:url("../img/service3_img.webp") center 46%/cover no-repeat;color:#fff}
body.page-medical .hero:before{content:"";position:absolute;inset:0;background:rgba(7,78,132,.64)}
body.page-medical .hero-inner{position:relative;max-width:880px;padding:72px 0}
body.page-medical .eyebrow{margin:0 0 11px;font-size:13px;font-weight:700;letter-spacing:.13em;opacity:.92}
body.page-medical .hero h1{margin:0;color:#fff;font-size:44px;line-height:1.35}
body.page-medical .hero-lead{margin:22px 0 0;color:rgba(255,255,255,.97);font-size:18px;line-height:1.9;font-weight:600;text-shadow:0 1px 2px rgba(0,0,0,.12)}
body.page-medical .hero-tags{display:flex;flex-wrap:wrap;gap:9px;margin-top:24px}
body.page-medical .hero-tags span{padding:6px 11px;border:1px solid rgba(255,255,255,.5);border-radius:99px;font-size:13px}
body.page-medical section{padding:88px 0}
body.page-medical .soft{background:var(--soft)}
body.page-medical .soft-blue{background:var(--soft-blue)}
body.page-medical .section-head{max-width:820px;margin:0 auto 42px;text-align:center}
body.page-medical .kicker{margin:0 0 9px;color:var(--blue);font-size:12px;font-weight:700;letter-spacing:.13em}
body.page-medical h2{margin:0;color:var(--blue-dark);font-size:31px;line-height:1.45}
body.page-medical .section-lead{margin:17px auto 0;color:var(--sub);font-size:16px;max-width:760px}
body.page-medical .intro-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:62px;align-items:center}
body.page-medical .intro-grid h2{font-size:30px}
body.page-medical .intro-grid p{margin:16px 0 0}
body.page-medical .intro-grid img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:8px}
body.page-medical .use-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 28px;max-width:980px;margin:auto}
body.page-medical .use-item{padding:20px 0;border-bottom:1px solid var(--line)}
body.page-medical .use-item strong{display:block;color:var(--blue-dark);font-size:17px}
body.page-medical .use-item span{display:block;margin-top:5px;color:var(--sub);font-size:14px}
body.page-medical .reason-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;max-width:980px;margin:auto}
body.page-medical .reason-card{padding:30px;background:#fff;border:1px solid var(--line);border-radius:8px}
body.page-medical .reason-card h3{margin:0;color:var(--blue-dark);font-size:20px}
body.page-medical .reason-card p{margin:12px 0 0;color:var(--sub);font-size:15px}
body.page-medical .reason-card .num{display:block;margin-bottom:8px;color:var(--red);font-size:12px;font-weight:700;letter-spacing:.1em}
body.page-medical .proof-box{max-width:980px;margin:26px auto 0;padding:28px;background:#fff;border:1px solid var(--line);border-radius:8px}
body.page-medical .proof-box h3{margin:0 0 12px;color:var(--blue-dark);font-size:18px}
body.page-medical .proof-box ul{margin:0;padding-left:22px}
body.page-medical .proof-box li{margin:8px 0}
body.page-medical .term-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:46px;align-items:center;max-width:980px;margin:auto}
body.page-medical .term-grid img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:8px}
body.page-medical .term-box{padding:28px;background:#fff;border:1px solid var(--line);border-radius:8px}
body.page-medical .term-box h3{margin:0;color:var(--blue-dark);font-size:20px}
body.page-medical .term-box p{margin:13px 0 0;color:var(--sub)}
body.page-medical .finish-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
body.page-medical .finish-card{padding:28px;background:#fff;border:1px solid var(--line);border-radius:8px}
body.page-medical .finish-card .num{color:var(--red);font-size:12px;font-weight:700;letter-spacing:.1em}
body.page-medical .finish-card h3{margin:8px 0 0;color:var(--blue-dark);font-size:20px}
body.page-medical .finish-card p{margin:12px 0 0;color:var(--sub);font-size:15px}
body.page-medical .check-list{max-width:920px;margin:auto;padding:26px 30px;background:#fff;border:1px solid var(--line);border-radius:8px}
body.page-medical .check-list p{margin-top:0}
body.page-medical .check-list ul{margin:12px 0 0;padding-left:22px}
body.page-medical .check-list li{margin:8px 0}
body.page-medical .security-box{max-width:920px;margin:auto;padding:30px;background:var(--blue-dark);color:#fff;border-radius:8px}
body.page-medical .security-box h3{margin:0;color:#fff;font-size:21px}
body.page-medical .security-box p{margin:12px 0 0;color:rgba(255,255,255,.84)}
body.page-medical .security-box a{color:#fff}
body.page-medical .faq{max-width:900px;margin:auto;border-top:1px solid var(--line)}
body.page-medical details{border-bottom:1px solid var(--line)}
body.page-medical summary{position:relative;padding:22px 46px 22px 0;cursor:pointer;color:var(--blue-dark);font-size:16px;font-weight:700;list-style:none}
body.page-medical summary::-webkit-details-marker{display:none}
body.page-medical summary:after{content:"+";position:absolute;right:4px;top:18px;color:var(--blue);font-size:25px;font-weight:400}
body.page-medical details[open] summary:after{content:"−"}
body.page-medical details p{margin:0;padding:0 30px 22px;color:var(--sub);font-size:15px}
body.page-medical .info-list{max-width:900px;margin:auto;padding:26px 30px;background:#fff;border:1px solid var(--line);border-radius:8px}
body.page-medical .info-list ul{margin:0;padding-left:22px}
body.page-medical .info-list li{margin:8px 0}
body.page-medical .related-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
body.page-medical .related{padding:22px;background:#fff;border:1px solid var(--line);border-radius:8px;text-decoration:none;color:inherit}
body.page-medical .related strong{display:block;color:var(--blue-dark)}
body.page-medical .related span{display:block;margin-top:6px;color:var(--sub);font-size:13px}
body.page-medical .price-strip{max-width:900px;margin:auto;padding:32px 36px;border:1px solid var(--line);border-radius:8px;background:#fff;display:flex;justify-content:space-between;align-items:center;gap:30px}
body.page-medical .price-strip strong{font-size:20px;color:var(--blue-dark)}
body.page-medical .price-strip p{margin:5px 0 0;color:var(--sub)}
body.page-medical .btns{display:flex;gap:12px;flex-wrap:wrap}
body.page-medical .btn{display:inline-flex;min-height:52px;padding:0 25px;align-items:center;justify-content:center;border-radius:6px;font-weight:700;text-decoration:none}
body.page-medical .btn-primary{background:var(--blue);color:#fff}
body.page-medical .btn-outline{background:#fff;color:var(--blue);border:1px solid var(--blue)}
body.page-medical .final{text-align:center}
body.page-medical .final .section-lead{margin-bottom:26px}
body.page-medical footer{padding:58px 0 26px;background:var(--blue-dark);color:#fff}
body.page-medical .footer-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}
body.page-medical .footer-logo{width:170px;filter:brightness(0) invert(1);opacity:.95}
body.page-medical .footer-grid p{font-size:13px;color:rgba(255,255,255,.7)}
body.page-medical .footer-nav{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
body.page-medical .footer-nav h3{margin:0 0 12px;font-size:14px}
body.page-medical .footer-nav a{display:block;margin:8px 0;color:rgba(255,255,255,.74);font-size:13px;text-decoration:none}
body.page-medical .copyright{margin-top:35px;padding-top:20px;border-top:1px solid rgba(255,255,255,.18);font-size:11px;color:rgba(255,255,255,.55)}
@media (max-width:800px){body.page-medical .container{width:min(var(--max),calc(100% - 40px))}
body.page-medical .header-inner{height:64px}
body.page-medical .brand img{width:145px}
body.page-medical .brand span, body.page-medical .gnav>a:not(.contact){display:none}
body.page-medical .gnav{gap:0}
body.page-medical .gnav .contact{padding:10px 13px;font-size:12px}
body.page-medical .breadcrumb{font-size:13px;padding:13px 0}
body.page-medical .hero{min-height:330px;background-position:center}
body.page-medical .hero-inner{padding:56px 0}
body.page-medical .hero h1{font-size:32px}
body.page-medical .hero-lead{font-size:16px}
body.page-medical section{padding:62px 0}
body.page-medical h2{font-size:25px}
body.page-medical .section-head{text-align:left;margin-bottom:30px}
body.page-medical .section-lead{margin-left:0}
body.page-medical .intro-grid, body.page-medical .use-grid, body.page-medical .reason-grid, body.page-medical .term-grid, body.page-medical .finish-grid, body.page-medical .related-grid{grid-template-columns:1fr}
body.page-medical .intro-grid, body.page-medical .term-grid{gap:28px}
body.page-medical .use-grid{gap:0}
body.page-medical .reason-grid, body.page-medical .finish-grid{gap:14px}
body.page-medical .price-strip{display:block;padding:26px 22px}
body.page-medical .btns{margin-top:20px;display:grid}
body.page-medical .btn{width:100%}
body.page-medical .footer-grid, body.page-medical .footer-nav{grid-template-columns:1fr}}
@media (min-width:881px){body.page-medical .hero{height:390px;min-height:390px;padding:0}
body.page-medical .hero-inner{padding:0}}
@media (max-width:880px){body.page-medical .hero{height:330px;min-height:330px;padding:0}
body.page-medical .hero-inner{padding:0}
body.page-medical .hero-lead{margin-top:16px}
body.page-medical .hero-tags{margin-top:16px;gap:7px}
body.page-medical .hero-tags span{padding:5px 9px;font-size:12px}}
@media (min-width:881px){body.page-medical > section:not(.hero) h2{font-size:31px}}
@media (max-width:880px){body.page-medical > section:not(.hero) h2{font-size:25px}}


/* =====================================================================
   service/summary/index.html  [page-summary]
   ===================================================================== */
body.page-summary{
  --blue:#0c66a6;--blue-dark:#0a4f82;--red:#c10f23;--text:#323737;--sub:#5e6670;
  --soft:#f5f7f9;--soft-blue:#eef5fa;--line:#dde3e8;--white:#fff;--max:1120px;
}
body.page-summary *{box-sizing:border-box}
html{scroll-behavior:smooth}
body.page-summary{margin:0;font-family:"Noto Sans JP","Yu Gothic",YuGothic,"Hiragino Kaku Gothic ProN",Meiryo,sans-serif;color:var(--text);background:#fff;line-height:1.85}
body.page-summary a{color:var(--blue)}
body.page-summary img{max-width:100%;height:auto;display:block}
body.page-summary .container{width:min(var(--max),calc(100% - 48px));margin:auto}
body.page-summary .site-header{position:sticky;top:0;z-index:100;background:#fff;border-bottom:1px solid var(--line)}
body.page-summary .header-inner{height:76px;display:flex;align-items:center;justify-content:space-between;gap:28px}
body.page-summary .brand{display:flex;align-items:center;gap:14px;text-decoration:none;color:inherit}
body.page-summary .brand img{width:168px}
body.page-summary .brand span{font-size:12px;color:var(--sub)}
body.page-summary .gnav{display:flex;align-items:center;gap:25px;font-size:14px;font-weight:700}
body.page-summary .gnav a{text-decoration:none;color:var(--text)}
body.page-summary .gnav .contact{padding:12px 18px;border-radius:6px;background:var(--blue);color:#fff}
body.page-summary .breadcrumb{padding:16px 0;background:#fff;border-bottom:1px solid var(--line);font-size:13px;color:var(--sub)}
body.page-summary .breadcrumb a{text-decoration:none;color:var(--blue)}
body.page-summary .hero{min-height:390px;display:flex;align-items:center;position:relative;background:url("../img/service1_img.webp") center 45%/cover no-repeat;color:#fff}
body.page-summary .hero:before{content:"";position:absolute;inset:0;background:rgba(7,78,132,.64)}
body.page-summary .hero-inner{position:relative;max-width:900px;padding:72px 0}
body.page-summary .eyebrow{margin:0 0 11px;font-size:13px;font-weight:700;letter-spacing:.13em;opacity:.92}
body.page-summary .hero h1{margin:0;color:#fff;font-size:44px;line-height:1.35}
body.page-summary .hero-lead{margin:22px 0 0;color:rgba(255,255,255,.97);font-size:18px;line-height:1.9;font-weight:600;text-shadow:0 1px 2px rgba(0,0,0,.12)}
body.page-summary .hero-tags{display:flex;flex-wrap:wrap;gap:9px;margin-top:24px}
body.page-summary .hero-tags span{padding:6px 11px;border:1px solid rgba(255,255,255,.5);border-radius:99px;font-size:13px}
body.page-summary section{padding:88px 0}
body.page-summary .soft{background:var(--soft)}
body.page-summary .soft-blue{background:var(--soft-blue)}
body.page-summary .section-head{max-width:820px;margin:0 auto 42px;text-align:center}
body.page-summary .kicker{margin:0 0 9px;color:var(--blue);font-size:12px;font-weight:700;letter-spacing:.13em}
body.page-summary h2{margin:0;color:var(--blue-dark);font-size:31px;line-height:1.45}
body.page-summary .section-lead{margin:17px auto 0;color:var(--sub);font-size:16px;max-width:760px}
body.page-summary .intro-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:62px;align-items:center}
body.page-summary .intro-grid h2{font-size:30px}
body.page-summary .intro-grid p{margin:16px 0 0}
body.page-summary .intro-grid img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:8px}
body.page-summary .quality-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;max-width:980px;margin:auto}
body.page-summary .quality-card{padding:30px;background:#fff;border:1px solid var(--line);border-radius:8px}
body.page-summary .quality-card .num{display:block;margin-bottom:8px;color:var(--red);font-size:12px;font-weight:700;letter-spacing:.1em}
body.page-summary .quality-card h3{margin:0;color:var(--blue-dark);font-size:20px}
body.page-summary .quality-card p{margin:12px 0 0;color:var(--sub);font-size:15px}
body.page-summary .example-box{max-width:980px;margin:26px auto 0;padding:28px;background:#fff;border:1px solid var(--line);border-radius:8px}
body.page-summary .example-box h3{margin:0 0 12px;color:var(--blue-dark);font-size:18px}
body.page-summary .example-box ul{margin:0;padding-left:22px}
body.page-summary .example-box li{margin:8px 0}
body.page-summary .use-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 28px;max-width:980px;margin:auto}
body.page-summary .use-item{padding:20px 0;border-bottom:1px solid var(--line)}
body.page-summary .use-item strong{display:block;color:var(--blue-dark);font-size:17px}
body.page-summary .use-item span{display:block;margin-top:5px;color:var(--sub);font-size:14px}
body.page-summary .suitable{max-width:920px;margin:auto;padding:28px 30px;background:#fff;border:1px solid var(--line);border-radius:8px}
body.page-summary .suitable p{margin-top:0}
body.page-summary .suitable ul{margin:12px 0 0;padding-left:22px}
body.page-summary .suitable li{margin:8px 0}
body.page-summary .process-wrap{display:grid;grid-template-columns:.92fr 1.08fr;gap:46px;align-items:center;max-width:980px;margin:auto}
body.page-summary .process-wrap img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:8px}
body.page-summary .process-list{border-top:1px solid var(--line)}
body.page-summary .process-item{display:grid;grid-template-columns:54px 1fr;gap:18px;padding:21px 0;border-bottom:1px solid var(--line)}
body.page-summary .process-item b{color:var(--red);font-size:13px;letter-spacing:.08em}
body.page-summary .process-item h3{margin:0;color:var(--blue-dark);font-size:18px}
body.page-summary .process-item p{margin:6px 0 0;color:var(--sub);font-size:14px}
body.page-summary .output-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
body.page-summary .output-card{padding:24px;background:#fff;border:1px solid var(--line);border-radius:8px}
body.page-summary .output-card h3{margin:0;color:var(--blue-dark);font-size:18px}
body.page-summary .output-card p{margin:10px 0 0;color:var(--sub);font-size:14px}
body.page-summary .faq{max-width:900px;margin:auto;border-top:1px solid var(--line)}
body.page-summary details{border-bottom:1px solid var(--line)}
body.page-summary summary{position:relative;padding:22px 46px 22px 0;cursor:pointer;color:var(--blue-dark);font-size:16px;font-weight:700;list-style:none}
body.page-summary summary::-webkit-details-marker{display:none}
body.page-summary summary:after{content:"+";position:absolute;right:4px;top:18px;color:var(--blue);font-size:25px;font-weight:400}
body.page-summary details[open] summary:after{content:"−"}
body.page-summary details p{margin:0;padding:0 30px 22px;color:var(--sub);font-size:15px}
body.page-summary .info-list{max-width:900px;margin:auto;padding:26px 30px;background:#fff;border:1px solid var(--line);border-radius:8px}
body.page-summary .info-list ul{margin:0;padding-left:22px}
body.page-summary .info-list li{margin:8px 0}
body.page-summary .related-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
body.page-summary .related{padding:22px;background:#fff;border:1px solid var(--line);border-radius:8px;text-decoration:none;color:inherit}
body.page-summary .related strong{display:block;color:var(--blue-dark)}
body.page-summary .related span{display:block;margin-top:6px;color:var(--sub);font-size:13px}
body.page-summary .price-strip{max-width:900px;margin:auto;padding:32px 36px;border:1px solid var(--line);border-radius:8px;background:#fff;display:flex;justify-content:space-between;align-items:center;gap:30px}
body.page-summary .price-strip strong{font-size:20px;color:var(--blue-dark)}
body.page-summary .price-strip p{margin:5px 0 0;color:var(--sub)}
body.page-summary .btns{display:flex;gap:12px;flex-wrap:wrap}
body.page-summary .btn{display:inline-flex;min-height:52px;padding:0 25px;align-items:center;justify-content:center;border-radius:6px;font-weight:700;text-decoration:none}
body.page-summary .btn-primary{background:var(--blue);color:#fff}
body.page-summary .btn-outline{background:#fff;color:var(--blue);border:1px solid var(--blue)}
body.page-summary .final{text-align:center}
body.page-summary .final .section-lead{margin-bottom:26px}
body.page-summary footer{padding:58px 0 26px;background:var(--blue-dark);color:#fff}
body.page-summary .footer-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}
body.page-summary .footer-logo{width:170px;filter:brightness(0) invert(1);opacity:.95}
body.page-summary .footer-grid p{font-size:13px;color:rgba(255,255,255,.7)}
body.page-summary .footer-nav{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
body.page-summary .footer-nav h3{margin:0 0 12px;font-size:14px}
body.page-summary .footer-nav a{display:block;margin:8px 0;color:rgba(255,255,255,.74);font-size:13px;text-decoration:none}
body.page-summary .copyright{margin-top:35px;padding-top:20px;border-top:1px solid rgba(255,255,255,.18);font-size:11px;color:rgba(255,255,255,.55)}
@media (max-width:800px){body.page-summary .container{width:min(var(--max),calc(100% - 40px))}
body.page-summary .header-inner{height:64px}
body.page-summary .brand img{width:145px}
body.page-summary .brand span, body.page-summary .gnav>a:not(.contact){display:none}
body.page-summary .gnav{gap:0}
body.page-summary .gnav .contact{padding:10px 13px;font-size:12px}
body.page-summary .breadcrumb{font-size:13px;padding:13px 0}
body.page-summary .hero{min-height:330px;background-position:center}
body.page-summary .hero-inner{padding:56px 0}
body.page-summary .hero h1{font-size:32px}
body.page-summary .hero-lead{font-size:16px}
body.page-summary section{padding:62px 0}
body.page-summary h2{font-size:25px}
body.page-summary .section-head{text-align:left;margin-bottom:30px}
body.page-summary .section-lead{margin-left:0}
body.page-summary .intro-grid, body.page-summary .quality-grid, body.page-summary .use-grid, body.page-summary .process-wrap, body.page-summary .output-grid, body.page-summary .related-grid{grid-template-columns:1fr}
body.page-summary .intro-grid, body.page-summary .process-wrap{gap:28px}
body.page-summary .quality-grid, body.page-summary .output-grid{gap:14px}
body.page-summary .use-grid{gap:0}
body.page-summary .price-strip{display:block;padding:26px 22px}
body.page-summary .btns{margin-top:20px;display:grid}
body.page-summary .btn{width:100%}
body.page-summary .footer-grid, body.page-summary .footer-nav{grid-template-columns:1fr}}
@media (min-width:881px){body.page-summary .hero{height:390px;min-height:390px;padding:0}
body.page-summary .hero-inner{padding:0}}
@media (max-width:880px){body.page-summary .hero{height:330px;min-height:330px;padding:0}
body.page-summary .hero-inner{padding:0}
body.page-summary .hero-lead{margin-top:16px}
body.page-summary .hero-tags{margin-top:16px;gap:7px}
body.page-summary .hero-tags span{padding:5px 9px;font-size:12px}}
@media (min-width:881px){body.page-summary > section:not(.hero) h2{font-size:31px}}
@media (max-width:880px){body.page-summary > section:not(.hero) h2{font-size:25px}}


/* =====================================================================
   service/translation/index.html  [page-translation]
   ===================================================================== */
body.page-translation{
  --blue:#0c66a6;--blue-dark:#0a4f82;--red:#c10f23;--text:#323737;--sub:#5e6670;
  --soft:#f5f7f9;--soft-blue:#eef5fa;--line:#dde3e8;--white:#fff;--max:1120px;
}
body.page-translation *{box-sizing:border-box}
html{scroll-behavior:smooth}
body.page-translation{margin:0;font-family:"Noto Sans JP","Yu Gothic",YuGothic,"Hiragino Kaku Gothic ProN",Meiryo,sans-serif;color:var(--text);background:#fff;line-height:1.85}
body.page-translation a{color:var(--blue)}
body.page-translation img{max-width:100%;height:auto;display:block}
body.page-translation .container{width:min(var(--max),calc(100% - 48px));margin:auto}
body.page-translation .site-header{position:sticky;top:0;z-index:100;background:#fff;border-bottom:1px solid var(--line)}
body.page-translation .header-inner{height:76px;display:flex;align-items:center;justify-content:space-between;gap:28px}
body.page-translation .brand{display:flex;align-items:center;gap:14px;text-decoration:none;color:inherit}
body.page-translation .brand img{width:168px}
body.page-translation .brand span{font-size:12px;color:var(--sub)}
body.page-translation .gnav{display:flex;align-items:center;gap:25px;font-size:14px;font-weight:700}
body.page-translation .gnav a{text-decoration:none;color:var(--text)}
body.page-translation .gnav .contact{padding:12px 18px;border-radius:6px;background:var(--blue);color:#fff}
body.page-translation .breadcrumb{padding:16px 0;background:#fff;border-bottom:1px solid var(--line);font-size:13px;color:var(--sub)}
body.page-translation .breadcrumb a{text-decoration:none;color:var(--blue)}
body.page-translation .hero{min-height:390px;display:flex;align-items:center;position:relative;background:url("../img/service2_img.webp") center 48%/cover no-repeat;color:#fff}
body.page-translation .hero:before{content:"";position:absolute;inset:0;background:rgba(7,78,132,.64)}
body.page-translation .hero-inner{position:relative;max-width:900px;padding:72px 0}
body.page-translation .eyebrow{margin:0 0 11px;font-size:13px;font-weight:700;letter-spacing:.13em;opacity:.92}
body.page-translation .hero h1{margin:0;color:#fff;font-size:44px;line-height:1.35}
body.page-translation .hero-lead{margin:22px 0 0;color:rgba(255,255,255,.97);font-size:18px;line-height:1.9;font-weight:600;text-shadow:0 1px 2px rgba(0,0,0,.12)}
body.page-translation .hero-tags{display:flex;flex-wrap:wrap;gap:9px;margin-top:24px}
body.page-translation .hero-tags span{padding:6px 11px;border:1px solid rgba(255,255,255,.5);border-radius:99px;font-size:13px}
body.page-translation section{padding:88px 0}
body.page-translation .soft{background:var(--soft)}
body.page-translation .soft-blue{background:var(--soft-blue)}
body.page-translation .section-head{max-width:820px;margin:0 auto 42px;text-align:center}
body.page-translation .kicker{margin:0 0 9px;color:var(--blue);font-size:12px;font-weight:700;letter-spacing:.13em}
body.page-translation h2{margin:0;color:var(--blue-dark);font-size:31px;line-height:1.45}
body.page-translation .section-lead{margin:17px auto 0;color:var(--sub);font-size:16px;max-width:760px}
body.page-translation .intro-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:62px;align-items:center}
body.page-translation .intro-grid h2{font-size:30px}
body.page-translation .intro-grid p{margin:16px 0 0}
body.page-translation .intro-grid img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:8px}
body.page-translation .notice-box{max-width:980px;margin:0 auto;padding:24px 28px;border:1px solid #cfddea;background:#f7fbff;border-radius:8px}
body.page-translation .notice-box h3{margin:0;color:var(--blue-dark);font-size:18px}
body.page-translation .notice-box p{margin:9px 0 0;color:var(--sub)}
body.page-translation .notice-box a{font-weight:700}
body.page-translation .reason-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
body.page-translation .reason-card{padding:28px;background:#fff;border:1px solid var(--line);border-radius:8px}
body.page-translation .reason-card .num{display:block;margin-bottom:8px;color:var(--red);font-size:12px;font-weight:700;letter-spacing:.1em}
body.page-translation .reason-card h3{margin:0;color:var(--blue-dark);font-size:19px}
body.page-translation .reason-card p{margin:11px 0 0;color:var(--sub);font-size:14px}
body.page-translation .detail-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:48px;align-items:center;max-width:980px;margin:auto}
body.page-translation .detail-grid img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:8px}
body.page-translation .detail-box{padding:28px;background:#fff;border:1px solid var(--line);border-radius:8px}
body.page-translation .detail-box h3{margin:0;color:var(--blue-dark);font-size:20px}
body.page-translation .detail-box p{margin:13px 0 0;color:var(--sub)}
body.page-translation .use-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 28px;max-width:980px;margin:auto}
body.page-translation .use-item{padding:20px 0;border-bottom:1px solid var(--line)}
body.page-translation .use-item strong{display:block;color:var(--blue-dark);font-size:17px}
body.page-translation .use-item span{display:block;margin-top:5px;color:var(--sub);font-size:14px}
body.page-translation .flow-grid{max-width:880px;margin:auto}
body.page-translation .flow-step{position:relative;display:grid;grid-template-columns:58px 1fr;gap:18px;padding:22px 0;border-bottom:1px solid var(--line)}
body.page-translation .flow-step:first-child{border-top:1px solid var(--line)}
body.page-translation .flow-step b{color:var(--red);font-size:13px;letter-spacing:.08em}
body.page-translation .flow-step h3{margin:0;color:var(--blue-dark);font-size:18px}
body.page-translation .flow-step p{margin:6px 0 0;color:var(--sub);font-size:14px}
body.page-translation .lang-box{max-width:900px;margin:auto;padding:28px 30px;background:#fff;border:1px solid var(--line);border-radius:8px}
body.page-translation .lang-box p{margin:0}
body.page-translation .lang-box ul{margin:14px 0 0;padding-left:22px}
body.page-translation .lang-box li{margin:8px 0}
body.page-translation .suitable{max-width:920px;margin:auto;padding:28px 30px;background:#fff;border:1px solid var(--line);border-radius:8px}
body.page-translation .suitable p{margin-top:0}
body.page-translation .suitable ul{margin:12px 0 0;padding-left:22px}
body.page-translation .suitable li{margin:8px 0}
body.page-translation .faq{max-width:900px;margin:auto;border-top:1px solid var(--line)}
body.page-translation details{border-bottom:1px solid var(--line)}
body.page-translation summary{position:relative;padding:22px 46px 22px 0;cursor:pointer;color:var(--blue-dark);font-size:16px;font-weight:700;list-style:none}
body.page-translation summary::-webkit-details-marker{display:none}
body.page-translation summary:after{content:"+";position:absolute;right:4px;top:18px;color:var(--blue);font-size:25px;font-weight:400}
body.page-translation details[open] summary:after{content:"−"}
body.page-translation details p{margin:0;padding:0 30px 22px;color:var(--sub);font-size:15px}
body.page-translation .info-list{max-width:900px;margin:auto;padding:26px 30px;background:#fff;border:1px solid var(--line);border-radius:8px}
body.page-translation .info-list ul{margin:0;padding-left:22px}
body.page-translation .info-list li{margin:8px 0}
body.page-translation .related-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
body.page-translation .related{padding:22px;background:#fff;border:1px solid var(--line);border-radius:8px;text-decoration:none;color:inherit}
body.page-translation .related strong{display:block;color:var(--blue-dark)}
body.page-translation .related span{display:block;margin-top:6px;color:var(--sub);font-size:13px}
body.page-translation .price-strip{max-width:900px;margin:auto;padding:32px 36px;border:1px solid var(--line);border-radius:8px;background:#fff;display:flex;justify-content:space-between;align-items:center;gap:30px}
body.page-translation .price-strip strong{font-size:20px;color:var(--blue-dark)}
body.page-translation .price-strip p{margin:5px 0 0;color:var(--sub)}
body.page-translation .btns{display:flex;gap:12px;flex-wrap:wrap}
body.page-translation .btn{display:inline-flex;min-height:52px;padding:0 25px;align-items:center;justify-content:center;border-radius:6px;font-weight:700;text-decoration:none}
body.page-translation .btn-primary{background:var(--blue);color:#fff}
body.page-translation .btn-outline{background:#fff;color:var(--blue);border:1px solid var(--blue)}
body.page-translation .final{text-align:center}
body.page-translation .final .section-lead{margin-bottom:26px}
body.page-translation footer{padding:58px 0 26px;background:var(--blue-dark);color:#fff}
body.page-translation .footer-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}
body.page-translation .footer-logo{width:170px;filter:brightness(0) invert(1);opacity:.95}
body.page-translation .footer-grid p{font-size:13px;color:rgba(255,255,255,.7)}
body.page-translation .footer-nav{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
body.page-translation .footer-nav h3{margin:0 0 12px;font-size:14px}
body.page-translation .footer-nav a{display:block;margin:8px 0;color:rgba(255,255,255,.74);font-size:13px;text-decoration:none}
body.page-translation .copyright{margin-top:35px;padding-top:20px;border-top:1px solid rgba(255,255,255,.18);font-size:11px;color:rgba(255,255,255,.55)}
@media (max-width:800px){body.page-translation .container{width:min(var(--max),calc(100% - 40px))}
body.page-translation .header-inner{height:64px}
body.page-translation .brand img{width:145px}
body.page-translation .brand span, body.page-translation .gnav>a:not(.contact){display:none}
body.page-translation .gnav{gap:0}
body.page-translation .gnav .contact{padding:10px 13px;font-size:12px}
body.page-translation .breadcrumb{font-size:13px;padding:13px 0}
body.page-translation .hero{min-height:330px;background-position:center}
body.page-translation .hero-inner{padding:56px 0}
body.page-translation .hero h1{font-size:32px}
body.page-translation .hero-lead{font-size:16px}
body.page-translation section{padding:62px 0}
body.page-translation h2{font-size:25px}
body.page-translation .section-head{text-align:left;margin-bottom:30px}
body.page-translation .section-lead{margin-left:0}
body.page-translation .intro-grid, body.page-translation .reason-grid, body.page-translation .detail-grid, body.page-translation .use-grid, body.page-translation .related-grid{grid-template-columns:1fr}
body.page-translation .intro-grid, body.page-translation .detail-grid{gap:28px}
body.page-translation .reason-grid{gap:14px}
body.page-translation .use-grid{gap:0}
body.page-translation .price-strip{display:block;padding:26px 22px}
body.page-translation .btns{margin-top:20px;display:grid}
body.page-translation .btn{width:100%}
body.page-translation .footer-grid, body.page-translation .footer-nav{grid-template-columns:1fr}}
@media (min-width:881px){body.page-translation .hero{height:390px;min-height:390px;padding:0}
body.page-translation .hero-inner{padding:0}}
@media (max-width:880px){body.page-translation .hero{height:330px;min-height:330px;padding:0}
body.page-translation .hero-inner{padding:0}
body.page-translation .hero-lead{margin-top:16px}
body.page-translation .hero-tags{margin-top:16px;gap:7px}
body.page-translation .hero-tags span{padding:5px 9px;font-size:12px}}
@media (min-width:881px){body.page-translation > section:not(.hero) h2{font-size:31px}}
@media (max-width:880px){body.page-translation > section:not(.hero) h2{font-size:25px}}


/* =====================================================================
   service/foreign/index.html  [page-foreign]
   ===================================================================== */
body.page-foreign{
  --blue:#0c66a6;--blue-dark:#0a4f82;--red:#c10f23;--text:#323737;--sub:#5e6670;
  --soft:#f5f7f9;--soft-blue:#eef5fa;--line:#dde3e8;--white:#fff;--max:1120px;
}
body.page-foreign *{box-sizing:border-box}
html{scroll-behavior:smooth}
body.page-foreign{margin:0;font-family:"Noto Sans JP","Yu Gothic",YuGothic,"Hiragino Kaku Gothic ProN",Meiryo,sans-serif;color:var(--text);background:#fff;line-height:1.85}
body.page-foreign a{color:var(--blue)}
body.page-foreign img{max-width:100%;height:auto;display:block}
body.page-foreign .container{width:min(var(--max),calc(100% - 48px));margin:auto}
body.page-foreign .site-header{position:sticky;top:0;z-index:100;background:#fff;border-bottom:1px solid var(--line)}
body.page-foreign .header-inner{height:76px;display:flex;align-items:center;justify-content:space-between;gap:28px}
body.page-foreign .brand{display:flex;align-items:center;gap:14px;text-decoration:none;color:inherit}
body.page-foreign .brand img{width:168px}
body.page-foreign .brand span{font-size:12px;color:var(--sub)}
body.page-foreign .gnav{display:flex;align-items:center;gap:25px;font-size:14px;font-weight:700}
body.page-foreign .gnav a{text-decoration:none;color:var(--text)}
body.page-foreign .gnav .contact{padding:12px 18px;border-radius:6px;background:var(--blue);color:#fff}
body.page-foreign .breadcrumb{padding:16px 0;background:#fff;border-bottom:1px solid var(--line);font-size:13px;color:var(--sub)}
body.page-foreign .breadcrumb a{text-decoration:none}
body.page-foreign .hero{min-height:390px;display:flex;align-items:center;position:relative;background:url("../img/service5_img.webp") center 45%/cover no-repeat;color:#fff}
body.page-foreign .hero:before{content:"";position:absolute;inset:0;background:rgba(7,78,132,.64)}
body.page-foreign .hero-inner{position:relative;max-width:920px;padding:72px 0}
body.page-foreign .eyebrow{margin:0 0 11px;font-size:13px;font-weight:700;letter-spacing:.13em;opacity:.92}
body.page-foreign .hero h1{margin:0;color:#fff;font-size:44px;line-height:1.35}
body.page-foreign .hero-lead{margin:22px 0 0;color:rgba(255,255,255,.97);font-size:18px;line-height:1.9;font-weight:600}
body.page-foreign .hero-tags{display:flex;flex-wrap:wrap;gap:9px;margin-top:24px}
body.page-foreign .hero-tags span{padding:6px 11px;border:1px solid rgba(255,255,255,.5);border-radius:99px;font-size:13px}
body.page-foreign section{padding:88px 0}
body.page-foreign .soft{background:var(--soft)}
body.page-foreign .soft-blue{background:var(--soft-blue)}
body.page-foreign .section-head{max-width:820px;margin:0 auto 42px;text-align:center}
body.page-foreign .kicker{margin:0 0 9px;color:var(--blue);font-size:12px;font-weight:700;letter-spacing:.13em}
body.page-foreign h2{margin:0;color:var(--blue-dark);font-size:31px;line-height:1.45}
body.page-foreign .section-lead{margin:17px auto 0;color:var(--sub);font-size:16px;max-width:760px}
body.page-foreign .intro-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:62px;align-items:center}
body.page-foreign .intro-grid h2{font-size:30px}
body.page-foreign .intro-grid p{margin:16px 0 0}
body.page-foreign .intro-grid img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:8px}
body.page-foreign .notice-box{max-width:980px;margin:auto;padding:24px 28px;border:1px solid #cfddea;background:#f7fbff;border-radius:8px}
body.page-foreign .notice-box h3{margin:0;color:var(--blue-dark);font-size:18px}
body.page-foreign .notice-box p{margin:9px 0 0;color:var(--sub)}
body.page-foreign .notice-box a{font-weight:700}
body.page-foreign .choose-box{max-width:980px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:18px}
body.page-foreign .choose{padding:28px;border:1px solid var(--line);border-radius:8px;background:#fff}
body.page-foreign .choose.current{border-top:3px solid var(--blue)}
body.page-foreign .choose h3{margin:0;color:var(--blue-dark);font-size:19px}
body.page-foreign .choose p{margin:10px 0 0;color:var(--sub);font-size:15px}
body.page-foreign .reason-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
body.page-foreign .reason-card{padding:28px;background:#fff;border:1px solid var(--line);border-radius:8px}
body.page-foreign .reason-card .num{display:block;margin-bottom:8px;color:var(--red);font-size:12px;font-weight:700}
body.page-foreign .reason-card h3{margin:0;color:var(--blue-dark);font-size:19px}
body.page-foreign .reason-card p{margin:11px 0 0;color:var(--sub);font-size:14px}
body.page-foreign .spec-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:48px;align-items:center;max-width:980px;margin:auto}
body.page-foreign .spec-grid img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:8px}
body.page-foreign .spec-list{border-top:1px solid var(--line)}
body.page-foreign .spec-item{padding:21px 0;border-bottom:1px solid var(--line)}
body.page-foreign .spec-item h3{margin:0;color:var(--blue-dark);font-size:18px}
body.page-foreign .spec-item p{margin:6px 0 0;color:var(--sub);font-size:14px}
body.page-foreign .scene-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 28px;max-width:980px;margin:auto}
body.page-foreign .scene{padding:20px 0;border-bottom:1px solid var(--line)}
body.page-foreign .scene strong{display:block;color:var(--blue-dark);font-size:17px}
body.page-foreign .scene span{display:block;margin-top:5px;color:var(--sub);font-size:14px}
body.page-foreign .language-box{max-width:900px;margin:auto;padding:28px 30px;background:#fff;border:1px solid var(--line);border-radius:8px}
body.page-foreign .language-box p{margin:0}
body.page-foreign .language-box ul{margin:14px 0 0;padding-left:22px}
body.page-foreign .language-box li{margin:8px 0}
body.page-foreign .faq{max-width:900px;margin:auto;border-top:1px solid var(--line)}
body.page-foreign details{border-bottom:1px solid var(--line)}
body.page-foreign summary{position:relative;padding:22px 46px 22px 0;cursor:pointer;color:var(--blue-dark);font-size:16px;font-weight:700;list-style:none}
body.page-foreign summary::-webkit-details-marker{display:none}
body.page-foreign summary:after{content:"+";position:absolute;right:4px;top:18px;color:var(--blue);font-size:25px;font-weight:400}
body.page-foreign details[open] summary:after{content:"−"}
body.page-foreign details p{margin:0;padding:0 30px 22px;color:var(--sub);font-size:15px}
body.page-foreign .info-list{max-width:900px;margin:auto;padding:26px 30px;background:#fff;border:1px solid var(--line);border-radius:8px}
body.page-foreign .info-list ul{margin:0;padding-left:22px}
body.page-foreign .info-list li{margin:8px 0}
body.page-foreign .related-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
body.page-foreign .related{padding:22px;background:#fff;border:1px solid var(--line);border-radius:8px;text-decoration:none;color:inherit}
body.page-foreign .related strong{display:block;color:var(--blue-dark)}
body.page-foreign .related span{display:block;margin-top:6px;color:var(--sub);font-size:13px}
body.page-foreign .price-strip{max-width:900px;margin:auto;padding:32px 36px;border:1px solid var(--line);border-radius:8px;background:#fff;display:flex;justify-content:space-between;align-items:center;gap:30px}
body.page-foreign .price-strip strong{font-size:20px;color:var(--blue-dark)}
body.page-foreign .price-strip p{margin:5px 0 0;color:var(--sub)}
body.page-foreign .btns{display:flex;gap:12px;flex-wrap:wrap}
body.page-foreign .btn{display:inline-flex;min-height:52px;padding:0 25px;align-items:center;justify-content:center;border-radius:6px;font-weight:700;text-decoration:none}
body.page-foreign .btn-primary{background:var(--blue);color:#fff}
body.page-foreign .btn-outline{background:#fff;color:var(--blue);border:1px solid var(--blue)}
body.page-foreign .final{text-align:center}
body.page-foreign .final .section-lead{margin-bottom:26px}
body.page-foreign footer{padding:58px 0 26px;background:var(--blue-dark);color:#fff}
body.page-foreign .footer-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}
body.page-foreign .footer-logo{width:170px;filter:brightness(0) invert(1);opacity:.95}
body.page-foreign .footer-grid p{font-size:13px;color:rgba(255,255,255,.7)}
body.page-foreign .footer-nav{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
body.page-foreign .footer-nav h3{margin:0 0 12px;font-size:14px}
body.page-foreign .footer-nav a{display:block;margin:8px 0;color:rgba(255,255,255,.74);font-size:13px;text-decoration:none}
body.page-foreign .copyright{margin-top:35px;padding-top:20px;border-top:1px solid rgba(255,255,255,.18);font-size:11px;color:rgba(255,255,255,.55)}
@media (max-width:800px){body.page-foreign .container{width:min(var(--max),calc(100% - 40px))}
body.page-foreign .header-inner{height:64px}
body.page-foreign .brand img{width:145px}
body.page-foreign .brand span, body.page-foreign .gnav>a:not(.contact){display:none}
body.page-foreign .gnav{gap:0}
body.page-foreign .gnav .contact{padding:10px 13px;font-size:12px}
body.page-foreign .breadcrumb{font-size:13px;padding:13px 0}
body.page-foreign .hero{min-height:330px;background-position:center}
body.page-foreign .hero-inner{padding:56px 0}
body.page-foreign .hero h1{font-size:32px}
body.page-foreign .hero-lead{font-size:16px}
body.page-foreign section{padding:62px 0}
body.page-foreign h2{font-size:25px}
body.page-foreign .section-head{text-align:left;margin-bottom:30px}
body.page-foreign .section-lead{margin-left:0}
body.page-foreign .intro-grid, body.page-foreign .choose-box, body.page-foreign .reason-grid, body.page-foreign .spec-grid, body.page-foreign .scene-grid, body.page-foreign .related-grid{grid-template-columns:1fr}
body.page-foreign .intro-grid, body.page-foreign .spec-grid{gap:28px}
body.page-foreign .reason-grid{gap:14px}
body.page-foreign .scene-grid{gap:0}
body.page-foreign .price-strip{display:block;padding:26px 22px}
body.page-foreign .btns{margin-top:20px;display:grid}
body.page-foreign .btn{width:100%}
body.page-foreign .footer-grid, body.page-foreign .footer-nav{grid-template-columns:1fr}}
@media (min-width:881px){body.page-foreign .hero{height:390px;min-height:390px;padding:0}
body.page-foreign .hero-inner{padding:0}}
@media (max-width:880px){body.page-foreign .hero{height:330px;min-height:330px;padding:0}
body.page-foreign .hero-inner{padding:0}
body.page-foreign .hero-lead{margin-top:16px}
body.page-foreign .hero-tags{margin-top:16px;gap:7px}
body.page-foreign .hero-tags span{padding:5px 9px;font-size:12px}}
@media (min-width:881px){body.page-foreign > section:not(.hero) h2{font-size:31px}}
@media (max-width:880px){body.page-foreign > section:not(.hero) h2{font-size:25px}}


/* =====================================================================
   price/index.html  [page-price]
   ===================================================================== */
body.page-price{
 --blue:#0c66a6;--blue-dark:#0a4f82;--red:#c10f23;--text:#323737;--sub:#5e6670;
 --soft:#f5f7f9;--soft-blue:#eef5fa;--line:#dde3e8;--white:#fff;--max:1120px;
}
body.page-price *{box-sizing:border-box}
html{scroll-behavior:smooth}
body.page-price{margin:0;font-family:"Noto Sans JP","Yu Gothic",YuGothic,"Hiragino Kaku Gothic ProN",Meiryo,sans-serif;color:var(--text);background:#fff;line-height:1.85}
body.page-price a{color:var(--blue)}
body.page-price img{max-width:100%;height:auto;display:block}
body.page-price .container{width:min(var(--max),calc(100% - 48px));margin:auto}
body.page-price .site-header{position:sticky;top:0;z-index:100;background:#fff;border-bottom:1px solid var(--line)}
body.page-price .header-inner{height:76px;display:flex;align-items:center;justify-content:space-between;gap:28px}
body.page-price .brand{display:flex;align-items:center;gap:14px;text-decoration:none;color:inherit}
body.page-price .brand img{width:168px}
body.page-price .brand span{font-size:12px;color:var(--sub)}
body.page-price .gnav{display:flex;align-items:center;gap:25px;font-size:14px;font-weight:700}
body.page-price .gnav a{text-decoration:none;color:var(--text)}
body.page-price .gnav .contact{padding:12px 18px;border-radius:6px;background:var(--blue);color:#fff}
body.page-price .breadcrumb{padding:16px 0;background:#fff;border-bottom:1px solid var(--line);font-size:13px;color:var(--sub)}
body.page-price .breadcrumb a{text-decoration:none}
body.page-price .hero{min-height:390px;display:flex;align-items:center;position:relative;background:url("../img/pic06.webp") center 52%/cover no-repeat;color:#fff}
body.page-price .hero:before{content:"";position:absolute;inset:0;background:rgba(7,78,132,.65)}
body.page-price .hero-inner{position:relative;max-width:860px;padding:72px 0}
body.page-price .eyebrow{margin:0 0 11px;font-size:13px;font-weight:700;letter-spacing:.13em;opacity:.92}
body.page-price .hero h1{margin:0;color:#fff;font-size:44px;line-height:1.35}
body.page-price .hero-lead{margin:22px 0 0;color:rgba(255,255,255,.97);font-size:18px;line-height:1.9;font-weight:600}
body.page-price section{padding:88px 0}
body.page-price .soft{background:var(--soft)}
body.page-price .soft-blue{background:var(--soft-blue)}
body.page-price .section-head{max-width:840px;margin:0 auto 42px;text-align:center}
body.page-price .kicker{margin:0 0 9px;color:var(--blue);font-size:12px;font-weight:700;letter-spacing:.13em}
body.page-price h2{margin:0;color:var(--blue-dark);font-size:31px;line-height:1.45}
body.page-price .section-lead{margin:17px auto 0;color:var(--sub);font-size:16px;max-width:760px}
body.page-price .summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
body.page-price .summary-card{padding:26px 22px;background:#fff;border:1px solid var(--line);border-radius:8px}
body.page-price .summary-card small{color:var(--blue);font-weight:700}
body.page-price .summary-card h3{margin:8px 0 0;color:var(--blue-dark);font-size:17px}
body.page-price .summary-card .price{margin:12px 0 0;color:var(--blue-dark);font-size:25px;font-weight:700;line-height:1.35}
body.page-price .summary-card .price span{font-size:13px;color:var(--sub);font-weight:500}
body.page-price .summary-card p{margin:8px 0 0;color:var(--sub);font-size:13px}
body.page-price .table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:8px;background:#fff}
body.page-price table{width:100%;border-collapse:collapse;min-width:780px}
body.page-price th, body.page-price td{padding:17px 16px;border-bottom:1px solid var(--line);border-right:1px solid var(--line);vertical-align:middle}
body.page-price th:last-child, body.page-price td:last-child{border-right:0}
body.page-price tr:last-child td{border-bottom:0}
body.page-price th{background:var(--blue-dark);color:#fff;text-align:left;font-size:14px}
body.page-price td{font-size:14px}
body.page-price td strong{color:var(--blue-dark)}
body.page-price .price-notes{margin:20px 0 0;padding-left:21px;color:var(--sub);font-size:14px}
body.page-price .price-notes li{margin:8px 0}
body.page-price .note-box{margin-top:24px;padding:24px 28px;background:var(--soft-blue);border:1px solid #d8e5ef;border-radius:8px}
body.page-price .note-box h3{margin:0;color:var(--blue-dark);font-size:18px}
body.page-price .note-box p{margin:9px 0 0;color:var(--sub)}
body.page-price .urgent-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
body.page-price .urgent-card{padding:26px;background:#fff;border:1px solid var(--line);border-radius:8px}
body.page-price .urgent-card .num{color:var(--red);font-size:12px;font-weight:700}
body.page-price .urgent-card h3{margin:8px 0 0;color:var(--blue-dark);font-size:18px}
body.page-price .urgent-card p{margin:10px 0 0;color:var(--sub);font-size:14px}
body.page-price .schedule-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:50px;align-items:center;max-width:980px;margin:auto}
body.page-price .schedule-grid img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:8px}
body.page-price .schedule-examples{display:grid;gap:16px}
body.page-price .schedule-box{padding:22px 24px;background:#fff;border:1px solid var(--line);border-radius:8px}
body.page-price .schedule-box strong{color:var(--blue-dark);font-size:17px}
body.page-price .schedule-box p{margin:7px 0 0;color:var(--sub);font-size:14px}
body.page-price .formula{max-width:980px;margin:auto}
body.page-price .formula-line{display:grid;grid-template-columns:170px 1fr;gap:22px;padding:22px 0;border-bottom:1px solid var(--line)}
body.page-price .formula-line:first-child{border-top:1px solid var(--line)}
body.page-price .formula-line b{color:var(--blue-dark)}
body.page-price .formula-line p{margin:0;color:var(--sub)}
body.page-price .formula-main{margin:28px auto 0;padding:28px 30px;background:#fff;border:1px solid var(--line);border-radius:8px;text-align:center}
body.page-price .formula-main strong{font-size:22px;color:var(--blue-dark)}
body.page-price .example-total{max-width:900px;margin:28px auto 0;padding:28px 30px;background:#fff;border:1px solid var(--line);border-radius:8px}
body.page-price .example-total h3{margin:0;color:var(--blue-dark);font-size:19px}
body.page-price .example-total dl{display:grid;grid-template-columns:1fr auto;gap:8px 24px;margin:18px 0 0}
body.page-price .example-total dt, body.page-price .example-total dd{margin:0;padding:8px 0;border-bottom:1px solid var(--line)}
body.page-price .example-total dd{font-weight:700}
body.page-price .example-total .total{color:var(--red);font-size:20px}
body.page-price .faq{max-width:900px;margin:auto;border-top:1px solid var(--line)}
body.page-price details{border-bottom:1px solid var(--line)}
body.page-price summary{position:relative;padding:22px 46px 22px 0;cursor:pointer;color:var(--blue-dark);font-size:16px;font-weight:700;list-style:none}
body.page-price summary::-webkit-details-marker{display:none}
body.page-price summary:after{content:"+";position:absolute;right:4px;top:18px;color:var(--blue);font-size:25px;font-weight:400}
body.page-price details[open] summary:after{content:"−"}
body.page-price details p{margin:0;padding:0 30px 22px;color:var(--sub);font-size:15px}
body.page-price .btns{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;margin-top:26px}
body.page-price .btn{display:inline-flex;min-height:52px;padding:0 25px;align-items:center;justify-content:center;border-radius:6px;font-weight:700;text-decoration:none}
body.page-price .btn-primary{background:var(--blue);color:#fff}
body.page-price .btn-outline{background:#fff;color:var(--blue);border:1px solid var(--blue)}
body.page-price .final{text-align:center}
body.page-price footer{padding:58px 0 26px;background:var(--blue-dark);color:#fff}
body.page-price .footer-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}
body.page-price .footer-logo{width:170px;filter:brightness(0) invert(1);opacity:.95}
body.page-price .footer-grid p{font-size:13px;color:rgba(255,255,255,.7)}
body.page-price .footer-nav{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
body.page-price .footer-nav h3{margin:0 0 12px;font-size:14px}
body.page-price .footer-nav a{display:block;margin:8px 0;color:rgba(255,255,255,.74);font-size:13px;text-decoration:none}
body.page-price .copyright{margin-top:35px;padding-top:20px;border-top:1px solid rgba(255,255,255,.18);font-size:11px;color:rgba(255,255,255,.55)}
@media (max-width:800px){body.page-price .container{width:min(var(--max),calc(100% - 40px))}
body.page-price .header-inner{height:64px}
body.page-price .brand img{width:145px}
body.page-price .brand span, body.page-price .gnav>a:not(.contact){display:none}
body.page-price .gnav{gap:0}
body.page-price .gnav .contact{padding:10px 13px;font-size:12px}
body.page-price .breadcrumb{font-size:13px;padding:13px 0}
body.page-price .hero{min-height:330px}
body.page-price .hero-inner{padding:56px 0}
body.page-price .hero h1{font-size:32px}
body.page-price .hero-lead{font-size:16px}
body.page-price section{padding:62px 0}
body.page-price h2{font-size:25px}
body.page-price .section-head{text-align:left;margin-bottom:30px}
body.page-price .section-lead{margin-left:0}
body.page-price .summary-grid, body.page-price .urgent-grid, body.page-price .schedule-grid{grid-template-columns:1fr}
body.page-price .formula-line{grid-template-columns:1fr;gap:5px}
body.page-price .example-total dl{grid-template-columns:1fr}
body.page-price .example-total dd{padding-top:0}
body.page-price .footer-grid, body.page-price .footer-nav{grid-template-columns:1fr}}
body.page-price .ip-header .ip-nav > a.active{color:#0C66A6}
@media (min-width:881px){body.page-price .hero{height:390px;min-height:390px;padding:0}
body.page-price .hero-inner{padding:0}}
@media (max-width:880px){body.page-price .hero{height:330px;min-height:330px;padding:0}
body.page-price .hero-inner{padding:0}}
body.page-price .relay-formula{
  max-width:900px;margin:0 auto 62px;padding:24px 28px;text-align:center;
  background:#fff;border:1px solid #DDE3E8;border-radius:8px
}
body.page-price .relay-formula>span{display:block;margin-bottom:7px;color:#0C66A6;font-size:12px;font-weight:700;letter-spacing:.08em}
body.page-price .relay-formula strong{display:block;color:#0A4F82;font-size:22px;line-height:1.55}
body.page-price .relay-formula p{margin:8px 0 0;color:#5E6670;font-size:14px}
body.page-price .relay-heading{max-width:820px;margin:0 auto 28px;text-align:center}
body.page-price .relay-heading h3{margin:5px 0 10px;font-size:25px;color:#323737}
body.page-price .relay-heading p{margin:0;color:#5E6670}
body.page-price .relay-flow{max-width:920px;margin:0 auto}
body.page-price .relay-step{
  --relay:#0C66A6;background:#fff;border:1px solid #DDE3E8;border-left:7px solid var(--relay);
  border-radius:8px;padding:24px 26px
}
body.page-price .relay-blue{--relay:#0C66A6}
body.page-price .relay-green{--relay:#2D8B57}
body.page-price .relay-orange{--relay:#D87A18}
body.page-price .relay-red{--relay:#C10F23}
body.page-price .relay-step-head{display:grid;grid-template-columns:82px 1fr;gap:18px;align-items:start}
body.page-price .relay-no{display:inline-flex;justify-content:center;padding:6px 7px;border-radius:4px;background:var(--relay);color:#fff;font-size:11px;font-weight:800;letter-spacing:.05em}
body.page-price .relay-step h4{margin:0 0 5px;color:var(--relay);font-size:19px}
body.page-price .relay-step-head p{margin:0;color:#5E6670;font-size:14px}
body.page-price .relay-calc{
  display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:4px 22px;align-items:center;
  margin:18px 0 0 100px;padding:15px 18px;background:#F5F7F9;border-radius:6px
}
body.page-price .relay-calc span{font-size:14px}
body.page-price .relay-calc b{color:#323737;font-size:17px;text-align:right}
body.page-price .relay-calc small{grid-column:1/-1;color:#69727B;font-size:12px}
body.page-price .relay-two-lines{grid-template-columns:1fr auto}
body.page-price .relay-final-calc{display:block}
body.page-price .relay-final-calc>div{display:flex;justify-content:space-between;gap:20px;padding:6px 0;border-bottom:1px solid #E1E6EA}
body.page-price .relay-final-calc>div:last-child{border-bottom:0}
body.page-price .relay-final-calc .relay-subtotal{margin-top:4px;padding-top:11px}
body.page-price .relay-final-calc .relay-total{margin-top:5px;padding-top:12px}
body.page-price .relay-final-calc .relay-total span{font-weight:700;color:#0A4F82}
body.page-price .relay-final-calc .relay-total strong{font-size:25px;color:#C10F23}
body.page-price .relay-arrow{text-align:center;color:#AAB2B8;font-size:17px;line-height:1;padding:10px 0}
body.page-price .relay-note{max-width:920px;margin:18px auto 0;color:#69727B;font-size:12px;line-height:1.75}
body.page-price .relay-rules-head{margin-top:72px}
body.page-price .relay-rules{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
body.page-price .relay-rule{padding:20px 16px;background:#fff;border:1px solid #DDE3E8;border-radius:8px}
body.page-price .relay-rule>span{display:block;color:#5E6670;font-size:12px;font-weight:700}
body.page-price .relay-rule strong{display:block;margin:7px 0;color:#0A4F82;font-size:19px;line-height:1.45}
body.page-price .relay-rule strong span{font-size:11px;font-weight:600}
body.page-price .relay-rule p{margin:0;color:#5E6670;font-size:12px;line-height:1.7}
body.page-price .relay-info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:28px}
body.page-price .relay-info-grid .info-card{padding:22px;background:#EEF5FA;border-radius:8px}
body.page-price .relay-info-grid h4{margin:0 0 8px;color:#0A4F82;font-size:16px}
body.page-price .relay-info-grid p{margin:0;color:#5E6670;font-size:13px}
@media (max-width:880px){body.page-price .relay-formula{margin-bottom:48px;padding:20px 18px}
body.page-price .relay-formula strong{font-size:18px}
body.page-price .relay-heading h3{font-size:22px}
body.page-price .relay-step{padding:20px 17px}
body.page-price .relay-step-head{grid-template-columns:1fr;gap:10px}
body.page-price .relay-no{width:max-content}
body.page-price .relay-step h4{font-size:17px}
body.page-price .relay-calc{margin-left:0;grid-template-columns:1fr;padding:14px}
body.page-price .relay-calc b{text-align:left}
body.page-price .relay-two-lines{grid-template-columns:1fr}
body.page-price .relay-final-calc>div{align-items:flex-end}
body.page-price .relay-rules{grid-template-columns:1fr}
body.page-price .relay-info-grid{grid-template-columns:1fr}
body.page-price .relay-rules-head{margin-top:54px}}


/* =====================================================================
   works/index.html  [page-works]
   ===================================================================== */
body.page-works{
 --blue:#0c66a6;--blue-dark:#0a4f82;--red:#c10f23;--text:#323737;--sub:#5e6670;
 --soft:#f5f7f9;--soft-blue:#eef5fa;--line:#dde3e8;--white:#fff;--max:1120px;
}
body.page-works *{box-sizing:border-box}
html{scroll-behavior:smooth}
body.page-works{margin:0;font-family:"Noto Sans JP","Yu Gothic",YuGothic,"Hiragino Kaku Gothic ProN",Meiryo,sans-serif;color:var(--text);line-height:1.85;background:#fff}
body.page-works a{color:var(--blue)}
body.page-works img{max-width:100%;display:block;height:auto}
body.page-works .container{width:min(var(--max),calc(100% - 48px));margin:auto}
body.page-works .site-header{position:sticky;top:0;z-index:100;background:#fff;border-bottom:1px solid var(--line)}
body.page-works .header-inner{height:76px;display:flex;align-items:center;justify-content:space-between;gap:28px}
body.page-works .brand{display:flex;align-items:center;gap:14px;text-decoration:none;color:inherit}
body.page-works .brand img{width:168px}
body.page-works .brand span{font-size:12px;color:var(--sub)}
body.page-works .gnav{display:flex;align-items:center;gap:25px;font-size:14px;font-weight:700}
body.page-works .gnav a{text-decoration:none;color:var(--text)}
body.page-works .gnav .contact{padding:12px 18px;border-radius:6px;background:var(--blue);color:#fff}
body.page-works .breadcrumb{padding:16px 0;background:#fff;border-bottom:1px solid var(--line);font-size:13px;color:var(--sub)}
body.page-works .breadcrumb a{text-decoration:none}
body.page-works .hero{min-height:390px;display:flex;align-items:center;position:relative;background:url("../img/pic10.webp") center 48%/cover no-repeat;color:#fff}
body.page-works .hero:before{content:"";position:absolute;inset:0;background:rgba(7,78,132,.67)}
body.page-works .hero-inner{position:relative;max-width:900px;padding:72px 0}
body.page-works .eyebrow{margin:0 0 11px;font-size:13px;font-weight:700;letter-spacing:.13em;opacity:.92}
body.page-works .hero h1{margin:0;font-size:44px;line-height:1.35}
body.page-works .hero-lead{margin:22px 0 0;font-size:18px;line-height:1.9;font-weight:600;color:rgba(255,255,255,.97)}
body.page-works section{padding:88px 0}
body.page-works .soft{background:var(--soft)}
body.page-works .soft-blue{background:var(--soft-blue)}
body.page-works .section-head{max-width:820px;margin:0 auto 42px;text-align:center}
body.page-works .kicker{margin:0 0 9px;color:var(--blue);font-size:12px;font-weight:700;letter-spacing:.13em}
body.page-works h2{margin:0;color:var(--blue-dark);font-size:31px;line-height:1.45}
body.page-works .lead{margin:17px auto 0;color:var(--sub);font-size:16px;max-width:760px}
body.page-works .intro{max-width:900px;margin:auto;text-align:center}
body.page-works .intro p{margin:0 0 15px}
body.page-works .confidential{margin-top:25px;padding:18px 22px;background:var(--soft-blue);border:1px solid #d6e5f0;border-radius:8px;color:var(--sub);font-size:14px}
body.page-works .anchor-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
body.page-works .anchor{display:block;padding:23px 18px;background:#fff;border:1px solid var(--line);border-radius:8px;text-decoration:none;text-align:center}
body.page-works .anchor small{display:block;color:var(--red);font-weight:700;letter-spacing:.08em}
body.page-works .anchor strong{display:block;margin-top:5px;color:var(--blue-dark);font-size:17px}
body.page-works .category{scroll-margin-top:100px}
body.page-works .category-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:48px;align-items:start}
body.page-works .category-image img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:8px}
body.page-works .category-image .caption{margin-top:10px;color:var(--sub);font-size:12px}
body.page-works .category-content h2{text-align:left}
body.page-works .category-content>.lead{margin-left:0}
body.page-works .case-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:28px}
body.page-works .case{padding:24px;background:#fff;border:1px solid var(--line);border-radius:8px}
body.page-works .case .label{display:inline-block;padding:3px 8px;border-radius:99px;background:var(--soft-blue);color:var(--blue-dark);font-size:11px;font-weight:700}
body.page-works .case h3{margin:10px 0 0;color:var(--blue-dark);font-size:18px;line-height:1.5}
body.page-works .case dl{display:grid;grid-template-columns:84px 1fr;gap:6px 12px;margin:15px 0 0;font-size:14px}
body.page-works .case dt{color:var(--sub)}
body.page-works .case dd{margin:0}
body.page-works .case p{margin:12px 0 0;color:var(--sub);font-size:14px}
body.page-works .source-note{margin-top:22px;padding:16px 18px;border-left:3px solid var(--blue);background:var(--soft);font-size:13px;color:var(--sub)}
body.page-works .other-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
body.page-works .other{padding:24px;background:#fff;border:1px solid var(--line);border-radius:8px}
body.page-works .other h3{margin:0;color:var(--blue-dark);font-size:17px}
body.page-works .other p{margin:8px 0 0;color:var(--sub);font-size:14px}
body.page-works .dummy-wrap{border:1px dashed #c6a867;background:#fffdf7;border-radius:8px;padding:28px}
body.page-works .dummy-title{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
body.page-works .badge-dummy{display:inline-block;padding:4px 9px;border-radius:99px;background:#fff1bd;color:#765b00;font-size:11px;font-weight:700}
body.page-works .dummy-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:36px;margin-top:22px;align-items:center}
body.page-works .dummy-grid img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:8px}
body.page-works .dummy-cases{display:grid;gap:14px}
body.page-works .stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
body.page-works .stat{padding:28px;text-align:center;background:#fff;border:1px solid var(--line);border-radius:8px}
body.page-works .stat strong{display:block;color:var(--blue-dark);font-size:22px}
body.page-works .stat span{display:block;margin-top:5px;color:var(--sub);font-size:13px}
body.page-works .btns{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:27px}
body.page-works .btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 25px;border-radius:6px;text-decoration:none;font-weight:700}
body.page-works .btn-primary{background:var(--blue);color:#fff}
body.page-works .btn-outline{border:1px solid var(--blue);background:#fff;color:var(--blue)}
body.page-works .final{text-align:center}
body.page-works footer{padding:58px 0 26px;background:var(--blue-dark);color:#fff}
body.page-works .footer-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}
body.page-works .footer-logo{width:170px;filter:brightness(0) invert(1);opacity:.95}
body.page-works .footer-grid p{font-size:13px;color:rgba(255,255,255,.7)}
body.page-works .footer-nav{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
body.page-works .footer-nav h3{margin:0 0 12px;font-size:14px}
body.page-works .footer-nav a{display:block;margin:8px 0;color:rgba(255,255,255,.74);font-size:13px;text-decoration:none}
body.page-works .copyright{margin-top:35px;padding-top:20px;border-top:1px solid rgba(255,255,255,.18);font-size:11px;color:rgba(255,255,255,.55)}
@media (max-width:800px){body.page-works .container{width:min(var(--max),calc(100% - 40px))}
body.page-works .header-inner{height:64px}
body.page-works .brand img{width:145px}
body.page-works .brand span, body.page-works .gnav>a:not(.contact){display:none}
body.page-works .gnav{gap:0}
body.page-works .gnav .contact{padding:10px 13px;font-size:12px}
body.page-works .breadcrumb{padding:13px 0;font-size:13px}
body.page-works .hero{min-height:330px}
body.page-works .hero-inner{padding:56px 0}
body.page-works .hero h1{font-size:32px}
body.page-works .hero-lead{font-size:16px}
body.page-works section{padding:62px 0}
body.page-works h2{font-size:25px}
body.page-works .section-head{text-align:left;margin-bottom:30px}
body.page-works .lead{margin-left:0}
body.page-works .anchor-grid, body.page-works .category-grid, body.page-works .case-grid, body.page-works .other-grid, body.page-works .dummy-grid, body.page-works .stats{grid-template-columns:1fr}
body.page-works .category-grid, body.page-works .dummy-grid{gap:26px}
body.page-works .footer-grid, body.page-works .footer-nav{grid-template-columns:1fr}}
body.page-works .ip-header .ip-nav > a.active{color:#0C66A6}
@media (min-width:881px){body.page-works .hero{height:390px;min-height:390px;padding:0}
body.page-works .hero-inner{padding:0}}
@media (max-width:880px){body.page-works .hero{height:330px;min-height:330px;padding:0}
body.page-works .hero-inner{padding:0}}


/* =====================================================================
   faq/index.html  [page-faq]
   ===================================================================== */
body.page-faq{
 --blue:#0c66a6;--blue-dark:#0a4f82;--red:#c10f23;--text:#323737;--sub:#5e6670;
 --soft:#f5f7f9;--soft-blue:#eef5fa;--line:#dde3e8;--white:#fff;--max:1120px;
}
body.page-faq *{box-sizing:border-box}
html{scroll-behavior:smooth}
body.page-faq{margin:0;font-family:"Noto Sans JP","Yu Gothic",YuGothic,"Hiragino Kaku Gothic ProN",Meiryo,sans-serif;color:var(--text);line-height:1.85;background:#fff}
body.page-faq a{color:var(--blue)}
body.page-faq img{max-width:100%;height:auto;display:block}
body.page-faq .container{width:min(var(--max),calc(100% - 48px));margin:auto}
body.page-faq .site-header{position:sticky;top:0;z-index:100;background:#fff;border-bottom:1px solid var(--line)}
body.page-faq .header-inner{height:76px;display:flex;align-items:center;justify-content:space-between;gap:28px}
body.page-faq .brand{display:flex;align-items:center;gap:14px;text-decoration:none;color:inherit}
body.page-faq .brand img{width:168px}
body.page-faq .brand span{font-size:12px;color:var(--sub)}
body.page-faq .gnav{display:flex;align-items:center;gap:25px;font-size:14px;font-weight:700}
body.page-faq .gnav a{text-decoration:none;color:var(--text)}
body.page-faq .gnav .contact{padding:12px 18px;border-radius:6px;background:var(--blue);color:#fff}
body.page-faq .breadcrumb{padding:16px 0;background:#fff;border-bottom:1px solid var(--line);font-size:13px;color:var(--sub)}
body.page-faq .breadcrumb a{text-decoration:none}
body.page-faq .hero{min-height:390px;display:flex;align-items:center;position:relative;background:url("../img/pic07.webp") center 48%/cover no-repeat;color:#fff}
body.page-faq .hero:before{content:"";position:absolute;inset:0;background:rgba(7,78,132,.68)}
body.page-faq .hero-inner{position:relative;max-width:900px;padding:72px 0}
body.page-faq .eyebrow{margin:0 0 11px;font-size:13px;font-weight:700;letter-spacing:.13em;opacity:.92}
body.page-faq .hero h1{margin:0;font-size:44px;line-height:1.35}
body.page-faq .hero-lead{margin:22px 0 0;font-size:18px;line-height:1.9;font-weight:600;color:rgba(255,255,255,.97)}
body.page-faq section{padding:84px 0}
body.page-faq .soft{background:var(--soft)}
body.page-faq .soft-blue{background:var(--soft-blue)}
body.page-faq .section-head{max-width:820px;margin:0 auto 42px;text-align:center}
body.page-faq .kicker{margin:0 0 9px;color:var(--blue);font-size:12px;font-weight:700;letter-spacing:.13em}
body.page-faq h2{margin:0;color:var(--blue-dark);font-size:31px;line-height:1.45}
body.page-faq .lead{margin:17px auto 0;color:var(--sub);font-size:16px;max-width:760px}
body.page-faq .intro{max-width:850px;margin:auto;text-align:center}
body.page-faq .category-nav{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:34px}
body.page-faq .category-nav a{padding:18px 16px;background:#fff;border:1px solid var(--line);border-radius:8px;text-decoration:none;color:var(--blue-dark);font-weight:700}
body.page-faq .category-nav a span{display:block;margin-top:3px;color:var(--sub);font-size:11px;font-weight:500}
body.page-faq .faq-section{scroll-margin-top:95px}
body.page-faq .faq-layout{display:grid;grid-template-columns:260px 1fr;gap:60px;align-items:start}
body.page-faq .faq-title{position:sticky;top:112px}
body.page-faq .faq-title h2{font-size:25px}
body.page-faq .faq-list{border-top:1px solid var(--line)}
body.page-faq details{border-bottom:1px solid var(--line)}
body.page-faq summary{position:relative;padding:24px 52px 24px 38px;cursor:pointer;color:var(--blue-dark);font-size:16px;font-weight:700;list-style:none}
body.page-faq summary::-webkit-details-marker{display:none}
body.page-faq summary:before{content:"Q";position:absolute;left:0;top:22px;color:var(--red);font-weight:700}
body.page-faq summary:after{content:"+";position:absolute;right:5px;top:18px;color:var(--blue);font-size:27px;font-weight:400}
body.page-faq details[open] summary:after{content:"−"}
body.page-faq .answer{position:relative;padding:0 34px 24px 38px}
body.page-faq .answer:before{content:"A";position:absolute;left:0;top:0;color:var(--blue);font-weight:700}
body.page-faq .answer p{margin:0;color:var(--sub);font-size:15px}
body.page-faq .help-box{max-width:900px;margin:auto;padding:30px;background:#fff;border:1px solid var(--line);border-radius:8px;text-align:center}
body.page-faq .help-box h3{margin:0;color:var(--blue-dark);font-size:21px}
body.page-faq .help-box p{margin:12px auto 0;color:var(--sub);max-width:680px}
body.page-faq .btns{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:27px}
body.page-faq .btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 25px;border-radius:6px;text-decoration:none;font-weight:700}
body.page-faq .btn-primary{background:var(--blue);color:#fff}
body.page-faq .btn-outline{border:1px solid var(--blue);background:#fff;color:var(--blue)}
body.page-faq .final{text-align:center}
body.page-faq footer{padding:58px 0 26px;background:var(--blue-dark);color:#fff}
body.page-faq .footer-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}
body.page-faq .footer-logo{width:170px;filter:brightness(0) invert(1);opacity:.95}
body.page-faq .footer-grid p{font-size:13px;color:rgba(255,255,255,.7)}
body.page-faq .footer-nav{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
body.page-faq .footer-nav h3{margin:0 0 12px;font-size:14px}
body.page-faq .footer-nav a{display:block;margin:8px 0;color:rgba(255,255,255,.74);font-size:13px;text-decoration:none}
body.page-faq .copyright{margin-top:35px;padding-top:20px;border-top:1px solid rgba(255,255,255,.18);font-size:11px;color:rgba(255,255,255,.55)}
@media (max-width:800px){body.page-faq .container{width:min(var(--max),calc(100% - 40px))}
body.page-faq .header-inner{height:64px}
body.page-faq .brand img{width:145px}
body.page-faq .brand span, body.page-faq .gnav>a:not(.contact){display:none}
body.page-faq .gnav{gap:0}
body.page-faq .gnav .contact{padding:10px 13px;font-size:12px}
body.page-faq .breadcrumb{padding:13px 0;font-size:13px}
body.page-faq .hero{min-height:330px}
body.page-faq .hero-inner{padding:56px 0}
body.page-faq .hero h1{font-size:32px}
body.page-faq .hero-lead{font-size:16px}
body.page-faq section{padding:60px 0}
body.page-faq h2{font-size:25px}
body.page-faq .section-head{text-align:left;margin-bottom:30px}
body.page-faq .lead{margin-left:0}
body.page-faq .category-nav{grid-template-columns:1fr 1fr}
body.page-faq .faq-layout{grid-template-columns:1fr;gap:22px}
body.page-faq .faq-title{position:static}
body.page-faq .footer-grid, body.page-faq .footer-nav{grid-template-columns:1fr}}
body.page-faq .ip-header .ip-nav > a.active{color:#0C66A6}
@media (min-width:881px){body.page-faq .hero{height:390px;min-height:390px;padding:0}
body.page-faq .hero-inner{padding:0}}
@media (max-width:880px){body.page-faq .hero{height:330px;min-height:330px;padding:0}
body.page-faq .hero-inner{padding:0}}


/* =====================================================================
   security/index.html  [page-security]
   ===================================================================== */
body.page-security{
 --blue:#0c66a6;--blue-dark:#0a4f82;--red:#c10f23;--text:#323737;--sub:#5e6670;
 --soft:#f5f7f9;--soft-blue:#eef5fa;--line:#dde3e8;--white:#fff;--max:1120px;
}
body.page-security *{box-sizing:border-box}
html{scroll-behavior:smooth}
body.page-security{margin:0;font-family:"Noto Sans JP","Yu Gothic",YuGothic,"Hiragino Kaku Gothic ProN",Meiryo,sans-serif;color:var(--text);line-height:1.85;background:#fff}
body.page-security a{color:var(--blue)}
body.page-security img{max-width:100%;height:auto;display:block}
body.page-security .container{width:min(var(--max),calc(100% - 48px));margin:auto}
body.page-security .site-header{position:sticky;top:0;z-index:100;background:#fff;border-bottom:1px solid var(--line)}
body.page-security .header-inner{height:76px;display:flex;align-items:center;justify-content:space-between;gap:28px}
body.page-security .brand{display:flex;align-items:center;gap:14px;text-decoration:none;color:inherit}
body.page-security .brand img{width:168px}
body.page-security .brand span{font-size:12px;color:var(--sub)}
body.page-security .gnav{display:flex;align-items:center;gap:25px;font-size:14px;font-weight:700}
body.page-security .gnav a{text-decoration:none;color:var(--text)}
body.page-security .gnav .contact{padding:12px 18px;border-radius:6px;background:var(--blue);color:#fff}
body.page-security .breadcrumb{padding:16px 0;background:#fff;border-bottom:1px solid var(--line);font-size:13px;color:var(--sub)}
body.page-security .breadcrumb a{text-decoration:none}
body.page-security .hero{min-height:390px;display:flex;align-items:center;position:relative;background:url("../img/pic03.webp") center 48%/cover no-repeat;color:#fff}
body.page-security .hero:before{content:"";position:absolute;inset:0;background:rgba(7,78,132,.68)}
body.page-security .hero-inner{position:relative;max-width:900px;padding:72px 0}
body.page-security .eyebrow{margin:0 0 11px;font-size:13px;font-weight:700;letter-spacing:.13em;opacity:.92}
body.page-security .hero h1{margin:0;font-size:44px;line-height:1.35}
body.page-security .hero-lead{margin:22px 0 0;font-size:18px;line-height:1.9;font-weight:600;color:rgba(255,255,255,.97)}
body.page-security section{padding:88px 0}
body.page-security .soft{background:var(--soft)}
body.page-security .soft-blue{background:var(--soft-blue)}
body.page-security .section-head{max-width:820px;margin:0 auto 42px;text-align:center}
body.page-security .kicker{margin:0 0 9px;color:var(--blue);font-size:12px;font-weight:700;letter-spacing:.13em}
body.page-security h2{margin:0;color:var(--blue-dark);font-size:31px;line-height:1.45}
body.page-security .lead{margin:17px auto 0;color:var(--sub);font-size:16px;max-width:760px}
body.page-security .intro-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:60px;align-items:center}
body.page-security .intro-grid h2{font-size:30px}
body.page-security .intro-grid p{margin:16px 0 0}
body.page-security .intro-grid img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:8px}
body.page-security .pillar-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
body.page-security .pillar{padding:28px;background:#fff;border:1px solid var(--line);border-radius:8px;border-top:3px solid var(--blue)}
body.page-security .pillar .num{color:var(--red);font-size:12px;font-weight:700;letter-spacing:.09em}
body.page-security .pillar h3{margin:8px 0 0;color:var(--blue-dark);font-size:19px}
body.page-security .pillar p{margin:10px 0 0;color:var(--sub);font-size:14px}
body.page-security .nda-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:48px;align-items:start;max-width:980px;margin:auto}
body.page-security .nda-card{padding:30px;background:#fff;border:1px solid var(--line);border-radius:8px}
body.page-security .nda-card h3{margin:0;color:var(--blue-dark);font-size:20px}
body.page-security .nda-card p{margin:12px 0 0;color:var(--sub)}
body.page-security .nda-points{border-top:1px solid var(--line)}
body.page-security .nda-point{padding:20px 0;border-bottom:1px solid var(--line)}
body.page-security .nda-point strong{display:block;color:var(--blue-dark)}
body.page-security .nda-point span{display:block;margin-top:5px;color:var(--sub);font-size:14px}
body.page-security .flow{max-width:920px;margin:auto}
body.page-security .flow-step{display:grid;grid-template-columns:70px 1fr;gap:20px;padding:24px 0;border-bottom:1px solid var(--line)}
body.page-security .flow-step:first-child{border-top:1px solid var(--line)}
body.page-security .flow-step b{color:var(--red);font-size:13px;letter-spacing:.08em}
body.page-security .flow-step h3{margin:0;color:var(--blue-dark);font-size:18px}
body.page-security .flow-step p{margin:7px 0 0;color:var(--sub);font-size:14px}
body.page-security .case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
body.page-security .case{background:#fff;border:1px solid var(--line);border-radius:8px;overflow:hidden}
body.page-security .case img{width:100%;aspect-ratio:16/10;object-fit:cover}
body.page-security .case-body{padding:22px}
body.page-security .case h3{margin:0;color:var(--blue-dark);font-size:18px}
body.page-security .case p{margin:9px 0 0;color:var(--sub);font-size:14px}
body.page-security .data-box{max-width:940px;margin:auto;padding:30px;background:#fff;border:1px solid var(--line);border-radius:8px}
body.page-security .data-box h3{margin:0;color:var(--blue-dark);font-size:20px}
body.page-security .data-box p{margin:12px 0 0;color:var(--sub)}
body.page-security .data-list{display:grid;grid-template-columns:1fr 1fr;gap:14px 28px;margin-top:22px}
body.page-security .data-item{padding:15px 0;border-bottom:1px solid var(--line)}
body.page-security .data-item strong{display:block;color:var(--blue-dark);font-size:15px}
body.page-security .data-item span{display:block;margin-top:4px;color:var(--sub);font-size:13px}
body.page-security .caution{max-width:940px;margin:26px auto 0;padding:20px 22px;background:#fffdf7;border:1px solid #e6d7ab;border-radius:8px;color:#6c6044;font-size:13px}
body.page-security .faq{max-width:900px;margin:auto;border-top:1px solid var(--line)}
body.page-security details{border-bottom:1px solid var(--line)}
body.page-security summary{position:relative;padding:22px 46px 22px 0;cursor:pointer;color:var(--blue-dark);font-size:16px;font-weight:700;list-style:none}
body.page-security summary::-webkit-details-marker{display:none}
body.page-security summary:after{content:"+";position:absolute;right:4px;top:18px;color:var(--blue);font-size:25px;font-weight:400}
body.page-security details[open] summary:after{content:"−"}
body.page-security details p{margin:0;padding:0 30px 22px;color:var(--sub);font-size:15px}
body.page-security .btns{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:27px}
body.page-security .btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 25px;border-radius:6px;text-decoration:none;font-weight:700}
body.page-security .btn-primary{background:var(--blue);color:#fff}
body.page-security .btn-outline{border:1px solid var(--blue);background:#fff;color:var(--blue)}
body.page-security .final{text-align:center}
body.page-security footer{padding:58px 0 26px;background:var(--blue-dark);color:#fff}
body.page-security .footer-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}
body.page-security .footer-logo{width:170px;filter:brightness(0) invert(1);opacity:.95}
body.page-security .footer-grid p{font-size:13px;color:rgba(255,255,255,.7)}
body.page-security .footer-nav{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
body.page-security .footer-nav h3{margin:0 0 12px;font-size:14px}
body.page-security .footer-nav a{display:block;margin:8px 0;color:rgba(255,255,255,.74);font-size:13px;text-decoration:none}
body.page-security .copyright{margin-top:35px;padding-top:20px;border-top:1px solid rgba(255,255,255,.18);font-size:11px;color:rgba(255,255,255,.55)}
@media (max-width:800px){body.page-security .container{width:min(var(--max),calc(100% - 40px))}
body.page-security .header-inner{height:64px}
body.page-security .brand img{width:145px}
body.page-security .brand span, body.page-security .gnav>a:not(.contact){display:none}
body.page-security .gnav{gap:0}
body.page-security .gnav .contact{padding:10px 13px;font-size:12px}
body.page-security .breadcrumb{padding:13px 0;font-size:13px}
body.page-security .hero{min-height:330px}
body.page-security .hero-inner{padding:56px 0}
body.page-security .hero h1{font-size:32px}
body.page-security .hero-lead{font-size:16px}
body.page-security section{padding:62px 0}
body.page-security h2{font-size:25px}
body.page-security .section-head{text-align:left;margin-bottom:30px}
body.page-security .lead{margin-left:0}
body.page-security .intro-grid, body.page-security .pillar-grid, body.page-security .nda-grid, body.page-security .case-grid, body.page-security .data-list{grid-template-columns:1fr}
body.page-security .intro-grid, body.page-security .nda-grid{gap:28px}
body.page-security .footer-grid, body.page-security .footer-nav{grid-template-columns:1fr}}
@media (min-width:881px){body.page-security .hero{height:390px;min-height:390px;padding:0}
body.page-security .hero-inner{padding:0}}
@media (max-width:880px){body.page-security .hero{height:330px;min-height:330px;padding:0}
body.page-security .hero-inner{padding:0}}
@media (min-width:881px){body.page-security > section:not(.hero) h2{font-size:31px}}
@media (max-width:880px){body.page-security > section:not(.hero) h2{font-size:25px}}


/* =====================================================================
   company/index.html  [page-company]
   ===================================================================== */
body.page-company{
 --blue:#0c66a6;--blue-dark:#0a4f82;--red:#c10f23;--text:#323737;--sub:#5e6670;
 --soft:#f5f7f9;--soft-blue:#eef5fa;--line:#dde3e8;--white:#fff;--max:1120px;
}
body.page-company *{box-sizing:border-box}
html{scroll-behavior:smooth}
body.page-company{margin:0;font-family:"Noto Sans JP","Yu Gothic",YuGothic,"Hiragino Kaku Gothic ProN",Meiryo,sans-serif;color:var(--text);line-height:1.85;background:#fff}
body.page-company a{color:var(--blue)}
body.page-company img{max-width:100%;height:auto;display:block}
body.page-company .container{width:min(var(--max),calc(100% - 48px));margin:auto}
body.page-company .site-header{position:sticky;top:0;z-index:100;background:#fff;border-bottom:1px solid var(--line)}
body.page-company .header-inner{height:76px;display:flex;align-items:center;justify-content:space-between;gap:28px}
body.page-company .brand{display:flex;align-items:center;gap:14px;text-decoration:none;color:inherit}
body.page-company .brand img{width:168px}
body.page-company .brand span{font-size:12px;color:var(--sub)}
body.page-company .gnav{display:flex;align-items:center;gap:25px;font-size:14px;font-weight:700}
body.page-company .gnav a{text-decoration:none;color:var(--text)}
body.page-company .gnav .contact{padding:12px 18px;border-radius:6px;background:var(--blue);color:#fff}
body.page-company .breadcrumb{padding:16px 0;background:#fff;border-bottom:1px solid var(--line);font-size:13px;color:var(--sub)}
body.page-company .breadcrumb a{text-decoration:none}
body.page-company .hero{min-height:390px;display:flex;align-items:center;position:relative;background:url("../img/pic08.webp") center 45%/cover no-repeat;color:#fff}
body.page-company .hero:before{content:"";position:absolute;inset:0;background:rgba(7,78,132,.67)}
body.page-company .hero-inner{position:relative;max-width:900px;padding:72px 0}
body.page-company .eyebrow{margin:0 0 11px;font-size:13px;font-weight:700;letter-spacing:.13em;opacity:.92}
body.page-company .hero h1{margin:0;font-size:44px;line-height:1.35}
body.page-company .hero-lead{margin:22px 0 0;font-size:18px;line-height:1.9;font-weight:600;color:rgba(255,255,255,.97)}
body.page-company section{padding:88px 0}
body.page-company .soft{background:var(--soft)}
body.page-company .soft-blue{background:var(--soft-blue)}
body.page-company .section-head{max-width:820px;margin:0 auto 42px;text-align:center}
body.page-company .kicker{margin:0 0 9px;color:var(--blue);font-size:12px;font-weight:700;letter-spacing:.13em}
body.page-company h2{margin:0;color:var(--blue-dark);font-size:31px;line-height:1.45}
body.page-company .lead{margin:17px auto 0;color:var(--sub);font-size:16px;max-width:760px}
body.page-company .intro-grid{display:grid;grid-template-columns:1.06fr .94fr;gap:60px;align-items:center}
body.page-company .intro-grid h2{font-size:30px}
body.page-company .intro-grid p{margin:16px 0 0}
body.page-company .intro-grid img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:8px}
body.page-company .message{font-size:20px;font-weight:700;color:var(--blue-dark)}
body.page-company .point-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
body.page-company .point{padding:26px 22px;background:#fff;border:1px solid var(--line);border-radius:8px;border-top:3px solid var(--blue)}
body.page-company .point small{color:var(--red);font-weight:700;letter-spacing:.08em}
body.page-company .point h3{margin:8px 0 0;color:var(--blue-dark);font-size:18px}
body.page-company .point p{margin:9px 0 0;color:var(--sub);font-size:14px}
body.page-company .profile{max-width:960px;margin:auto;border-top:1px solid var(--line)}
body.page-company .profile-row{display:grid;grid-template-columns:210px 1fr;border-bottom:1px solid var(--line)}
body.page-company .profile dt, body.page-company .profile dd{margin:0;padding:20px 18px}
body.page-company .profile dt{font-weight:700;color:var(--blue-dark);background:var(--soft)}
body.page-company .profile dd ul{margin:0;padding-left:20px}
body.page-company .profile dd li{margin:4px 0}
body.page-company .contact-lines strong{display:inline-block;min-width:135px;color:var(--blue-dark)}
body.page-company .client-wrap{max-width:960px;margin:auto}
body.page-company .client-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0 36px;padding:26px 30px;background:#fff;border:1px solid var(--line);border-radius:8px}
body.page-company .client-grid div{padding:10px 0;border-bottom:1px solid var(--line);font-size:14px}
body.page-company .client-note{margin-top:15px;color:var(--sub);font-size:12px;text-align:right}
body.page-company .site-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;max-width:960px;margin:auto}
body.page-company .site-card{padding:28px;background:#fff;border:1px solid var(--line);border-radius:8px}
body.page-company .site-card small{color:var(--red);font-weight:700;letter-spacing:.08em}
body.page-company .site-card h3{margin:8px 0 0;color:var(--blue-dark);font-size:20px}
body.page-company .site-card p{margin:10px 0 0;color:var(--sub);font-size:14px}
body.page-company .site-card a{display:inline-block;margin-top:14px;font-weight:700;text-decoration:none}
body.page-company .entity-box{max-width:960px;margin:auto;display:grid;grid-template-columns:.9fr 1.1fr;gap:48px;align-items:center}
body.page-company .entity-box img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:8px}
body.page-company .entity-text h3{margin:0;color:var(--blue-dark);font-size:21px}
body.page-company .entity-text p{margin:13px 0 0;color:var(--sub)}
body.page-company .entity-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
body.page-company .entity-tags span{padding:6px 10px;border-radius:99px;background:#fff;border:1px solid var(--line);font-size:12px}
body.page-company .btns{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:27px}
body.page-company .btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 25px;border-radius:6px;text-decoration:none;font-weight:700}
body.page-company .btn-primary{background:var(--blue);color:#fff}
body.page-company .btn-outline{border:1px solid var(--blue);background:#fff;color:var(--blue)}
body.page-company .final{text-align:center}
body.page-company footer{padding:58px 0 26px;background:var(--blue-dark);color:#fff}
body.page-company .footer-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}
body.page-company .footer-logo{width:170px;filter:brightness(0) invert(1);opacity:.95}
body.page-company .footer-grid p{font-size:13px;color:rgba(255,255,255,.7)}
body.page-company .footer-nav{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
body.page-company .footer-nav h3{margin:0 0 12px;font-size:14px}
body.page-company .footer-nav a{display:block;margin:8px 0;color:rgba(255,255,255,.74);font-size:13px;text-decoration:none}
body.page-company .copyright{margin-top:35px;padding-top:20px;border-top:1px solid rgba(255,255,255,.18);font-size:11px;color:rgba(255,255,255,.55)}
@media (max-width:800px){body.page-company .container{width:min(var(--max),calc(100% - 40px))}
body.page-company .header-inner{height:64px}
body.page-company .brand img{width:145px}
body.page-company .brand span, body.page-company .gnav>a:not(.contact){display:none}
body.page-company .gnav{gap:0}
body.page-company .gnav .contact{padding:10px 13px;font-size:12px}
body.page-company .breadcrumb{padding:13px 0;font-size:13px}
body.page-company .hero{min-height:330px}
body.page-company .hero-inner{padding:56px 0}
body.page-company .hero h1{font-size:32px}
body.page-company .hero-lead{font-size:16px}
body.page-company section{padding:62px 0}
body.page-company h2{font-size:25px}
body.page-company .section-head{text-align:left;margin-bottom:30px}
body.page-company .lead{margin-left:0}
body.page-company .intro-grid, body.page-company .point-grid, body.page-company .site-grid, body.page-company .entity-box, body.page-company .client-grid{grid-template-columns:1fr}
body.page-company .intro-grid, body.page-company .entity-box{gap:28px}
body.page-company .profile-row{grid-template-columns:1fr}
body.page-company .profile dt{padding-bottom:8px}
body.page-company .profile dd{padding-top:8px}
body.page-company .footer-grid, body.page-company .footer-nav{grid-template-columns:1fr}}
@media (min-width:881px){body.page-company .hero{height:390px;min-height:390px;padding:0}
body.page-company .hero-inner{padding:0}}
@media (max-width:880px){body.page-company .hero{height:330px;min-height:330px;padding:0}
body.page-company .hero-inner{padding:0}}
@media (min-width:881px){body.page-company > section:not(.hero) h2{font-size:31px}}
@media (max-width:880px){body.page-company > section:not(.hero) h2{font-size:25px}}


/* =====================================================================
   privacy/index.html  [page-privacy]
   ===================================================================== */
body.page-privacy{
 --blue:#0c66a6;--blue-dark:#0a4f82;--red:#c10f23;--text:#323737;--sub:#5e6670;
 --soft:#f5f7f9;--soft-blue:#eef5fa;--line:#dde3e8;--white:#fff;--max:1120px;
}
body.page-privacy *{box-sizing:border-box}
html{scroll-behavior:smooth}
body.page-privacy{margin:0;font-family:"Noto Sans JP","Yu Gothic",YuGothic,"Hiragino Kaku Gothic ProN",Meiryo,sans-serif;color:var(--text);line-height:1.9;background:#fff}
body.page-privacy a{color:var(--blue)}
body.page-privacy img{max-width:100%;height:auto;display:block}
body.page-privacy .container{width:min(var(--max),calc(100% - 48px));margin:auto}
body.page-privacy .site-header{position:sticky;top:0;z-index:100;background:#fff;border-bottom:1px solid var(--line)}
body.page-privacy .header-inner{height:76px;display:flex;align-items:center;justify-content:space-between;gap:28px}
body.page-privacy .brand{display:flex;align-items:center;gap:14px;text-decoration:none;color:inherit}
body.page-privacy .brand img{width:168px}
body.page-privacy .brand span{font-size:12px;color:var(--sub)}
body.page-privacy .gnav{display:flex;align-items:center;gap:25px;font-size:14px;font-weight:700}
body.page-privacy .gnav a{text-decoration:none;color:var(--text)}
body.page-privacy .gnav .contact{padding:12px 18px;border-radius:6px;background:var(--blue);color:#fff}
body.page-privacy .breadcrumb{padding:16px 0;background:#fff;border-bottom:1px solid var(--line);font-size:13px;color:var(--sub)}
body.page-privacy .breadcrumb a{text-decoration:none}
body.page-privacy .hero{min-height:330px;display:flex;align-items:center;position:relative;background:url("../img/pic03.webp") center 54%/cover no-repeat;color:#fff}
body.page-privacy .hero:before{content:"";position:absolute;inset:0;background:rgba(7,78,132,.69)}
body.page-privacy .hero-inner{position:relative;max-width:900px;padding:64px 0}
body.page-privacy .eyebrow{margin:0 0 10px;font-size:13px;font-weight:700;letter-spacing:.13em;opacity:.92}
body.page-privacy .hero h1{margin:0;font-size:42px;line-height:1.35}
body.page-privacy .hero-lead{margin:20px 0 0;font-size:17px;line-height:1.9;font-weight:600;color:rgba(255,255,255,.97)}
body.page-privacy section{padding:78px 0}
body.page-privacy .soft{background:var(--soft)}
body.page-privacy .soft-blue{background:var(--soft-blue)}
body.page-privacy .kicker{margin:0 0 9px;color:var(--blue);font-size:12px;font-weight:700;letter-spacing:.13em}
body.page-privacy h2{margin:0;color:var(--blue-dark);font-size:28px;line-height:1.45}
body.page-privacy .lead{margin:16px 0 0;color:var(--sub);font-size:16px}
body.page-privacy .policy-wrap{max-width:940px;margin:auto}
body.page-privacy .policy-intro{padding:28px 30px;background:var(--soft-blue);border:1px solid #d8e5ef;border-radius:8px}
body.page-privacy .policy-intro p{margin:0;color:var(--sub)}
body.page-privacy .policy-nav{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:28px}
body.page-privacy .policy-nav a{padding:14px 15px;border:1px solid var(--line);border-radius:6px;text-decoration:none;background:#fff;color:var(--blue-dark);font-size:13px;font-weight:700;text-align:center}
body.page-privacy .policy-section{scroll-margin-top:105px;padding:34px 0;border-bottom:1px solid var(--line)}
body.page-privacy .policy-section:first-of-type{margin-top:28px;border-top:1px solid var(--line)}
body.page-privacy .policy-section h2{font-size:22px}
body.page-privacy .policy-section p{margin:13px 0 0;color:var(--sub)}
body.page-privacy .policy-section ul, body.page-privacy .policy-section ol{margin:13px 0 0;padding-left:23px;color:var(--sub)}
body.page-privacy .policy-section li{margin:7px 0}
body.page-privacy .definition{padding:22px 24px;background:#fff;border:1px solid var(--line);border-radius:8px;margin-top:18px}
body.page-privacy .definition strong{color:var(--blue-dark)}
body.page-privacy .contact-box{margin-top:20px;padding:24px 26px;background:#fff;border:1px solid var(--line);border-radius:8px}
body.page-privacy .contact-box h3{margin:0;color:var(--blue-dark);font-size:18px}
body.page-privacy .contact-box p{margin:8px 0 0;color:var(--sub)}
body.page-privacy .contact-box strong{display:inline-block;min-width:120px;color:var(--blue-dark)}
body.page-privacy .note{margin-top:28px;padding:19px 22px;border-left:4px solid var(--blue);background:var(--soft);color:var(--sub);font-size:13px}
body.page-privacy .revised{margin-top:30px;text-align:right;color:var(--sub);font-size:13px}
body.page-privacy .related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;max-width:940px;margin:auto}
body.page-privacy .related{padding:24px;background:#fff;border:1px solid var(--line);border-radius:8px;text-decoration:none;color:inherit}
body.page-privacy .related strong{display:block;color:var(--blue-dark)}
body.page-privacy .related span{display:block;margin-top:6px;color:var(--sub);font-size:13px}
body.page-privacy footer{padding:58px 0 26px;background:var(--blue-dark);color:#fff}
body.page-privacy .footer-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}
body.page-privacy .footer-logo{width:170px;filter:brightness(0) invert(1);opacity:.95}
body.page-privacy .footer-grid p{font-size:13px;color:rgba(255,255,255,.7)}
body.page-privacy .footer-nav{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
body.page-privacy .footer-nav h3{margin:0 0 12px;font-size:14px}
body.page-privacy .footer-nav a{display:block;margin:8px 0;color:rgba(255,255,255,.74);font-size:13px;text-decoration:none}
body.page-privacy .copyright{margin-top:35px;padding-top:20px;border-top:1px solid rgba(255,255,255,.18);font-size:11px;color:rgba(255,255,255,.55)}
@media (max-width:800px){body.page-privacy .container{width:min(var(--max),calc(100% - 40px))}
body.page-privacy .header-inner{height:64px}
body.page-privacy .brand img{width:145px}
body.page-privacy .brand span, body.page-privacy .gnav>a:not(.contact){display:none}
body.page-privacy .gnav{gap:0}
body.page-privacy .gnav .contact{padding:10px 13px;font-size:12px}
body.page-privacy .breadcrumb{padding:13px 0;font-size:13px}
body.page-privacy .hero{min-height:300px}
body.page-privacy .hero-inner{padding:50px 0}
body.page-privacy .hero h1{font-size:31px}
body.page-privacy .hero-lead{font-size:15px}
body.page-privacy section{padding:58px 0}
body.page-privacy h2{font-size:24px}
body.page-privacy .policy-nav, body.page-privacy .related-grid{grid-template-columns:1fr}
body.page-privacy .contact-box strong{display:block;min-width:0}
body.page-privacy .footer-grid, body.page-privacy .footer-nav{grid-template-columns:1fr}}
@media (min-width:881px){body.page-privacy .hero{height:330px;min-height:330px;padding:0}
body.page-privacy .hero-inner{padding:0}}
@media (max-width:880px){body.page-privacy .hero{height:280px;min-height:280px;padding:0}
body.page-privacy .hero-inner{padding:0}}


/* =====================================================================
   contact/index.html  [page-contact]
   ===================================================================== */
body.page-contact{
 --blue:#0c66a6;--blue-dark:#0a4f82;--red:#c10f23;--text:#323737;--sub:#5e6670;
 --soft:#f5f7f9;--soft-blue:#eef5fa;--line:#dde3e8;--white:#fff;--max:1120px;
}
body.page-contact *{box-sizing:border-box}
html{scroll-behavior:smooth}
body.page-contact{margin:0;font-family:"Noto Sans JP","Yu Gothic",YuGothic,"Hiragino Kaku Gothic ProN",Meiryo,sans-serif;color:var(--text);line-height:1.85;background:#fff}
body.page-contact a{color:var(--blue)}
body.page-contact img{max-width:100%;height:auto;display:block}
body.page-contact .container{width:min(var(--max),calc(100% - 48px));margin:auto}
body.page-contact .site-header{position:sticky;top:0;z-index:100;background:#fff;border-bottom:1px solid var(--line)}
body.page-contact .header-inner{height:76px;display:flex;align-items:center;justify-content:space-between;gap:28px}
body.page-contact .brand{display:flex;align-items:center;gap:14px;text-decoration:none;color:inherit}
body.page-contact .brand img{width:168px}
body.page-contact .brand span{font-size:12px;color:var(--sub)}
body.page-contact .gnav{display:flex;align-items:center;gap:25px;font-size:14px;font-weight:700}
body.page-contact .gnav a{text-decoration:none;color:var(--text)}
body.page-contact .gnav .contact{padding:12px 18px;border-radius:6px;background:var(--blue);color:#fff}
body.page-contact .breadcrumb{padding:16px 0;background:#fff;border-bottom:1px solid var(--line);font-size:13px;color:var(--sub)}
body.page-contact .breadcrumb a{text-decoration:none}
body.page-contact .hero{min-height:390px;display:flex;align-items:center;position:relative;background:url("../img/pic05.webp") center 50%/cover no-repeat;color:#fff}
body.page-contact .hero:before{content:"";position:absolute;inset:0;background:rgba(7,78,132,.67)}
body.page-contact .hero-inner{position:relative;max-width:900px;padding:72px 0}
body.page-contact .eyebrow{margin:0 0 11px;font-size:13px;font-weight:700;letter-spacing:.13em;opacity:.92}
body.page-contact .hero h1{margin:0;font-size:44px;line-height:1.35}
body.page-contact .hero-lead{margin:22px 0 0;font-size:18px;line-height:1.9;font-weight:600;color:rgba(255,255,255,.97)}
body.page-contact section{padding:88px 0}
body.page-contact .soft{background:var(--soft)}
body.page-contact .soft-blue{background:var(--soft-blue)}
body.page-contact .section-head{max-width:820px;margin:0 auto 42px;text-align:center}
body.page-contact .kicker{margin:0 0 9px;color:var(--blue);font-size:12px;font-weight:700;letter-spacing:.13em}
body.page-contact h2{margin:0;color:var(--blue-dark);font-size:31px;line-height:1.45}
body.page-contact .lead{margin:17px auto 0;color:var(--sub);font-size:16px;max-width:760px}
body.page-contact .contact-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:24px;max-width:980px;margin:auto}
body.page-contact .contact-card{padding:32px;background:#fff;border:1px solid var(--line);border-radius:8px}
body.page-contact .contact-card.primary{border-top:4px solid var(--blue)}
body.page-contact .contact-card small{color:var(--red);font-weight:700;letter-spacing:.08em}
body.page-contact .contact-card h3{margin:8px 0 0;color:var(--blue-dark);font-size:22px}
body.page-contact .contact-card p{margin:12px 0 0;color:var(--sub)}
body.page-contact .email-address{display:block;margin-top:18px;color:var(--blue-dark);font-size:22px;font-weight:700;word-break:break-all}
body.page-contact .mail-btn{display:inline-flex;margin-top:18px;min-height:50px;padding:0 22px;align-items:center;justify-content:center;background:var(--blue);color:#fff;border-radius:6px;text-decoration:none;font-weight:700}
body.page-contact .tel{display:block;margin-top:15px;color:var(--blue-dark);font-size:27px;font-weight:700;text-decoration:none}
body.page-contact .hours{font-size:13px;color:var(--sub)}
body.page-contact .three-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:980px;margin:auto}
body.page-contact .three{padding:28px;background:#fff;border:1px solid var(--line);border-radius:8px}
body.page-contact .three .num{color:var(--red);font-size:13px;font-weight:700}
body.page-contact .three h3{margin:8px 0 0;color:var(--blue-dark);font-size:18px}
body.page-contact .three p{margin:8px 0 0;color:var(--sub);font-size:14px}
body.page-contact .template-box{max-width:900px;margin:28px auto 0;padding:28px 30px;background:#fff;border:1px solid var(--line);border-radius:8px}
body.page-contact .template-box h3{margin:0;color:var(--blue-dark);font-size:19px}
body.page-contact .template{margin-top:15px;padding:20px;background:var(--soft);border-radius:6px;white-space:pre-wrap;font-size:14px;line-height:1.8}
body.page-contact .template-note{margin-top:12px;color:var(--sub);font-size:13px}
body.page-contact .optional-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px 26px;max-width:920px;margin:auto}
body.page-contact .optional{padding:17px 0;border-bottom:1px solid var(--line)}
body.page-contact .optional strong{display:block;color:var(--blue-dark);font-size:15px}
body.page-contact .optional span{display:block;margin-top:4px;color:var(--sub);font-size:13px}
body.page-contact .service-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
body.page-contact .service{padding:20px 16px;background:#fff;border:1px solid var(--line);border-radius:8px;text-decoration:none;color:inherit}
body.page-contact .service small{color:var(--red);font-size:10px;font-weight:700}
body.page-contact .service strong{display:block;margin-top:5px;color:var(--blue-dark);font-size:15px}
body.page-contact .service span{display:block;margin-top:6px;color:var(--sub);font-size:12px}
body.page-contact .security-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;max-width:940px;margin:auto}
body.page-contact .security-card{padding:28px;background:#fff;border:1px solid var(--line);border-radius:8px}
body.page-contact .security-card h3{margin:0;color:var(--blue-dark);font-size:19px}
body.page-contact .security-card p{margin:10px 0 0;color:var(--sub);font-size:14px}
body.page-contact .security-card a{font-weight:700}
body.page-contact .notice{max-width:940px;margin:24px auto 0;padding:18px 21px;background:#fffdf7;border:1px solid #e4d6ab;border-radius:8px;color:#6b6044;font-size:13px}
body.page-contact .faq{max-width:900px;margin:auto;border-top:1px solid var(--line)}
body.page-contact details{border-bottom:1px solid var(--line)}
body.page-contact summary{position:relative;padding:22px 46px 22px 0;cursor:pointer;color:var(--blue-dark);font-size:16px;font-weight:700;list-style:none}
body.page-contact summary::-webkit-details-marker{display:none}
body.page-contact summary:after{content:"+";position:absolute;right:4px;top:18px;color:var(--blue);font-size:25px}
body.page-contact details[open] summary:after{content:"−"}
body.page-contact details p{margin:0;padding:0 30px 22px;color:var(--sub);font-size:15px}
body.page-contact .btns{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:27px}
body.page-contact .btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 25px;border-radius:6px;text-decoration:none;font-weight:700}
body.page-contact .btn-primary{background:var(--blue);color:#fff}
body.page-contact .btn-outline{border:1px solid var(--blue);background:#fff;color:var(--blue)}
body.page-contact .final{text-align:center}
body.page-contact footer{padding:58px 0 26px;background:var(--blue-dark);color:#fff}
body.page-contact .footer-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}
body.page-contact .footer-logo{width:170px;filter:brightness(0) invert(1);opacity:.95}
body.page-contact .footer-grid p{font-size:13px;color:rgba(255,255,255,.7)}
body.page-contact .footer-nav{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
body.page-contact .footer-nav h3{margin:0 0 12px;font-size:14px}
body.page-contact .footer-nav a{display:block;margin:8px 0;color:rgba(255,255,255,.74);font-size:13px;text-decoration:none}
body.page-contact .copyright{margin-top:35px;padding-top:20px;border-top:1px solid rgba(255,255,255,.18);font-size:11px;color:rgba(255,255,255,.55)}
@media (max-width:800px){body.page-contact .container{width:min(var(--max),calc(100% - 40px))}
body.page-contact .header-inner{height:64px}
body.page-contact .brand img{width:145px}
body.page-contact .brand span, body.page-contact .gnav>a:not(.contact){display:none}
body.page-contact .gnav{gap:0}
body.page-contact .gnav .contact{padding:10px 13px;font-size:12px}
body.page-contact .breadcrumb{padding:13px 0;font-size:13px}
body.page-contact .hero{min-height:330px}
body.page-contact .hero-inner{padding:56px 0}
body.page-contact .hero h1{font-size:32px}
body.page-contact .hero-lead{font-size:16px}
body.page-contact section{padding:62px 0}
body.page-contact h2{font-size:25px}
body.page-contact .section-head{text-align:left;margin-bottom:30px}
body.page-contact .lead{margin-left:0}
body.page-contact .contact-grid, body.page-contact .three-grid, body.page-contact .optional-grid, body.page-contact .security-grid{grid-template-columns:1fr}
body.page-contact .service-grid{grid-template-columns:1fr 1fr}
body.page-contact .email-address{font-size:18px}
body.page-contact .tel{font-size:23px}
body.page-contact .footer-grid, body.page-contact .footer-nav{grid-template-columns:1fr}}
@media (min-width:881px){body.page-contact .hero{height:390px;min-height:390px;padding:0}
body.page-contact .hero-inner{padding:0}}
@media (max-width:880px){body.page-contact .hero{height:330px;min-height:330px;padding:0}
body.page-contact .hero-inner{padding:0}}


/* =====================================================================
   recruit/index.html  [page-recruit]
   ===================================================================== */
body.page-recruit{
 --blue:#0c66a6;--blue-dark:#0a4f82;--red:#c10f23;--text:#323737;--sub:#5e6670;
 --soft:#f5f7f9;--soft-blue:#eef5fa;--line:#dde3e8;--max:1120px;
}
body.page-recruit *{box-sizing:border-box}
body.page-recruit{margin:0;font-family:"Noto Sans JP","Yu Gothic",YuGothic,"Hiragino Kaku Gothic ProN",Meiryo,sans-serif;color:var(--text);line-height:1.85;background:#fff}
body.page-recruit a{color:var(--blue)}
body.page-recruit img{max-width:100%;display:block;height:auto}
body.page-recruit .container{width:min(var(--max),calc(100% - 48px));margin:auto}
body.page-recruit .site-header{position:sticky;top:0;z-index:100;background:#fff;border-bottom:1px solid var(--line)}
body.page-recruit .header-inner{height:76px;display:flex;align-items:center;justify-content:space-between;gap:28px}
body.page-recruit .brand{display:flex;align-items:center;gap:14px;text-decoration:none;color:inherit}
body.page-recruit .brand img{width:168px}
body.page-recruit .brand span{font-size:12px;color:var(--sub)}
body.page-recruit .gnav{display:flex;align-items:center;gap:25px;font-size:14px;font-weight:700}
body.page-recruit .gnav a{text-decoration:none;color:var(--text)}
body.page-recruit .gnav .contact{padding:12px 18px;border-radius:6px;background:var(--blue);color:#fff}
body.page-recruit .breadcrumb{padding:16px 0;border-bottom:1px solid var(--line);font-size:13px;color:var(--sub)}
body.page-recruit .breadcrumb a{text-decoration:none}
body.page-recruit .hero{min-height:330px;display:flex;align-items:center;position:relative;background:url("../img/pic08.webp") center 43%/cover no-repeat;color:#fff}
body.page-recruit .hero:before{content:"";position:absolute;inset:0;background:rgba(7,78,132,.68)}
body.page-recruit .hero-inner{position:relative;max-width:850px;padding:62px 0}
body.page-recruit .eyebrow{margin:0 0 10px;font-size:13px;font-weight:700;letter-spacing:.13em;opacity:.92}
body.page-recruit .hero h1{margin:0;font-size:42px;line-height:1.35}
body.page-recruit .hero-lead{margin:19px 0 0;font-size:17px;line-height:1.9;font-weight:600;color:rgba(255,255,255,.97)}
body.page-recruit section{padding:78px 0}
body.page-recruit .soft{background:var(--soft)}
body.page-recruit .kicker{margin:0 0 9px;color:var(--blue);font-size:12px;font-weight:700;letter-spacing:.13em}
body.page-recruit h2{margin:0;color:var(--blue-dark);font-size:28px;line-height:1.45}
body.page-recruit .lead{margin:15px 0 0;color:var(--sub)}
body.page-recruit .status-box{max-width:900px;margin:auto;padding:34px 36px;border:1px solid #cfddea;border-top:4px solid var(--blue);border-radius:8px;background:#f7fbff}
body.page-recruit .status-box .status{display:inline-block;padding:5px 10px;border-radius:99px;background:#fff;color:var(--blue-dark);font-size:12px;font-weight:700}
body.page-recruit .status-box h2{margin-top:14px}
body.page-recruit .status-box p{margin:13px 0 0;color:var(--sub)}
body.page-recruit .info-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;max-width:900px;margin:auto}
body.page-recruit .info-card{padding:28px;background:#fff;border:1px solid var(--line);border-radius:8px}
body.page-recruit .info-card h3{margin:0;color:var(--blue-dark);font-size:19px}
body.page-recruit .info-card p{margin:10px 0 0;color:var(--sub);font-size:14px}
body.page-recruit .info-card ul{margin:12px 0 0;padding-left:20px;color:var(--sub);font-size:14px}
body.page-recruit .info-card li{margin:7px 0}
body.page-recruit .notice{max-width:900px;margin:auto;padding:20px 22px;background:#fffdf7;border:1px solid #e3d3a8;border-radius:8px;color:#665d47;font-size:14px}
body.page-recruit .related{max-width:900px;margin:26px auto 0;display:flex;gap:12px;flex-wrap:wrap}
body.page-recruit .btn{display:inline-flex;min-height:48px;padding:0 22px;align-items:center;justify-content:center;border-radius:6px;text-decoration:none;font-weight:700}
body.page-recruit .btn-outline{background:#fff;border:1px solid var(--blue);color:var(--blue)}
body.page-recruit footer{padding:58px 0 26px;background:var(--blue-dark);color:#fff}
body.page-recruit .footer-main{display:grid;grid-template-columns:1.05fr 1.95fr;gap:76px}
body.page-recruit .footer-brand img{width:176px;filter:brightness(0) invert(1);opacity:.96}
body.page-recruit .footer-brand .company{margin:22px 0 0;font-size:15px;font-weight:700}
body.page-recruit .footer-brand .address, body.page-recruit .footer-brand .phones{margin:8px 0 0;font-size:13px;line-height:1.85;color:rgba(255,255,255,.76)}
body.page-recruit .footer-brand .phones{margin-top:17px}
body.page-recruit .footer-brand .phones strong{display:inline-block;min-width:112px;color:#fff}
body.page-recruit .footer-nav{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:42px}
body.page-recruit .footer-col h3{margin:0 0 15px;padding-bottom:10px;border-bottom:1px solid rgba(255,255,255,.18);font-size:14px}
body.page-recruit .footer-col a{display:block;margin:9px 0;color:rgba(255,255,255,.76);text-decoration:none;font-size:13px}
body.page-recruit .footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-top:40px;padding-top:20px;border-top:1px solid rgba(255,255,255,.18)}
body.page-recruit .footer-bottom-nav{display:flex;flex-wrap:wrap;gap:18px}
body.page-recruit .footer-bottom-nav a, body.page-recruit .copyright{color:rgba(255,255,255,.56);text-decoration:none;font-size:11px}
@media (max-width:800px){body.page-recruit .container{width:calc(100% - 40px)}
body.page-recruit .header-inner{height:64px}
body.page-recruit .brand img{width:145px}
body.page-recruit .brand span, body.page-recruit .gnav>a:not(.contact){display:none}
body.page-recruit .gnav{gap:0}
body.page-recruit .gnav .contact{padding:10px 13px;font-size:12px}
body.page-recruit .breadcrumb{padding:13px 0}
body.page-recruit .hero{min-height:300px}
body.page-recruit .hero-inner{padding:50px 0}
body.page-recruit .hero h1{font-size:31px}
body.page-recruit .hero-lead{font-size:15px}
body.page-recruit section{padding:58px 0}
body.page-recruit h2{font-size:24px}
body.page-recruit .status-box{padding:26px 22px}
body.page-recruit .info-grid{grid-template-columns:1fr}
body.page-recruit .footer-main, body.page-recruit .footer-nav{grid-template-columns:1fr}
body.page-recruit .footer-main{gap:42px}
body.page-recruit .footer-nav{gap:28px}
body.page-recruit .footer-bottom{align-items:flex-start;flex-direction:column;gap:14px}}
@media (min-width:881px){body.page-recruit .hero{height:330px;min-height:330px;padding:0}
body.page-recruit .hero-inner{padding:0}}
@media (max-width:880px){body.page-recruit .hero{height:280px;min-height:280px;padding:0}
body.page-recruit .hero-inner{padding:0}}


/* =====================================================================
   404.html  [page-404]
   ===================================================================== */
body.page-404 .notfound-main{
  background:#fff;
}
body.page-404 .notfound-hero{
  min-height:540px;
  display:flex;
  align-items:center;
  padding:82px 0 92px;
  background:linear-gradient(180deg,#F7FAFC 0%,#FFFFFF 100%);
}
body.page-404 .notfound-inner{
  max-width:820px;
  text-align:center;
}
body.page-404 .notfound-code{
  margin:0;
  color:#0C66A6;
  font-size:72px;
  line-height:1;
  font-weight:800;
  letter-spacing:.04em;
}
body.page-404 .notfound-en{
  margin:10px 0 18px;
  color:#6B737A;
  font-size:12px;
  font-weight:700;
  letter-spacing:.18em;
}
body.page-404 .notfound-inner h1{
  margin:0;
  color:#323737;
  font-size:36px;
  line-height:1.45;
}
body.page-404 .notfound-lead{
  margin:22px auto 0;
  color:#5E6670;
  font-size:16px;
  line-height:1.9;
}
body.page-404 .notfound-actions{
  display:flex;
  justify-content:center;
  gap:14px;
  margin-top:34px;
}
body.page-404 .notfound-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:200px;
  min-height:50px;
  padding:0 24px;
  border-radius:6px;
  text-decoration:none;
  font-size:14px;
  font-weight:700;
}
body.page-404 .notfound-btn.primary{
  background:#0C66A6;
  color:#fff;
}
body.page-404 .notfound-btn.primary:hover{
  background:#0A4F82;
}
body.page-404 .notfound-btn.secondary{
  border:1px solid #0C66A6;
  background:#fff;
  color:#0C66A6;
}
body.page-404 .notfound-btn.secondary:hover{
  background:#EEF5FA;
}
body.page-404 .notfound-contact{
  margin:24px 0 0;
  color:#6B737A;
  font-size:13px;
}
body.page-404 .notfound-contact a{
  color:#0C66A6;
  font-weight:700;
}

@media(max-width:880px){
  body.page-404 .notfound-hero{
    min-height:480px;
    padding:62px 0 72px;
  }
  body.page-404 .notfound-code{
    font-size:58px;
  }
  body.page-404 .notfound-inner h1{
    font-size:28px;
  }
  body.page-404 .notfound-lead{
    font-size:14px;
  }
  body.page-404 .notfound-actions{
    flex-direction:column;
    align-items:stretch;
    max-width:320px;
    margin:30px auto 0;
  }
  body.page-404 .notfound-btn{
    width:100%;
  }
}


/* ===== TOP WORKS CARD THUMBNAILS ===== */
body.page-home .top-work-thumb{
  width:calc(100% + 72px);
  height:132px;
  margin:-36px -36px 24px;
  overflow:hidden;
  border-radius:8px 8px 0 0;
  background:#EEF5FA;
}
body.page-home .top-work-thumb img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
@media(max-width:880px){
  body.page-home .top-work-thumb{
    width:calc(100% + 48px);
    height:120px;
    margin:-26px -24px 20px;
  }
}
