@charset "UTF-8";
@media screen and (any-hover: hover) and (max-width: 767px){
  .entry__banner:hover .entry__banner-arrow {
    transform: rotate(-45deg);
  }
}

@media screen and (max-width: 767px){
  .u-desktop {
    display: none;
  }
  .u-mobile {
    display: block;
  }
  a[href^="tel:"] {
    cursor: pointer;
    pointer-events: auto;
  }
  html {
    font-size: 16px;
  }
  .page-header__title--nowrap {
    white-space: nowrap;
  }
  .about-intro {
    padding-bottom: 3.125rem;
  }
  .about-intro__kiyaku {
    margin-right: 0;
    padding-top: 2.0625rem;
  }
  .about-intro__kiyaku-link {
    font-size: 0.875rem;
  }
  .about-intro__lead {
    font-size: 1rem;
    font-weight: 500;
    line-height: 1.65;
    margin-top: 1.875rem;
    text-align: left;
  }
  .about-intro__figure {
    margin-top: 1.25rem;
    max-width: 100%;
    width: 21.375rem;
  }
  .about-intro__cards {
    display: block;
    margin-top: 1.3125rem;
    padding-inline: 1rem;
  }
  .about-intro__card {
    align-items: center;
    display: flex;
    width: 100%;
  }
  .about-intro__card + .about-intro__card {
    margin-left: 0;
    margin-top: 0.6875rem;
  }
  .about-intro__card-icon {
    flex-shrink: 0;
    height: 2.625rem;
    margin-inline: 0;
    width: 2.625rem;
  }
  .about-intro__card-icon--partner {
    height: 3.125rem;
    width: 2.625rem;
  }
  .about-intro__card-body {
    border-radius: 0.3125rem;
    flex: 1;
    margin-left: 0.8125rem;
    padding: 0.625rem;
  }
  .about-intro__card-title {
    font-size: 0.875rem;
  }
  .about-intro__card-text {
    font-size: 0.75rem;
    line-height: 1.4;
    margin-top: 0.1875rem;
  }
  .membership {
    padding-bottom: 3.4375rem;
  }
  .membership .inner {
    padding-inline: 1.0625rem 0.9375rem;
  }
  .membership__card {
    border-radius: 0.625rem;
    padding: 2.5625rem 1.0625rem 2.5rem 0.9375rem;
  }
  .membership__label {
    font-size: 0.875rem;
  }
  .membership__heading {
    margin-top: 0.625rem;
  }
  .membership__text {
    font-size: 0.875rem;
  }
  .button.membership__button {
    margin-top: 1.25rem;
    width: 18rem;
  }
  .about-box {
    border-radius: 0.625rem;
  }
  .about-box__head {
    border-radius: 0.625rem 0.625rem 0 0;
    font-size: 1rem;
    height: 2.75rem;
    line-height: 1.65;
  }
  .purpose {
    margin-top: 1.75rem;
  }
  .purpose__list {
    display: block;
    margin-top: 1.25rem;
    padding-inline: 1.25rem;
  }
  .purpose__item {
    padding: 0;
  }
  .purpose__item + .purpose__item {
    border-top: 1px solid #b8cade;
    margin-top: 1.1875rem;
    padding-top: 1.25rem;
  }
  .purpose__item + .purpose__item::before {
    content: none;
  }
  .purpose__icon {
    height: 2.5rem;
    width: 2.5rem;
  }
  .purpose__title {
    font-size: 0.875rem;
    margin-top: 0.3125rem;
  }
  .purpose__text {
    font-size: 0.75rem;
    margin-top: 0.3125rem;
    text-align: center;
  }
  .purpose__note {
    font-size: 0.875rem;
    margin-top: 2.5rem;
    padding-bottom: 1.75rem;
    padding-inline: 1.5rem;
  }
  .purpose__note br {
    display: none;
  }
  .target {
    margin-top: 1.25rem;
  }
  .target__rows {
    display: block;
    margin-top: 1.25rem;
    padding-bottom: 1.875rem;
    padding-inline: 0.9375rem;
  }
  .target__row + .target__row {
    margin-left: 0;
    margin-top: 1rem;
  }
  .target__label {
    font-size: 0.75rem;
  }
  .target__value {
    font-size: 0.875rem;
    margin-left: 1.1875rem;
  }
  .activities {
    margin-top: 1.25rem;
  }
  .activities__note {
    font-size: 0.875rem;
    margin-top: 1.1875rem;
  }
  .activities__grid {
    display: block;
    margin-top: 1.25rem;
    padding-bottom: 1.8125rem;
    padding-inline: 0.9375rem;
  }
  .activities__item {
    display: block;
  }
  .activities__item + .activities__item {
    margin-top: 1.875rem;
  }
  .activities__num {
    font-size: 0.875rem;
    height: 1.1875rem;
    width: 1.1875rem;
  }
  .activities__title {
    font-size: 1rem;
    line-height: 1.375;
    margin-left: 0.25rem;
  }
  .activities__text {
    line-height: 1.5714285714;
    margin-top: 0.3125rem;
  }
  .activities__photo {
    aspect-ratio: 279/157;
    border-radius: 0.3125rem;
    margin-top: 0.625rem;
  }
  .entry-intro {
    padding-top: 2.25rem;
  }
  .entry-intro__title {
    font-size: 1.25rem;
    line-height: 1.45;
  }
  .entry-intro__text {
    font-size: 0.875rem;
    margin-top: 0.9375rem;
  }
  .entry-compare {
    padding-top: 1.875rem;
  }
  .entry-compare__title {
    font-size: 1rem;
    line-height: 1.65;
  }
  .entry-compare__cards {
    gap: 1.25rem;
    grid-template-columns: 1fr;
    margin-top: 1.25rem;
  }
  .entry-compare__card {
    border-radius: 0.625rem;
    padding: 1.25rem 1rem;
  }
  .entry-compare__card-title {
    font-size: 1.25rem;
    line-height: 1.45;
    padding-bottom: 0.625rem;
  }
  .entry-compare__card-body {
    display: block;
    margin-top: 0.625rem;
  }
  .entry-compare__card-body img {
    height: 3.75rem;
    margin-inline: auto;
  }
  .entry-compare__rows {
    gap: 0.375rem;
    margin-left: auto;
    margin-right: auto;
    margin-top: 0.625rem;
  }
  .entry-compare__row-label {
    font-size: 0.6875rem;
  }
  .entry-compare__row-text {
    font-size: 0.875rem;
  }
  .entry-compare__anchor {
    border-radius: 0.3125rem;
    font-size: 1rem;
    margin-top: 1rem;
    padding: 0.5625rem 2.75rem 0.5625rem 1rem;
    width: 17.875rem;
  }
  .entry-compare__anchor-arrow {
    right: 1rem;
  }
  .button.entry-compare__button {
    border-radius: 0.3125rem;
    margin-top: 1rem;
    padding-block: 0.625rem;
    padding-left: 1rem;
    width: 17.875rem;
  }
  .entry-form {
    padding-bottom: 3.125rem;
    padding-top: 2.5rem;
    scroll-margin-top: 5rem;
  }
  .entry-form__card {
    border-radius: 0.625rem;
    padding: 1.625rem 1rem 3.75rem;
  }
  .entry-form__body {
    margin-top: 1.875rem;
    width: 100%;
  }
  .entry-form__rows {
    gap: 1.25rem;
  }
  .entry-form__row {
    display: block;
  }
  .entry-form__label {
    font-size: 0.875rem;
  }
  .entry-form__required {
    font-size: 0.6875rem;
    margin-left: 0.375rem;
  }
  .entry-form__input {
    font-size: 0.875rem;
    height: 2.5rem;
    margin-top: 0.625rem;
    padding-inline: 1rem;
    width: 100%;
  }
  .entry-form__select-wrap {
    margin-top: 0.625rem;
    width: 100%;
  }
  .entry-form__select-wrap::after {
    right: 1rem;
  }
  .entry-form__select {
    font-size: 0.875rem;
    height: 2.5rem;
    padding-inline: 1rem;
  }
  .entry-survey {
    display: block;
    margin-top: 1.0625rem;
    padding-top: 1.25rem;
  }
  .entry-form__rows + .entry-survey {
    margin-top: 1.625rem;
  }
  .entry-survey__label {
    font-size: 0.875rem;
    padding-left: 0;
    width: auto;
  }
  .entry-survey__label-num {
    display: inline;
  }
  .entry-survey__label-num::after {
    content: "　";
  }
  .entry-survey__label-sub {
    display: inline;
  }
  .entry-survey__options {
    gap: 0.625rem;
    margin-top: 1.25rem;
  }
  .entry-survey__radio,
  .entry-survey__check {
    height: 1.125rem;
    top: 0.1875rem;
    width: 1.125rem;
  }
  .entry-survey__option-text {
    font-size: 0.875rem;
  }
  .entry-survey__option-text::before {
    height: 1.125rem;
    margin-right: 0.625rem;
    margin-top: 0.1875rem;
    width: 1.125rem;
  }
  .entry-survey__radio:checked + .entry-survey__option-text::after {
    height: 0.625rem;
    left: 0.25rem;
    top: 0.4375rem;
    width: 0.625rem;
  }
  .entry-survey__check:checked + .entry-survey__option-text::after {
    border-bottom-width: 0.125rem;
    border-left-width: 0.125rem;
    height: 0.375rem;
    left: 0.25rem;
    top: 0.4375rem;
    width: 0.625rem;
  }
  .entry-survey--free .entry-survey__label {
    display: block;
  }
  .entry-form__textarea {
    font-size: 0.875rem;
    height: 8.75rem;
    margin-top: 0.625rem;
    padding: 0.625rem;
    width: 100%;
  }
  .entry-form__buttons {
    align-items: center;
    flex-direction: column-reverse;
    margin-top: 2.375rem;
  }
  .entry-form__reset {
    height: 3.5625rem;
    width: 18rem;
  }
  .entry-form__submit {
    font-size: 1rem;
    height: 3.5625rem;
    width: 18rem;
  }
  .entry-form__submit img {
    display: none;
  }
  .article {
    padding-bottom: 3.125rem;
    padding-top: 0.375rem;
  }
  .article__card {
    border-radius: 0.625rem;
    padding: 1.875rem 1rem 2.5rem;
  }
  .article__date {
    font-size: 0.875rem;
  }
  .article__body {
    font-size: 0.875rem;
  }
  .article__body img {
    width: 100%;
  }
  .article__body > * + * {
    margin-top: 1.875rem;
  }
  .article__body > p + p {
    margin-top: 1rem;
  }
  .article__body > :is(h1, h2, h3, h4, h5) + * {
    margin-top: 1rem;
  }
  .article__body > :is(h1, h2) + * {
    margin-top: 1.25rem;
  }
  .article__body > h6 + * {
    margin-top: 1rem;
  }
  .article__body > :is(h1, h2, h3, h4) {
    margin-top: 2.5rem;
  }
  .article__body > h6 {
    margin-top: 1.875rem;
  }
  .article__body h1,
  .article__body h2 {
    font-size: 1.25rem;
    line-height: 1.45;
  }
  .article__body h3 {
    font-size: 1.125rem;
  }
  .article__body h3::before {
    height: 100%;
    top: 0;
  }
  .article__body h4 {
    border-radius: 0.125rem;
    font-size: 1rem;
    line-height: 1.4;
  }
  .article__body h4::before {
    height: 2.1875rem;
  }
  .article__body h5 {
    font-size: 0.875rem;
    line-height: 1.4;
    padding-bottom: 0.625rem;
    padding-left: 0;
  }
  .article__body h6 {
    font-size: 0.875rem;
  }
  .case-detail {
    padding-bottom: 3.125rem;
  }
  .case-detail__card {
    border-radius: 0.625rem;
    padding: 1.875rem 1rem 2.5rem;
  }
  .case-detail__catch {
    font-size: 1.25rem;
    line-height: 1.45;
  }
  .case-detail__summary {
    margin-top: 1.25rem;
    padding: 1rem;
  }
  .case-detail__company {
    display: block;
  }
  .case-detail__name {
    font-size: 1.125rem;
  }
  .case-detail__address {
    font-size: 0.75rem;
    line-height: 1.6;
    margin-left: 0;
    margin-top: 0.625rem;
  }
  .case-detail__summary-text {
    font-size: 0.875rem;
  }
  .case-detail__data > div {
    display: block;
  }
  .case-detail__data dt {
    min-width: 6.0625rem;
    padding-inline: 0.625rem;
    width: -moz-fit-content;
    width: fit-content;
  }
  .case-detail__data dd {
    font-size: 0.75rem;
    margin-left: 0;
    margin-top: 0.5rem;
    padding-left: 0.625rem;
  }
  .case-detail__body h3 {
    font-size: 1.125rem;
    margin-top: 2.5rem;
  }
  .case-detail__body h4 {
    font-size: 0.9375rem;
    margin-top: 1.5rem;
  }
  .case-detail__body p,
  .case-detail__body ul,
  .case-detail__body ol {
    font-size: 0.875rem;
    margin-top: 1rem;
  }
  .case-detail__body img {
    width: 100%;
  }
  .case-detail__body div:has(> img) {
    flex-direction: column;
    gap: 1.25rem;
  }
  .case-detail__back {
    margin-top: 1.875rem;
    width: 18rem;
  }
  .case-related {
    padding-bottom: 3.125rem;
    padding-top: 3.125rem;
  }
  .case-related__cards {
    gap: 1.25rem;
    grid-template-columns: 1fr;
    margin-top: 1.25rem;
  }
  .case-related__banner {
    margin-top: 3.125rem;
  }
  .case-search {
    padding-bottom: 1.875rem;
    padding-top: 0;
  }
  .case-search__box {
    border-radius: 0.625rem;
    padding: 1.25rem 1rem 1.875rem;
  }
  .case-search__label {
    font-size: 1rem;
  }
  .case-search__label-note {
    font-size: 0.75rem;
  }
  .case-search__tags {
    gap: 0.5rem 0.375rem;
    margin-top: 0.875rem;
  }
  .case-search__tag {
    font-size: 0.75rem;
  }
  .case-search__actions {
    justify-content: center;
    margin-top: 1.25rem;
  }
  .case-results {
    padding-bottom: 0;
    padding-top: 1.25rem;
    scroll-margin-top: 3.75rem;
  }
  .case-results__heading {
    font-size: 1.25rem;
    line-height: 1.45;
  }
  .case-results__empty {
    font-size: 0.875rem;
    margin-top: 1.25rem;
  }
  .case-results__cards {
    gap: 1.25rem;
    grid-template-columns: 1fr;
    margin-top: 1.25rem;
  }
  .consult-tag {
    font-size: 0.875rem;
  }
  .consult-tag + .heading {
    margin-top: 0.625rem;
  }
  .consult-intro .consult-intro__button,
  .private .private__button,
  .contact-cta .contact-cta__button {
    width: 18rem;
  }
  .br-pc {
    display: none;
  }
  .br-sp {
    display: inline;
  }
  .consult-intro {
    padding-bottom: 1.875rem;
    padding-top: 1.875rem;
  }
  .consult-intro__row {
    display: block;
  }
  .consult-intro__text {
    width: 100%;
  }
  .consult-intro__catch {
    aspect-ratio: 478/67;
    height: auto;
    max-width: 22.5rem;
    width: 100%;
  }
  .consult-intro__catch-bg {
    width: calc(100% - 0.625rem);
  }
  .consult-intro__catch-text {
    font-size: 0.875rem;
    padding-left: 0px;
    padding-right: 0.625rem;
    padding-top: 0.4375rem;
  }
  .consult-intro__heading {
    font-size: 1.25rem;
    margin-top: 1rem;
  }
  .consult-intro__lead {
    font-size: 0.875rem;
    margin-top: 1.25rem;
  }
  .consult-intro__button {
    margin-top: 1.5rem;
  }
  .consult-intro__note {
    font-size: 0.875rem;
    line-height: 1.6;
    margin-top: 1.25rem;
    padding: 0.5rem;
  }
  .consult-intro__photo {
    border-radius: 0.625rem;
    margin: 1.25rem auto 0;
    max-width: 19.4375rem;
    width: 100%;
  }
  .consult-intro__photo img {
    aspect-ratio: 311/175;
  }
  .anchor-nav__list {
    gap: 0.5rem;
  }
  .anchor-nav__item {
    width: calc(50% - 0.3125rem);
  }
  .anchor-nav__link {
    border-radius: 0.25rem;
    font-size: 0.875rem;
    height: 2.625rem;
    padding-inline: 0.5rem;
  }
  .consult-body__card > [id] {
    scroll-margin-top: 5rem;
  }
  .consult-body {
    padding-bottom: 2.5rem;
    padding-top: 1.875rem;
  }
  .consult-body__card {
    border-radius: 0.625rem;
    padding: 2.5rem 1rem;
  }
  .worries__lead {
    font-size: 0.875rem;
    margin-top: 0.625rem;
  }
  .worries__list {
    gap: 0.625rem;
    grid-template-columns: 1fr;
    margin-top: 1.875rem;
  }
  .worries__item {
    aspect-ratio: auto;
    background-color: #f8fafe;
    border: 1px solid #919bbf;
    border-radius: 1.25rem;
    padding: 1.1875rem 1rem;
  }
  .worries__bg {
    display: none;
  }
  .worries__title {
    font-size: 1rem;
  }
  .worries__text {
    font-size: 0.75rem;
  }
  .private {
    margin-top: 1.875rem;
  }
  .private__box {
    border-radius: 1rem;
    padding: 2.5rem 0.625rem;
  }
  .private__lead {
    font-size: 0.875rem;
    margin-top: 0.625rem;
  }
  .private__list {
    gap: 0.625rem;
    grid-template-columns: 1fr;
    margin-top: 1.25rem;
  }
  .private__item {
    border-radius: 0.75rem;
    padding: 0.875rem 0.625rem 0.875rem 2.25rem;
    position: relative;
    text-align: left;
  }
  .private__number {
    font-size: 1.75rem;
    left: 0.875rem;
    position: absolute;
    top: 0.8125rem;
  }
  .private__item-title {
    font-size: 1rem;
  }
  .private__item-text {
    font-size: 0.875rem;
  }
  .private__button {
    margin-top: 1.25rem;
  }
  .lounge {
    margin-top: 1.25rem;
  }
  .lounge__box {
    border-radius: 1rem;
    padding: 2.5rem 0.625rem;
  }
  .lounge__lead {
    font-size: 0.875rem;
    margin-top: 0.625rem;
  }
  .lounge__features {
    gap: 0.625rem;
    grid-template-columns: 1fr;
    margin-top: 1.25rem;
  }
  .lounge__feature {
    border-radius: 0.75rem;
    font-size: 1rem;
    height: auto;
    line-height: 1.65;
    padding-block: 0.875rem;
  }
  .lounge__buttons {
    align-items: center;
    flex-direction: column;
    gap: 0.75rem;
    margin-top: 1.25rem;
  }
  .lounge__pdf-button {
    border-radius: 0.375rem;
    font-size: 1rem;
    width: 18rem;
  }
  .lounge__note {
    font-size: 0.875rem;
    margin-top: 1.25rem;
  }
  .flow {
    margin-top: 2.5rem;
  }
  .flow__head {
    max-width: none;
  }
  .flow__lead {
    font-size: 0.875rem;
    margin-top: 0.625rem;
  }
  .flow__illust {
    display: block;
    height: 4.4375rem;
    margin: 1.25rem auto 0;
    position: static;
    width: 6.0625rem;
  }
  .flow__steps {
    gap: 1.0625rem;
    grid-template-columns: 1fr 7rem;
    margin-top: 0.625rem;
  }
  .flow__step {
    flex-wrap: wrap;
    padding: 0.5rem 0.625rem;
  }
  .flow__step:not(.flow__step--wide)::after {
    height: 0.625rem;
    top: calc(100% + 0.3125rem);
    width: 1rem;
  }
  .flow__step:not(.flow__step--wide)::before {
    height: 1rem;
    right: -1rem;
    width: 0.625rem;
  }
  .flow__step-badge {
    font-size: 0.75rem;
  }
  .flow__step-title {
    font-size: 1rem;
    margin-left: 0;
    margin-top: 0.3125rem;
    width: 100%;
  }
  .flow__step-text {
    flex: none;
    font-size: 0.875rem;
    line-height: 1.45;
    margin-left: 0;
    margin-top: 0.3125rem;
    width: 100%;
  }
  .flow__partner {
    padding-inline: 0.625rem;
  }
  .flow__partner-text {
    font-size: 0.875rem;
  }
  .flow__note {
    font-size: 0.75rem;
    margin-top: 0.75rem;
  }
  .support {
    margin-top: 3.75rem;
  }
  .support__list {
    gap: 0.625rem;
    grid-template-columns: 1fr;
    margin-top: 1.875rem;
  }
  .support__item {
    padding: 0.9375rem;
  }
  .support__label {
    font-size: 0.75rem;
    width: 100%;
  }
  .support__body {
    flex-direction: row;
    gap: 0.625rem;
    margin-top: 0.625rem;
    width: 100%;
  }
  .support__texts {
    text-align: left;
  }
  .support__icon {
    flex-shrink: 0;
    height: 2.8125rem;
    width: 2.8125rem;
  }
  .support__title {
    font-size: 1rem;
    margin-top: 0;
  }
  .support__text {
    font-size: 0.75rem;
    margin-top: 0.3125rem;
  }
  .contact-cta {
    margin-top: 3.125rem;
  }
  .contact-cta__lead {
    font-size: 0.875rem;
    margin-top: 0.625rem;
  }
  .contact-cta__box {
    border-radius: 0.75rem;
    margin-top: 1.875rem;
    padding: 1.875rem 0.625rem;
  }
  .contact-cta__title {
    font-size: 1.25rem;
  }
  .contact-cta__manage {
    font-size: 0.875rem;
  }
  .contact-cta__org {
    font-size: 1rem;
    margin-top: 0.3125rem;
  }
  .contact-cta__address {
    font-size: 0.875rem;
    margin-top: 0.3125rem;
  }
  .contact-cta__button {
    margin-top: 1.25rem;
  }
  .page-header.page-header--label {
    padding-bottom: 1.875rem;
    padding-top: 1.5rem;
  }
  .page-header__label {
    font-size: 0.875rem;
    font-weight: 700;
    line-height: 1.35;
  }
  .page-header.page-header--label .page-header__title {
    margin-top: 0.3125rem;
  }
  .event-archive {
    padding-bottom: 3.125rem;
  }
  .event-tab {
    gap: 0.3125rem;
  }
  .event-tab__item {
    border-radius: 0.625rem 0.625rem 0 0;
    font-size: 0.875rem;
    height: 3.125rem;
    width: 10.3125rem;
  }
  .event-archive__panel {
    border-radius: 0 0 0.625rem 0.625rem;
    padding: 1.875rem 1rem 2.5rem;
  }
  .event-archive__lead {
    font-size: 0.875rem;
  }
  .event-filter {
    margin-top: 1.25rem;
    padding: 0.625rem;
  }
  .event-filter__list {
    gap: 0.375rem;
    justify-content: flex-start;
  }
  .event-filter__tag {
    font-size: 0.875rem;
    padding: 0.125rem 0.9375rem;
  }
  .event-archive__rows {
    margin-top: 1.875rem;
  }
  .event-archive .event__row {
    padding-bottom: 0.9375rem;
  }
  .event-archive .event__date {
    font-weight: 400;
    line-height: 1.65;
  }
  .event-archive .event__meta-label {
    height: 1.3125rem;
  }
  .event-archive .event__tag {
    font-size: 0.6875rem;
    padding-inline: 0.5625rem;
  }
  .event-archive .event__tag--fill {
    padding-inline: 0.625rem;
  }
  .event-archive .pagination {
    margin-top: 1.875rem;
  }
  .page-header.page-header--member {
    padding-bottom: 0;
    padding-top: 3rem;
  }
  .member {
    padding-bottom: 3.125rem;
    padding-top: 1.875rem;
  }
  .member__tabs {
    gap: 0.3125rem;
  }
  .member__tab {
    border-radius: 0.625rem 0.625rem 0 0;
    font-size: 0.875rem;
    height: 3.125rem;
    width: 10.3125rem;
  }
  .member__card {
    border-radius: 0 0 0.625rem 0.625rem;
    padding: 1.875rem 1rem 1.875rem;
  }
  .member__count {
    font-size: 0.875rem;
  }
  .member-nav {
    display: block;
    margin-top: 3.5rem;
    padding: 0.625rem 0.625rem 1.6875rem;
  }
  .member-nav__label {
    font-size: 0.875rem;
  }
  .member-nav__list {
    gap: 0.375rem;
    margin-left: 0;
    margin-top: 0.625rem;
  }
  .member-nav__link {
    font-size: 0.875rem;
    height: 1.8125rem;
    width: 3.75rem;
  }
  .member-group {
    margin-top: 2.5rem;
    scroll-margin-top: 5rem;
  }
  .member-nav + .member-group {
    margin-top: 1.875rem;
  }
  .member-group__title {
    font-size: 1.125rem;
    font-weight: 700;
    padding-left: 0.75rem;
  }
  .member-group__title::before {
    height: 1.5625rem;
    width: 0.125rem;
  }
  .member-group__list {
    grid-template-columns: 1fr;
    margin-top: 1.25rem;
  }
  .member-group__item {
    border-right: none;
    font-size: 0.875rem;
    min-height: 2.6875rem;
    padding-block: 0.25rem;
    padding-inline: 0.625rem;
  }
  .member-group__item:nth-last-child(-n+3) {
    border-bottom: none;
  }
  .member-group__item:last-child {
    border-bottom: 1px solid #d7dde3;
  }
  .member-group__item:nth-child(6n+1),
  .member-group__item:nth-child(6n+2),
  .member-group__item:nth-child(6n+3) {
    background-color: #fff;
  }
  .member-group__item:nth-child(odd) {
    background-color: #f9fbfe;
  }
  .system-intro {
    padding-inline: 1rem;
    padding-top: 1.875rem;
  }
  .system-intro__heading {
    font-size: 1.25rem;
    line-height: 1.45;
  }
  .system-intro__text {
    font-size: 0.875rem;
    margin-top: 1.25rem;
  }
  .audience {
    padding-bottom: 1.875rem;
    padding-top: 1.875rem;
  }
  .audience__list {
    gap: 1.25rem;
    grid-template-columns: 1fr;
  }
  .audience__link {
    border-radius: 0.625rem;
    gap: 0.75rem;
    padding: 0.6875rem 0.8125rem 0.6875rem 0.625rem;
  }
  .audience__icon {
    height: 4.25rem;
    width: 4.25rem;
  }
  .audience__item:nth-child(2) .audience__icon {
    height: 4.4375rem;
    width: 3.75rem;
  }
  .audience__title {
    font-size: 1.125rem;
  }
  .audience__text {
    font-size: 0.75rem;
    margin-top: 0.375rem;
  }
  .audience__text.u-desktop {
    display: none;
  }
  .audience__text.u-mobile {
    display: block;
  }
  .audience__arrow {
    height: 1.1875rem;
    top: 0;
    width: 1.1875rem;
  }
  .audience__arrow::before {
    left: 0.4375rem;
    width: 0.3125rem;
  }
  .audience__arrow::after {
    height: 0.25rem;
    left: 0.5rem;
    width: 0.25rem;
  }
  .for-seekers {
    padding-bottom: 1.25rem;
  }
  .for-seekers,
  .for-partners {
    scroll-margin-top: 5rem;
  }
  .for-seekers__card {
    border-radius: 0.625rem;
    padding: 2.5rem 1rem 1.875rem;
  }
  .for-seekers__icon {
    height: 2.6875rem;
    width: 2.6875rem;
  }
  .for-seekers__cta {
    align-items: flex-start;
    border-radius: 0.625rem;
    flex-direction: column;
    gap: 1.25rem;
    margin-top: 1.25rem;
    padding: 1.25rem 0.75rem;
  }
  .for-seekers__cta + .for-seekers__cta {
    margin-top: 0.625rem;
  }
  .for-seekers__cta-text {
    font-size: 0.875rem;
  }
  .for-seekers__cta-button {
    align-self: center;
    height: 3.625rem;
    width: 18rem !important;
  }
  .for-partners {
    padding-bottom: 2.5rem;
  }
  .for-partners__card {
    border-radius: 0.625rem;
    padding: 2.5rem 1rem;
  }
  .for-partners__head {
    gap: 0.5rem;
  }
  .for-partners__icon {
    height: 2.6875rem;
    width: 2.25rem;
  }
  .roles,
  .requirements,
  .reg-flow,
  .period,
  .application {
    margin-top: 1.875rem;
  }
  .subheading {
    font-size: 1.125rem;
  }
  .subheading:not(:first-child) {
    margin-top: 1.875rem;
  }
  .roles__lead {
    font-size: 0.875rem;
    margin-top: 0.625rem;
  }
  .roles__list {
    gap: 0.625rem;
    grid-template-columns: 1fr;
    margin-top: 1.125rem;
  }
  .roles__item {
    border-radius: 0.3125rem;
  }
  .roles__item-head {
    font-size: 0.875rem;
    min-height: 3rem;
  }
  .roles__item-body {
    font-size: 0.875rem;
    min-height: 3rem;
  }
  .requirements__text {
    font-size: 0.875rem;
    margin-top: 0.625rem;
  }
  .requirements__list {
    margin-top: 1.4375rem;
  }
  .requirements__list li {
    font-size: 0.875rem;
  }
  .reg-flow__steps {
    align-items: stretch;
    flex-direction: column;
    gap: 0.3125rem;
    margin-top: 1.25rem;
  }
  .reg-flow__step {
    flex-direction: row;
    gap: 0.75rem;
    justify-content: flex-start;
    min-height: 4.25rem;
    padding: 0.875rem 1rem;
    width: 100%;
  }
  .reg-flow__icon {
    height: 2.5rem;
    width: 2.5rem;
  }
  .reg-flow__step-text {
    font-size: 0.9375rem;
    margin-top: 0;
    text-align: left;
  }
  .reg-flow__step-small {
    font-size: 0.75rem;
  }
  .reg-flow__arrow {
    align-self: center;
    background-image: url("/assets/images/partner_outline/reg-flow_arrow-down.svg");
    height: 0.75rem;
    width: 1.125rem;
  }
  .reg-flow__lead {
    font-size: 0.875rem;
  }
  .reg-flow__status {
    margin-top: 1.25rem;
    padding: 0.625rem;
  }
  .reg-flow__status-title {
    font-size: 1rem;
  }
  .reg-flow__status-inner {
    margin-top: 0.3125rem;
  }
  .reg-flow__status-text {
    font-size: 0.875rem;
  }
  .reg-flow__status-note {
    font-size: 0.75rem;
  }
  .reg-flow__note {
    font-size: 0.75rem;
  }
  .period__value {
    font-size: 0.875rem;
    margin-top: 0.9375rem;
  }
  .application__link {
    font-size: 0.875rem;
    margin-top: 0.625rem;
  }
  .application__link + .application__link {
    margin-top: 0.625rem;
  }
  .application__button {
    font-size: 1rem;
    margin-inline: auto;
    margin-top: 1.25rem;
    width: 18rem;
  }
  .application__note {
    font-size: 0.75rem;
  }
  .application__desc {
    font-size: 0.875rem;
    margin-top: 0.625rem;
  }
  .partner-detail {
    padding-bottom: 3.125rem;
  }
  .partner-detail__card {
    border-radius: 0.625rem;
    padding: 1.5rem 1rem 1.125rem;
  }
  .partner-detail__logo {
    height: 2.5625rem;
    width: 4.4375rem;
  }
  .partner-detail__logo-row .partner-badges {
    margin-top: 0;
  }
  .partner-detail__name {
    font-size: 1.25rem;
    line-height: 1.45;
    margin-top: 0.375rem;
  }
  .partner-detail__type {
    font-size: 0.75rem;
    margin-top: 0;
  }
  .partner-detail__address {
    display: block;
    margin-top: 0.5rem;
  }
  .partner-detail__address-row {
    font-size: 0.875rem;
  }
  .partner-detail__address-label {
    font-size: 0.75rem;
  }
  .partner-detail__divider {
    margin-top: 1.875rem;
  }
  .partner-detail__meta {
    margin-top: 1.25rem;
  }
  .partner-detail__meta-row {
    display: block;
    margin-top: 1rem;
  }
  .partner-detail__meta-row--fee {
    margin-top: 1rem;
  }
  .partner-detail__meta-row--fee .partner-detail__meta-label {
    width: auto;
  }
  .partner-detail__meta-label {
    font-size: 0.75rem;
    width: auto;
  }
  .partner-detail__tags {
    gap: 0.25rem;
    margin-top: 0.5rem;
  }
  .partner-detail__fee {
    margin-top: 0.5rem;
  }
  .partner-detail__field {
    margin-top: 1.25rem;
  }
  .partner-detail__field--next {
    margin-top: 1.875rem;
  }
  .partner-detail__subheading {
    font-size: 1rem;
  }
  .partner-detail__divider + .partner-detail__subheading {
    margin-top: 1.875rem;
  }
  .partner-detail__field-dt {
    font-size: 0.875rem;
    margin-top: 0.375rem;
    padding: 0.5rem 0.625rem;
  }
  .partner-detail__field-list {
    margin-top: 0.625rem;
  }
  .partner-detail__field-list li {
    margin-top: 0.625rem;
  }
  .partner-detail__field-list a::before {
    top: 0.5rem;
  }
  .partner-detail__field-list a {
    font-size: 0.75rem;
  }
  .partner-detail__results li {
    font-size: 0.875rem;
  }
  .partner-detail__info {
    margin-top: 1.875rem;
    padding: 1.125rem 0 1.875rem;
  }
  .partner-detail__info-title {
    padding-inline: 0.8125rem;
  }
  .partner-detail__info-list {
    grid-template-columns: 1fr;
    margin-top: 0.625rem;
    padding-inline: 0.8125rem;
    row-gap: 0.625rem;
  }
  .partner-detail__info-row dd {
    font-size: 0.875rem;
  }
  .partner-detail__info-link {
    font-size: 0.875rem;
    margin-left: 0.8125rem;
  }
  .partner-detail__contact-btn {
    font-size: 0.875rem;
    margin-top: 1.25rem;
    padding: 0.4375rem 1rem;
    width: 15.75rem;
  }
  .related {
    padding-bottom: 2.5rem;
    padding-top: 3.125rem;
  }
  .related__cards {
    gap: 1.25rem;
    grid-template-columns: 1fr;
    margin-top: 1.875rem;
  }
  .related__button {
    margin-top: 1.875rem;
    width: 18rem !important;
  }
  .breadcrumb {
    display: none;
  }
  .page-header {
    margin-top: 3.75rem;
    padding-bottom: 1.5rem;
    padding-top: 1.5rem;
  }
  .page-header::before {
    background-image: url("/assets/images/common/under-texture-sand-sp.png");
    height: 11.5625rem;
    opacity: 1;
    width: 100%;
  }
  .page-header .inner {
    display: block;
  }
  .page-header__title {
    font-size: 1.625rem;
    line-height: 1.35;
    margin-left: 0;
  }
  .page-header--center .inner {
    justify-content: flex-start;
  }
  .page-header--center .page-header__title {
    text-align: left;
  }
  .page-header__lead {
    margin-top: 0.875rem;
    max-width: none;
  }
  .partner-search {
    padding-bottom: 1rem;
  }
  .partner-search__box {
    border-radius: 0.625rem;
    padding: 1.25rem 1rem 1.875rem;
    transition: padding-bottom 0.4s ease;
  }
  .partner-search__box.is-open {
    padding-bottom: 2.5rem;
  }
  .partner-search__label {
    font-size: 1rem;
  }
  .partner-search__tags {
    gap: 0.5rem;
    margin-top: 0.875rem;
  }
  .partner-search__tag {
    font-size: 0.75rem;
    padding: 0.1875rem 0.625rem;
  }
  .partner-search__actions {
    justify-content: center;
    margin-top: 1.25rem;
  }
  .is-open .partner-search__submit {
    display: none;
  }
  .partner-search__fields {
    margin-top: 1.25rem;
    padding: 1.875rem 1rem;
  }
  .partner-search__field {
    display: block;
    margin-top: 1.5rem;
  }
  .partner-search__field-label {
    font-size: 0.875rem;
    width: auto;
  }
  .partner-search__detail {
    margin-top: 0.875rem;
    max-width: none;
    padding: 0.625rem;
  }
  .partner-search__extra-submit {
    margin-top: 1.875rem;
  }
  .freeword {
    padding-bottom: 1.875rem;
  }
  .freeword__box {
    border-radius: 0.625rem;
    flex-wrap: wrap;
    gap: 0.9375rem 0.5rem;
    height: auto;
    justify-content: flex-start;
    padding: 1.25rem 1rem;
  }
  .freeword__label {
    font-size: 1rem;
    width: 100%;
  }
  .freeword__input {
    width: calc(100% - 6.875rem);
  }
  .freeword__submit {
    padding: 0.5rem 1rem;
  }
  .results {
    padding-bottom: 3.75rem;
    padding-top: 1.25rem;
    scroll-margin-top: 3.75rem;
  }
  .results__heading {
    font-size: 1.25rem;
    line-height: 1.45;
  }
  .results__empty {
    font-size: 0.875rem;
    margin-top: 1.25rem;
  }
  .results__cards {
    gap: 1.25rem;
    grid-template-columns: 1fr;
    margin-top: 1.25rem;
  }
  .fv {
    background-image: none;
  }
  .fv__container {
    padding-bottom: 2.9375rem;
    padding-top: 4.75rem;
  }
  .fv__catch {
    font-size: 1.125rem;
    font-weight: 700;
    line-height: 1.65;
    margin-left: 1rem;
  }
  .fv__title {
    margin-left: 1rem;
    margin-top: 0;
  }
  .fv__title-img--toyama {
    height: 1.75rem;
    margin-top: 0.625rem;
  }
  .fv__title-img--consortium {
    height: 1.75rem;
    margin-top: 1.1875rem;
  }
  .fv__image {
    clip-path: inset(0 0 -3.3125rem 0);
    height: 92.3076923077vw;
    left: auto;
    margin-inline: 0;
    margin-top: -0.1875rem;
    position: relative;
    top: auto;
    width: 100%;
  }
  .fv__image .fv__video {
    aspect-ratio: auto;
    height: 92.3076923077vw;
    left: 50%;
    position: fixed;
    top: 10.625rem;
    transform: translateX(-50%);
    width: 100vw;
    -o-object-fit: contain;
       object-fit: contain;
  }
  .fv__texture {
    bottom: 0;
    display: block;
    height: 24.25rem;
    position: absolute;
    right: -0.0625rem;
    width: 16.6875rem;
    z-index: 10;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .fv__banners {
    flex-direction: column;
    gap: 0.5rem;
    margin-inline: 1rem;
    margin-top: 3.3125rem;
  }
  .fv__banner {
    padding: 0.625rem 3.125rem 0.625rem 1rem;
    width: 100%;
  }
  .fv__banner-icon {
    width: 1.8125rem;
  }
  .fv__banner-title {
    font-size: 0.9375rem;
  }
  .fv__banner-text {
    margin-top: 0;
  }
  .fv__banner-arrow {
    height: 1.1875rem;
    right: 1rem;
    width: 1.1875rem;
  }
  .fv__banner-arrow::before {
    left: 0.4375rem;
    width: 0.3125rem;
  }
  .fv__banner-arrow::after {
    height: 0.25rem;
    left: 0.4375rem;
    width: 0.25rem;
  }
  .fv__navi {
    filter: none;
    height: auto;
    right: 0;
    top: 24.25rem;
    width: 8rem;
  }
  .fv__navi-bubble {
    display: none;
  }
  .fv__navi-man {
    display: none;
  }
  .fv__navi-btn {
    display: none;
  }
  .fv__navi-sp {
    animation: fv-navi-float 3.2s linear infinite;
    display: block;
  }
  .fv__navi-sp:focus-visible {
    outline: 0.125rem solid #354b91;
    outline-offset: 0.125rem;
  }
  .case {
    padding-bottom: 3.75rem;
  }
  .case__intro {
    padding-bottom: 3.125rem;
    padding-top: 3.125rem;
  }
  .case__intro::after {
    right: 0.9375rem;
  }
  .case__intro-inner {
    margin-inline: 1rem auto;
    max-width: 20rem;
  }
  .case__lead {
    font-size: 0.875rem;
    margin-top: 1rem;
  }
  .case__row--r1 {
    height: 41.75rem;
  }
  .case__row--r2 {
    height: 42.375rem;
  }
  .case__row--r3 {
    height: 43.5625rem;
  }
  .case__row--r1 .case__band, .case__row--r3 .case__band {
    left: 1rem;
    right: 1rem;
  }
  .case__row--r2 .case__band {
    left: 1rem;
    right: 1rem;
  }
  .case__strip {
    width: 1rem;
  }
  .case__card {
    margin-inline: auto;
    margin-top: 1.875rem;
    padding-top: 2.8125rem;
    width: 18rem;
  }
  .case__row--r2 .case__card, .case__row--r3 .case__card {
    margin-inline: auto;
    margin-top: 1.875rem;
  }
  .case__card-label {
    font-size: 0.875rem;
    left: 50%;
    min-height: 2.3125rem;
    padding-top: 0.1875rem;
    transform: translateX(-50%);
    width: 13.75rem;
  }
  .case__card-body {
    background: linear-gradient(#354b91, #3754b3);
    flex-direction: column;
    gap: 0;
    overflow: hidden;
    padding: 0;
    padding: 0.625rem;
  }
  .case__card-main {
    width: 100%;
  }
  .case__card-problem {
    border-radius: 0.625rem 0.625rem 0 0;
    padding: 0.6875rem 0.5rem 0.5625rem;
  }
  .case__card-problem-text {
    font-size: 0.875rem;
    font-weight: 700;
    line-height: 1.65;
    margin-top: 0.125rem;
    padding-inline: 0.8125rem;
  }
  .case__card-problem-text::before, .case__card-problem-text::after {
    height: 1.5625rem;
    top: 1.25rem;
    width: 0.8125rem;
  }
  .case__card-after {
    border-radius: 0 0 0.625rem 0.625rem;
    height: 1.875rem;
  }
  .case__card-result {
    font-size: 1rem;
    margin-top: 1.25rem;
    padding-inline: 0.75rem;
  }
  .case__card-media {
    padding: 0.625rem 0.875rem 0.875rem;
    width: 100%;
  }
  .case__row--r3 .case__card-media {
    padding-bottom: 0;
  }
  .case__card-company {
    font-size: 0.875rem;
    margin-top: 0.375rem;
  }
  .case__card-desc {
    font-size: 0.75rem;
  }
  .case__illust--r1 {
    left: 50%;
    right: auto;
    transform: translateX(-50%);
  }
  .case__illust--r1 img {
    width: 6.875rem;
  }
  .case__illust--r2 {
    left: 50%;
    transform: translateX(-50%);
  }
  .case__illust--r2 img {
    width: 11.6875rem;
  }
  .case__illust--r3 {
    left: 50%;
    transform: translateX(-50%);
  }
  .case__illust--r3 img {
    width: 7.5rem;
  }
  .about__inner {
    display: block;
    padding: 1.875rem 0;
  }
  .about__content {
    margin-inline: 1.125rem;
    width: auto;
  }
  .about__text {
    font-size: 0.875rem;
    margin-top: 0.5rem;
  }
  .about__button {
    margin-inline: auto;
  }
  .about__illust {
    margin-top: 1.875rem;
  }
  .about__illust img {
    margin-inline: auto;
    width: 13.375rem;
  }
  .entry {
    padding-top: 1.875rem;
  }
  .entry__banners {
    flex-direction: column;
    gap: 0.9375rem;
  }
  .entry__banner {
    border-radius: 0.625rem;
    height: 7.5625rem;
    margin-inline: auto;
    max-width: 21.4375rem;
    padding: 1.5rem 1.875rem 0 5.625rem;
    width: 100%;
  }
  .entry__banner--partner {
    padding-top: 1.0625rem;
  }
  .entry__banner--member .entry__banner-icon {
    left: 0.3125rem;
    top: 2.6875rem;
    width: 4.875rem;
  }
  .entry__banner--partner .entry__banner-icon {
    left: 0.5625rem;
    top: 2.4375rem;
    width: 4.3125rem;
  }
  .entry__banner-title {
    font-size: 1.125rem;
  }
  .entry__banner-text {
    font-size: 0.75rem;
    line-height: 1.6;
    margin-top: 0.3125rem;
  }
  .entry__banner-arrow {
    height: 1.1875rem;
    right: 0.9375rem;
    top: 3.1875rem;
    transform: none;
    width: 1.1875rem;
  }
  .entry__banner-arrow::before {
    left: 0.4375rem;
    width: 0.3125rem;
  }
  .entry__banner-arrow::after {
    height: 0.25rem;
    left: 0.5rem;
    width: 0.25rem;
  }
  .consult {
    padding-bottom: 3.125rem;
    padding-top: 1.875rem;
  }
  .consult__banner {
    border-radius: 0.625rem;
    flex-direction: column;
    margin-inline: auto;
    max-width: 21.4375rem;
    min-height: 13.1875rem;
    padding: 2rem 1rem 0 6.125rem;
  }
  .consult__illust {
    left: 1.25rem;
    top: 1rem;
    width: 4.125rem;
  }
  .consult__heading-sub {
    font-size: 0.75rem;
    line-height: 1.6;
  }
  .consult__heading-main {
    font-size: 1.25rem;
    font-weight: 500;
    line-height: 1.45;
    margin-top: 0.0625rem;
  }
  .consult__text {
    font-size: 0.75rem;
    margin-left: -4.25rem;
    margin-top: 1.5rem;
    padding-top: 0;
  }
  .consult__arrow {
    bottom: 1.25rem;
    right: 1.25rem;
    top: auto;
  }
  .search__illust {
    left: auto;
    margin-left: 0;
    right: 1.0625rem;
    top: -0.875rem;
    width: 8.875rem;
  }
  .search__inner {
    margin-inline: 1rem;
    max-width: none;
    padding-bottom: 3.125rem;
    padding-top: 3.125rem;
  }
  .search__sub {
    font-size: 0.875rem;
    margin-top: 0.5rem;
  }
  .search__group {
    margin-top: 1.75rem;
  }
  .search__group + .search__divider + .search__group {
    margin-top: 1.875rem;
  }
  .search__label {
    font-size: 1rem;
  }
  .search__tags {
    margin-top: 0.75rem;
  }
  .search__group + .search__divider + .search__group .search__tags {
    margin-top: 1.5rem;
  }
  .search__tag {
    font-size: 0.875rem;
    gap: 0.125rem;
    height: 1.875rem;
    line-height: 1.6;
    padding-inline: 0.625rem;
  }
  .search__tag img {
    height: 0.875rem;
    width: 0.875rem;
  }
  .search__divider {
    margin-top: 1.875rem;
  }
  .search__more {
    font-size: 0.875rem;
    margin-top: 0.625rem;
  }
  .partner {
    border-top: 1px solid #b8cade;
    padding-bottom: 3.125rem;
    padding-top: 3.125rem;
  }
  .partner__cards {
    gap: 1.25rem;
    grid-template-columns: 1fr;
    margin-top: 1.875rem;
  }
  .partner-card__head {
    border-bottom: none;
    min-height: 0;
    padding: 1rem 1rem 1.25rem;
  }
  .partner-card__logo-row {
    margin-right: 0;
  }
  .partner-card__logo-row .partner-badges {
    margin-top: 0.25rem;
  }
  .partner-card__name {
    font-size: 1rem;
    margin-top: 0.3125rem;
  }
  .partner-card__divider {
    margin-top: 0.5rem;
  }
  .partner-card__label {
    font-size: 0.75rem;
    margin-top: 0.5rem;
  }
  .partner-card__label--regular {
    font-weight: 700;
  }
  .partner-card__tags {
    margin-top: 0.1875rem;
  }
  .partner-card__tag {
    font-size: 0.6875rem;
    height: 1.3125rem;
  }
  .partner-card__results {
    border-bottom: none;
    border-top: none;
    padding: 0.625rem 1.5rem 0.75rem;
  }
  .partner-card__list li {
    font-size: 0.75rem;
  }
  .partner-card__etc {
    font-size: 0.75rem;
  }
  .partner-card__contact {
    padding: 0.75rem 0 1.25rem;
  }
  .partner-card__contact-btn {
    font-size: 0.875rem;
    height: 2.6875rem;
    width: 11.25rem;
  }
  .partner__button {
    margin-top: 3.5rem;
    width: 18rem;
  }
  .logos {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    -moz-column-gap: 1.5rem;
         column-gap: 1.5rem;
    padding-bottom: 3.125rem;
    padding-inline: 1rem;
    padding-top: 3.125rem;
    row-gap: 1.875rem;
  }
  .logos__row {
    display: contents;
  }
  .logos__row + .logos__row {
    margin-top: 1.875rem;
  }
  .logos__row img {
    height: 1.0625rem;
  }
  .logos__row img.logos__img--lg {
    height: 1.75rem;
  }
  .logos__row:first-child li:nth-child(4) img.logos__img--lg {
    height: 1.0625rem;
  }
  .case-list {
    padding-bottom: 3.125rem;
    padding-top: 3.125rem;
  }
  .case-list__cards {
    gap: 1.25rem;
    grid-template-columns: 1fr;
    margin-top: 1.875rem;
  }
  .case-list-card {
    padding: 1.25rem;
  }
  .case-list-card__company {
    font-size: 0.875rem;
  }
  .case-list-card__title {
    font-size: 1.125rem;
  }
  .case-list-card__labels li {
    padding-inline: 0.5625rem;
  }
  .case-list__button {
    margin-top: 1.875rem;
    width: 18rem;
  }
  .subsidy {
    padding-bottom: 3.125rem;
    padding-top: 3.125rem;
  }
  .subsidy__lead {
    font-size: 0.875rem;
    margin-top: 0.5rem;
  }
  .subsidy__cards {
    gap: 1.25rem;
    grid-template-columns: 1fr;
    margin-top: 1.875rem;
  }
  .subsidy-card__title {
    font-size: 1rem;
    padding: 1.25rem 1.25rem 0.75rem;
  }
  .subsidy-card__body {
    padding: 0.75rem 1.5rem 1.25rem;
  }
  .subsidy-card__tags {
    margin-top: 0.5rem;
  }
  .subsidy-card__label {
    font-size: 0.75rem;
  }
  .subsidy-card__period {
    margin-top: 0.125rem;
  }
  .subsidy-card__text {
    margin-top: 0.5rem;
  }
  .subsidy__notes {
    margin-top: 1.25rem;
  }
  .subsidy__note + .subsidy__note {
    font-size: 0.75rem;
    margin-top: 0.625rem;
  }
  .subsidy__button {
    margin-top: 1.875rem;
    width: 18rem;
  }
  .event {
    padding-bottom: 3.125rem;
    padding-top: 3.125rem;
  }
  .event__lead {
    font-size: 0.875rem;
    margin-top: 0.5rem;
  }
  .event__content {
    flex-direction: column;
    gap: 1.25rem;
    margin-top: 1.375rem;
  }
  .event__menu {
    border-radius: 0.375rem;
    display: flex;
    gap: 0.1875rem;
    justify-content: center;
    padding: 0.875rem 0.4375rem;
    width: 100%;
  }
  .event__menu li + li {
    margin-top: 0;
  }
  .event__menu-link {
    background-color: #ebeff3;
    border-radius: 0.25rem;
    font-size: 0.75rem;
    height: 1.9375rem;
    justify-content: center;
    line-height: 1.6;
    padding-inline: 0.625rem;
    text-align: center;
    white-space: nowrap;
    width: auto;
  }
  .event__menu-link.is-current {
    background-color: #354b91;
  }
  .event__row {
    border-bottom-style: dashed;
    padding-bottom: 1rem;
  }
  .event__date {
    font-size: 0.875rem;
    font-weight: 700;
    line-height: 1.4;
  }
  .event__meta {
    margin-top: 0.5rem;
  }
  .event__meta-label {
    font-size: 0.6875rem;
  }
  .event__meta-date {
    font-size: 0.875rem;
  }
  .event__tags {
    gap: 0.375rem;
    margin-top: 0.5rem;
  }
  .event__tag {
    height: 1.3125rem;
    padding-inline: 0.625rem;
  }
  .event__title {
    font-size: 0.875rem;
    margin-top: 0.5rem;
  }
  .event__empty {
    font-size: 0.875rem;
  }
  .event__button {
    margin-inline: auto;
    margin-top: 1.875rem;
    width: 19.4375rem;
  }
  .news__box {
    flex-direction: column;
    gap: 1.5rem;
    margin-right: 0;
    padding: 1.875rem 1.875rem 2.5rem 1.875rem;
    width: 100vw;
  }
  .news__heading {
    width: auto;
  }
  .news__body {
    width: 100%;
  }
  .news__row {
    border-bottom-style: dashed;
  }
  .news__date {
    font-size: 0.75rem;
    line-height: 1.6;
  }
  .news__title {
    font-size: 0.875rem;
    line-height: 1.5;
    margin-top: 0.5rem;
  }
  .news__button {
    margin-inline: auto;
    margin-top: 1.875rem;
    width: 15.75rem !important;
  }
  .links {
    padding-bottom: 3.125rem;
    padding-top: 3.125rem;
  }
  .links__list {
    gap: 0.75rem;
    grid-template-columns: repeat(2, 1fr);
    margin-top: 1.875rem;
  }
  .links__item {
    border-radius: 0.375rem;
    padding: 0.875rem 0.5625rem 0.4375rem;
  }
  .links__item img {
    height: 1.75rem;
  }
  .links__name {
    font-size: 0.625rem;
    margin-top: 0.5rem;
  }
  .button {
    border-radius: 0.375rem;
    font-size: 1rem;
    width: 20.25rem;
  }
  .button__arrow {
    right: 1rem;
  }
  .footer__inner {
    padding: 3.125rem 1rem 1.5625rem;
  }
  .footer__top {
    grid-template-areas: "logo" "youtube" "divider" "address";
    grid-template-columns: 1fr;
    -moz-column-gap: 0;
         column-gap: 0;
    justify-items: center;
  }
  .footer__logo {
    width: 13.5rem;
  }
  .footer__address {
    font-size: 0.875rem;
    justify-self: start;
    margin: 1.6875rem auto 0;
    max-width: 18.75rem;
    text-align: left;
  }
  .footer__youtube {
    margin-top: 1.5625rem;
  }
  .footer__divider {
    margin-top: 1.125rem;
  }
  .footer__nav {
    display: none;
  }
  .footer__buttons {
    display: none;
  }
  .footer__copyright {
    font-size: 0.625rem;
    margin-top: 1.875rem;
  }
  .header {
    height: 3.75rem;
  }
  .header__bar {
    align-items: center;
    height: 100%;
    padding-left: 1rem;
    padding-right: 0.75rem;
  }
  .header__logo {
    margin-left: 0;
    margin-top: 0;
    width: 9.4375rem;
  }
  .header__actions {
    display: none;
  }
  .mt-site-search-form {
    background-color: rgba(255, 255, 255, 0.8);
  }
  .header__hamburger {
    align-items: center;
    background-color: #354b91;
    border-radius: 0.125rem;
    display: flex;
    flex-direction: column;
    height: 2.25rem;
    justify-content: center;
    position: relative;
    width: 2.25rem;
    z-index: 110;
  }
  .header__menu {
    background-color: #fff;
    height: calc(100vh - 3.75rem);
    height: calc(100dvh - 3.75rem);
    left: 0;
    margin-top: 0;
    opacity: 0;
    overflow-y: auto;
    padding: 1.5rem 1rem 2.5rem;
    position: fixed;
    top: 3.75rem;
    transition: opacity 0.3s, visibility 0.3s;
    visibility: hidden;
    width: 100%;
    z-index: 90;
  }
  .header__menu.is-open {
    opacity: 1;
    visibility: visible;
  }
  .header__menu-actions {
    display: grid;
    gap: 0.1875rem;
    grid-template-columns: repeat(2, 10.625rem);
  }
  .header__menu-search {
    display: block;
    height: 2.625rem;
    margin-top: 1.5rem;
    width: 100%;
  }
  .header__nav {
    margin-top: 1.5rem;
  }
  .header__nav-list {
    flex-direction: column;
    gap: 0;
  }
  .header__nav-item {
    border-top: 1px solid #ebeff3;
  }
  .header__nav-link {
    font-weight: 700;
    padding: 1rem 2.875rem 1rem 1rem;
    width: 100%;
  }
  .header__nav-link::after {
    display: none;
  }
  .header__nav-icon--plus {
    background-color: #ebeff3;
    background-image: linear-gradient(#506170, #506170), linear-gradient(#506170, #506170);
    background-size: 0.5rem 0.0625rem, 0.0625rem 0.5rem;
    border-radius: 50%;
    height: 1.375rem;
    position: absolute;
    right: 1rem;
    top: 50%;
    transform: translateY(-50%);
    width: 1.375rem;
    z-index: 10;
  }
  .js-nav-toggle[aria-expanded=true] .header__nav-icon--plus {
    background-image: linear-gradient(#506170, #506170);
    background-size: 0.5rem 0.0625rem;
  }
  .header__nav-icon--arrow {
    background-color: #354b91;
    border-radius: 50%;
    display: block;
    height: 1.375rem;
    position: absolute;
    right: 1rem;
    top: 50%;
    transform: translateY(-50%);
    width: 1.375rem;
    z-index: 10;
  }
  .header__nav-icon--arrow::before {
    border-bottom: 0.125rem solid transparent;
    border-left: 0.25rem solid #fff;
    border-top: 0.125rem solid transparent;
    content: "";
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-35%, -50%);
    z-index: 10;
  }
  .header__submenu {
    display: grid;
    grid-template-rows: 0fr;
    opacity: 1;
    padding-top: 0;
    position: static;
    transform: none;
    transition: grid-template-rows 0.3s;
    visibility: visible;
    width: auto;
  }
  .header__nav-item.is-open .header__submenu {
    grid-template-rows: 1fr;
  }
  .header__submenu-list {
    background-color: #eff2f6;
    border-radius: 0;
    box-shadow: none;
    display: block;
    min-height: 0;
    overflow: hidden;
    padding: 0;
  }
  .header__nav-item.is-open .header__submenu-list {
    margin-bottom: 1rem;
    padding-bottom: 0.75rem;
  }
  .header__submenu-link {
    gap: 0.375rem;
    padding: 0.625rem 1.75rem;
    white-space: normal;
  }
  .header__submenu-link::before {
    width: 1rem;
  }
  .header__submenu-sub {
    margin-top: 0;
  }
  .header__submenu-sub li + li {
    margin-top: 0;
  }
  .header__submenu-sublink {
    color: #212121;
    font-weight: 400;
    padding: 0.25rem 1rem 0.25rem 3.125rem;
    white-space: normal;
  }
  .heading {
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1.45;
  }
  .heading::before {
    margin-bottom: 0.5rem;
  }
  .inner {
    padding-left: 16px;
    padding-right: 16px;
  }
  .pagination__link {
    height: 2.5rem;
  }
}

@media screen and (max-width: 767px) and (prefers-reduced-motion: reduce){
  .partner-search__box {
    transition: none;
  }
  .fv__image .fv__video {
    height: 100%;
    position: static;
    transform: none;
    width: 100%;
  }
}

@media (max-width: 375px){
  html {
    font-size: 4.2666666667vw;
  }
}
/* ========================================
  DXパートナー登録申請フォーム（Synergy!）追加部品の見た目調整
  入会申込フォーム用の指定に続けて読み込む前提
======================================== */
/* ========================================
  SP（767px以下）
======================================== */
@media screen and (max-width: 767px) {
  #synergy-nform-root .synergy-nform-temporary-save-wrapper--sticky {
    top: 4.25rem;
  }

  #synergy-nform-root form > div:has(> [class$="-FieldHeading"]) + div:has([class$="-StaticContentText"]) {
    margin-top: 2.5rem;
  }

  #synergy-nform-root form > div:has([class$="-StaticContentText"]) {
    margin-bottom: 1.25rem;
  }

  #synergy-nform-root [class$="-StaticContentText"] h2 {
    font-size: 1.125rem;
    padding-left: 0.625rem;
  }

  #synergy-nform-root [class$="-StaticContentText"] p {
    font-size: 0.875rem;
    margin-top: 0.5rem;
  }

  #synergy-nform-root form > div:has([class$="-StaticContentText"]) + div {
    padding-top: 0;
  }

  /* SPは見出し・説明・入力欄を縦1列に */
  #synergy-nform-root form > div:has(> [class$="-Comment"]) {
    display: block;
  }

  #synergy-nform-root form > div:has(> [class$="-Comment"]) > [class$="-Comment"] {
    font-size: 0.8125rem;
    margin: 0.375rem 0 0;
  }

  #synergy-nform-root form > div:has(> [class$="-Comment"]) > [class$="-InputBlock"] {
    margin-top: 0.75rem;
  }

  #synergy-nform-root [class$="-InputBlock"] [class$="-Wrapper"]:has(> [class$="-InputWrapper"] > [class$="-InputLabel"]) {
    gap: 0.625rem 0.75rem;
  }

  #synergy-nform-root [class$="-InputWrapper"]:has(> [class$="-InputLabel"]) {
    gap: 0.375rem;
  }

  #synergy-nform-root [class$="-InputLabel"],
  #synergy-nform-root [class$="-TextAdditionalTextAfterInput"],
  #synergy-nform-root [class$="-TextAdditionalTextBeforeInput"] {
    font-size: 0.875rem;
  }

  #synergy-nform-root [class$="-InputWrapper"]:has(> [class$="-InputLabel"]) input {
    width: 3.75rem;
  }

  #synergy-nform-root [class$="-InputWrapper"]:has(> [class$="-InputLabel"]):first-child input {
    width: 5rem;
  }
}
/* ========================================
  サイト内検索（MovableType.net サイト内検索）の見た目調整（2026-09-24 追加）
  ・ヘッダー検索（PC / SPメニュー内）
  ・パートナーを探す／DX事例を見る のフリーワード検索
======================================== */
/* ---------- SP ---------- */
@media screen and (max-width: 767px) {
  .freeword .mt-site-search-container {
    width: 100%;
  }

  .freeword .mt-site-search-form {
    gap: 0.5rem;
  }

  .freeword .mt-site-search-form__query {
    flex: 1 1 0;
    width: auto;
  }

  .freeword .mt-site-search-form__button {
    padding: 0.5rem 1rem;
  }
}