.problems{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.problem-card{background:var(--white);border-radius:12px;padding:36px 28px 32px;text-align:center;box-shadow:0 2px 12px rgba(0,0,0,0.05);border:1px solid var(--border);transition:box-shadow 0.2s}.problem-card:hover{box-shadow:0 6px 24px rgba(0,0,0,0.08)}.problem-card__icon{width:80px;height:80px;margin:0 auto 20px;background:var(--bg-blue);border-radius:50%;display:flex;align-items:center;justify-content:center}.problem-card__icon svg{width:36px;height:36px;stroke:var(--primary);fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.problem-card__title{font-size:1.7rem;font-weight:700;margin-bottom:12px}.problem-card__title .red{color: var(--accent-deep)}.problem-card__desc{font-size:1.4rem;color:var(--ink-light);line-height:1.7}.feature-section{padding:0}.feature-block{padding:80px 0}.feature-block--blue{background:var(--bg-blue)}.feature-block .container{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}.feature-block--reverse .container{direction:rtl}.feature-block--reverse .feature-block__text{direction:ltr}.feature-block--reverse .feature-block__visual{direction:ltr}.feature-block__number{font-family:'Space Grotesk',sans-serif;font-size:5.6rem;font-weight:700;color:rgba(45,84,199,0.2);line-height:1;margin-bottom:8px}.feature-block__title{font-size:2.4rem;font-weight:900;line-height:1.45;margin-bottom:20px}.feature-block__title .highlight{color: var(--accent-deep);background:linear-gradient(transparent 60%,rgba(0, 217, 255,0.12) 60%);padding:0 2px}.feature-block__desc{font-size:1.5rem;color:var(--ink-light);line-height:1.9}.feature-block__visual{display:flex;align-items:center;justify-content:center}.feature-block__img{width:100%;max-width:420px;border-radius:16px;overflow:hidden;box-shadow:0 4px 24px rgba(0,0,0,0.06)}.feature-block__img img{width:100%;height:auto;display:block}.cta-banner{padding:52px 0;background:var(--white);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.cta-banner .container{display:flex;align-items:center;justify-content:center;gap:36px;flex-wrap:wrap}.cta-banner__text{font-size:2rem;font-weight:900}.cta-banner__text .highlight{color: var(--accent-deep)}.cta-banner__btn-wrap{display:flex;flex-direction:column;align-items:center;gap:4px}.cta-banner__mini{font-size:1.2rem;color:var(--ink-light);font-weight:500}.numbers{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.number-card{background:var(--white);border-radius:12px;padding:32px 16px;text-align:center;border:1px solid var(--border);box-shadow:0 2px 8px rgba(0,0,0,0.03)}.number-card__icon{margin-bottom:8px;display:flex;align-items:center;justify-content:center}.number-card__icon svg{width:32px;height:32px;stroke:var(--primary);fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.number-card__label{font-size:1.2rem;color:var(--ink-light);font-weight:500;margin-bottom:8px}.number-card__value{font-family:'Space Grotesk',sans-serif;font-size:4rem;font-weight:700;color: var(--accent-deep);line-height:1.1}.number-card__unit{font-size:1.6rem;color:var(--ink);font-weight:700}.number-card__desc{font-size:1.2rem;color:var(--ink-light);margin-top:8px;line-height:1.6}.comparison{width:100%;border-collapse:separate;border-spacing:0;border-radius:12px;overflow:hidden;box-shadow:0 2px 16px rgba(0,0,0,0.05)}.comparison thead th{padding:20px 24px;font-size:1.5rem;font-weight:700;text-align:center}.comparison thead th:first-child{background:#f0f2f5;color:var(--ink-light);text-align:left}.comparison thead th:nth-child(2){background:#f0f2f5;color:var(--ink-light)}.comparison thead th:nth-child(3){background:var(--dark);color:var(--white)}.comparison td{padding:16px 24px;font-size:1.4rem;border-bottom:1px solid #eee;background:var(--white);text-align:center}.comparison td:first-child{font-weight:700;color:var(--ink-light);text-align:left;background:#fafbfc}.comparison td:nth-child(3){color: var(--accent-deep);font-weight:600}.steps{max-width:680px;margin:0 auto}.step{display:grid;grid-template-columns:100px 64px 1fr;gap:0 20px;align-items:start;position:relative}.step+.step{margin-top:0}.step__number{text-align:center;padding-top:16px}.step__num-label{font-family:'Space Grotesk',sans-serif;font-size:1.1rem;font-weight:700;color:var(--ink-light);letter-spacing:0.1em}.step__num-value{font-family:'Space Grotesk',sans-serif;font-size:3.6rem;font-weight:700;color: var(--accent-deep);line-height:1}.step__icon-wrap{display:flex;flex-direction:column;align-items:center}.step__icon{width:56px;height:56px;background:var(--bg-blue);border-radius:12px;display:flex;align-items:center;justify-content:center;margin-top:12px}.step__icon svg{width:26px;height:26px;stroke:var(--primary);fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.step__line{width:2px;height:48px;background:var(--border);margin:8px auto}.step:last-child .step__line{display:none}.step__arrow{color:var(--border);font-size:2rem;margin:4px auto}.step__content{background:var(--white);border-radius:12px;padding:20px 24px;border:1px solid var(--border);box-shadow:0 2px 8px rgba(0,0,0,0.03);margin-bottom:12px}.step__title{font-size:1.6rem;font-weight:700;margin-bottom:6px}.step__desc{font-size:1.3rem;color:var(--ink-light);line-height:1.7}.phases{display:flex;flex-direction:column;gap:24px;max-width:800px;margin:0 auto}.phase-card{background:var(--white);border-radius:12px;padding:32px;border-left:5px solid var(--primary);box-shadow:0 2px 12px rgba(0,0,0,0.04)}.phase-card__header{display:flex;align-items:center;gap:16px;margin-bottom:16px}.phase-card__badge{font-family:'Space Grotesk',sans-serif;font-size:1.2rem;font-weight:700;color:var(--white);background:var(--primary);padding:4px 14px;border-radius:4px}.phase-card__name{font-size:1.8rem;font-weight:700}.phase-card__period{font-size:1.3rem;color:var(--ink-light);margin-left:auto}.phase-card__weeks{display:flex;flex-direction:column;gap:12px}.phase-week{display:flex;gap:12px;align-items:flex-start;padding:10px 0;border-bottom:1px solid #f0f2f5}.phase-week:last-child{border-bottom:none}.phase-week__label{font-family:'Space Grotesk',sans-serif;font-size:1.2rem;font-weight:700;color: var(--accent-deep);min-width:64px;padding-top:2px}.phase-week__text{font-size:1.4rem;line-height:1.6}.phase-week__title{font-weight:700}.phase-week__desc{color:var(--ink-light);font-size:1.3rem}.support-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.support-card{background:var(--white);border-radius:12px;padding:36px 24px;text-align:center;border:1px solid var(--border);box-shadow:0 2px 8px rgba(0,0,0,0.03)}.support-card__icon{margin-bottom:16px;display:flex;align-items:center;justify-content:center}.support-card__icon svg{width:40px;height:40px;stroke:var(--primary);fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.support-card__title{font-size:1.6rem;font-weight:700;margin-bottom:12px}.support-card__desc{font-size:1.3rem;color:var(--ink-light);line-height:1.7}.pricing-card{max-width:560px;margin:0 auto;background:var(--white);border-radius:16px;padding:48px 40px;box-shadow:0 4px 24px rgba(0,0,0,0.07);border:2px solid var(--primary-muted);text-align:center}.pricing-card__label{font-size:1.4rem;font-weight:700;color: var(--accent-deep);margin-bottom:12px}.pricing-card__price{font-family:'Space Grotesk',sans-serif;font-size:5.2rem;font-weight:700;color:var(--ink);line-height:1.1}.pricing-card__price .unit{font-size:1.8rem;font-weight:500;color:var(--ink-light)}.pricing-card__note{font-size:1.3rem;color:var(--ink-light);margin:8px 0 28px}.pricing-includes{text-align:left;margin-bottom:28px}.pricing-includes__title{font-size:1.3rem;font-weight:700;color:var(--ink-light);margin-bottom:12px;letter-spacing:0.05em}.pricing-item{display:flex;align-items:flex-start;gap:10px;padding:8px 0;font-size:1.4rem;border-bottom:1px solid #f0f2f5}.pricing-item::before{content:'';flex-shrink:0;width:18px;height:18px;margin-top:2px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23007a8a' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E");background-size:contain;background-repeat:no-repeat}.pricing-total{background:var(--bg-blue);border-radius:8px;padding:16px;margin-bottom:28px}.pricing-total__label{font-size:1.2rem;color:var(--ink-light)}.pricing-total__value{font-family:'Space Grotesk',sans-serif;font-size:3rem;font-weight:700;color: var(--accent-deep)}.pricing-total__value .unit{font-size:1.4rem;font-weight:500}.form-section{padding:88px 0;background:var(--bg-light)}.form-wrapper{max-width:560px;margin:0 auto;background:var(--white);border-radius:16px;padding:48px 40px;box-shadow:0 4px 24px rgba(0,0,0,0.05)}.form-wrapper__title{text-align:center;font-size:2.2rem;font-weight:900;margin-bottom:8px}.form-wrapper__title .accent{color: var(--accent-deep)}.form-wrapper__subtitle{text-align:center;font-size:2rem;font-weight:900;margin-bottom:32px;padding-bottom:16px;border-bottom:2px dashed var(--border)}.form-group{margin-bottom:20px}.form-label{display:flex;align-items:center;gap:8px;font-size:1.4rem;font-weight:700;margin-bottom:8px}.form-required{background:#dc2626;color:var(--white);font-size:1.1rem;font-weight:700;padding:2px 8px;border-radius:3px}.form-input,.form-select,.form-textarea{width:100%;padding:12px 16px;border:1px solid var(--border);border-radius:6px;font-size:1.5rem;font-family:inherit;background:var(--white);transition:border-color 0.2s}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--primary-muted);box-shadow:0 0 0 3px rgba(0, 217, 255,0.1)}.form-textarea{min-height:100px;resize:vertical}.form-checkbox{display:flex;align-items:center;gap:8px;font-size:1.3rem;margin:20px 0}.form-submit{width:100%;padding:16px;font-size:1.6rem}.faq-list{max-width:800px;margin:0 auto}.faq-item{background:var(--white);border-radius:12px;padding:28px 32px;margin-bottom:16px;border:1px solid var(--border)}.faq-item__q{font-size:1.6rem;font-weight:700;color:var(--ink);margin-bottom:12px;display:flex;align-items:flex-start;gap:12px}.faq-item__q::before{content:'Q';flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;background:var(--primary);color:var(--white);border-radius:50%;font-family:'Space Grotesk',sans-serif;font-size:1.3rem;font-weight:700}.faq-item__a{font-size:1.4rem;color:var(--ink-light);line-height:1.8;padding-left:40px}.instructor-card{max-width:800px;margin:0 auto;background:var(--white);border-radius:16px;padding:40px;display:flex;gap:32px;align-items:flex-start;border:1px solid var(--border);box-shadow:0 2px 12px rgba(0,0,0,0.04)}.instructor-card__img{width:120px;height:120px;border-radius:50%;object-fit:cover;flex-shrink:0}.instructor-card__name{font-size:2rem;font-weight:900;margin-bottom:4px}.instructor-card__role{font-size:1.3rem;color:var(--ink-light);margin-bottom:16px}.instructor-card__bio{font-size:1.4rem;line-height:1.8;color:var(--ink)}.subsidy-flow{max-width:700px;margin:0 auto}.subsidy-step{display:flex;align-items:flex-start;gap:20px;padding:20px 0;border-bottom:1px solid #f0f2f5}.subsidy-step:last-child{border-bottom:none}.subsidy-step__num{flex-shrink:0;width:36px;height:36px;border-radius:50%;background:var(--primary);color:var(--white);display:flex;align-items:center;justify-content:center;font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:1.4rem}.subsidy-step__text{font-size:1.4rem;line-height:1.7}.subsidy-step__title{font-weight:700;font-size:1.5rem;margin-bottom:4px}.articles-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;max-width:900px;margin:0 auto}.article-link{display:block;background:var(--white);border-radius:12px;padding:24px;border:1px solid var(--border);text-decoration:none;color:var(--ink);transition:all 0.2s;box-shadow:0 2px 8px rgba(0,0,0,0.03)}.article-link:hover{border-color:var(--primary-muted);transform:translateY(-2px);box-shadow:0 4px 16px rgba(0,0,0,0.08)}.article-link__title{font-size:1.4rem;font-weight:700;line-height:1.6;margin-bottom:8px}.article-link__desc{font-size:1.2rem;color:var(--ink-light);line-height:1.6}.footer{background:var(--dark);padding:40px 0;text-align:center}.footer__logo{margin-bottom:12px;display:flex;justify-content:center}.footer__logo img{height:32px;width:auto;opacity:0.9}.footer__copy{font-size:1.2rem;color:rgba(255,255,255,0.65)}@media (max-width:768px){.header__nav>a.header__link{display:none !important}.header__nav{gap:0}.header__logo img{height:40px;padding:6px 12px}.header{padding:10px 0}.btn.btn--accent{font-size:1.2rem;padding:8px 16px}.hero .container{grid-template-columns:1fr}.hero__visual{display:none}.hero{padding:100px 0 48px}.hero__title{font-size:2.4rem}.hero__stats{flex-wrap:wrap}.hero__desc{font-size:1.4rem}.section__title{font-size:2.2rem}.section{padding:48px 0}.problems{grid-template-columns:1fr}.target-grid{grid-template-columns:1fr !important}.feature-block{padding:48px 0}.feature-block .container{grid-template-columns:1fr;gap:24px}.feature-block .container[style*="direction:rtl"]{direction:ltr !important}.feature-block__visual{order:-1}.feature-block__number{font-size:4rem}.feature-block__title{font-size:2rem}.usecase-grid{grid-template-columns:1fr !important}.numbers{grid-template-columns:repeat(2,1fr)}.comparison{font-size:1.1rem;display:block;overflow-x:auto}.comparison th,.comparison td{padding:8px 6px;white-space:nowrap}.phases{gap:16px}.support-grid{grid-template-columns:1fr}.step{grid-template-columns:56px 40px 1fr}.step__num-value{font-size:2.4rem}.pricing-card{padding:28px 20px}.pricing-card__price{font-size:3.6rem}.form-wrapper{padding:32px 20px}.cta-banner .container{flex-direction:column;text-align:center}.cta-banner__text{font-size:1.6rem}.faq-item{padding:20px}.faq-item__q{font-size:1.4rem}.faq-item__a{padding-left:40px;font-size:1.3rem}.instructor-card{flex-direction:column;align-items:center;text-align:center;padding:28px 20px}.instructor-card__img{width:100px;height:100px}.articles-grid{grid-template-columns:1fr}.container{padding:0 16px}}

/* Company proof band for Claude Code coaching */
.cc-company-proof__header {
  margin-bottom: 30px;
}
.cc-company-proof__intro {
  max-width: 760px;
  margin: 14px auto 0;
  color: var(--ink-light);
  font-size: 1.45rem;
  line-height: 1.9;
}
.cc-company-proof {
  position: relative;
  overflow: hidden;
  margin: 0 auto 34px;
  padding: 26px 0;
  border: 1px solid rgba(226,230,238,.9);
  border-radius: 18px;
  background: linear-gradient(180deg, #fff 0%, #f8fbfc 100%);
  box-shadow: 0 16px 42px rgba(31,41,55,.055);
}
.cc-company-proof .l-inner {
  max-width: min(1020px, calc(100vw - 64px));
  margin: 0 auto;
  padding: 0;
}
.cc-company-proof .p-clients.l-section,
.cc-company-proof .p-media.l-section,
.cc-company-proof .p-ai-services.l-section {
  padding: 0;
}
.cc-company-proof .p-media.l-section,
.cc-company-proof .p-ai-services.l-section {
  margin-top: 18px;
}
.cc-company-proof .p-clients__heading,
.cc-company-proof .p-media__heading,
.cc-company-proof .p-ai-services__heading {
  display: flex;
  align-items: baseline;
  justify-content: center;
  gap: 10px;
  min-height: 26px;
  margin-bottom: 10px;
  text-align: center;
}
.cc-company-proof .p-clients__title,
.cc-company-proof .p-media__title,
.cc-company-proof .p-ai-services__title {
  margin: 0;
  color: var(--ink);
  font-family: 'Space Grotesk','Noto Sans JP',sans-serif;
  font-size: clamp(1.55rem, 1.35vw, 1.9rem);
  font-weight: 800;
  line-height: 1;
  letter-spacing: .11em;
}
.cc-company-proof .p-clients__subtitle,
.cc-company-proof .p-media__subtitle,
.cc-company-proof .p-ai-services__subtitle {
  margin: 0;
  color: rgba(31,41,55,.52);
  font-size: clamp(1rem, .92vw, 1.15rem);
  font-weight: 700;
  line-height: 1.3;
}
.cc-company-proof .p-clients__marquee,
.cc-company-proof .p-media__marquee,
.cc-company-proof .p-ai-services__marquee {
  height: 62px;
  overflow: hidden;
  mask-image: linear-gradient(90deg, transparent 0%, #000 8%, #000 92%, transparent 100%);
  -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 8%, #000 92%, transparent 100%);
}
.cc-company-proof .p-clients__track,
.cc-company-proof .p-media__track,
.cc-company-proof .p-ai-services__track {
  display: flex;
  align-items: center;
  width: max-content;
  gap: 14px;
  animation: cc-proof-logo-marquee 46s linear infinite;
  will-change: transform;
}
.cc-company-proof .p-media__track {
  animation-duration: 46s;
  animation-direction: reverse;
}
.cc-company-proof .p-ai-services__track {
  animation-duration: 46s;
}
.cc-company-proof .p-clients__item,
.cc-company-proof .p-media__item,
.cc-company-proof .p-ai-services__item {
  flex: 0 0 184px;
  width: 184px;
  height: 62px;
  min-height: 62px;
  max-height: 62px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  box-sizing: border-box;
  padding: 11px 17px;
  border: 1px solid rgba(31,41,55,.08);
  border-radius: 10px;
  background: rgba(255,255,255,.92);
  box-shadow: 0 10px 24px rgba(31,41,55,.045);
}
.cc-company-proof .p-clients__logo,
.cc-company-proof .p-media__logo {
  display: block;
  width: min(100%, 164px);
  height: 38px;
  max-width: 100%;
  max-height: 38px;
  object-fit: contain;
  filter: none;
  opacity: 1;
}
.cc-company-proof .p-clients__logo[alt="Saiteki"] {
  width: min(100%, 174px);
  height: auto;
  max-height: 40px;
}
.cc-company-proof .p-clients__item:has(.p-clients__logo[alt="徳清倉庫"]) {
  padding-block: 7px;
}
.cc-company-proof .p-clients__logo[alt="徳清倉庫"] {
  width: min(100%, 170px);
  height: 48px;
  max-height: 48px;
}
.cc-company-proof .p-media__logo[alt="AINOW"] {
  width: auto;
  height: 46px;
  max-width: 92px;
  max-height: 46px;
}
.cc-company-proof .p-media__logo[alt="SB Creative"] {
  width: min(100%, 178px);
  height: auto;
  max-height: 34px;
}
.cc-company-proof .p-ai-services__logo {
  display: block;
  width: 28px;
  height: 28px;
  max-width: 28px;
  max-height: 28px;
  object-fit: contain;
}
.cc-company-proof .p-ai-services__name {
  color: rgba(31,41,55,.86);
  font-family: 'Space Grotesk','Noto Sans JP',sans-serif;
  font-size: 1.28rem;
  font-weight: 800;
  line-height: 1.15;
  white-space: nowrap;
}
@keyframes cc-proof-logo-marquee {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}
@media (max-width:768px) {
  .cc-company-proof__header {
    margin-bottom: 22px;
  }
  .cc-company-proof__intro {
    font-size: 1.3rem;
  }
  .cc-company-proof {
    margin-bottom: 28px;
    padding: 22px 0;
    border-radius: 14px;
  }
  .cc-company-proof .l-inner {
    max-width: calc(100vw - 44px);
  }
  .cc-company-proof .p-clients__heading,
  .cc-company-proof .p-media__heading,
  .cc-company-proof .p-ai-services__heading {
    flex-direction: column;
    align-items: center;
    gap: 4px;
  }
  .cc-company-proof .p-clients__marquee,
  .cc-company-proof .p-media__marquee,
  .cc-company-proof .p-ai-services__marquee {
    height: 58px;
  }
  .cc-company-proof .p-clients__item,
  .cc-company-proof .p-media__item,
  .cc-company-proof .p-ai-services__item {
    flex-basis: min(46vw, 176px);
    width: min(46vw, 176px);
    height: 58px;
    min-height: 58px;
    padding: 10px 14px;
  }
  .cc-company-proof .p-clients__track,
  .cc-company-proof .p-media__track,
  .cc-company-proof .p-ai-services__track { animation-duration: 34s; }
  .cc-company-proof .p-clients__logo,
  .cc-company-proof .p-media__logo {
    max-height: 34px;
  }
  .cc-company-proof .p-clients__logo[alt="徳清倉庫"] {
    height: 44px;
    max-height: 44px;
  }
  .cc-company-proof .p-ai-services__name {
    font-size: 1.15rem;
  }
}
@media (prefers-reduced-motion: reduce) {
  .cc-company-proof .p-clients__track,
  .cc-company-proof .p-media__track,
  .cc-company-proof .p-ai-services__track {
    animation: none;
    width: auto;
  }
  .cc-company-proof .p-clients__marquee,
  .cc-company-proof .p-media__marquee,
  .cc-company-proof .p-ai-services__marquee {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    mask-image: none;
    -webkit-mask-image: none;
  }
}

.comparison-mobile {
  display: none;
}

@media (max-width: 768px) {
  .comparison {
    display: none;
  }

  .comparison-mobile {
    display: grid;
    gap: 12px;
  }

  .comparison-card {
    display: grid;
    gap: 10px;
    padding: 16px;
    border: 1px solid rgba(37,99,235,.18);
    border-radius: 14px;
    background: rgba(255,255,255,.94);
    box-shadow: 0 16px 36px rgba(15,23,42,.08);
  }

  .comparison-card__title {
    margin: 0;
    color: var(--primary, #2563eb);
    font-size: 1.25rem;
    font-weight: 900;
    line-height: 1.35;
  }

  .comparison-card div {
    display: grid;
    gap: 4px;
    padding: 11px 12px;
    border-radius: 12px;
    background: rgba(241,245,249,.82);
  }

  .comparison-card__primary {
    border: 1px solid rgba(37,99,235,.22);
    background: rgba(219,234,254,.84) !important;
  }

  .comparison-card span {
    color: var(--ink-light, #64748b);
    font-size: 1.02rem;
    font-weight: 800;
    line-height: 1.35;
  }

  .comparison-card strong {
    color: var(--ink, #0f172a);
    font-size: 1.16rem;
    font-weight: 800;
    line-height: 1.55;
  }
}
