:root {
  --navy:#04162e;
  --navy2:#0a2a52;
  --blue:#0d62c9;
  --blue2:#1192df;
  --sky:#3fa7ec;
  --light:#f4f8ff;
  --line:#d8e5f5;
  --gold:#c9921d;
  --gold2:#f2c64b;
  --text:#10233d;
  --muted:#5c6c80;
}
*{box-sizing:border-box;}
html,body{margin:0;padding:0;background:#dfe5ee;color:var(--text);font-family:"Yu Gothic","Hiragino Kaku Gothic ProN","Meiryo",Arial,sans-serif;}
body{padding:14px;}
.sheet{width:210mm;min-height:297mm;margin:0 auto;background:#fff;position:relative;overflow:hidden;box-shadow:0 18px 50px rgba(4,22,46,.28);}
.sheet-inner{padding:4mm 10mm;position:relative;z-index:1;}
/* 背景：右上に大きな濃紺の対角アクセント＋微細グリッド */
.sheet:before{content:"";position:absolute;inset:0;z-index:0;
  background:
    radial-gradient(circle at 96% 3%,rgba(63,167,236,.16),transparent 26%),
    linear-gradient(180deg,#ffffff 0%,#f6faff 55%,#ffffff 100%);}
.sheet:after{content:"";position:absolute;top:-40mm;right:-40mm;width:130mm;height:130mm;z-index:0;
  background:conic-gradient(from 210deg at 50% 50%,rgba(13,98,201,.10),rgba(4,22,46,.06),transparent 60%);
  transform:rotate(8deg);border-radius:40mm;pointer-events:none;}
/* 上部アクセントストライプ */
.sheet-inner:before{content:"";position:absolute;top:0;left:0;right:0;height:3.4mm;z-index:2;
  background:linear-gradient(90deg,var(--navy) 0%,var(--blue) 45%,var(--sky) 70%,var(--gold2) 100%);}

.header{display:grid;grid-template-columns:58mm 1fr;gap:7mm;align-items:center;padding:3mm 0 2mm;position:relative;}
.header:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;
  background:linear-gradient(90deg,var(--navy),var(--blue) 55%,transparent);}
.logo{width:56mm;height:auto;display:block;}
.badges{display:flex;gap:0mm;justify-content:flex-end;margin-bottom:0mm;position:absolute;right:0;}
.badge{display:inline-flex;align-items:center;gap:1.5mm;border-radius:999px;font-weight:800;font-size:11pt;padding:2.4mm 5.2mm;line-height:1;color:#fff;white-space:nowrap;box-shadow:0 3px 8px rgba(4,22,46,.18);}
.badge.gold{background:linear-gradient(135deg,#f7d46e,#bd8113);color:#2b1c00;border:1px solid #a47716;}
.badge.blue{background:linear-gradient(135deg,#063775,#1880e6);}
.main-copy{font-size:30pt;letter-spacing:.02em;line-height:1.06;font-weight:900;color:var(--navy);margin:1mm 0;}
.main-copy b{color:var(--blue);}
.sub-copy{font-size:9.5pt;line-height:1.55;font-weight:700;color:#17385d;margin:0;padding-left:3.5mm;border-left:2.4mm solid;border-image:linear-gradient(180deg,var(--blue),var(--sky)) 1;}
.hero{display:grid;grid-template-columns:1fr 1fr;gap:4.2mm;margin-top:2mm;}
.shot{border:1px solid #cfe0f4;border-radius:3.2mm;background:#fff;overflow:hidden;box-shadow:0 6px 16px rgba(2,38,79,.16);position:relative;}
.shot-title{background:linear-gradient(120deg,#072a57,#0b4eaa 55%,#1192df);color:#fff;font-weight:800;font-size:9.5pt;padding:2mm 3.4mm;display:flex;justify-content:space-between;align-items:center;letter-spacing:.02em;}
.shot-title:after{content:"";position:absolute;}
.shot img{width:100%;height:38mm;object-fit:cover;display:block;}
.feature-two{display:grid;grid-template-columns:1fr 1fr;gap:4.2mm;margin-top:2mm;}
.feature-card{border-radius:3.2mm;background:linear-gradient(180deg,#ffffff,#f4f9ff);padding:2mm 4mm;border:1px solid #cdddf1;display:grid;grid-template-columns:14mm 1fr;gap:3mm;align-items:center;box-shadow:0 4px 12px rgba(9,46,91,.09);position:relative;overflow:hidden;}
.feature-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:1.4mm;background:linear-gradient(180deg,var(--blue),var(--sky));}
.feature-card.gold-card{border-color:#e6c069;background:linear-gradient(180deg,#fffdf5,#fff5e0);}
.feature-card.gold-card:before{background:linear-gradient(180deg,var(--gold2),var(--gold));}
.icon-bubble{width:14mm;height:14mm;border-radius:50%;background:linear-gradient(135deg,var(--blue),#0a4ba0);color:#fff;display:flex;align-items:center;justify-content:center;font-size:17pt;font-weight:900;box-shadow:0 4px 10px rgba(13,98,201,.34);}
.gold-card .icon-bubble{background:linear-gradient(135deg,var(--gold2),var(--gold));box-shadow:0 4px 10px rgba(201,146,29,.34);}
.feature-card h2{margin:0 0 1.2mm;font-size:15pt;line-height:1.22;color:#07305f;}
.feature-card p{margin:0;font-size:9pt;line-height:1.55;font-weight:600;color:#213855;}
.section-title{text-align:center;font-size:18pt;letter-spacing:.08em;font-weight:900;color:#07305f;margin:0;display:flex;align-items:center;justify-content:center;gap:3mm;}
.section-title:before,.section-title:after{content:"";height:2.2px;flex:1;max-width:42mm;border-radius:2px;}
.section-title:before{background:linear-gradient(90deg,transparent,var(--blue));}
.section-title:after{background:linear-gradient(90deg,var(--blue),transparent);}
.lead{text-align:center;font-size:9pt;line-height:1.45;font-weight:700;margin:0 0 2mm;color:#284562;}
.functions{margin-top:2mm;border:1px solid #c3d7f0;border-radius:3.2mm;padding:2.0mm 3.2mm;background:linear-gradient(180deg,#fbfdff,#f2f8ff);box-shadow:0 4px 12px rgba(9,46,91,.06);}
.func-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:1.6mm;}
.func{position:relative;min-height:8mm;background:#fff;border:1px solid #dbe7f3;border-radius:2mm;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0.8mm;font-weight:800;font-size:8pt;color:#07305f;box-shadow:0 2px 5px rgba(7,48,95,.07);text-align:center;transition:none;}
.func .ico{position:absolute;top:-2.3mm;font-size:13pt;color:#0b63c9;line-height:1;}
.func-more{text-align:center;font-size:8pt;font-weight:700;color:#3a567a;margin:1mm 0 0;}
.func-more b{color:#0b4eaa;}
.problem{display:grid;grid-template-columns:1fr 13mm 1fr;gap:2.5mm;align-items:stretch;margin-top:2mm;}
.panel{border-radius:3.2mm;background:#fff;border:1px solid #d7e2f0;overflow:hidden;box-shadow:0 4px 12px rgba(9,46,91,.09);}
.panel:first-child{background:url(../../assets/img/flyer/human_01.webp) 55mm 15mm/40mm no-repeat;}
.panel.solve{background:url(../../assets/img/flyer/human_02.webp) 55mm 15mm/40mm no-repeat;}
.panel h3{margin:0;padding:2.4mm 3.5mm;font-size:12.2pt;text-align:center;color:#fff;background:linear-gradient(120deg,#3a4655,#566472);letter-spacing:.02em;}
.panel.solve h3{background:linear-gradient(120deg,#0a4ba0,#0e83d5 70%,#2ea3e6);}
.list{padding:3mm 4mm 3.3mm;margin:0;list-style:none;}
.list li{font-size:9.7pt;line-height:1.42;margin:0 0 1.7mm;padding-left:7mm;position:relative;font-weight:700;}
.list li:last-child{margin-bottom:0;}
.list li:before{content:"×";position:absolute;left:0;top:.2mm;width:4.6mm;height:4.6mm;border-radius:50%;background:#5b6773;color:#fff;font-size:8pt;text-align:center;line-height:4.6mm;font-weight:900;}
.solve .list li:before{content:"✓";background:linear-gradient(135deg,#0f67c9,#1aa0e6);box-shadow:0 2px 5px rgba(15,103,201,.34);}
.arrows{display:flex;flex-direction:column;justify-content:center;gap:3.3mm;align-items:center;}
.arrow{width:12mm;height:5mm;background:linear-gradient(90deg,#9fcbf7,#0c62c8);clip-path:polygon(0 25%,70% 25%,70% 0,100% 50%,70% 100%,70% 75%,0 75%);filter:drop-shadow(0 2px 3px rgba(12,98,200,.3));}
.strengths{margin-top:2mm;border:1px solid #c3d7f0;border-radius:3.2mm;background:linear-gradient(180deg,#ffffff,#f6faff);padding:2.6mm 3.2mm;box-shadow:0 4px 12px rgba(9,46,91,.06);}
.str-title{text-align:center;font-size:16pt;font-weight:900;color:#07305f;margin:0 0 1.6mm;letter-spacing:.08em;}
.str-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:2mm;}
.str{border:1px solid #d4e3f5;border-radius:2.6mm;padding:2.4mm 2mm;text-align:center;background:linear-gradient(180deg,#ffffff,#eef6ff);min-height:28mm;box-shadow:0 2px 6px rgba(7,48,95,.06);position:relative;overflow:hidden;}
.str:before{content:"";position:absolute;top:0;left:0;right:0;height:1.2mm;background:linear-gradient(90deg,var(--blue),var(--sky));}
.str .sico{font-size:18pt;color:#0c65c8;margin-bottom:1mm;}
.str h4{margin:0 0 1mm;color:#07305f;font-size:9pt;line-height:1.25;}
.str p{margin:0;color:#3d526a;font-size:7.55pt;line-height:1.42;font-weight:600;}
.message{text-align:center;margin:2mm 0 0;padding:2.2mm 4mm;border-radius:2.6mm;background:linear-gradient(90deg,rgba(13,98,201,.08),rgba(17,146,223,.16),rgba(13,98,201,.08));border-top:1px solid #cfe2f6;border-bottom:1px solid #cfe2f6;}
.message strong{display:block;font-size:17.5pt;color:#07305f;letter-spacing:.04em;line-height:1.25;}
.message span{font-size:10.5pt;font-weight:800;color:#18395f;}
.cta{display:grid;grid-template-columns:1fr 65mm 31mm;gap:5mm;align-items:center;background:linear-gradient(120deg,rgba(4,22,46,.90) 0%,rgba(10,45,100,.82) 55%,rgba(12,60,120,.78) 100%),url(../../assets/img/flyer/bg_2.webp) center/cover no-repeat;color:#fff;margin:2mm -4mm -4mm;padding:5mm 10mm 10mm;min-height:34mm;position:relative;overflow:hidden;}
.cta{background:url(../../assets/img/flyer/bg_1.webp) center/cover no-repeat;}
.cta:before{content:"";position:absolute;top:-30mm;right:-10mm;width:90mm;height:90mm;background:radial-gradient(circle,rgba(63,167,236,.28),transparent 62%);pointer-events:none;}
.cta:after{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.10) 1px,transparent 1px);background-size:6mm 6mm;opacity:.5;pointer-events:none;}
.cta>*{position:relative;z-index:1;}
.cta h2{margin:0 0 2.4mm;font-size:11pt;letter-spacing:.03em;}
.cta .btn{display:inline-block;background:linear-gradient(135deg,#ffffff,#eaf3ff);color:#0a4d9d;border-radius:1.8mm;padding:2.4mm 10mm;font-size:9pt;font-weight:900;letter-spacing:.05em;box-shadow:0 4px 12px rgba(0,0,0,.22);}
.contact{border-left:1px dashed rgba(255,255,255,.5);padding-left:5mm;font-size:10.5pt;line-height:1.75;font-weight:700;}
.qrbox{background:#fff;color:#07305f;border-radius:3mm;padding:1.5mm;text-align:center;font-weight:900;font-size:8.5pt;box-shadow:0 4px 12px rgba(0,0,0,.22);}
.qrbox img{width:25mm;height:25mm;display:block;margin:0 auto;image-rendering:pixelated;}
.note{position:absolute;right:10mm;bottom:48mm;color:#748499;font-size:7.3pt;}
/* ===== 画像素材 ===== */
/* ヘッダーバッジ画像 */
.badge-img{height:10mm;width:auto;display:block;object-fit:contain;filter:drop-shadow(0 2px 6px rgba(0,0,0,.30));}

/* バナーカード（特徴セクション） */
.banner-card{border-radius:3.2mm;background:linear-gradient(180deg,#ffffff,#f0f7ff);padding:0mm 3.5mm 2mm;border:1px solid #cdddf1;box-shadow:0 4px 14px rgba(9,46,91,.10);display:flex;flex-direction:column;align-items:center;gap:0mm;}
.banner-card img{height:19mm;width:auto;max-width:100%;object-fit:contain;}
.banner-card p{margin:0;font-size:8.8pt;line-height:1.52;font-weight:600;color:#213855;width:100%;}
.banner-card.gold-banner{background:linear-gradient(180deg,#fffdf5,#fff3d4);border-color:#dfc056;}

/* ファンクションアイコン（画像版） */
.func{min-height:21mm;padding:2mm 1mm 2.5mm;justify-content:flex-start;gap:0mm;}
.func img{width:12mm;height:12mm;object-fit:contain;flex-shrink:0;}
@page{size:A4;margin:0;}
@media print{
  html,body{background:#fff;padding:0;}
  .sheet{width:210mm;height:297mm;min-height:297mm;margin:0;box-shadow:none;overflow:hidden;}
  .sheet-inner{padding:4mm 10mm;}
  *{-webkit-print-color-adjust:exact;print-color-adjust:exact;}
}

