:root{
  --jma-navy:#102a49;
  --jma-blue:#245e98;
  --jma-text:#182235;
  --jma-muted:#647386;
  --jma-line:#dce4ee;
  --jma-bg:#f6f8fb;
  --jma-accent:#f3b925;
}
body{font-family:"M PLUS 1",sans-serif;font-weight:400;color:var(--jma-text);line-height:1.75;letter-spacing:0}
body p{font-size:16px;line-height:1.8;font-weight:400}
header,header *,footer,footer *{font-family:"M PLUS 1",sans-serif!important}
header{background:rgba(255,255,255,.98);backdrop-filter:saturate(160%) blur(10px)}
.header-container{max-width:1240px;padding:10px 20px;min-height:78px}
.site-logo{display:flex;align-items:center;flex:0 0 auto}
.site-logo a{display:block;line-height:0}
.site-logo img{display:block;width:auto;height:58px;max-width:250px}
#nav-content nav .menu>ul{gap:22px}
#nav-content nav .menu>ul>li>a{font-size:14px;font-weight:700;line-height:1.4;letter-spacing:-.01em}
#nav-content nav .menu ul li.btn-cta a{padding:11px 19px;border-radius:8px;background:var(--jma-navy)}
#nav-content nav .menu ul li.btn-cta a:hover{background:#183e67}

.jma-hub{font-weight:400}
.jma-hub h1,.jma-hub h2,.jma-hub h3,.jma-hub h4{font-family:"M PLUS 1",sans-serif;font-style:normal;text-wrap:balance}
.jma-hub h1{font-weight:900}
.jma-hub h2{font-weight:800}
.jma-hub h3,.jma-hub h4{font-weight:700}
.jma-hub p,.jma-hub li,.jma-hub span,.jma-hub a{font-weight:400}
.jma-hub strong,.jma-hub-btn,.jma-hub-start-card strong,.jma-hub-news-card span{font-weight:700}
.jma-hub-section-head>p,.jma-hub-license-label,.jma-hub-price-grid small,.jma-hub-flow-grid small,.jma-hub-network-grid small{font-weight:800}

.jma-hub-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);
  gap:52px;
  align-items:center;
  position:relative;
  z-index:2;
}
.jma-hub-hero-copy{min-width:0}
.jma-hub-hero-visual{
  min-height:420px;
  border-radius:22px;
  overflow:hidden;
  position:relative;
  background:
    linear-gradient(180deg,rgba(7,22,40,.04) 30%,rgba(7,22,40,.72) 100%),
    url("https://jma-drone.or.jp/school/wp-content/uploads/2026/10/4a15290f610da5b17ad68d744adde936.png") center center/cover no-repeat;
  box-shadow:0 24px 54px rgba(3,17,33,.28);
  border:1px solid rgba(255,255,255,.18);
}
.jma-hub-hero-visual:before{
  content:"";
  position:absolute;
  inset:18px;
  border:1px solid rgba(255,255,255,.26);
  border-radius:14px;
  pointer-events:none;
}
.jma-hub-visual-label{
  position:absolute;
  left:28px;
  right:28px;
  bottom:26px;
  color:#fff;
}
.jma-hub-visual-label small{
  display:block;
  margin-bottom:7px;
  font-size:10px;
  font-weight:800!important;
  letter-spacing:.14em;
  color:#b8d8f5;
}
.jma-hub-visual-label strong{
  display:block;
  font-size:18px;
  line-height:1.5;
  color:#fff;
}

.jma-hub-corporate{padding:72px 0;background:#fff}
.jma-hub-corporate-card{
  display:grid;
  grid-template-columns:minmax(0,1.5fr) minmax(250px,.5fr);
  gap:44px;
  align-items:center;
  padding:38px 40px;
  border-radius:18px;
  background:linear-gradient(135deg,#eef5fb 0%,#fff 58%,#f8fbfd 100%);
  border:1px solid #d7e4ef;
  box-shadow:0 12px 28px rgba(18,43,69,.06);
}
.jma-hub-corporate-card h2{
  margin:6px 0 12px;
  color:#10213b;
  font-size:clamp(27px,3vw,38px);
  line-height:1.35;
}
.jma-hub-corporate-card p{
  margin:0;
  max-width:760px;
  font-size:14px;
  line-height:1.9;
  color:#59697b;
}
.jma-hub-corporate-points{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:20px;
}
.jma-hub-corporate-points span{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:7px 11px;
  border-radius:999px;
  background:#fff;
  border:1px solid #cfdde9;
  color:#284a6a;
  font-size:11px;
  font-weight:700!important;
}
.jma-hub-corporate-actions{
  display:flex;
  flex-direction:column;
  gap:10px;
}

.site-footer{background:#0d2037;color:#d9e3ef;padding:56px 0 0;text-align:left}
.site-footer a{color:#d9e3ef}
.site-footer-inner{width:min(1180px,calc(100% - 40px));margin:0 auto;display:grid;grid-template-columns:1.1fr 2fr;gap:56px}
.site-footer-brand figure{margin:0 0 20px}
.site-footer-brand figure img{width:240px;height:auto;filter:brightness(0) invert(1);opacity:.96}
.site-footer-brand p{font-size:14px;color:#b8c7d7;margin:0 0 18px}
.site-footer-org{display:flex;flex-direction:column;gap:4px;font-size:12px;color:#92a8bc}
.site-footer-links{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.site-footer-links>div{display:flex;flex-direction:column;gap:9px}
.site-footer-links strong{font-size:13px;color:#fff;margin-bottom:8px;font-weight:800;letter-spacing:.03em}
.site-footer-links a{font-size:13px;line-height:1.6;color:#c5d3e0}
.site-footer-links a:hover{color:#fff}
.site-footer-meta{width:min(1180px,calc(100% - 40px));margin:42px auto 0;padding:20px 0;border-top:1px solid rgba(255,255,255,.12);display:flex;justify-content:space-between;gap:24px;align-items:flex-start;font-size:12px;color:#91a6ba}
.site-footer-meta>div{display:flex;gap:18px;flex-wrap:wrap}
.site-footer-meta a{font-size:12px;color:#b9c7d4}
.site-footer .sign{margin-top:0;padding:16px 20px 78px;background:#081827;text-align:center;font-size:11px;color:#7890a5}

.home .ft_btn{position:fixed;left:0;right:0;bottom:0;z-index:998;display:flex;justify-content:center;pointer-events:none}
.home .ft_btn .btn-wrap{pointer-events:auto}
.home .ft_btn a.btn-c{display:flex;align-items:center;justify-content:center;gap:8px;min-width:360px;min-height:54px;padding:12px 24px;border-radius:10px 10px 0 0;background:#102a49;color:#fff!important;font-size:15px;font-weight:700;line-height:1.2;box-shadow:0 -4px 18px rgba(8,25,45,.18)}
.home .ft_btn a.btn-c span{position:static;width:auto;padding:0;border:0;color:#b9cce0;background:transparent;font-size:11px;font-weight:700}
.home .ft_btn a.btn-c span:before,.home .ft_btn a.btn-c span:after{display:none}

@media screen and (max-width:1050px){
  .jma-hub-hero-grid{grid-template-columns:1fr .8fr;gap:34px}
  .jma-hub-hero-visual{min-height:360px}
}
@media screen and (max-width:959px){
  .header-container{min-height:64px;padding:7px 14px}
  .site-logo img{height:48px;max-width:205px}
  #nav-content{top:64px;height:calc(100vh - 64px)}
  #nav-content nav .menu ul{padding:12px 18px 24px}
  #nav-content nav .menu ul li a{padding:13px 4px;font-size:14px;font-weight:700;line-height:1.5}
  #nav-content nav .menu ul .sub-menu{padding-left:12px;margin:0}
  #nav-content nav .menu ul .sub-menu li a{font-size:13px;padding:10px 4px}
  .jma-hub-hero-grid{grid-template-columns:1fr;gap:26px}
  .jma-hub-hero-visual{min-height:300px}
  .jma-hub-corporate-card{grid-template-columns:1fr;gap:24px}
  .jma-hub-corporate-actions{display:grid;grid-template-columns:1fr 1fr}
}
@media screen and (max-width:700px){
  body.home{padding-bottom:56px}
  body p{font-size:15px}
  .jma-hub-shell{width:calc(100% - 28px)}
  .jma-hub-hero{padding:32px 0 28px}
  .jma-hub-hero-grid{gap:20px}
  .jma-hub-eyebrow,.jma-hub-eyebrow-dark{font-size:10px;letter-spacing:.12em;margin-bottom:12px}
  .jma-hub-hero h1{font-size:31px;line-height:1.22;letter-spacing:-.035em;margin-bottom:18px}
  .jma-hub-lead{font-size:13px;line-height:1.85;margin-bottom:22px}
  .jma-hub-proof{margin-top:18px}
  .jma-hub-proof span{font-size:10px;padding:6px 9px}
  .jma-hub-hero-visual{min-height:210px;border-radius:15px}
  .jma-hub-hero-visual:before{inset:10px;border-radius:10px}
  .jma-hub-visual-label{left:18px;right:18px;bottom:16px}
  .jma-hub-visual-label strong{font-size:14px}
  .jma-hub-start,.jma-hub-compare,.jma-hub-price,.jma-hub-flow,.jma-hub-network,.jma-hub-campaign,.jma-hub-news,.jma-hub-corporate{padding:40px 0}
  .jma-hub-section-head{margin-bottom:20px}
  .jma-hub-section-head h2{font-size:24px;line-height:1.42;letter-spacing:-.025em}
  .jma-hub-section-head>span{font-size:12px;line-height:1.75}
  .jma-hub-start-card{padding:17px 18px}
  .jma-hub-start-card h3{font-size:19px;margin:14px 0 7px}
  .jma-hub-start-card p{font-size:12px;line-height:1.7;margin-bottom:12px}
  .jma-hub-card-no{font-size:28px}
  .jma-hub-license-card{padding:20px 18px}
  .jma-hub-license-card h3{font-size:20px}
  .jma-hub-license-card p,.jma-hub-license-card li{font-size:12px;line-height:1.75}
  .jma-hub-price-grid article{padding:16px}
  .jma-hub-price-grid h3{font-size:16px}
  .jma-hub-price-grid strong{font-size:24px}
  .jma-hub-flow-grid li{padding:16px}
  .jma-hub-flow-grid li>span{font-size:24px;margin-bottom:10px}
  .jma-hub-flow-grid strong{font-size:14px}
  .jma-hub-flow-grid p{font-size:11px}
  .jma-hub-campaign-card{padding:19px 16px}
  .jma-hub-campaign-card h3{font-size:22px}
  .jma-hub-campaign-number strong{font-size:38px}
  .jma-hub-news-card{padding:17px 18px}
  .jma-hub-news-card time{margin-bottom:12px}
  .jma-hub-news-card h3{font-size:14px;line-height:1.65;margin-bottom:14px}
  .jma-hub-venues{padding:42px 0}
  .jma-hub-venues h2{font-size:25px}
  .jma-hub-corporate-card{padding:22px 18px;border-radius:14px}
  .jma-hub-corporate-card h2{font-size:24px}
  .jma-hub-corporate-card p{font-size:12px;line-height:1.8}
  .jma-hub-corporate-points{gap:6px;margin-top:16px}
  .jma-hub-corporate-points span{font-size:10px;min-height:30px;padding:6px 9px}
  .jma-hub-corporate-actions{grid-template-columns:1fr}
  .jma-hub-final{padding:44px 0}
  .jma-hub-final h2{font-size:26px;line-height:1.4}
  .site-footer{padding-top:40px}
  .site-footer-inner{width:calc(100% - 28px);display:block}
  .site-footer-brand figure img{width:210px}
  .site-footer-brand{margin-bottom:30px}
  .site-footer-links{grid-template-columns:1fr 1fr;gap:26px 18px}
  .site-footer-links>div:last-child{grid-column:1/-1}
  .site-footer-meta{width:calc(100% - 28px);margin-top:32px;display:block;padding:18px 0}
  .site-footer-meta>div{display:flex;flex-direction:column;gap:3px;margin-bottom:12px}
  .site-footer .sign{padding-bottom:72px}
  .home .ft_btn a.btn-c{width:100vw;min-width:0;min-height:56px;border-radius:0;padding:10px 14px;font-size:14px}
  .home .ft_btn a.btn-c span{display:none}
  #page_top{display:none!important}
}