/* rehasaku.com: the site's one stylesheet, hand-written from the WordPress theme `rehasaku`'s SCSS values
   (rehasaku-jp/legacy-rehasaku-corporate, wp-content/themes/rehasaku/css/foundation/_mixin.scss and _base.scss).
   Self-hosted, no font file, no third-party request. The page bodies carry the theme's own class names inside
   `.hp-src--<page>` scopes; the chrome (header, navigation, banner, footer) uses `hp-` classes. */

:root {
  --blue: #007cbe;          /* $blue */
  --orange: #dc6303;        /* $orange, accents only: white on it is 3.60:1 */
  --cta: #b85302;           /* the CTA background: white on it is 4.91:1 (WCAG AA) */
  --black: #222222;         /* $black: headings */
  --text: #555555;          /* $text-black: body text, 7.46:1 on white */
  --thin-black: #352f2d;    /* $thin-black */
  --gray: #aaaaaa;          /* $gray: borders and decoration only, never text */
  --border: #d8d8d8;        /* $border-gray */
  --border-dark: #e3e3e3;   /* $border-dark-gray */
  --bg-gray: #f6f6f7;       /* $app-bg-gray */
  --header-icon: #828993;   /* $header-icon-gray */
  --header-border: #ebecf2; /* $header-border-gray */
  --header-nested: #f9fafc; /* $header-nested-bg-gray */
  --white: #ffffff;
  --slot: #eef1f4;          /* an image's laid-out box before its file arrives */
  --content: 1000px;        /* $pc-content-width */
  --content-max: 1200px;    /* $pc-content-max-width */
  --header-content: 1144px; /* $pc-header-content-width */
  --header-h: 80px;         /* $pc-header-height */
  --font: "Noto Sans JP", "Noto Sans", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, system-ui, sans-serif;
  --font-latin: "Jost", system-ui, -apple-system, "Segoe UI", sans-serif;
}

/* Per-language font stacks: no font file is shipped, so each script uses what the reader's system has. */
:lang(zh-Hans) { --font: "PingFang SC", "Microsoft YaHei", "Noto Sans SC", system-ui, sans-serif; }
:lang(zh-Hant) { --font: "PingFang TC", "Microsoft JhengHei", "Noto Sans TC", system-ui, sans-serif; }
:lang(ko) { --font: "Apple SD Gothic Neo", "Malgun Gothic", "Noto Sans KR", system-ui, sans-serif; }
:lang(th) { --font: "Thonburi", "Leelawadee UI", "Noto Sans Thai", system-ui, sans-serif; }
:lang(my) { --font: "Myanmar Sangam MN", "Myanmar Text", "Noto Sans Myanmar", system-ui, sans-serif; }
:lang(ne) { --font: "Kohinoor Devanagari", "Nirmala UI", "Noto Sans Devanagari", system-ui, sans-serif; }

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body {
  margin: 0;
  font-family: var(--font);
  font-size: 15px;          /* $font-size-md */
  font-weight: 400;
  line-height: 1.7;
  color: var(--text);
  background: var(--white);
}
h1, h2, h3, h4 { color: var(--black); line-height: 1.4; }
a { color: var(--blue); }
img, video, picture { max-width: 100%; height: auto; }
/* An image whose file has not arrived keeps its intrinsic box (width/height attributes) as a light slot. */
img { background: var(--slot); color: var(--text); font-size: 12px; }
table { border-collapse: collapse; }

/* Focus stays visible (the theme's `*:focus { outline: none }` is not carried). */
:focus-visible { outline: 3px solid var(--blue); outline-offset: 2px; }

.hp-skip {
  position: absolute; left: 8px; top: -48px; z-index: 100;
  padding: 8px 16px; background: var(--white); color: var(--blue); border: 2px solid var(--blue);
}
.hp-skip:focus { top: 8px; }
.hp-sr, .hp-menu__check {
  position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden;
  clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}

/* Buttons: the theme's c-btn--orange (CTA) and c-btn--blue. */
.hp-btn {
  display: inline-block; padding: 12px 28px; border-radius: 4px; font-weight: 700; text-decoration: none;
  text-align: center; color: var(--white); line-height: 1.4;
}
.hp-btn--cta { background: var(--cta); }
.hp-btn--blue { background: var(--blue); }
.hp-btn:hover { filter: brightness(0.92); }

/* Header: 80 px on a wide screen, 60 px on a narrow one ($pc-header-height, $sp-header-height). */
.hp-header {
  position: sticky; top: 0; z-index: 50; background: var(--white); border-bottom: 1px solid var(--header-border);
}
.hp-header__inner {
  max-width: var(--header-content); margin: 0 auto; padding: 0 16px; min-height: var(--header-h);
  display: flex; align-items: center; gap: 16px; flex-wrap: wrap;
}
.hp-logo { display: inline-flex; align-items: center; margin-right: auto; }
.hp-logo img { width: 202px; height: auto; background: none; }
.hp-menu__toggle {
  display: none; cursor: pointer; padding: 8px 14px; border: 1px solid var(--header-border); border-radius: 4px;
  color: var(--black); font-weight: 700;
}
.hp-menu__check:focus-visible + .hp-menu__toggle { outline: 3px solid var(--blue); outline-offset: 2px; }
.hp-nav { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; }
.hp-nav__list { display: flex; align-items: center; gap: 4px 20px; list-style: none; margin: 0; padding: 0; flex-wrap: wrap; }
.hp-nav__item > a, .hp-nav__group > summary {
  color: var(--black); text-decoration: none; font-size: 14px; font-weight: 500; padding: 8px 0; cursor: pointer;
}
.hp-nav__item > a:hover, .hp-nav__group > summary:hover { color: var(--blue); }
.hp-nav__group { position: relative; }
.hp-nav__group > summary { list-style: none; }
.hp-nav__group > summary::-webkit-details-marker { display: none; }
.hp-nav__group > summary::after { content: " ▾"; color: var(--header-icon); }
.hp-nav__sub {
  list-style: none; margin: 0; padding: 12px 16px; background: var(--header-nested);
  border: 1px solid var(--header-border); border-radius: 4px;
}
.hp-nav__sub a { display: block; padding: 6px 0; color: var(--black); text-decoration: none; font-size: 14px; }
.hp-nav__sub a:hover { color: var(--blue); }
.hp-nav__cta { padding: 10px 20px; font-size: 14px; }

/* The language switcher (render.mjs switcherNav): `<nav class="lang-switcher">` holds a button naming the page's own
   language (`popovertarget`) and the list of every language as a `<ul popover>`. The button shows only where the
   browser supports popover; elsewhere the attribute is ignored and the list shows flat, as before.
   No rule outside the @supports block sets the list's `display`: an author `display` outranks the browser's own
   `[popover]:not(:popover-open) { display: none }`, so it would keep a closed menu open. The flat list takes its
   layout from its items instead. */
.lang-switcher { font-size: 13px; }
.lang-switcher__toggle { display: none; }
.lang-switcher__menu { list-style: none; margin: 0; padding: 0; }
.lang-switcher__menu li { display: inline-block; margin: 2px 10px 2px 0; }
.lang-switcher__menu a { color: var(--header-icon); text-decoration: none; }
.lang-switcher__menu a[aria-current="page"] { color: var(--black); font-weight: 700; }
@supports selector(:popover-open) {
  .lang-switcher__toggle {
    display: inline-flex; align-items: center; gap: 6px; padding: 6px 10px; cursor: pointer;
    border: 1px solid var(--header-border); border-radius: 4px; background: var(--white);
    color: var(--black); font: inherit; font-size: 13px; font-weight: 500; line-height: 1.4;
  }
  .lang-switcher__toggle::after { content: "▾"; content: "▾" / ""; color: var(--header-icon); }
  .lang-switcher__toggle:hover { color: var(--blue); border-color: var(--blue); }
  .lang-switcher__icon { flex: none; color: var(--header-icon); }
  /* Open: the browser places a popover in the top layer, centred in the viewport by its own `inset: 0; margin: auto`.
     The flat list's `margin: 0` above would override that and pin the menu to the top-left corner, so `margin: auto`
     is restored here; where anchor positioning is supported, the block below drops the menu under the button. */
  .lang-switcher__menu {
    margin: auto; min-width: 200px; max-height: 80vh; overflow: auto; padding: 6px; color: var(--black);
    background: var(--white); border: 1px solid var(--header-border); border-radius: 4px;
    box-shadow: 0 8px 24px rgb(34 34 34 / 14%);
  }
  .lang-switcher__menu li { display: block; margin: 0; }
  .lang-switcher__menu a { display: block; padding: 8px 12px; border-radius: 4px; color: var(--black); font-size: 14px; }
  .lang-switcher__menu a:hover { background: var(--header-nested); color: var(--blue); }
  .lang-switcher__menu a:focus-visible { outline-offset: -3px; }
}
@supports selector(:popover-open) and (anchor-name: --a) {
  .lang-switcher__toggle { anchor-name: --lang-switcher; }
  .lang-switcher__menu {
    position-anchor: --lang-switcher; inset: auto; top: anchor(bottom); right: anchor(right); margin: 6px 0 0;
    position-try-fallbacks: flip-inline;
  }
}

/* Each width rule below pairs `(min-width: N)` with `not all and (min-width: N)`: two exact complements, so no
   fractional viewport (960.5 px) falls between a max-width and a min-width and matches neither, or both variants. */
@media (min-width: 961px) {
  .hp-nav__sub { position: absolute; top: 100%; left: -16px; min-width: 220px; z-index: 60; }
  /* The menu's checkbox leaves the keyboard order where its label is hidden; on a narrow screen it stays focusable,
     its label showing the focus (.hp-menu__check:focus-visible above). */
  .hp-menu__check { display: none; }
}
@media not all and (min-width: 961px) {
  .hp-header__inner { min-height: 60px; }          /* $sp-header-height */
  .hp-logo img { width: 150px; }
  .hp-menu__toggle { display: inline-block; }
  .hp-nav { display: none; width: 100%; flex-direction: column; align-items: stretch; padding: 8px 0 16px; }
  .hp-menu__check:checked ~ .hp-nav { display: flex; }
  .hp-nav__list { flex-direction: column; align-items: stretch; gap: 0; }
  .hp-nav__item { border-bottom: 1px solid var(--header-border); }
  .hp-nav__item > a, .hp-nav__group > summary { display: block; padding: 12px 4px; }
  .hp-nav__sub { border: 0; padding: 0 0 8px 16px; }
}

/* The theme's visibility classes, each page family at the breakpoint its own stylesheet sets (legacy-rehasaku-corporate
   @10bcf419). The landing pages: lp/8/css/style.scss:4-14, 767/768; lp/3's stylesheet is not in that repository, so lp/3
   takes the same until it is read. */
@media not all and (min-width: 768px) { :is(.hp-src--lp8, .hp-src--lp3) :is(.pc, .is-pc) { display: none !important; } }
@media (min-width: 768px) { :is(.hp-src--lp8, .hp-src--lp3) :is(.sp, .is-sp, .mobile) { display: none !important; } }
/* The corporate pages: css/foundation/_base.scss:201-211, 480/481. */
@media not all and (min-width: 481px) { :is(.hp-src--top, .hp-src--about) .pc { display: none !important; } }
@media (min-width: 481px) { :is(.hp-src--top, .hp-src--about) .sp { display: none !important; } }
/* rehasaku-posture: its style.scss:4-26, 1199/1200 for .is-pc/.is-sp and 599/600 for .is-mobile/.is-not-mobile; its hero's
   three device images (:480-512) show the PC one at 1200 and above, the tablet one at 600-1199 and the phone one at 599
   and below. */
@media not all and (min-width: 1200px) { .hp-src--posture :is(.is-pc, .mv_img-device.pc) { display: none !important; } }
@media (min-width: 1200px) { .hp-src--posture :is(.is-sp, .mv_img-device.sp, .mv_img-device.mobile) { display: none !important; } }
@media not all and (min-width: 600px) { .hp-src--posture :is(.is-not-mobile, .mv_img-device.sp) { display: none !important; } }
@media (min-width: 600px) { .hp-src--posture :is(.is-mobile, .mv_img-device.mobile) { display: none !important; } }

/* Main. Each page has one h1 at every width. A page whose body carries its own h1 drops the template's; a page whose body
   opens with a hero and no h1 (the top page, /exercise-guidance-communication-tool/,
   /exercise-guidance-for-orthopedic-clinics/) keeps the template's for screen readers only. */
.hp-main { display: block; }
.hp-pagehead {
  max-width: var(--content); margin: 0 auto; padding: 48px 16px 24px; font-size: 28px; text-align: center;
}
.hp-main:has(.hp-src--top, .hp-src--lp8, .hp-src--lp3) .hp-pagehead {
  position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0);
}
.hp-main:has(.hp-src h1) .hp-pagehead { display: none; }
.hp-article { display: block; }

/* The converted bodies: the theme's sections, each full width with its content at the theme's container width. */
.hp-src > section, .hp-src > div > section { padding: 56px 16px; }
.hp-src > section:nth-of-type(even) { background: var(--bg-gray); }
.hp-src .l-container,
.hp-src [class$="_inner"],
.hp-src [class*="_inner "] { max-width: var(--content); margin-left: auto; margin-right: auto; }
.hp-src h2 { font-size: 26px; margin: 0 0 24px; }
.hp-src h3 { font-size: 20px; margin: 24px 0 12px; }
.hp-src p { margin: 0 0 16px; }
.hp-src ul { padding-left: 1.2em; }
.hp-src picture, .hp-src img { display: inline-block; }
.hp-src .c-hero__catch, .hp-src .section_title span { color: var(--blue); font-weight: 700; }
.hp-src .c-hero__title { font-family: var(--font-latin); letter-spacing: 0.04em; }
.hp-src a[class*="btn"], .hp-src .link_button, .hp-src .materials_button {
  display: inline-block; padding: 12px 28px; border-radius: 4px; background: var(--blue); color: var(--white);
  font-weight: 700; text-decoration: none;
}
.hp-src .c-btn--orange, .hp-src a .c-btn--orange { background: var(--cta); color: var(--white); padding: 12px 28px; border-radius: 4px; display: inline-block; }
.hp-src .c-btn--blue, .hp-src a .c-btn--blue { background: var(--blue); color: var(--white); padding: 12px 28px; border-radius: 4px; display: inline-block; }
.hp-src .flex { display: flex; }
.hp-src .flex-wrap { flex-wrap: wrap; }

/* The top page's hero image, its product blocks' sizing, and their column below 768px (the theme's row starts at
   481px on its 1000px canvas). The rest of its layout is the theme's, in the last section of this file. */
.hp-src--top .hp-hero img { display: block; width: 100%; height: auto; }
/* A flex item's default min-width is its content's, and a pending image's width attribute (2400 px) would set it: the page
   scrolled sideways at every width. min-width: 0 lets the image's max-width: 100% shrink it in a row; in the narrow
   column (align-items: center) the item takes its content's width, so max-width: 100% caps it there. */
.hp-src--top .p-top__service__text, .hp-src--top .p-top__service__image { flex: 1 1 0; min-width: 0; max-width: 100%; }
@media not all and (min-width: 768px) { .hp-src--top .p-top__service .l-container { flex-direction: column; } }

/* The company page's table (legacy-corporate's facts), and its section heads. */
.hp-src--about .c-title, .hp-src--about .c-hero { text-align: center; }
.p-about__company__table { width: 100%; max-width: 760px; margin: 0 auto; }
.p-about__company__table td { padding: 16px 12px; border-bottom: 1px solid var(--border); vertical-align: top; }
.p-about__company__table td:first-child { width: 30%; color: var(--black); font-weight: 700; }

/* A slot the database or a later media step fills: laid out, never a broken element. */
.hp-dblist:empty { display: none; }
.hp-slot--video { display: block; width: 100%; max-width: 640px; aspect-ratio: 16 / 9; margin: 0 auto; background: var(--slot); }
.hp-placeholder { padding: 24px; border: 2px dashed var(--gray); font-family: ui-monospace, monospace; color: var(--black); }

/* The contact pages' notice until the form edge. */
.hp-notice { max-width: 760px; margin: 0 auto; padding: 0 16px 48px; }
.hp-notice__lead { font-weight: 700; color: var(--black); }
.hp-contact { display: grid; grid-template-columns: max-content 1fr; gap: 8px 24px; margin: 24px 0 0; }
.hp-contact dt { font-weight: 700; color: var(--black); }
.hp-contact dd { margin: 0; }

/* Archives (the cards render.mjs fills from item.html) and their pager. */
.hp-archive {
  max-width: var(--content); margin: 0 auto; padding: 24px 16px 48px;
  display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 24px;
}
.hp-card { border: 1px solid var(--border-dark); border-radius: 4px; padding: 16px; background: var(--white); }
.hp-card img { display: block; width: 100%; height: auto; margin-bottom: 12px; }
.hp-card__date { font-size: 12px; color: var(--text); margin: 0 0 4px; }
.hp-card__title { font-size: 16px; margin: 0 0 8px; }
.hp-card__title a { color: var(--black); text-decoration: none; }
.hp-card__excerpt { font-size: 14px; margin: 0; }
.pager { display: flex; justify-content: center; gap: 8px; list-style: none; padding: 0 16px 48px; margin: 0; }
.pager a, .pager-current { display: inline-block; min-width: 36px; padding: 6px 10px; text-align: center; border: 1px solid var(--border); border-radius: 4px; }
.pager-current { background: var(--blue); color: var(--white); border-color: var(--blue); }

/* The banner above the footer (the theme's c-banner) and the footer. */
.hp-banner { background: var(--bg-gray); padding: 56px 16px; text-align: center; }
.hp-banner__inner { max-width: var(--content); margin: 0 auto; }
.hp-banner__title { font-size: 24px; margin: 0 0 12px; }
.hp-banner__text { margin: 0 0 24px; }
.hp-banner__buttons { display: flex; flex-wrap: wrap; gap: 16px; justify-content: center; margin: 0; }
.hp-footer { border-top: 1px solid var(--header-border); padding: 24px 16px; }
.hp-footer__inner {
  max-width: var(--header-content); margin: 0 auto; display: flex; flex-wrap: wrap; gap: 12px 24px; align-items: center;
}
.hp-logo--footer img { width: 150px; }
.hp-footer__link { color: var(--text); font-size: 13px; }
.hp-footer__copy { margin-left: auto; font-size: 12px; color: var(--text); }
@media not all and (min-width: 768px) { .hp-footer__copy { margin-left: 0; width: 100%; } }

/* The landing pages' own header links, carried at the top of each LP body: its cross-LP link and its CTA. */
.hp-src .header_cv, .hp-src .l-header__nav__items {
  display: flex; flex-wrap: wrap; justify-content: flex-end; align-items: center; gap: 12px 20px;
  max-width: var(--content); margin: 0 auto; padding: 12px 16px; list-style: none;
}
.hp-src .l-header__nav__items p { margin: 0; }

/* ===== The top page's layout, carried from the theme =====
   The rules of the theme's compiled stylesheet (legacy-rehasaku-corporate@10bcf419, wp-content/themes/rehasaku/css/,
   dart-sass 1.97.3) that name one of the top page's own classes, each under its own comment naming its SCSS source
   (path:line under css/); the shared components (l-container, c-hero, c-btn) keep the rules above, except where a
   carried rule names one inside a class of the page's own. The theme wraps the page in `<main id="top-page">`
   (index.php:12), this site in `.hp-src--top`: those rules are written `:is(#top-page, .hp-src--top)`, which keeps
   the theme's specificity, and their widths take this file's form.
   Not carried: the background images (the theme's files), the white text and rules set over them, the hero's slider
   (a script), the fixed page widths (`width: 100vw`, `min-width` 1000px and 336px: this site is fluid), the logo
   strip's animation, the about pictures' `img { width: 100% }` (it measures the theme's inline <picture>; here it
   would collapse a pending image, and the width attribute with `max-width` above already fills the cell), and two
   rules that select or change nothing on this page. Adapted to a fluid page: a section keeps this site's side
   gutter (`padding-block`, not the theme's zero sides); on a phone the about overlay is centred with `right: 50%`,
   the theme's own form at 481px and up, not its fixed 167.5px; the 470px PC heading is capped at its column; the
   theme's Jost* face is var(--font-latin). */
/* object/component/_catch.scss:1 */
.hp-src--top .c-catch {
  position: relative;
  font-size: 18px;
  font-weight: bold;
  line-height: 160%;
  text-align: center;
}
/* object/component/_catch.scss:8 */
.hp-src--top .c-catch::before,
.hp-src--top .c-catch::after {
  content: "";
  display: block;
  position: absolute;
  top: -2px;
  width: 2px;
  height: 65px;
  background: #007cbe;
}
/* object/component/_catch.scss:18 */
.hp-src--top .c-catch::before {
  left: 50%;
  margin-left: -135px;
  -webkit-transform: rotate(-20deg);
  transform: rotate(-20deg);
}
/* object/component/_catch.scss:25 */
.hp-src--top .c-catch::after {
  right: 50%;
  margin-right: -135px;
  -webkit-transform: rotate(20deg);
  transform: rotate(20deg);
}
@media (min-width: 768px) {
  /* object/component/_catch.scss:34 */
  .hp-src--top .c-catch {
    font-size: 1.94vw;
  }
  /* object/component/_catch.scss:37 */
  .hp-src--top .c-catch::before,
  .hp-src--top .c-catch::after {
    height: 6.805vw;
    max-height: 98px;
  }
  /* object/component/_catch.scss:42 */
  .hp-src--top .c-catch::before {
    margin-left: -215px;
    margin-left: -14.93vw;
  }
  /* object/component/_catch.scss:47 */
  .hp-src--top .c-catch::after {
    margin-right: -215px;
    margin-right: -14.93vw;
  }
}
/* object/component/_hero.scss:42 */
.hp-src--top .c-hero__title__area {
  text-align: center;
}
/* object/project/_top.scss:3 */
:is(#top-page, .hp-src--top) .p-top__fv {
  position: relative;
  overflow: hidden;
}
@media not all and (min-width: 481px) {
  /* object/project/_top.scss:3 */
  :is(#top-page, .hp-src--top) .p-top__fv {
    margin-top: calc(-1 * 60px);
    padding-top: calc(1 * 60px);
  }
}
@media (min-width: 481px) {
  /* object/project/_top.scss:3 */
  :is(#top-page, .hp-src--top) .p-top__fv {
    margin-top: calc(-1 * 80px);
    padding-top: calc(1 * 80px);
  }
}
@media not all and (min-width: 481px) {
  /* object/project/_top.scss:115 */
  :is(#top-page, .hp-src--top) .p-top__title__center {
    text-align: center;
  }
}
@media (min-width: 481px) {
  /* object/project/_top.scss:121 */
  :is(#top-page, .hp-src--top) .p-top__title__center .c-hero__title {
    margin: 0 auto 0 0;
  }
}
@media (min-width: 481px) {
  /* object/project/_top.scss:155 */
  :is(#top-page, .hp-src--top) .c-hero__title__area {
    text-align: left;
  }
}
@media (min-width: 481px) {
  /* object/project/_top.scss:164 */
  :is(#top-page, .hp-src--top) .introduction {
    padding-block: 5.5vw 0;
  }
}
@media not all and (min-width: 481px) {
  /* object/project/_top.scss:164 */
  :is(#top-page, .hp-src--top) .introduction {
    padding-block: 25px 40px;
  }
}
/* object/project/_top.scss:173 */
:is(#top-page, .hp-src--top) .introduction_slider {
  height: 74px;
  margin-top: 16px;
  background-size: auto 74px;
}
@media (min-width: 768px) {
  /* object/project/_top.scss:173 */
  :is(#top-page, .hp-src--top) .introduction_slider {
    margin-top: 2.77vw;
  }
}
@media (min-width: 481px) {
  /* object/project/_top.scss:196 */
  :is(#top-page, .hp-src--top) .p-top__service {
    margin: 172px auto 0;
  }
}
/* object/project/_top.scss:201 */
:is(#top-page, .hp-src--top) .p-top__service__text {
  margin-right: 50px;
  text-align: left;
}
@media not all and (min-width: 481px) {
  /* object/project/_top.scss:201 */
  :is(#top-page, .hp-src--top) .p-top__service__text {
    margin-right: 0px;
    text-align: center;
  }
}
@media not all and (min-width: 481px) {
  /* object/project/_top.scss:220 */
  :is(#top-page, .hp-src--top) .p-top__service__image {
    margin: 34px auto 100px;
  }
}
/* object/project/_top.scss:226 */
:is(#top-page, .hp-src--top) .p-top__service__viewMoreWrapper {
  margin-top: 60px;
}
@media (min-width: 481px) {
  /* object/project/_top.scss:234 */
  :is(#top-page, .hp-src--top) .p-top__service .l-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    overflow: hidden;
  }
}
/* object/project/_top.scss:243 */
:is(#top-page, .hp-src--top) .p-top__service .p-top__heading {
  margin-top: 60px;
  color: #222;
  font-weight: 400;
}
@media not all and (min-width: 481px) {
  /* object/project/_top.scss:243 */
  :is(#top-page, .hp-src--top) .p-top__service .p-top__heading {
    margin: 35px auto 0;
    text-align: left;
  }
}
/* object/project/_top.scss:255 */
:is(#top-page, .hp-src--top) .p-top__service .c-hero__title {
  border-bottom: 1px solid #017cbe;
}
/* object/project/_top.scss:267 */
:is(#top-page, .hp-src--top) .p-top__interview {
  position: relative;
  background-size: cover;
  background-repeat: repeat-y;
  background-position: 38%;
}
@media not all and (min-width: 481px) {
  /* object/project/_top.scss:267 */
  :is(#top-page, .hp-src--top) .p-top__interview {
    margin: 88px auto 0;
    padding-block: 88px;
  }
}
@media (min-width: 481px) {
  /* object/project/_top.scss:267 */
  :is(#top-page, .hp-src--top) .p-top__interview {
    margin-top: 130px;
    padding-block: 82px 108px;
  }
}
@media not all and (min-width: 481px) {
  /* object/project/_top.scss:302 */
  :is(#top-page, .hp-src--top) .p-top__seminar {
    padding-block: 88px 120px;
    background-size: cover;
  }
}
@media (min-width: 481px) {
  /* object/project/_top.scss:302 */
  :is(#top-page, .hp-src--top) .p-top__seminar {
    padding-block: 120px 92px;
    background-size: cover;
  }
}
/* object/project/_top.scss:317 */
:is(#top-page, .hp-src--top) .p-top__seminar .c-hero__title::after {
  background: #017cbe;
}
@media not all and (min-width: 481px) {
  /* object/project/_top.scss:325 */
  :is(#top-page, .hp-src--top) .p-top__materials {
    padding-block: 88px;
    background-size: cover;
  }
}
@media (min-width: 481px) {
  /* object/project/_top.scss:325 */
  :is(#top-page, .hp-src--top) .p-top__materials {
    padding-block: 108px;
    background-size: cover;
  }
}
@media not all and (min-width: 481px) {
  /* object/project/_top.scss:352 */
  :is(#top-page, .hp-src--top) .p-top__about {
    padding-block: 88px 110px;
  }
}
@media (min-width: 481px) {
  /* object/project/_top.scss:352 */
  :is(#top-page, .hp-src--top) .p-top__about {
    padding-block: 200px 140px;
  }
}
/* object/project/_top.scss:362 */
:is(#top-page, .hp-src--top) .p-top__about .p-top__heading {
  margin-top: 60px;
}
@media not all and (min-width: 481px) {
  /* object/project/_top.scss:362 */
  :is(#top-page, .hp-src--top) .p-top__about .p-top__heading {
    margin: 50px auto 0;
  }
}
/* object/project/_top.scss:372 */
:is(#top-page, .hp-src--top) .p-top__about .c-hero__title::after {
  background: #017cbe;
}
@media not all and (min-width: 481px) {
  /* object/project/_top.scss:379 */
  :is(#top-page, .hp-src--top) .p-top__heading {
    margin-top: 20px;
    font-size: 14px;
    line-height: 2em;
    font-weight: 300;
    letter-spacing: 0.1em;
  }
}
@media (min-width: 481px) {
  /* object/project/_top.scss:379 */
  :is(#top-page, .hp-src--top) .p-top__heading {
    width: min(470px, 100%);
    line-height: 38px;
    font-weight: 300;
  }
}
/* object/project/_top.scss:395 */
:is(#top-page, .hp-src--top) .p-top__about__block {
  position: relative;
}
@media not all and (min-width: 481px) {
  /* object/project/_top.scss:395 */
  :is(#top-page, .hp-src--top) .p-top__about__block {
    margin-top: 44px;
  }
}
@media (min-width: 481px) {
  /* object/project/_top.scss:395 */
  :is(#top-page, .hp-src--top) .p-top__about__block {
    width: 100%;
    margin: -38px auto 0;
  }
}
/* object/project/_top.scss:408 */
:is(#top-page, .hp-src--top) .p-top__about__block__centerText {
  position: absolute;
  width: 100%;
  -webkit-transform: translate(50%, 50%);
  -moz-transform: translate(50%, 50%);
  -ms-transform: translate(50%, 50%);
  -o-transform: translate(50%, 50%);
  transform: translate(50%, 50%);
  font-family: var(--font-latin);
  line-height: 1em;
  font-weight: 600;
  color: #222222;
  text-align: center;
}
@media not all and (min-width: 481px) {
  /* object/project/_top.scss:408 */
  :is(#top-page, .hp-src--top) .p-top__about__block__centerText {
    top: 20px;
    right: 50%;
    font-size: 40px;
    line-height: 50px;
    letter-spacing: 1px;
  }
}
@media (min-width: 481px) {
  /* object/project/_top.scss:408 */
  :is(#top-page, .hp-src--top) .p-top__about__block__centerText {
    top: calc(50% - 160px);
    right: 50%;
    font-size: 70px;
    line-height: 80px;
    letter-spacing: 3px;
  }
}
/* object/project/_top.scss:437 */
:is(#top-page, .hp-src--top) .p-top__about__viewMoreWrapper {
  margin: 50px auto 0;
}
/* object/project/_top.scss:441 */
:is(#top-page, .hp-src--top) .p-top__about__pic {
  width: 50%;
}
@media not all and (min-width: 481px) {
  /* object/project/_top.scss:441 */
  :is(#top-page, .hp-src--top) .p-top__about__pic {
    height: 116px;
  }
}
@media not all and (min-width: 481px) {
  /* object/project/_top.scss:453 */
  :is(#top-page, .hp-src--top) .p-top__about__pic__1,
  :is(#top-page, .hp-src--top) .p-top__about__pic__3 {
    padding: 30px 10px 0 5px;
  }
}
@media (min-width: 481px) {
  /* object/project/_top.scss:453 */
  :is(#top-page, .hp-src--top) .p-top__about__pic__1,
  :is(#top-page, .hp-src--top) .p-top__about__pic__3 {
    padding: 80px 40px 0 10px;
  }
}
@media not all and (min-width: 481px) {
  /* object/project/_top.scss:464 */
  :is(#top-page, .hp-src--top) .p-top__about__pic__2,
  :is(#top-page, .hp-src--top) .p-top__about__pic__4 {
    padding: 0 5px 30px 10px;
  }
}
@media (min-width: 481px) {
  /* object/project/_top.scss:464 */
  :is(#top-page, .hp-src--top) .p-top__about__pic__2,
  :is(#top-page, .hp-src--top) .p-top__about__pic__4 {
    padding: 0 10px 80px 40px;
  }
}

/* ===== rehasaku-posture: its layout, carried from the theme =====
   The rules of the theme's own stylesheet for this landing page (legacy-rehasaku-corporate@10bcf419,
   wp-content/themes/rehasaku/lp/rehasaku-posture/css/style.scss, dart-sass 1.97.3) that name one of the page's own
   classes, each under its own comment naming its source (path:line under the theme), scoped to `.hp-src--posture`;
   their widths take this file's form. Not carried: the background images (the theme's files; a coloured band keeps
   its colour), the rules for the document's body, and the rules that select or change nothing on this page.
   Adapted to a fluid page, each named in its own comment ("page rule") or below:
   - the CTA orange is var(--cta), the site's accessible CTA colour, not the theme's #dc6303;
   - the theme's bands (`*_inner`) are full width as in the theme, not capped by the `[class$="_inner"]` rule above;
   - a band's title and its span take the band's white, not the dark heading colour or the blue span colour above;
   - the feature photos and device images bleed past the screen edges as the theme draws them, clipped at the
     section rather than scrolling the page;
   - the intro's 480px text column keeps its width and its image gives way below 1376px; the phone list, item,
     button and hero button widths and the PC feature text offsets are capped at their column, and the phone hero
     box is bounded on both sides. */
/* lp/rehasaku-posture/css/style.scss:30 */
.hp-src--posture .section_title {
  line-height: 1;
  text-align: center;
  font-weight: bold;
}
/* lp/rehasaku-posture/css/style.scss:35 */
.hp-src--posture .section_title span {
  display: inline-block;
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:35 */
  .hp-src--posture .section_title span {
    padding-bottom: 16px;
    font-size: 40px;
  }
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:35 */
  .hp-src--posture .section_title span {
    padding-bottom: 8px;
    font-size: 24px;
  }
}
/* lp/rehasaku-posture/css/style.scss:51 */
.hp-src--posture .link_button {
  text-decoration: none;
  font-size: 15px;
  font-weight: 700;
  display: flex;
  justify-content: center;
  align-items: center;
}
/* lp/rehasaku-posture/css/style.scss:59 */
.hp-src--posture .link_button--download {
  font-weight: bold;
  text-align: center;
  border-radius: 80px;
}
/* lp/rehasaku-posture/css/style.scss:68 */
.hp-src--posture .link_button--download:not(.popup_button) {
  box-shadow: 4px 6px 16px rgba(146, 163, 180, 0.4);
}
/* lp/rehasaku-posture/css/style.scss:71 */
.hp-src--posture .link_button--download:not(.popup_button):hover {
  transform: translateY(-1px);
}
/* lp/rehasaku-posture/css/style.scss:76 */
.hp-src--posture .link_button--download_orange {
  background: var(--cta);
  color: #fff;
}
/* lp/rehasaku-posture/css/style.scss:80 */
.hp-src--posture .link_button--download_orange:hover {
  background: #e38235;
}
/* lp/rehasaku-posture/css/style.scss:98 */
.hp-src--posture .link_button--download_blue:hover {
  background: #3296cb;
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:59 */
  .hp-src--posture .link_button--download {
    width: 328px;
  }
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:59 */
  .hp-src--posture .link_button--download {
    width: 75.2vw;
  }
}
/* lp/rehasaku-posture/css/style.scss:111 */
.hp-src--posture .link_button--download::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 25px;
  width: 28px;
  height: 28px;
  margin: auto;
  background-size: 100%;
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:111 */
  .hp-src--posture .link_button--download::before {
    left: 5.3333333333vw;
    width: 6.4vw;
    height: 6.4vw;
  }
}
/* lp/rehasaku-posture/css/style.scss:131 */
.hp-src--posture .link_button--transparent {
  width: 298px;
  height: 64px;
  border: 1px solid #fff;
  border-radius: 48px;
  background: transparent;
  color: #fff;
}
/* lp/rehasaku-posture/css/style.scss:139 */
.hp-src--posture .link_button--transparent:hover {
  background: #fff;
  color: #007cbe;
  border: 1px solid #007cbe;
}
/* lp/rehasaku-posture/css/style.scss:325 */
.hp-src--posture .header_link {
  display: block;
  text-decoration: none;
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:375 */
  .hp-src--posture .mv {
    z-index: 0;
  }
}
/* lp/rehasaku-posture/css/style.scss:381 */
.hp-src--posture .mv_inner {
  position: relative;
  max-width: none;
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:381 */
  .hp-src--posture .mv_inner {
    flex-direction: column-reverse;
    padding-bottom: 0;
  }
}
/* lp/rehasaku-posture/css/style.scss:420 */
.hp-src--posture .mv_info {
  font-weight: 700;
  position: absolute;
  left: 10vw;
  top: 10vh;
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:420 */
  .hp-src--posture .mv_info {
    top: 5vh;
  }
}
@media not all and (min-width: 600px) {
  /* lp/rehasaku-posture/css/style.scss:420 */
  .hp-src--posture .mv_info {
    top: 5vh;
    left: 15px;
    right: 15px;
  }
}
/* lp/rehasaku-posture/css/style.scss:436 */
.hp-src--posture .mv_button_group {
  margin-top: 70px;
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:436 */
  .hp-src--posture .mv_button_group {
    margin-top: 40px;
  }
}
/* lp/rehasaku-posture/css/style.scss:444 */
.hp-src--posture .mv_heading {
  color: #007cbe;
  padding: 15px;
  max-width: 508px;
  line-height: 78px;
  font-size: 48px;
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:444 */
  .hp-src--posture .mv_heading {
    font-size: 32px;
    line-height: 50px;
    padding-left: 5px;
  }
}
/* lp/rehasaku-posture/css/style.scss:458 */
.hp-src--posture .mv_text {
  color: #000000;
  font-size: 16px;
  line-height: 39.5px;
  max-width: 365px;
  padding-left: 15px;
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:458 */
  .hp-src--posture .mv_text {
    padding-left: 5px;
  }
}
/* lp/rehasaku-posture/css/style.scss:470 */
.hp-src--posture .mv_img {
  position: relative;
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:470 */
  .hp-src--posture .mv_img {
    margin-top: 4vw;
  }
}
@media not all and (min-width: 600px) {
  /* lp/rehasaku-posture/css/style.scss:490 */
  .hp-src--posture .mv_img-device.mobile {
    display: block !important;
  }
}
/* lp/rehasaku-posture/css/style.scss:545 */
.hp-src--posture .mv_button {
  display: block;
  border-radius: 32px;
  color: #fff;
  text-align: center;
  font-size: 16px;
  width: min(279px, 100%);
  height: 64px;
  line-height: 64px;
}
/* lp/rehasaku-posture/css/style.scss:555 */
.hp-src--posture .mv_button.link_button--download_blue {
  margin-top: 27px;
}
/* lp/rehasaku-posture/css/style.scss:588 */
.hp-src--posture .intro_inner {
  margin: 80px 40px;
  padding: 40px;
  align-items: center;
  max-width: none;
}
@media not all and (min-width: 600px) {
  /* lp/rehasaku-posture/css/style.scss:588 */
  .hp-src--posture .intro_inner {
    margin: 80px 10px;
    padding: 10px;
  }
}
/* lp/rehasaku-posture/css/style.scss:599 */
.hp-src--posture .intro_content {
  display: flex;
  flex-direction: row;
  justify-content: center;
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:599 */
  .hp-src--posture .intro_content {
    flex-direction: column;
  }
}
/* lp/rehasaku-posture/css/style.scss:609 */
.hp-src--posture .intro_info {
  width: 480px;
  flex-shrink: 0;
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:609 */
  .hp-src--posture .intro_info {
    width: auto;
  }
}
/* lp/rehasaku-posture/css/style.scss:617 */
.hp-src--posture .intro_title {
  line-height: 1.5;
  margin-bottom: 120px;
}
/* lp/rehasaku-posture/css/style.scss:621 */
.hp-src--posture .intro_title > span {
  border-bottom: 3px solid #007cbe;
  font-weight: 700;
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:617 */
  .hp-src--posture .intro_title {
    margin-bottom: 80px;
  }
}
@media not all and (min-width: 600px) {
  /* lp/rehasaku-posture/css/style.scss:617 */
  .hp-src--posture .intro_title {
    margin-bottom: 40px;
  }
}
/* lp/rehasaku-posture/css/style.scss:636 */
.hp-src--posture .intro_heading {
  color: #007cbe;
  font-size: 32px;
  font-weight: 700;
  line-height: 150%;
}
@media not all and (min-width: 600px) {
  /* lp/rehasaku-posture/css/style.scss:636 */
  .hp-src--posture .intro_heading {
    margin-bottom: 40px;
    font-size: 18px;
  }
}
/* lp/rehasaku-posture/css/style.scss:648 */
.hp-src--posture .intro_text {
  margin-top: 20px;
  font-size: 16px;
  font-weight: 400;
  line-height: 240%;
}
/* lp/rehasaku-posture/css/style.scss:655 */
.hp-src--posture .intro_img {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-left: 56px;
  min-width: 0;
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:655 */
  .hp-src--posture .intro_img {
    margin-left: 0px;
    margin-top: 40px;
  }
}
/* lp/rehasaku-posture/css/style.scss:666 */
.hp-src--posture .intro_img > img {
  filter: drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.25));
  border-radius: 5px;
  max-width: min(679.99px, 100%);
  max-height: 456.16px;
}
@media not all and (min-width: 600px) {
  /* lp/rehasaku-posture/css/style.scss:666 */
  .hp-src--posture .intro_img > img {
    max-width: 420.73px;
    max-height: 224.389px;
  }
}
/* lp/rehasaku-posture/css/style.scss:681 */
.hp-src--posture .feature {
  position: relative;
  z-index: 1;
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:685 */
  .hp-src--posture .feature_inner {
    padding: 123px 40px;
    background-color: #fff;
    background-size: 64px 40px;
    max-width: none;
  }
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:685 */
  .hp-src--posture .feature_inner {
    padding: 21.3333333333vw 0;
    background-color: #f9fafc;
    background-size: 6.6666666667vw 4.2666666667vw;
    max-width: none;
  }
}
/* lp/rehasaku-posture/css/style.scss:699 */
.hp-src--posture .feature_item {
  margin-top: 250px;
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:699 */
  .hp-src--posture .feature_item {
    margin-top: 100px;
  }
}
/* lp/rehasaku-posture/css/style.scss:708 */
.hp-src--posture .feature_title span {
  border-bottom: solid 4px #007cbe;
  line-height: 1.5;
}
/* lp/rehasaku-posture/css/style.scss:714 */
.hp-src--posture .feature_info {
  z-index: 1;
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:714 */
  .hp-src--posture .feature_info {
    position: relative;
    width: 410px;
    margin: 66px auto 105px;
  }
}
@media (min-width: 1556px) {
  /* lp/rehasaku-posture/css/style.scss:714 */
  .hp-src--posture .feature_info {
    position: relative;
    width: 510px;
    margin: 66px auto 105px;
  }
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:714 */
  .hp-src--posture .feature_info {
    padding: 30px 6.4vw;
  }
}
/* lp/rehasaku-posture/css/style.scss:734 */
.hp-src--posture .feature_name {
  font-weight: bold;
  line-height: 1.5;
  color: #007cbe;
  font-size: 32px;
}
/* lp/rehasaku-posture/css/style.scss:741 */
.hp-src--posture .feature_description {
  line-height: 1.8;
  font-size: 16px;
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:741 */
  .hp-src--posture .feature_description {
    margin-top: 24px;
  }
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:741 */
  .hp-src--posture .feature_description {
    margin-top: 4.2666666667vw;
  }
}
/* lp/rehasaku-posture/css/style.scss:754 */
.hp-src--posture .feature_button {
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  width: min(280px, 100%);
  height: 48px;
  margin-top: 24px;
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:754 */
  .hp-src--posture .feature_button {
    margin: 4.2666666667vw auto 0;
  }
}
/* lp/rehasaku-posture/css/style.scss:768 */
.hp-src--posture .feature_img {
  position: relative;
  margin: 0 auto;
  z-index: 1;
}
/* lp/rehasaku-posture/css/style.scss:773 */
.hp-src--posture .feature_img-float {
  z-index: 2;
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:773 */
  .hp-src--posture .feature_img-float {
    position: absolute;
    right: 50%;
    left: 50%;
    width: 713px;
    height: 468px;
  }
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:773 */
  .hp-src--posture .feature_img-float {
    position: relative;
    width: 78.4vw;
    margin: -26.6666666667vw auto 0;
  }
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:792 */
  .hp-src--posture .feature_list {
    margin-top: 10.6666666667vw;
  }
}
/* lp/rehasaku-posture/css/style.scss:798 */
.hp-src--posture .feature_bg {
  position: absolute;
  right: 50%;
  left: 50%;
  z-index: 0;
  width: 130px;
  height: 289px;
}
/* lp/rehasaku-posture/css/style.scss:807 */
.hp-src--posture .feature_item {
  position: relative;
}
/* lp/rehasaku-posture/css/style.scss:810 */
.hp-src--posture .feature_item:first-child {
  margin-top: 0;
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:814 */
  .hp-src--posture .feature_item:first-child .feature_info {
    right: 360px;
  }
}
@media (min-width: 1556px) {
  /* lp/rehasaku-posture/css/style.scss:814 */
  .hp-src--posture .feature_item:first-child .feature_info {
    right: 400px;
  }
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:824 */
  .hp-src--posture .feature_item:first-child .feature_img {
    right: 210px;
    margin-top: 64px;
  }
}
@media (min-width: 1556px) {
  /* lp/rehasaku-posture/css/style.scss:824 */
  .hp-src--posture .feature_item:first-child .feature_img {
    right: 280px;
    margin-top: 64px;
  }
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:835 */
  .hp-src--posture .feature_item:first-child .feature_img-float {
    top: 150px;
    margin-left: -100px;
  }
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:843 */
  .hp-src--posture .feature_item:first-child .feature_bg {
    width: 182px;
    height: 289px;
    margin-left: -200px;
    margin-top: -100px;
  }
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:856 */
  .hp-src--posture .feature_item:nth-child(2) .feature_info {
    left: min(380px, 50vw - 261px);
  }
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:862 */
  .hp-src--posture .feature_item:nth-child(2) .feature_img {
    left: 310px;
  }
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:867 */
  .hp-src--posture .feature_item:nth-child(2) .feature_img-float {
    top: 100px;
    margin-left: -590px;
  }
}
@media (min-width: 1556px) {
  /* lp/rehasaku-posture/css/style.scss:867 */
  .hp-src--posture .feature_item:nth-child(2) .feature_img-float {
    top: 100px;
    margin-left: -650px;
  }
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:867 */
  .hp-src--posture .feature_item:nth-child(2) .feature_img-float {
    width: 78.4vw;
    margin: -17.3333333333vw auto 0;
  }
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:897 */
  .hp-src--posture .feature_item:nth-child(2) .feature_bg {
    margin-left: -250px;
    margin-top: -150px;
  }
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:908 */
  .hp-src--posture .feature_item:nth-child(3) .feature_info {
    right: 360px;
  }
}
@media (min-width: 1556px) {
  /* lp/rehasaku-posture/css/style.scss:908 */
  .hp-src--posture .feature_item:nth-child(3) .feature_info {
    right: 385px;
  }
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:918 */
  .hp-src--posture .feature_item:nth-child(3) .feature_img {
    right: 280px;
  }
}
@media (min-width: 1556px) {
  /* lp/rehasaku-posture/css/style.scss:918 */
  .hp-src--posture .feature_item:nth-child(3) .feature_img {
    right: 320px;
  }
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:927 */
  .hp-src--posture .feature_item:nth-child(3) .feature_img-float {
    top: -105px;
    margin-left: -100px;
  }
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:948 */
  .hp-src--posture .feature_item:nth-child(3) .feature_bg {
    margin-top: -300px;
    margin-left: 120px;
  }
}
/* lp/rehasaku-posture/css/style.scss:957 */
.hp-src--posture .feature_item:nth-child(4) {
  margin-top: 100px;
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:961 */
  .hp-src--posture .feature_item:nth-child(4) .feature_info {
    left: min(380px, 50vw - 261px);
    margin-top: -40px;
  }
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:968 */
  .hp-src--posture .feature_item:nth-child(4) .feature_img {
    left: 240px;
    margin-bottom: 70px;
  }
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:968 */
  .hp-src--posture .feature_item:nth-child(4) .feature_img {
    width: 85.3333333333vw;
    padding-top: 9.6vw;
  }
}
@media not all and (min-width: 600px) {
  /* lp/rehasaku-posture/css/style.scss:968 */
  .hp-src--posture .feature_item:nth-child(4) .feature_img {
    padding-top: 0;
  }
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:984 */
  .hp-src--posture .feature_item:nth-child(4) .feature_img-float {
    top: 200px;
    margin-left: -600px;
  }
}
/* lp/rehasaku-posture/css/style.scss:992 */
.hp-src--posture .feature_item:nth-child(4) .feature_device_img {
  display: flex;
  justify-content: center;
}
@media not all and (min-width: 600px) {
  /* lp/rehasaku-posture/css/style.scss:997 */
  .hp-src--posture .feature_item:nth-child(4) .feature_device_img > img {
    width: 194px;
    height: 352px;
  }
}
@media (min-width: 600px) and (not (min-width: 1200px)) {
  /* lp/rehasaku-posture/css/style.scss:1004 */
  .hp-src--posture .feature_item:nth-child(4) .feature_device_img > img {
    width: 267.092px;
    height: 485.315px;
  }
}
/* lp/rehasaku-posture/css/style.scss:1016 */
.hp-src--posture .issue {
  position: relative;
  z-index: 1;
}
/* lp/rehasaku-posture/css/style.scss:1020 */
.hp-src--posture .issue_inner {
  background: #007cbe;
  max-width: none;
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1020 */
  .hp-src--posture .issue_inner {
    padding: 128px 0px;
  }
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1020 */
  .hp-src--posture .issue_inner {
    padding: 17.0666666667vw 0 8.5333333333vw;
  }
}
/* lp/rehasaku-posture/css/style.scss:1033 */
.hp-src--posture .issue_title span {
  border-color: #fff;
  color: #fff;
  border-bottom: 4px solid #007cbe;
  font-size: 40px;
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1033 */
  .hp-src--posture .issue_title span {
    font-size: 24px;
  }
}
/* lp/rehasaku-posture/css/style.scss:1045 */
.hp-src--posture .issue_list {
  display: flex;
  justify-content: center;
  align-items: center;
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1045 */
  .hp-src--posture .issue_list {
    flex-wrap: wrap;
    margin: 0 auto;
    max-width: 1200px;
  }
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1045 */
  .hp-src--posture .issue_list {
    flex-direction: column;
    margin: 8.5333333333vw auto 0;
    padding: 0 8.5333333333vw;
  }
}
/* lp/rehasaku-posture/css/style.scss:1063 */
.hp-src--posture .issue_item {
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 8px;
  background: #fff;
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1063 */
  .hp-src--posture .issue_item {
    width: 520px;
    height: 155px;
    margin: 56px 28px 0px;
  }
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1063 */
  .hp-src--posture .issue_item {
    width: 100%;
    height: 140px;
    margin: 2.1333333333vw auto 0;
  }
}
/* lp/rehasaku-posture/css/style.scss:1083 */
.hp-src--posture .issue_name {
  line-height: 1.5;
  color: #007cbe;
  font-weight: bold;
  text-align: center;
  font-size: 24px;
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1083 */
  .hp-src--posture .issue_name {
    font-size: 16px;
  }
}
/* lp/rehasaku-posture/css/style.scss:1095 */
.hp-src--posture .issue_conclusion {
  line-height: 1.5;
  font-weight: bold;
  text-align: center;
  color: #fff;
  border-bottom: 4px solid #fff;
  width: fit-content;
  margin: 60px auto 0;
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1095 */
  .hp-src--posture .issue_conclusion {
    margin-top: 64px;
    font-size: 32px;
  }
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1095 */
  .hp-src--posture .issue_conclusion {
    margin: 8.5333333333vw auto 0;
    font-size: 5.3333333333vw;
  }
}
/* lp/rehasaku-posture/css/style.scss:1116 */
.hp-src--posture .detail {
  position: relative;
  z-index: 1;
}
/* lp/rehasaku-posture/css/style.scss:1120 */
.hp-src--posture .detail_inner {
  background: #007cbe;
  max-width: none;
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1120 */
  .hp-src--posture .detail_inner {
    padding: 128px 220px;
  }
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1120 */
  .hp-src--posture .detail_inner {
    padding: 17.0666666667vw 0 8.5333333333vw;
  }
}
/* lp/rehasaku-posture/css/style.scss:1132 */
.hp-src--posture .detail_title {
  font-size: 40px;
  color: #fff;
}
/* lp/rehasaku-posture/css/style.scss:1136 */
.hp-src--posture .detail_title span {
  border-color: #fff;
  border-bottom: 4px solid #007cbe;
  color: inherit;
}
@media not all and (min-width: 600px) {
  /* lp/rehasaku-posture/css/style.scss:1132 */
  .hp-src--posture .detail_title {
    font-size: 24px;
  }
}
/* lp/rehasaku-posture/css/style.scss:1146 */
.hp-src--posture .detail_text {
  line-height: 1.8;
  color: #fff;
  text-align: center;
  font-size: 16px;
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1146 */
  .hp-src--posture .detail_text {
    margin-top: 30px;
    margin-bottom: 64px;
  }
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1146 */
  .hp-src--posture .detail_text {
    margin-top: 5.8666666667vw;
    margin-bottom: 56px;
    padding: 0 4.2666666667vw;
  }
}
/* lp/rehasaku-posture/css/style.scss:1164 */
.hp-src--posture .detail_button {
  display: flex;
  justify-content: center;
  align-items: center;
}
@media not all and (min-width: 600px) {
  /* lp/rehasaku-posture/css/style.scss:1164 */
  .hp-src--posture .detail_button {
    flex-direction: column;
    align-items: center;
  }
}
/* lp/rehasaku-posture/css/style.scss:1174 */
.hp-src--posture .detail_button .link_button {
  border-radius: 80px;
  width: 242px;
  height: 57.951px;
  margin-right: 15px;
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1174 */
  .hp-src--posture .detail_button .link_button {
    margin-right: 30px;
  }
}
@media not all and (min-width: 600px) {
  /* lp/rehasaku-posture/css/style.scss:1185 */
  .hp-src--posture .detail_button .link_button--transparent {
    margin-top: 30px;
  }
}
@media not all and (min-width: 600px) {
  /* lp/rehasaku-posture/css/style.scss:1191 */
  .hp-src--posture .detail_button .link_button--download_orange {
    margin-top: 30px;
  }
}
/* lp/rehasaku-posture/css/style.scss:1200 */
.hp-src--posture .support {
  position: relative;
  z-index: 1;
}
/* lp/rehasaku-posture/css/style.scss:1204 */
.hp-src--posture .support_inner {
  background-color: #fff;
  max-width: none;
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1204 */
  .hp-src--posture .support_inner {
    padding: 190px 0px 128px;
    background-size: contain, cover;
  }
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1204 */
  .hp-src--posture .support_inner {
    padding-top: 64px;
    padding-bottom: 21.3333333333vw;
  }
}
/* lp/rehasaku-posture/css/style.scss:1218 */
.hp-src--posture .support_title {
  border-bottom: 3px solid #007cbe;
  margin: 0 160px;
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1218 */
  .hp-src--posture .support_title {
    margin: 0 130px;
  }
  /* lp/rehasaku-posture/css/style.scss:1225 */
  .hp-src--posture .support_title span {
    line-height: 1.5;
  }
}
@media not all and (min-width: 600px) {
  /* lp/rehasaku-posture/css/style.scss:1218 */
  .hp-src--posture .support_title {
    margin: 0 30px;
  }
}
/* lp/rehasaku-posture/css/style.scss:1234 */
.hp-src--posture .support_title_description {
  margin-top: 50px;
  text-align: center;
}
/* lp/rehasaku-posture/css/style.scss:1240 */
.hp-src--posture .support_introduction {
  border-radius: 16px;
  background: rgba(0, 124, 190, 0.88);
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1240 */
  .hp-src--posture .support_introduction {
    width: 1000px;
    margin: 64px auto 0;
    padding: 56px 40px;
  }
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1240 */
  .hp-src--posture .support_introduction {
    margin: 8.8vw 6.4vw 0;
    padding: 6.4vw 2.1333333333vw;
  }
}
/* lp/rehasaku-posture/css/style.scss:1256 */
.hp-src--posture .support_summary {
  font-weight: bold;
  text-align: center;
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1256 */
  .hp-src--posture .support_summary {
    padding: 0 4.2666666667vw;
  }
}
/* lp/rehasaku-posture/css/style.scss:1264 */
.hp-src--posture .support_summary span {
  display: inline-block;
  line-height: 1.5;
  border-width: 2px 0;
  border: solid #fff;
  color: #fff;
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1264 */
  .hp-src--posture .support_summary span {
    padding: 16px 0;
    font-size: 32px;
  }
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1264 */
  .hp-src--posture .support_summary span {
    width: 100%;
    padding: 16px 0;
    font-size: 24px;
  }
}
/* lp/rehasaku-posture/css/style.scss:1284 */
.hp-src--posture .support_text {
  line-height: 1.8;
  color: #fff;
  text-align: center;
  font-size: 16px;
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1284 */
  .hp-src--posture .support_text {
    margin-top: 30px;
  }
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1284 */
  .hp-src--posture .support_text {
    margin-top: 5.8666666667vw;
    padding: 0 4.2666666667vw;
    text-align: left;
  }
}
/* lp/rehasaku-posture/css/style.scss:1301 */
.hp-src--posture .support_point {
  line-height: normal;
  color: #fff;
  font-weight: bold;
  text-align: center;
  font-size: 24px;
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1301 */
  .hp-src--posture .support_point {
    margin-top: 36px;
  }
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1301 */
  .hp-src--posture .support_point {
    margin-top: 20px;
  }
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1317 */
  .hp-src--posture .support_list {
    width: 1000px;
    margin: auto;
  }
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1317 */
  .hp-src--posture .support_list {
    margin-top: 10.6666666667vw;
    padding: 0 6.4vw;
  }
}
/* lp/rehasaku-posture/css/style.scss:1329 */
.hp-src--posture .support_item {
  background: #fff;
  box-shadow: 8px 24px 60px rgba(146, 163, 180, 0.2);
  border-radius: 16px;
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1329 */
  .hp-src--posture .support_item {
    display: flex;
    align-items: center;
    width: 100%;
    margin-top: 24px;
    padding: 40px 64px;
  }
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1329 */
  .hp-src--posture .support_item {
    position: relative;
    margin-top: 6.4vw;
    padding: 6.4vw;
  }
}
/* lp/rehasaku-posture/css/style.scss:1349 */
.hp-src--posture .support_icon {
  width: 128px;
  height: 128px;
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1349 */
  .hp-src--posture .support_icon {
    margin: 10.6666666667vw auto 0;
  }
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1358 */
  .hp-src--posture .support_info {
    margin-left: 56px;
  }
}
/* lp/rehasaku-posture/css/style.scss:1364 */
.hp-src--posture .support_index {
  display: inline-block;
  line-height: 1;
  color: #828788;
  font-family: Jost;
  font-size: 30px;
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1364 */
  .hp-src--posture .support_index {
    padding-bottom: 8px;
    border-bottom: solid 4px #828788;
  }
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1364 */
  .hp-src--posture .support_index {
    position: absolute;
    top: 6.4vw;
    left: 6.4vw;
    padding-bottom: 2.1333333333vw;
    border-bottom: solid 0.8vw #828788;
  }
}
/* lp/rehasaku-posture/css/style.scss:1385 */
.hp-src--posture .support_name {
  line-height: 1.5;
  color: #007cbe;
  font-weight: bold;
  margin-top: 24px;
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1385 */
  .hp-src--posture .support_name {
    font-size: 32px;
  }
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1385 */
  .hp-src--posture .support_name {
    margin-top: 16px;
  }
}
/* lp/rehasaku-posture/css/style.scss:1400 */
.hp-src--posture .support_description {
  line-height: 1.8;
  font-size: 16px;
  margin-top: 16px;
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1406 */
  .hp-src--posture .support .staff {
    margin-top: 24px;
  }
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1406 */
  .hp-src--posture .support .staff {
    margin-top: 6.4vw;
  }
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1415 */
  .hp-src--posture .support .staff_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}
/* lp/rehasaku-posture/css/style.scss:1423 */
.hp-src--posture .support .staff_item {
  display: flex;
  background: #fff;
  border-radius: 16px;
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1423 */
  .hp-src--posture .support .staff_item {
    width: calc((100% - 8px) / 2);
    padding: 16px 16px 24px;
  }
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1423 */
  .hp-src--posture .support .staff_item {
    flex-wrap: wrap;
    padding: 16px;
  }
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1438 */
  .hp-src--posture .support .staff_item:nth-child(n+2) {
    margin-top: 2.1333333333vw;
  }
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1444 */
  .hp-src--posture .support .staff_item:nth-child(n+3) {
    margin-top: 8px;
  }
}
/* lp/rehasaku-posture/css/style.scss:1451 */
.hp-src--posture .support .staff_icon {
  border-radius: 50%;
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1451 */
  .hp-src--posture .support .staff_icon {
    width: 96px;
    height: 96px;
  }
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1451 */
  .hp-src--posture .support .staff_icon {
    width: 64px;
    height: 64px;
  }
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1465 */
  .hp-src--posture .support .staff_profile {
    margin-left: 16px;
  }
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1465 */
  .hp-src--posture .support .staff_profile {
    margin-left: 4.2666666667vw;
  }
}
/* lp/rehasaku-posture/css/style.scss:1475 */
.hp-src--posture .support .staff_role {
  line-height: 1.6;
  margin-top: 8px;
  font-size: 14px;
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1475 */
  .hp-src--posture .support .staff_role {
    line-height: 1.5;
  }
}
/* lp/rehasaku-posture/css/style.scss:1485 */
.hp-src--posture .support .staff_name {
  line-height: 1.6;
  font-weight: bold;
  margin-top: 8px;
  font-size: 18px;
}
/* lp/rehasaku-posture/css/style.scss:1492 */
.hp-src--posture .support .staff_background {
  line-height: 1.5;
  color: #666;
  font-size: 12px;
  margin-top: 10px;
}
/* lp/rehasaku-posture/css/style.scss:1406 */
.hp-src--posture .support .staff {
  font-size: 12px;
}
/* lp/rehasaku-posture/css/style.scss:1504 */
.hp-src--posture .materials {
  position: relative;
  z-index: 1;
}
/* lp/rehasaku-posture/css/style.scss:1508 */
.hp-src--posture .materials_inner {
  background: #f9fafc;
  max-width: none;
}
/* lp/rehasaku-posture/css/style.scss:1511 */
.hp-src--posture .materials_inner.bg_white {
  background: #ffffff;
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1508 */
  .hp-src--posture .materials_inner {
    padding: 21.3333333333vw 6.4vw;
  }
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1508 */
  .hp-src--posture .materials_inner {
    padding: 128px 120px;
  }
}
@media (min-width: 1556px) {
  /* lp/rehasaku-posture/css/style.scss:1508 */
  .hp-src--posture .materials_inner {
    padding: 128px 220px;
  }
}
/* lp/rehasaku-posture/css/style.scss:1529 */
.hp-src--posture .materials_title span {
  font-size: 40px;
  border-bottom: 4px solid #007cbe;
}
/* lp/rehasaku-posture/css/style.scss:1535 */
.hp-src--posture .materials_introduction {
  font-size: 16px;
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1535 */
  .hp-src--posture .materials_introduction {
    line-height: 1.8;
    margin-top: 48px;
    text-align: center;
  }
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1535 */
  .hp-src--posture .materials_introduction {
    line-height: 1.6;
    margin-top: 8.5333333333vw;
  }
}
/* lp/rehasaku-posture/css/style.scss:1630 */
.hp-src--posture .conclusion {
  position: relative;
  z-index: 1;
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1634 */
  .hp-src--posture .conclusion_inner {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 56px 0 0;
    background-color: #0077b9;
    overflow: hidden;
    max-width: none;
  }
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1634 */
  .hp-src--posture .conclusion_inner {
    padding: 17.0666666667vw 6.4vw 12.8vw;
    background-color: #0077b9;
    background-size: cover;
    max-width: none;
  }
}
/* lp/rehasaku-posture/css/style.scss:1653 */
.hp-src--posture .conclusion_inner > * {
  color: #fff;
}
/* lp/rehasaku-posture/css/style.scss:1658 */
.hp-src--posture .conclusion_message {
  text-align: center;
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1658 */
  .hp-src--posture .conclusion_message {
    flex-shrink: 0;
    margin-bottom: 120px;
  }
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1658 */
  .hp-src--posture .conclusion_message {
    margin-bottom: 36px;
  }
}
/* lp/rehasaku-posture/css/style.scss:1671 */
.hp-src--posture .conclusion_title {
  text-align: left;
}
/* lp/rehasaku-posture/css/style.scss:1674 */
.hp-src--posture .conclusion_title span {
  border-color: #fff;
  color: inherit;
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1674 */
  .hp-src--posture .conclusion_title span {
    text-align: center;
    display: block;
    line-height: 1.35;
    font-size: 24px;
  }
}
/* lp/rehasaku-posture/css/style.scss:1690 */
.hp-src--posture .conclusion_catch {
  font-weight: bold;
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1690 */
  .hp-src--posture .conclusion_catch {
    line-height: 1.6;
    margin-top: 24px;
    font-size: 28px;
  }
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1690 */
  .hp-src--posture .conclusion_catch {
    margin-top: 8vw;
    font-size: 4.2666666667vw;
  }
}
/* lp/rehasaku-posture/css/style.scss:1705 */
.hp-src--posture .conclusion_text {
  margin-bottom: 20px;
  font-size: 16px;
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1705 */
  .hp-src--posture .conclusion_text {
    line-height: 1.8;
    margin-top: 16px;
  }
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1705 */
  .hp-src--posture .conclusion_text {
    line-height: 1.6;
    margin-top: 32px;
  }
}
/* lp/rehasaku-posture/css/style.scss:1720 */
.hp-src--posture .conclusion_button_group {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
}
@media not all and (min-width: 600px) {
  /* lp/rehasaku-posture/css/style.scss:1720 */
  .hp-src--posture .conclusion_button_group {
    flex-direction: column;
  }
}
/* lp/rehasaku-posture/css/style.scss:1731 */
.hp-src--posture .conclusion_button {
  width: 242px;
  height: 57.951px;
  border-radius: 80px;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1731 */
  .hp-src--posture .conclusion_button {
    margin-top: 24px;
  }
}
/* lp/rehasaku-posture/css/style.scss:1743 */
.hp-src--posture .conclusion_button.link_button--download_orange {
  margin-left: 30px;
}
@media not all and (min-width: 600px) {
  /* lp/rehasaku-posture/css/style.scss:1743 */
  .hp-src--posture .conclusion_button.link_button--download_orange {
    margin-top: 30px;
    margin-left: 0px;
  }
}
/* lp/rehasaku-posture/css/style.scss:1755 */
.hp-src--posture .media {
  position: relative;
  z-index: 1;
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1759 */
  .hp-src--posture .media_inner {
    padding: 150px 0;
    background: #fff;
    max-width: none;
  }
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1759 */
  .hp-src--posture .media_inner {
    padding: 24px 12px;
    max-width: none;
  }
}
/* lp/rehasaku-posture/css/style.scss:1770 */
.hp-src--posture .media_title {
  font-weight: bold;
  text-align: center;
  font-size: 18px;
}
/* lp/rehasaku-posture/css/style.scss:1776 */
.hp-src--posture .media_list {
  display: flex;
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1776 */
  .hp-src--posture .media_list {
    justify-content: center;
    margin: auto;
  }
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1776 */
  .hp-src--posture .media_list {
    width: min(343px, 100%);
    justify-content: space-between;
    flex-wrap: wrap;
    margin: 24px auto 0;
  }
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1792 */
  .hp-src--posture .media_item {
    padding: 0 48px;
  }
  /* lp/rehasaku-posture/css/style.scss:1796 */
  .hp-src--posture .media_item:nth-child(n+2) {
    border-left: solid 1px #ebecf2;
  }
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1792 */
  .hp-src--posture .media_item {
    width: calc((100% - 11px) / 2);
    height: 166px;
    box-shadow: 4px 8px 16px rgba(37, 51, 54, 0.08);
    border-radius: 8px;
  }
  /* lp/rehasaku-posture/css/style.scss:1807 */
  .hp-src--posture .media_item:nth-child(n+3) {
    margin-top: 11px;
  }
}
/* lp/rehasaku-posture/css/style.scss:1813 */
.hp-src--posture .media_link {
  display: block;
  color: #253336;
  text-decoration: none;
}
/* lp/rehasaku-posture/css/style.scss:1819 */
.hp-src--posture .media_media {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: auto;
  width: 56px;
  min-height: 56px;
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1819 */
  .hp-src--posture .media_media {
    min-height: 100px;
  }
}
/* lp/rehasaku-posture/css/style.scss:1832 */
.hp-src--posture .media_img {
  width: 100%;
}
/* lp/rehasaku-posture/css/style.scss:1836 */
.hp-src--posture .media_text {
  line-height: 1.6;
  text-align: center;
  font-size: 14px;
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:1836 */
  .hp-src--posture .media_text {
    margin-top: 12px;
  }
}
/* lp/rehasaku-posture/css/style.scss:2467 */
.hp-src--posture .case {
  position: relative;
  z-index: 1;
}
@media (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:2581 */
  .hp-src--posture .case_inner {
    padding: 128px 0;
    background: #fff;
    max-width: none;
  }
}
@media not all and (min-width: 1200px) {
  /* lp/rehasaku-posture/css/style.scss:2581 */
  .hp-src--posture .case_inner {
    padding: 80px 0;
    max-width: none;
  }
}
/* lp/rehasaku-posture/css/style.scss:2593 */
.hp-src--posture .case_title span {
  border-bottom: 3px solid #007cbe;
}
/* lp/rehasaku-posture/css/style.scss:2740 */
.hp-src--posture .case_title {
  line-height: 1.5;
  font-weight: bold;
  font-size: 24px;
}
/* page rule: the theme lets its feature photos and device images bleed past the screen edges: its own render cuts the scene photos 170-280px on the left at every width from 1200; a bleed past the RIGHT edge scrolls the page */
.hp-src--posture .feature {
  overflow-x: clip;
}
/* page rule: the theme's h2 inherits the band's white */
.hp-src--posture .conclusion_title {
  color: inherit;
}
