@media (max-width: 768px) {
  .sp-only {
    display: block;
  }

  .pc-only {
    display: none;
  }

  .hero-actions {
    flex-wrap: wrap;
  }

  .quote-card,
  .review-card {
    grid-template-columns: 1fr;
    text-align: center;
  }

  .diagram {
    aspect-ratio: 4 / 5;
  }

  header {
    height: 11.3281vw;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    gap: 0.7812vw;
    margin-top: -0.1302vw;
    padding: 0 0 0 2.6042vw;
  }


  .logo {
    width: auto;
    margin-bottom: 0;
    display: flex;
    align-items: center;
    margin-left: 2vw;
    height: auto;
    margin-top: -1vw;
  }

  .logo img {
    height: 6.6406vw;
    width: auto;
  }

  .cta-buttons {
    width: auto;
    height: 11.3281vw;
    flex-wrap: nowrap;
    align-items: center;
    margin-left: auto;
  }

  .cta-buttons .cta-icon {
    width: 5.2083vw;
    height: 3.9063vw;
  }

  .btn-download {
    width: clamp(19.5312vw, 45vw, 28.5156vw);
    height: 11.3281vw;
    gap: 1vw;
    font-size: 2.5vw;
    font-weight: 900;
    padding: 0 1.6021vw;
  }

  .btn-contact {
    width: clamp(15.625vw, 32vw, 22.1354vw);
    height: 11.3281vw;
    line-height: 1;
    font-weight: 900;
    font-size: 2.5vw;
    gap: 0.5vw;
    padding: 0 1.3021vw;
  }

  .menu-toggle {
    width: clamp(8.3333vw, 18vw, 12.5vw);
    height: 11.3281vw;
  }

  .menu-toggle img {
    width: 6vw;
    height: auto;
  }

  .mv-section {
    padding-bottom: 23vw;
  }

  .mv-badge>p {
    font-size: 4vw;
    padding: 0.5vw 4vw;
    border-width: 0.5vw;
    margin-bottom: 3vw;
  }

  .mv-title {
    margin-bottom: 3vw;
  }

  .mv-title>h1 {
    font-size: 7vw;
  }

  .mv-title>h1>span {
    /* font-size: 10vw; */
    line-height: 1.1;
  }

  .mv-description>p {
    font-size: 4vw;
  }

  .mv-description {
    margin-top: 5vw;
    margin-bottom: 5vw;
  }

  .mv-list>p::before {
    margin-right: 2vw;
  }

  .mv-list>p>span {
    font-size: 3.4vw;
    padding: 0 1vw;
  }

  .mv-list-item>img {
    width: 5vw;
    height: 5vw;
  }

  .mv-list-item>p {
    font-size: 3.4vw;
  }

  .mv-slider-button>img {
    width: 9vw;
    height: 9vw;
  }

  .mv-slider-item-copy>br {
    display: block;
  }

  .mv-slider-item-step {
    width: 12vw;
    height: 12vw;
    max-width: 12vw;
    max-height: 12vw;
    min-width: 12vw;
    min-height: 12vw;
    font-size: 2vw;
  }

  .mv-slider-item-step span {
    margin-top: 0vw;
    font-size: 5vw;
  }

  .mv-slider-item-header {
    gap: 3vw;
  }

  .mv-slider-item-heading>h2 {
    font-size: 4.5vw;
  }

  .mv-slider-item-heading>p {
    font-size: 3vw;
  }

  .mv-slider-item {
    gap: 2vw;
    padding: 3vw;
  }

  .mv-list-item {
    gap: 3vw;
    padding: 2vw;
  }

  .mv-buttons {
    gap: 3vw;
  }

  .mv-buttons>a .cta-icon {
    width: 13vw;
    height: 8vw;
  }

  .mv-buttons>a {
    flex: 100%;
    width: 100%;
    font-size: 4vw;
    gap: 3vw;
    justify-content: flex-start;
    padding: 3vw;
    line-height: 1.3;
  }

  .mv-buttons>a.btn-download {
    font-size: 3vw;
    line-height: 1.5;
  }

  .mv-buttons>a br {
    display: none;
  }

  .security-section {
    background-size: 230%;
    background-repeat: no-repeat;
    background-position: 62% 0%;
    padding: 16vw 2.0833vw 15.625vw;
    height: auto;
    min-height: auto;
    padding-bottom: 30vw;
    background-color: #ffffff;
    background-image: url(https://www.focus-s.com/ads/netacoco/img/security-background-sp.png);
  }

  .feature-report {
    padding: 0.1146vw 2.0833vw 7.8125vw;
  }

  .feature-report-ghost {
    font-size: 5.7292vw;
  }

  .feature-report-title {
    font-size: 5.1594vw;
    width: 100%;
  }

  .feature-report-lead {
    font-size: 3.576vw;
  }

  .feature-report-em {
    display: block;
    margin-top: 0.7812vw;
  }

  .feature-report-card {
    width: 100%;
    height: auto;
  }

  .feature-report-cards {
    grid-template-columns: 1fr;
    gap: 6.5104vw;
  }

  .feature-report-card .feature-report-image {
    width: 74.7396vw;
    height: auto;
    margin-top: 6.5104vw;
    margin-bottom: 6.5104vw;
  }

  /* .feature-third {
    padding: 11.7188vw 2.0833vw 15.625vw;
  } */

  .feature-third-title {
    font-size: 5.8594vw;
    flex-wrap: nowrap;
    white-space: nowrap;
    gap: 2vw;
  }

  .feature-third-title .feature-third-pill,
  .feature-third-title .feature-third-text {
    font-size: 5.0594vw;
  }

  .feature-third-pill.is-blue {
    margin-right: 7vw;
  }

  .feature-third-pill.is-blue::after {
    right: -7vw;
    border-top: 3vw solid transparent;
    border-bottom: 3vw solid transparent;
    border-left: 4vw solid #2f7dff;
  }

  .feature-third-sub {
    font-size: 5.8594vw;
  }

  .feature-third-content {
    flex-direction: column;
    margin-top: 0;
    gap: 0;
  }

  .feature-third-item {
    width: 95%;
    font-size: 3.776vw;
  }

  .feature-third-card {
    width: 100%;
    font-size: 5.0781vw;
    order: -1;
    height: 90vw;
  }

  .section-banner h3 {
    font-size: 5.8594vw;
  }

  .section-banner p {
    font-size: 3.819vw;
  }

  .section-banner {
    height: 39.0625vw;
  }

  .section-banner .highlight::after {
    bottom: 1vw;
    height: 3.5vw;
  }

  .ads-section {
    padding: 9.1146vw 2.0833vw 11.7188vw;
    height: auto;
  }

  .ads-container {
    flex-direction: column;
    align-items: center;
    gap: 3.125vw;
  }

  .ads-cta-line {
    font-size: 4.4271vw;
  }

  .ads-cta-line--sub {
    font-size: 4.4271vw;
  }

  .onboard-section {
    padding: 9.1146vw 2.0833vw 11.7188vw;
    height: auto;
  }

  .onboard-header h2 {
    font-size: 8.724vw;
  }

  .onboard-sub {
    font-size: 2.6042vw;
  }

  .onboard-list {
    gap: 1.8229vw;
  }

  .onboard-item {
    padding: 2.0833vw 2.3438vw;
    flex-direction: row;
    align-items: center;
    gap: 1.5625vw;
    height: auto;
  }

  .onboard-step {
    width: 12.7604vw;
    height: 12.7604vw;
    font-size: 2.2135vw;
  }

  .onboard-step strong {
    font-size: 4.9479vw;
  }

  .onboard-text {
    font-size: 3.9062vw;
  }

  .onboard-step span {
    font-size: 2vw;
  }

  .onboard-icon {
    width: 8.4635vw;
    height: 11.0677vw;
    align-self: center;
  }

  .qa-section {
    padding: 9.1146vw 2.0833vw 11.7188vw;
  }

  .qa-title {
    font-size: 8.724vw;
  }

  .qa-card {
    padding: 2.0833vw;
  }

  .qa-question {
    gap: 0;
  }

  .qa-answer {
    gap: 1.5625vw;
    max-height: 150vw;
    padding-bottom: 2vw;
  }

  .qa-badge {
    width: 9.5052vw;
    height: 7.5521vw;
    font-size: 3.5625vw;
    padding: 0vw 0.7vw 1vw 0vw;
  }

  .qa-badge.qa-badge--a {
    padding: 0vw 0.8vw 0.45vw 0vw;
  }

  .qa-text {
    font-size: 3.9062vw;
  }

  .qa-text--question {
    margin-left: 1.5625vw;
    padding-right: 3.9062vw;
    margin-right: -3.9062vw;
  }

  .qa-text--answer {
    height: auto;
  }

  .qa-toggle {
    width: 6.3802vw;
    height: 6.3802vw;
    font-size: 6.0833vw;
  }

  .form-section {
    padding: 9.1146vw 2.0833vw 11.7188vw;
  }

  .form-title {
    font-size: 8.724vw;
  }

  .site-footer {
    padding: 2.3438vw 2.0833vw;
  }

  .site-footer-inner {
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
  }

  .site-logo {
    display: contents;
  }

  .site-footer-brand {
    font-size: 3.125vw;
    order: 1;
  }

  .site-footer-copy {
    font-size: 1.4323vw;
    order: 3;
  }

  .site-footer-focus {
    font-size: 2.3438vw;
    order: 2;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  html {
    overflow-x: hidden;
  }

  img {
    max-width: 100%;
    height: auto;
  }

  .hero {
    padding: 6vw 2.6042vw 19vw;
  }

  .hero-content {
    flex-direction: column;
    gap: 3.125vw;
    align-items: center;
  }

  .hero-image {
    width: auto;
    height: auto;
  }

  .hero-img {
    left: -20vw;
    top: 47.5vw;
    max-width: min(55.6667vw, 80vw);
    max-height: none;
    margin: 0;
  }

  .hero-text {
    align-items: center;
    text-align: center;
    margin-left: 0;
  }

  .hero-text h1 {
    font-size: 4.4271vw;
    line-height: 1.2;
    margin-bottom: 1.5625vw;
  }

  .hero-heading-top {
    flex-direction: column;
    align-items: center;
    gap: 0.7812vw;
  }

  .hero-title-line {
    display: block;
    font-size: 8.724vw;
  }

  .hero-title-line>.smaller {
    font-size: 7.4vw;
  }

  .hero-title-blocks {
    display: flex;
    align-items: center;
    gap: 0.7813vw;
  }

  .hero-heading-bottom {
    display: block;
    font-size: 8.0729vw;
  }

  .hero-heading-topline,
  .hero-heading-bottomline {
    display: block;
  }

  .hero-text h1 .highlight,
  .hero-text h1 .highlight-dark {
    padding: 0vw 0vw 1vw;
    margin: 0 0.5208vw;
    height: 9.6354vw;
    aspect-ratio: 1;
    width: auto;
    font-size: 8.724vw;
  }

  .hero-text-image {
    width: 16.7969vw;
    height: 16.276vw;
    margin: 0;
    position: absolute;
    right: 5vw;
    top: 0vw;
  }

  .hero-subtitles {
    background: none;
    padding: 0;
    flex-direction: column;
    gap: 1.3021vw;
  }

  .hero-subtitle {
    background: #0066ff;
    color: white;
    padding: 1.0417vw 3.8229vw;
    border-radius: 2.5vw;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 3.125vw;
  }

  .hero-description {
    width: 90vw;
    margin: 0;
    font-size: 3.9062vw;
    padding: 1vw 1.5625vw 2vw 20vw;
    line-height: 2;
    text-align: center;
    margin-left: 0px;
    font-weight: 900;
  }

  .hero-description::before {
    width: calc(100% + 16vw);
  }

  .hero-description>.smaller {
    font-size: 2.5vw;
  }

  .hero-description .underline-green {
    padding-bottom: 0.8vw;
  }

  .hero-description .accent::after {
    left: 1.7vw;
    top: -0.5vw;
    height: 1vw;
    margin-right: 1.8vw;
  }

  .japanese-middle-dot {
    margin: 0px -1vw;
  }

  .japanese-dot {
    margin-right: -3.5vw;
  }

  .japanese-semicolon {
    margin-right: -2.5vw;
  }

  .automation-flow {
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    flex-direction: row;
    flex-wrap: wrap;
    gap: 0;
    margin-top: 0;
  }

  .flow-item {
    flex: 0 0 auto;
    min-width: 0;
    font-size: 3.3854vw;
    padding: 1.0417vw 1.5625vw;
    height: 11.4583vw;
    margin-left: 0;
    border-radius: 0;
    justify-content: flex-end;
    text-align: right;
    line-height: 1.2;
    gap: 0.7812vw;
  }

  .flow-item img {
    width: 4vw;
    height: auto;
    aspect-ratio: 1;
    margin-left: 0;
  }

  .flow-label {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    line-height: 1.1;
  }

  .flow-line {
    display: block;
  }

  .flow-item.search {
    flex-basis: 50%;
  }

  .flow-item.suggest {
    flex-basis: 20%;
  }

  .flow-item.generate {
    flex-basis: 30%;
    padding-right: 3vw;
  }

  .flow-item.generate::after {
    display: none;
  }

  .flow-item::after {
    display: block;
    right: 1px;
    top: 0;
    border-top: 5.7292vw solid transparent;
    border-bottom: 5.7292vw solid transparent;
    border-left: 5.7292vw solid var(--flow-bg);
  }

  .flow-item:last-of-type::after {
    display: none;
  }

  .automation-tail {
    width: 100%;
    justify-content: flex-end;
    gap: 0.7812vw;
    margin-top: 0.7812vw;
    padding-right: 1.5625vw;
    font-weight: 900;
    margin-left: -1vw;
  }

  .automation-tail .auto-text {
    margin-left: -1vw;
    margin-top: -0.5vw;
    font-size: 6vw;
  }

  .automation-suffix {
    font-size: 4.1667vw;
  }

  .auto-text {
    font-size: 6.5104vw;
  }

  .features {
    height: auto;
    padding: 5vw 0 6vw;
  }

  .features-container {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 2.6042vw 3.125vw;
    justify-items: center;
    position: relative;
    top: -29.9479vw;
  }

  .feature-card:nth-of-type(2) {
    grid-column: 1 / -1;
    grid-row: 1;
  }

  .feature-card:nth-of-type(1) {
    grid-column: 1;
    grid-row: 2;
  }

  .feature-card:nth-of-type(3) {
    grid-column: 2;
    grid-row: 2;
  }

  .features-container img {
    display: block;
    width: auto;
    height: 18vw;
    aspect-ratio: 1;
    z-index: 5;
  }

  .features-container .comunity-image {
    left: 0;
    top: 11.5104vw;
    height: 20vw;
  }

  .features-container .news-image {
    left: 51%;
    top: 31.9479vw;
    transform: translateX(-50%);
  }

  .features-container .files-image {
    right: -0.7917vw;
    top: 12.4167vw;
    height: 19vw;
  }

  .feature-card {
    width: min(40.3698vw, 80vw);
    height: min(40.3698vw, 80vw);
    border-radius: 100%;
    padding: 5.2083vw 3.9063vw;
    border-width: 1.0417vw;
    font-size: 2.6042vw;
  }

  .feature-card h3 {
    margin-bottom: 1.0417vw;
    font-size: 4.5vw;
  }

  .feature-card p {
    font-size: 4vw;
    line-height: 1;
  }

  .feature-card .sub-text {
    font-size: 2.5vw;
    color: #12313d;
  }

  .features-container .feature-card:nth-of-type(2) {
    z-index: 2;
  }

  .features-container .feature-card:nth-of-type(1) {
    left: -6vw;
  }

  .features-container .feature-card:nth-of-type(3) {
    right: -9vw;
  }

  .features-container .feature-card:nth-of-type(1),
  .features-container .feature-card:nth-of-type(3) {
    position: relative;
    top: -23.4375vw;
    margin-left: -2.6042vw;
  }

  .cta-section {
    margin-top: -46.875vw;
    position: relative;
    z-index: 2;
    display: flex;
    justify-content: center;
  }

  .problems-container {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-areas:
      "header illustration"
      "list list";
    gap: 1.5625vw 1.3021vw;
    align-items: start;
    padding: 8vw 4vw 8vw 7vw;
    border-radius: 10.9063vw;
  }

  .problems-header {
    grid-area: header;
    text-align: left;
    margin-bottom: 0;
  }

  .problems-header h2 {
    margin-bottom: 0vw;
    font-size: 6.25vw;
    line-height: 1.2;
  }

  .problems-header .subtitle {
    font-size: 6.25vw;
    line-height: 1.4;
  }

  .problems-header .trouble {
    font-size: 8.5938vw;
  }

  .threads-image {
    position: absolute;
    left: 49.875vw;
    top: 5.7188vw;
    width: 11.3333vw;
    height: auto;
    margin-top: 0.7812vw;
    display: block;
    transform: rotate(50deg);
  }

  .trouble-wrap {
    position: relative;
    line-height: 1;
  }

  .subtitle-break {
    display: block;
  }

  .problems-content {
    display: contents;
  }

  .problems-list {
    grid-area: list;
    margin-left: -7.8125vw;
    margin-right: -7.8125vw;
    width: 95vw;
    padding: 0 4vw;
  }

  .problem-item {
    margin-bottom: 2vw;
    gap: 1vw;
    padding: 1.5vw 2vw;
    font-size: 3.125vw;
    line-height: 1.6;
  }

  .problem-item img {
    width: 4.5vw;
    height: auto;
    aspect-ratio: 1;
  }

  .problem-item>p {
    font-size: 2.9vw;
  }

  .problem-item .underline {
    text-decoration-thickness: 0.2604vw;
  }

  .problems-illustration {
    grid-area: illustration;
    align-self: start;
  }

  .problems-illustration img {
    width: 33.3854vw;
    margin-top: -6vw;
    margin-bottom: -4vw;
    margin-right: -4vw;
    height: auto;
  }

  .solution-cta {
    width: 100%;
    height: 26.3021vw;
    border-radius: 6.5104vw;
    padding: 3.5104vw;
    gap: 5.2083vw;
  }

  .ads-cta {
    width: 100%;
    height: auto;
    padding: 3.125vw;
    border-radius: 6.5104vw;
    text-align: center;
    align-items: center;
    gap: 2vw;
  }

  .ads-cta::before {
    width: 10.9375vw;
    height: 10.9375vw;
    bottom: -4.5573vw;
    right: 13.0208vw;
  }

  .ads-cta::after {
    width: 4.8177vw;
    height: 4.8177vw;
    bottom: -9.1146vw;
    right: 23.4375vw;
  }

  .ads-cta-additional {
    gap: 2vw;
  }

  .ads-person,
  .idea-person {
    width: 91.276vw;
    position: relative;
    left: 0vw;
  }

  .ads-person {
    top: -3.9062vw;
  }

  .ads-actions {
    flex-direction: column;
    align-items: center;
  }

  .btn-download-large {
    width: min(89.0625vw, 92vw);
    height: 14.5833vw;
    margin: 0 auto;
    font-size: 4.5573vw;
    padding: 4vw 6vw;
    border: 0.6vw solid white;
    gap: 2vw;
  }

  .btn-download-large img {
    width: 9.1146vw;
    height: 6.6406vw;
  }

  .ads-btn {
    width: min(89.0625vw, 92vw);
    height: 14.5833vw;
    font-size: 4.5573vw;
    margin: 0 auto;
  }

  .ads-btn img {
    width: 9.1146vw;
    height: 6.6406vw;
  }

  .ads-btn--consult {
    padding-left: 10.9375vw;
    padding-right: 10.9375vw;
  }

  .ads-note,
  .ads-note-second {
    line-height: 1.7;
    margin-left: 0px;
  }

  .problems-section {
    padding: 10.4167vw 2.6042vw 13vw;
  }

  .solution-section {
    height: 107.4vw;
    padding: 10.4167vw 2.6042vw;
  }

  .arrow-circle {
    width: 21.3542vw;
    height: 25vw;
    top: -19.5313vw;
  }

  .solution-container {
    max-width: 130.2083vw;
  }

  .solution-badge {
    font-size: 3.5vw;
    line-height: 1.16;
    padding: 1.5625vw 3.9063vw;
    top: -19.5313vw;
    height: 21vw;
  }

  .accent-text {
    font-size: 5.2917vw;
  }

  .solution-logo {
    margin-bottom: 3.9063vw;
    padding-top: 6.5104vw;
  }

  .solution-logo img {
    width: 44.9219vw;
    height: auto;
  }

  .solution-description {
    font-size: 3.776vw;
    margin-bottom: 1.9531vw;
    letter-spacing: -0.2604vw;
  }

  .solution-description .highlight {
    font-size: 3.9063vw;
  }

  .solution-description .highlight::after {
    bottom: 1.0417vw;
    height: 1.9531vw;
  }

  .solution-cta h3 {
    font-size: 4.4271vw;
    margin-bottom: 1.9531vw;
  }

  .solution-cta .badge {
    width: 63.4115vw;
    font-size: 3.776vw;
    height: 6.6406vw;
    padding: 1.0417vw 2.6042vw;
  }

  .solution-cta::before {
    width: 10.9375vw;
    height: 10.9375vw;
    bottom: -4.5573vw;
    right: 20.0417vw;
  }

  .solution-cta::after {
    width: 4.8177vw;
    height: 4.8177vw;
    bottom: -9.1146vw;
    right: 30.8333vw;
  }

  .explain-person {
    position: relative;
    top: -10.4167vw;
    width: 63.151vw;
    height: 47.1354vw;
    right: 0;
  }

  .process-section {
    padding: 11.7188vw 1.3021vw 2.6042vw;
  }

  .process-container {
    max-width: 143.2292vw;
    gap: 3.3854vw;
  }

  .process-headline {
    gap: 1.5625vw;
    font-size: 4.4271vw;
  }

  .process-brand img {
    width: 25.651vw;
    height: auto;
  }

  .process-text {
    font-size: 5.4271vw;
  }

  .process-pill {
    width: 26.526vw;
    height: 26.526vw;
    font-size: 4.5156vw;
    padding: 0;
    box-shadow: 0 0 0 1.1719vw #ffffff, 0 0 0 1.5625vw #5dceaf,
      0 1.9531vw 3.6458vw rgba(16, 60, 69, 0.2);
  }

  .process-pills {
    gap: 3.9063vw;
    font-size: 3.5156vw;
    margin-left: 2.6042vw;
    margin-right: 2.6042vw;
  }

  .process-plus {
    font-size: 9.7656vw;
  }

  .process-subtitle {
    font-size: 4.1667vw;
    margin: 1.3021vw 0 0.7812vw;
    padding-bottom: 0.7812vw;
  }

  .process-subtitle::after {
    left: -0.7812vw;
    right: -0.9062vw;
    height: 0.2604vw;
  }

  .process-underline {
    padding-right: 1.5625vw;
    font-size: 6.1198vw;
  }

  .process-underline::after {
    right: -0.9062vw;
    bottom: -0.5208vw;
    width: 0.2604vw;
    height: 4.5104vw;
  }

  .process-steps {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 2.6042vw;
    margin-top: 1.3021vw;
    flex-wrap: wrap;
    width: 87vw;
    row-gap: 4vw;
  }

  .process-step {
    gap: 0;
  }

  .process-step:not(:last-child)::after {
    right: -6.2552vw;
    border-top: 4.2552vw solid transparent;
    border-bottom: 4.2552vw solid transparent;
    border-left: 4.2552vw solid #002d3b;
    top: 20vw;
  }

  .process-steps>.process-step:nth-child(2) .process-step-card.process-step--cover>img {
    width: 61vw;
    height: 55vw;
    right: 0;
    bottom: -11vw;
    object-position: -14vw;
  }

  .process-step:nth-child(2)::after {
    display: none;
  }

  .process-step:nth-child(3)::before {
    content: "";
    position: absolute;
    top: 20vw;
    left: -5.5vw;
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-top: 4.2552vw solid transparent;
    border-bottom: 4.2552vw solid transparent;
    border-left: 4.2552vw solid #002d3b;
  }

  .process-steps>.process-step:nth-child(4) .process-step-card.process-step--cover>img {
    width: 69vw;
    height: 70vw;
    right: 0vw;
    bottom: 0vw;
    object-position: -26vw 8vw;
  }

  .process-headline .process-text:last-of-type {
    flex-basis: 100%;
    text-align: center;
    font-size: 6vw;
    margin-right: -5vw;
    margin-top: -5vw;
    margin-bottom: -4vw;
  }

  .process-step-card {
    width: 37.1094vw;
    height: 37.1094vw;
    border-width: 0.7812vw;
    border-radius: 4.1667vw;
  }

  .process-step-card.process-step--cover {
    width: 39.6vw;
    height: 39.6vw;
    border-radius: 4.1667vw;
  }

  .process-step-card.process-step--cover::after {
    border-width: 0.7812vw;
  }

  .process-steps>.process-step:first-child .process-step-card.process-step--cover>img {
    width: 41vw;
    height: 53vw;
    bottom: 0;
    left: 0vw;
    object-position: -6vw;
  }

  .step-title {
    font-size: 4.5vw;
    margin-top: 1vw;
  }

  .step-note {
    font-size: 2.5vw;
  }

  .feature-slope {
    height: auto;
    padding: 14.3229vw 2.0833vw 10.4167vw;
  }

  .feature-slope-inner {
    max-width: 100%;
    width: 100%;
    align-items: center;
    height: 252.2917vw;
  }

  .feature-diagram {
    position: relative;
    display: block;
    margin-top: 1.5625vw;
    height: 71.6146vw;
  }

  .feature-diagram>.sp-only {
    display: inline-block;
  }

  .graph-stack {
    margin: 0 auto;
    transform: scale(1);
    transform-origin: top center;
  }

  .team-wrap {
    position: absolute;
    top: 41.0417vw;
    left: 10%;
    width: auto;
    transform: translateX(-28.6458vw);
  }

  .team-image {
    width: 57.1458vw;
    height: auto;
    max-width: none;
  }

  .global-wrap {
    position: absolute;
    top: 41.0417vw;
    left: unset;
    right: -4%;
    transform: translateX(18.2292vw);
  }

  .global-image {
    width: 57.1458vw;
    max-width: none;
  }

  .services-image {
    position: absolute;
    top: 54.6875vw;
    left: 0;
    width: min(26.0417vw, 52vw);
  }

  .feature-sub-row {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1.5625vw;
    flex-wrap: nowrap;
  }

  .feature-sub {
    font-size: 4vw;
    color: #002d3b;
    margin: 0;
    width: 48.1562vw;
    margin-left: 34.625vw;
  }

  .feature-title {
    font-size: 5.8594vw;
    margin: 0.5208vw 0;
    margin-bottom: 13.0208vw;
  }

  .poster-person {
    width: 78.125vw;
    height: auto;
    position: absolute;
    max-width: none;
    top: 57.2917vw;
    left: -16.9271vw;
  }

  .advice-image {
    display: none;
  }

  .feature-header {
    font-size: 18.8802vw;
  }

  .feature-tag {
    top: 18.625vw;
    width: 12.7604vw;
    height: 12.7604vw;
    border-width: 0.7812vw;
    font-size: 4.9479vw;
  }

  .feature-slope::before,
  .feature-slope::after {
    height: 27.9948vw;
  }

  .feature-slope::before {
    top: -10.4167vw;
  }

  .feature-slope::after {
    bottom: -13.0208vw;
  }

  .feature-slope-inner {
    gap: 2.3438vw;
  }

  .graph-image {
    width: 74.7865vw;
  }

  .feature-tag span {
    font-size: 2.0833vw;
  }

  .feature-tag strong {
    font-size: 4.9479vw;
  }

  .feature-title .highlight::after {
    bottom: 1.0417vw;
    height: 2.9531vw;
  }

  .feature-footnote {
    font-size: 4.4271vw;
    margin-top: 60.0417vw;
  }

  .feature-footnote-highlight {
    width: 81.1198vw;
    height: 6.6406vw;
    padding: 0.651vw 1.3021vw;
  }

  .gparh-box {
    width: 17.9688vw;
    height: 6.3281vw;
    border-radius: 1.9531vw;
    border-width: 0.2604vw;
    padding: 1.3021vw;
    font-size: 3.6458vw;
  }

  .relevance-square {
    top: -37.7604vw;
    width: 26.0417vw;
    height: 36.4583vw;
  }

  .relevance-center {
    font-size: 2.9518vw;
  }

  .central-part p {
    top: 3.9062vw;
  }

  .central-line {
    top: 13.0208vw;
  }

  .relevance-corner {
    font-size: 2.9518vw;
  }

  .relevance-corners .relevance-corner:nth-child(1) span {
    left: -1.3021vw;
    top: 0.7812vw;
  }

  .relevance-corners .relevance-corner:nth-child(1) .span-block {
    top: -2.9062vw;
    font-size: 5vw;
  }

  .relevance-corners .relevance-corner:nth-child(2) span {
    right: -4.4271vw;
    top: 0.5208vw;
  }

  .relevance-corners .relevance-corner:nth-child(3) span {
    left: -5.2083vw;
    top: -0.651vw;
  }

  .relevance-corners .relevance-corner:nth-child(4) span {
    right: -1.3021vw;
    top: -0.651vw;
  }

  .relevance-corners .relevance-corner:nth-child(4) .span-block {
    top: 2.6042vw;
    font-size: 5vw;
  }

  .recycle-sphere {
    margin-left: 0.651vw;
    gap: 2.6042vw;
    font-size: 2.6042vw;
  }

  .large-sphere-text {
    font-size: 3.9062vw;
    padding: 0.3906vw;
  }

  .large-sphere-text::before,
  .large-sphere-text::after {
    width: 2.8646vw;
    height: 2.8646vw;
  }

  .large-sphere-text::before {
    top: -0.7812vw;
    left: -0.7812vw;
    border-top-width: 0.2604vw;
    border-left-width: 0.2604vw;
  }

  .large-sphere-text::after {
    right: -0.7812vw;
    bottom: -0.7812vw;
    border-right-width: 0.2604vw;
    border-bottom-width: 0.2604vw;
  }

  .feature-sphere {
    width: 12.3698vw;
    height: 12.3698vw;
    font-size: 1.8893vw;
    line-height: 2.6042vw;
    box-shadow: 0 0.1302vw 1.9531vw 0.0651vw rgb(38, 38, 38);
  }

  .feature-sphere img {
    width: 4.0365vw;
    height: 3.776vw;
  }

  .feature-sphere-logo {
    width: 6.7708vw;
    height: 6.7708vw;
  }

  .team-wrap .features-block .feature-sphere img {
    height: 6.5104vw;
  }

  .team-wrap .features-block .feature-sphere:first-child img {
    width: 10.4167vw;
  }

  .features-block {
    gap: 0 1.3021vw;
  }

  .feature-report-chip {
    width: 50.7865vw;
    height: 8.9844vw;
    font-size: 4vw;
    margin-top: 2.6042vw;
  }

  .feature-report-footer {
    font-size: 5.8vw;
    margin-top: 10vw;
  }

  .feature-report-footer span::after {
    bottom: 1vw;
    height: 3.5vw;
  }

  .feature-report-card h3 {
    font-size: 6.5104vw;
  }

  .feature-report-list li {
    font-size: 4.1667vw;
  }

  .feature-report-list br {
    display: none;
  }

  .feature-report-list .pc {
    display: none;
  }

  .feature-third {
    padding: 5vw 2vw 15vw;
  }

  .feature-third::after {
    height: 15vw;
  }

  .feature-third-list {
    width: 100%;
    margin-bottom: 13.0208vw;
  }

  .security-header h2 {
    font-size: 18.8802vw;
    letter-spacing: 0;
    line-height: 1;
    max-width: 100%;
    white-space: normal;
    overflow-wrap: anywhere;
    word-break: break-word;
    text-align: center;
  }

  .security-header {
    width: 100%;
  }

  .security-title {
    font-size: 5vw;
  }

  .security-lead {
    font-size: 3.776vw;
  }

  .security-note {
    font-size: 3.6062vw;
  }

  .security-cards {
    grid-template-columns: 1fr;
    justify-items: stretch;
    gap: 2.8646vw;
  }

  .security-card {
    width: 100%;
    flex-direction: row;
    align-items: center;
    gap: 2.0833vw;
    padding: 0;
  }

  .security-card-media {
    width: 27vw;
    padding: 0;
    contain: content;
    height: auto;
    aspect-ratio: 295 / 224;
    flex-shrink: 0;
    border-radius: 3.125vw 0 3.125vw 0;
    border: 1vw solid #5dceaf;
  }

  .security-card-num {
    font-size: 10.6771vw;
  }

  .security-card-body p {
    font-size: 4vw;
  }

  .security-subtitle {
    font-size: 5.776vw;
    margin-top: 5vw;
  }

  .before-after {
    padding: 9.1146vw 2.0833vw 11.7188vw;
    background-size: 130%;
  }

  .before-after .security-header h2 {
    font-size: 18.8802vw;
  }

  .before-after-lead {
    font-size: 5.8594vw;
    margin: 6vw 0;
  }

  .before-after-lead span {
    display: block;
  }

  .before-after-grid {
    grid-template-columns: 1fr;
    gap: 6.0208vw;
    display: grid;
  }

  .before-after-arrow-wrap {
    width: 15.625vw;
    height: 10.4167vw;
    margin: 0 auto;
    margin-bottom: -12.8333vw;
    justify-self: center;
    align-self: center;
    transform: rotate(90deg);
    transform-origin: center;
  }

  .before-after-arrow-big {
    border-left-width: 14vw;
    border-top-width: 11.8125vw;
    border-bottom-width: 11.8125vw;
  }

  .before-after-arrow {
    border-left-width: 10.4635vw;
    border-top-width: 9.25vw;
    border-bottom-width: 9.25vw;
    left: 47%;
  }

  .before-after-list li {
    width: 100%;
    font-size: 3.4vw;
    height: auto;
    gap: 1vw;
    padding: 1.3vw 1.5vw;
  }

  .before-after-list li>img {
    width: 5vw;
    height: 5vw;
  }

  .before-after-list.is-after li:last-child {
    font-size: 3.4vw;
  }

  .before-after-card {
    width: 100%;
    height: auto;
    padding: 6vw 3vw 7vw;
  }

  .before-after-title {
    font-size: 5.8594vw;
  }

  .before-after-title span {
    font-size: 5.8594vw;
  }

  .before-after-title strong {
    font-size: 7.8125vw;
    padding: 0vw 2vw 1vw;
  }

  .ads-note {
    width: 100%;
    margin-top: 0vw;
    font-size: 3.6458vw;
  }

  .ads-highlight {
    padding: 0vw 1vw 0.5vw;
  }

  .ads-highlight-second {
    padding: 0vw 0vw 0.5vw;
  }

  .ads-note-second {
    margin-top: -6.5104vw;
    font-size: 3.6458vw;
  }

  .ads-cta-line-second {
    font-size: 4.4271vw;
  }

  .idea-person {
    top: -7.8125vw;
  }

  .ads-cta-line-ads-cta-line {
    font-size: 4.4271vw;
    letter-spacing: -1px;
  }

  .site-footer-inner {
    gap: 2vw;
    margin-top: 2.6042vw;
  }

  .site-logo {
    width: 100%;
  }

  .mobile-menu-header {
    justify-content: space-between;
    align-items: center;
    width: 100%;
    gap: 2.6042vw;
  }

  .mobile-menu-close {
    width: 11.3281vw;
    height: 11.3281vw;
    font-size: 5.2083vw;
  }

  .site-footer-brand img {
    height: auto;
    width: 54vw;
    margin-bottom: 2vw;
  }

  .site-footer-copy {
    font-size: 3vw;
  }

  .site-footer-focus>a>img {
    width: 45vw;
    margin-bottom: 9vw;
  }

  .mobile-menu-cta .btn-download,
  .mobile-menu-cta .btn-contact {
    gap: 2vw;
    font-size: 3vw;
    padding: 2vw 0 3vw;
  }

  .mobile-menu-cta .btn-download>img,
  .mobile-menu-cta .btn-contact>img {
    width: 5vw;
    margin-top: 1vw;
  }

  .mobile-menu-cta .btn-download>img {
    width: 7vw;
  }
}