:root{
  --navy:#003b6d;
  --deep:#003462;
  --red:#e60012;
  --sky:#d8f8f8;
  --pale:#eaffea;
  --pink:#fff0fb;
  --orange:#ffdcb8;
  --text:#003466;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  color:var(--text);
  background:var(--sky);
  font-family:"Yu Mincho","Hiragino Mincho ProN","Yu Gothic",Meiryo,serif;
  line-height:1.75;
}
a{color:inherit}
img{max-width:100%;height:auto;display:block}
.site-header{
  background:var(--navy);
  color:#fff;
  border-bottom:1px solid rgba(255,255,255,.18);
}
.header-inner{
  max-width:1600px;
  margin:0 auto;
  min-height:150px;
  padding:14px 28px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
}
.brand-sub{
  margin:0 0 10px;
  font-size:clamp(15px,2vw,28px);
  font-weight:700;
  letter-spacing:.06em;
}
.brand-logo{width:min(520px,68vw);filter:brightness(0) invert(1)}
.global-nav{display:flex;gap:40px;font-size:clamp(20px,2.5vw,42px);font-weight:800;letter-spacing:.04em}
.global-nav a{text-decoration:none;color:#fff;text-shadow:2px 2px 0 rgba(0,0,0,.22)}
.global-nav a:hover{opacity:.8}
.hero{
  min-height:720px;
  background:url("assets/hero.jpg") center/cover no-repeat;
  display:flex;
  align-items:flex-start;
  justify-content:center;
  text-align:center;
  padding:26px 18px 70px;
}
.hero-text{width:min(1040px,100%)}
.hero-catch{font-size:clamp(28px,4.2vw,62px);line-height:1.2;color:var(--red);font-weight:900;margin:0 0 5px;text-shadow:2px 2px 0 #fff}
.hero h1{font-size:clamp(64px,11vw,148px);line-height:.9;margin:0;color:var(--deep);font-weight:900;letter-spacing:.02em}
.hero-kana{font-size:clamp(28px,4vw,58px);font-weight:900;margin:6px 0 36px;color:var(--deep)}
.hero-points{display:grid;gap:18px;justify-content:center}
.hero-points span{display:block;background:rgba(255,255,255,.86);border:3px solid var(--red);color:var(--red);font-size:clamp(26px,4vw,52px);font-weight:900;font-style:italic;line-height:1.15;padding:4px 20px;text-shadow:1px 1px 0 #fff}
.section{max-width:1600px;margin:0 auto;padding:58px 42px}
.section h2{font-size:clamp(36px,5vw,70px);line-height:1.25;text-align:center;color:var(--red);margin:0 0 42px;font-weight:900}
.problem-stage{position:relative;max-width:1500px;margin:0 auto}
.problem-bg{width:100%;border-radius:4px}
.balloon{position:absolute;background:#fff;border:7px solid #111;border-radius:50%;padding:20px 16px;color:var(--red);font-size:clamp(15px,2vw,30px);font-weight:900;line-height:1.45;text-align:center;writing-mode:vertical-rl;box-shadow:0 3px 0 rgba(0,0,0,.2)}
.b1{left:15%;top:12%}.b2{left:18%;bottom:34%}.b3{left:43%;top:15%;border-radius:40%;transform:rotate(-5deg)}.b4{right:19%;top:12%}.b5{right:9%;bottom:22%}
.solution h2{text-align:left;color:var(--red);font-size:clamp(40px,5.2vw,78px);margin-bottom:30px}.solution h2 span{color:var(--deep)}
.flow-card{max-width:940px;margin:0 auto 40px;background:#fff3ff;border-radius:55px;display:flex;align-items:center;gap:34px;padding:28px 50px}
.flow-person{width:210px}.flow-copy{font-size:clamp(22px,3vw,42px);font-weight:900;line-height:1.35}.flow-copy p{margin:0 0 16px}.flow-copy strong{display:inline-block;background:var(--red);color:#fff;border-radius:14px;padding:4px 24px;margin:0 0 16px;font-size:clamp(30px,3.4vw,46px)}
.flow-grid{display:grid;grid-template-columns:1fr auto 1.6fr;gap:22px;align-items:center;margin:40px 0}.flow-box{background:#f0fff0;border:2px solid #9fe5e5;padding:18px;text-align:center;font-weight:900;font-size:clamp(18px,2.2vw,30px)}.flow-box img{margin:0 auto 10px}.flow-arrow{font-size:70px;color:var(--red);font-weight:900}
.complete-badge{width:max-content;max-width:100%;margin:20px auto 8px;background:var(--red);color:#fff;font-size:clamp(36px,4vw,62px);font-weight:900;border-radius:18px;padding:4px 36px;line-height:1.3}.site-display{text-align:center;font-size:clamp(28px,3vw,46px);font-weight:900;margin:0 0 36px}
.benefits{display:grid;gap:36px}.benefit{display:grid;grid-template-columns:320px 1fr;gap:34px;align-items:center;background:#fff7ff;border:2px solid #ffc8f7;padding:28px}.shop-benefit{grid-template-columns:1fr 360px;background:#eaffea;border-color:#d9ffd9}.benefit h3{display:inline-block;background:#0b8bc6;color:#fff;border-radius:14px;padding:5px 26px;font-size:clamp(24px,2.7vw,38px);margin:0 0 18px}.benefit h4,.benefit li{color:var(--red);font-size:clamp(25px,3vw,44px);font-weight:900;font-style:italic}.benefit p{font-size:clamp(18px,2.1vw,30px);font-weight:800}.benefit ul{margin:0;padding-left:1.2em}.benefit-img.office{justify-self:end}
.voices h2{font-size:clamp(42px,5vw,80px)}.voice-list{display:grid;gap:36px}.voice-card{display:grid;grid-template-columns:230px 1fr;gap:30px;align-items:center;background:var(--orange);border:1px solid #34b4c2;border-radius:50px;padding:30px 42px}.voice-person{text-align:center;font-weight:900;font-size:clamp(18px,2vw,28px)}.voice-person img{margin:0 auto 10px;width:150px}.voice-card>p{font-size:clamp(20px,2.4vw,34px);font-weight:800;margin:0}.voice-lead{text-align:center;color:var(--red);font-size:clamp(42px,5.2vw,82px);font-weight:900;line-height:1.25;margin:52px 0 0}
.price{background:var(--sky)}.price h2{font-size:clamp(52px,6vw,94px)}.price-plan{background:rgba(255,255,255,.35);border-left:8px solid var(--red);padding:24px 34px;margin:0 auto 46px;max-width:1400px}.price-plan h3{display:inline-block;background:var(--red);color:#fff;font-size:clamp(32px,4vw,58px);line-height:1.2;margin:0 0 24px;padding:2px 18px}.price-plan p,.price-plan dd{font-size:clamp(18px,2.2vw,30px);font-weight:800}.price-plan h4{display:inline-block;background:#fff;border:2px solid var(--red);border-radius:18px;color:var(--deep);font-size:clamp(24px,3vw,40px);padding:4px 18px;margin:24px 0 16px}.price-plan dt{color:var(--red);font-size:clamp(26px,3.2vw,44px);font-weight:900}.price-plan dd{margin:0 0 10px 2em}.plan-price{text-align:center;color:var(--red);font-weight:900;font-size:clamp(48px,6vw,90px)!important;line-height:1.15;margin:24px 0 4px}.plan-price span{display:block;width:max-content;margin:0 auto 8px;border:3px solid var(--red);background:#fff;font-size:clamp(24px,3vw,40px);padding:2px 12px}.plan-price small{font-size:.45em}.monthly{text-align:center;color:var(--red);font-size:clamp(18px,2.7vw,36px)!important}.include{text-align:center;color:var(--deep)}
.contact-box{text-align:center;margin:60px 0 0}.contact-box p{font-size:clamp(22px,2.8vw,40px);font-weight:900}.cta-button{display:inline-block;background:var(--deep);color:#fff;text-decoration:none;border-radius:18px;padding:10px 46px;font-size:clamp(30px,4vw,58px);font-weight:900;box-shadow:0 5px 0 rgba(0,0,0,.25)}.cta-button:hover{transform:translateY(2px);box-shadow:0 3px 0 rgba(0,0,0,.25)}
.site-footer{background:var(--navy);color:#fff;text-align:center;padding:34px 16px}.site-footer p{margin:0 0 8px;font-weight:800}.site-footer img{width:320px;margin:0 auto;filter:brightness(0) invert(1)}

.linkbtn {
margin-top:5px;
margin-left:auto;
margin-right:auto;
width: 600px;
height: 80px;
 text-align: center;
background: #003366;
border-radius: 10px;
}

.linkbtn a {
 font-family:"MSƒSƒVƒbƒN",sans-serif; 
 font-size: 36px;
 line-height: 80px;
 color: #ffffff;
 text-align: center;
 font-weight: bold;
 text-decoration:none;
}

@media (max-width: 800px){
  .header-inner{min-height:auto;flex-direction:column;align-items:flex-start;padding:14px}.global-nav{gap:20px;font-size:20px}.hero{min-height:560px;background-position:center bottom}.section{padding:42px 16px}.balloon{position:static;writing-mode:horizontal-tb;margin:10px auto;border-width:4px;border-radius:24px;max-width:92%}.problem-bg{display:none}.flow-card{flex-direction:column;text-align:center;padding:24px 20px}.flow-grid{grid-template-columns:1fr}.flow-arrow{transform:rotate(90deg);font-size:46px;text-align:center}.benefit,.shop-benefit,.voice-card{grid-template-columns:1fr}.shop-benefit .office{justify-self:center}.voice-card{border-radius:28px;padding:24px 18px}.price-plan{padding:20px 16px}.price-plan dd{margin-left:0}.cta-button{font-size:28px;padding:10px 22px}
}
