/* 本家の SP（849px以下）ルールを抽出・差し替え */
@media only screen and (max-width: 849px) {
  html { font-size: 2.6667vw; }
  body { font-size: 1.4rem; }
  .header::before { z-index: 13; background: rgba(0, 0, 0, 0.2); }
  .header::after { display: none; }
  .header__logo { position: absolute; left: 1.5rem; height: 7rem; }
  .header__logo::after { display: none; }
  .header__logo img { width: 18.1rem; }
  .header__nav { transition: all 0.4s cubic-bezier(0.18, 0.06, 0.23, 1) 0s; transition-property: height, padding-bottom; box-sizing: border-box; position: fixed; inset: auto 0.5rem 0; height: calc(5.5rem + env(safe-area-inset-bottom)); padding: 0 5.25rem env(safe-area-inset-bottom) 0.5rem; border-radius: 0.5rem 0.5rem 0 0; background: rgba(255, 255, 255, 0.8); font-size: 1.1rem; -webkit-backdrop-filter: blur(135px); backdrop-filter: blur(135px); box-shadow: 0 0 0.5rem rgba(0, 0, 0, 0.1); }
  .header__nav li { flex-grow: 1; }
  .header__nav li.pc-hidden { display: flex; }
  .header__nav li.sp-hidden { display: none; }
  .header__nav li:not(:first-child)::before { width: 1px; height: 1rem; opacity: 0.5; }
  .header__nav li a { flex-grow: 1; justify-content: center; padding: 0; text-decoration: none; }
  .header__nav li a::after { inset: 1px 1rem 0; height: 2px; border-bottom: none; border-radius: 1px; background: #7493a3; }
  .header__menu { transition-duration: 0.4s !important; transition-property: top, right, bottom, width, height, border-radius, background !important; position: fixed; top: auto; right: 0.75rem; bottom: calc(0.25rem + env(safe-area-inset-bottom)); width: 5rem; height: 5rem; border-radius: 0.5rem; }
  .header__menu::before, .header__menu::after { left: calc(50% - 0.8rem); width: 1.6rem; background: #83a2b2; }
  .header__drawer { translate: 101% 0; transition-property: translate; visibility: visible; left: auto; width: 31.5rem; opacity: 1; }
  .header.drawer-open::before { visibility: visible; opacity: 1; pointer-events: auto; }
  .header.drawer-open .header__menu { top: auto; right: 1rem; bottom: calc(0.5rem + env(safe-area-inset-bottom)); width: 4.5rem; height: 4.5rem; border: none; border-radius: 50%; background: #ebf0f2; }
  .header.drawer-open .header__menu::before, .header.drawer-open .header__menu::after { scale: 1 1; }
  .header.drawer-open .header__menu .dot { opacity: 0; }
  .header.drawer-open .header__menu .dot:nth-child(1) { translate: 0 0; }
  .header.drawer-open .header__menu .dot:nth-child(3) { translate: 0 0; }
  .header.drawer-open .header__drawer { translate: 0 0; }
  body:has(.main.sp-bg-eyecatch) .header__logo::after, body.header-pc-white .header__logo::after { display: block; opacity: 1; }
  body:has(.main.sp-bg-eyecatch) .header__logo img, body.header-pc-white .header__logo img { opacity: 0; }
  .main { background: #ebf0f2; }
  .footer__container { max-width: none; padding-right: 1.5rem; padding-left: 1.5rem; }
  .footer .f-media__head { max-width: none; padding-right: 1.5rem; padding-left: 1.5rem; }
  .footer { position: relative; z-index: 1; }
  .footer__container { max-width: none; padding-right: 0; padding-left: 0; }
  .footer__contactWrap { position: relative; z-index: 1; margin: 0 1.5rem -10rem; border-top: none; border-radius: 1rem; background: #ebf0f2; }
  .footer__contact { display: block; padding-top: 1.5rem; padding-bottom: 2rem; }
  .footer__contact .link { display: block; text-decoration: none; }
  .footer__contact .link:not(:first-child) { border-image-source: repeating-linear-gradient(90deg, #6e8d9c 0, #6e8d9c 1px, transparent 1px, transparent 3px); border-image-slice: 1; border-image-repeat: repeat; border-top: solid 1px; }
  .footer__contact .link:not(:first-child)::after { display: none; }
  .footer__contact .link::before { display: none; }
  .footer__contact .link__body { display: block; padding: 3.5rem 4rem 3rem; font-size: 1.2rem; line-height: 1.75; text-align: center; }
  .footer__contact .link__ttl { margin-bottom: 0.9rem; font-family: var(--default-font-family); font-weight: 600; font-size: 1.7rem; }
  .footer__contact .link__txt { display: flex; align-items: center; }
  .footer__contact .link__txt .ico-sq { width: 3rem; }
  .footer__contact .link__txt .ico-sq .ico-arw { width: 1rem; }
  .footer__bannersWrap { position: relative; z-index: 0; padding: 15rem 1.5rem 6.5rem; }
  .footer__banners { display: grid; grid-template-columns: repeat(2, 1fr); -moz-column-gap: 1rem; column-gap: 1rem; row-gap: 1rem; }
  .footer__banners .banner__img { border-radius: 0.25rem; }
  .footer__banners .banner__txt { margin-top: 0.5rem; font-size: 1rem; line-height: 1.75; }
  .footer__body { position: relative; z-index: 1; margin-top: -2rem; padding-top: 4.5rem; padding-bottom: 0; border-radius: 1.5rem 1.5rem 0 0; background: #7798a8; }
  .footer .f-media__head { display: block; margin-bottom: 1rem; }
  .footer .f-media__ttl { margin-right: 0; font-size: 1.4rem; }
  .footer .f-media__txt { display: none; }
  .footer .f-media__more { display: none; }
  .footer__upper { margin-top: 5rem; padding-top: 0; border-top: none; }
  .footer__navWrap { display: block; }
  .footer__nav { display: block; }
  .footer__nav > li { border-image-source: repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.5) 0, rgba(255, 255, 255, 0.5) 1px, transparent 1px, transparent 3px); border-image-slice: 1; border-image-repeat: repeat; border-top: solid 1px; }
  .footer__nav > li.opened .parent .icon { background: none; color: #fff; }
  .footer__nav > li.opened .parent .icon::after { opacity: 0; }
  .footer__nav > li.opened .children { height: auto; }
  .footer__nav .parent { display: block; position: relative; padding: 1.5rem 4.5rem 2.5rem 1.5rem; font-size: 1.7rem; font-weight: 600; line-height: 1.5; }
  .footer__nav .parent .icon { transition: all 0.4s cubic-bezier(0.18, 0.06, 0.23, 1) 0s; transition-property: background, color; box-sizing: border-box; display: block; position: absolute; inset: 2rem 1.5rem auto auto; aspect-ratio: 1/1; width: 1.5rem; border: #fff solid 1px; border-radius: 0.25rem; background: #fff; color: #7493a3; }
  .footer__nav .parent .icon::before, .footer__nav .parent .icon::after { content: ""; display: block; position: absolute; inset: calc(50% - 0.5px) auto auto calc(50% - 0.25rem); width: 0.5rem; height: 1px; background: currentColor; }
  .footer__nav .parent .icon::after { transition: opacity 0.4s cubic-bezier(0.18, 0.06, 0.23, 1) 0s; rotate: 90deg; opacity: 1; }
  .footer__nav .children { overflow: hidden; height: 0; margin: 0 0 0 1.5rem; font-size: 1.3rem; line-height: 1.75; }
  .footer__nav .children__list { position: relative; padding: 2.5rem 2rem 4.5rem; }
  .footer__nav .children__list::before { content: ""; display: block; position: absolute; inset: 0 0 2rem; z-index: 0; border-radius: 2rem 0 0 2rem; background: rgba(0, 0, 0, 0.05); }
  .footer__nav .children__list li { position: relative; z-index: 1; }
  .footer__nav .children__list li + li { margin-top: 1.2rem; }
  .footer__sns { display: none; }
  .footer__lower { display: block; margin-top: 4.5rem; padding-top: 8.6rem; padding-bottom: 22rem; border-top: none; border-radius: 2rem 2rem 0 0; background: #fff; color: #242e33; }
  .footer__logo { width: 7.7rem; margin: 0 auto; }
  .footer__address { row-gap: 2rem; font-size: 1.1rem; line-height: 1.75; text-align: center; }
  .footer__address .zip { display: block; margin-right: 0; }
  .footer__pmark { width: 7.7rem; margin: 5rem auto; }
  .footer__groups { display: grid; row-gap: 1rem; -moz-columns: auto; columns: auto; font-size: 1.1rem; line-height: 1.75; text-align: center; }
  .footer__links { display: grid; row-gap: 0.5rem; margin: 6rem auto auto; line-height: 1.75; text-align: center; opacity: 0.5; }
  .footer__copyright { margin-top: 9rem; font-size: 1rem; text-align: center; opacity: 0.5; }
  .ico-sq { width: 1.4rem; border-radius: 0.3rem; }
  .ico-sq .ico-arw { width: 0.7rem; }
  .c-linetext { background: none; text-decoration: underline; }
  .c-drawline { background: none; text-decoration: none; }
  .c-arwlink .c-linetext { vertical-align: baseline; }
  .c-arwlink .ico-sq { width: 1.4rem; }
  .c-arwlink .ico-sq .ico-arw { width: 0.7rem; }
  .c-arwlink .c-linetext { text-decoration: none; }
  .c-gallery.visible { margin-bottom: 7.5rem; }
  .c-gallery-section { margin-top: 0 !important; margin-left: 0; padding-top: 2.5rem; }
  .c-gallery { display: flex; overflow: hidden; }
  .c-gallery__group { -moz-column-gap: 2rem; column-gap: 2rem; padding-right: 2rem; }
  .c-gallery .img { width: 17.5rem; }
  .c-gallery .img:nth-child(odd) { margin-top: 4rem; }
  .c-gallery.play .c-gallery__container { animation-play-state: running; }
  .c-media-banners { padding: 0 1rem; }
  .c-media-banners .splide__track { max-width: none; }
  .c-media-banners .banner .ico-blank { position: absolute; inset: auto 0.5rem 0.5rem auto; }
  .c-media-banners__prev, .c-media-banners__next { display: none; }
  html.logo-fit .page-home .header--scrolled::after, html.logo-fit .page-home .header--scrolled .header__logo { animation: none; position: absolute; }
  html.logo-fit .page-home .header--scrolled .header__nav, html.logo-fit .page-home .header--scrolled .header__menu { animation: none; position: fixed; }
  .p-home-section__container { max-width: none; padding-right: 1.5rem; padding-left: 1.5rem; }
  .p-home-section__ttl { --linesize: 1px; margin-bottom: 1.7rem; font-size: 2.5rem; }
  .p-home-section__ttl a { --linesize: 1px; }
  .p-home-section__sttl { margin-bottom: 1.25rem; font-size: 1.7rem; }
  .p-home-fv { overflow: hidden; padding: 0 1.5rem; height: auto; height: auto; min-height: 0; }
  .p-home-fv__logoWrap { position: absolute; top: calc(50svh - 6.2rem); right: auto; bottom: auto; left: 0; z-index: auto; opacity: 0; mix-blend-mode: overlay; }
  html.loaded .p-home-fv__logoWrap { transition: opacity 0.4s cubic-bezier(0.18, 0.06, 0.23, 1) 1s; opacity: 0.6; }
  .p-home-fv__logo { animation: fv-logo-rail 20s linear 0s infinite normal; transition: none; translate: none; scale: 1; position: static; aspect-ratio: 665/137; width: 39.3rem; height: auto; background: url(/clone/assets/fv-word2.svg) no-repeat left center; background-size: contain; -webkit-mask-image: none; mask-image: none; }
  .p-home-fv__logo::before { position: absolute; top: 0; left: 45rem; width: 100%; background: url(/clone/assets/fv-word2.svg) no-repeat left center; background-size: contain; -webkit-mask-image: none; mask-image: none; }
  html.logo-fit .p-home-fv__logo { opacity: 1; }
  .p-home-fv__upper { box-sizing: border-box; display: block; position: relative; z-index: 1; height: auto; min-height: 75svh; margin-bottom: 0; padding-top: 50svh; padding-bottom: 3rem; }
  .p-home-fv__upper::before { display: none; }
  .p-home-fv__copy { position: relative; top: 0; z-index: 1; width: auto; }
  .p-home-fv__copy .en { background: linear-gradient(145deg, #5f8397, #a9c1ca); -webkit-background-clip: text; background-clip: text; color: rgba(0, 0, 0, 0); font-family: "Montserrat", sans-serif; font-size: 3.5rem; line-height: 1.05; letter-spacing: 0; }
  .p-home-fv__copy .ja { color: #83a2b2; font-size: 1.5rem; line-height: 1.11; }
  .p-home-fv__lower { display: block; width: auto; height: auto; padding-top: 2rem; border-top-color: #c6d5dd; }
  .p-home-fv__lowerInner { display: flex; flex-direction: column-reverse; width: auto; }
  .p-home-fv__pickup { border-right: none; display: block; margin-top: 3rem; padding-top: 2rem; -o-border-image: none; border-image: none; border-top: #c6d5dd solid 1px; }
  .p-home-fv__pickup .pickup { flex-direction: row-reverse; align-items: stretch; -moz-column-gap: 2.5rem; column-gap: 2.5rem; font-size: 1.1rem; line-height: 1.6; text-decoration: none; }
  .p-home-fv__pickup .pickup__img { width: 9.5rem; height: -moz-fit-content; height: fit-content; }
  .p-home-fv__pickup .pickup__img img { -o-object-fit: contain; /* object-fit: contain */ }
  .p-home-fv__pickup .pickup__txt { display: flex; flex-grow: 1; justify-content: space-between; align-items: flex-start; }
  .p-home-fv__pickup .pickup__txt dd { border-image-source: repeating-linear-gradient(0deg, #6e8d9c 0, #6e8d9c 1px, transparent 1px, transparent 3px); border-image-slice: 1; border-image-repeat: repeat; box-sizing: border-box; width: 16rem; padding-left: 2.5rem; border-left: solid 1px; }
  .p-home-fv__pickup .pickup__ttl { height: 5rem; margin-bottom: 0; color: #83a2b2; font-size: 0.7rem; line-height: 1.3; opacity: 1; writing-mode: vertical-rl; }
  .p-home-fv__pickup .pickup .ico-sq { margin-top: 1rem; }
  .p-home-fv__profile { display: block; width: 100%; padding-left: 0; }
  .p-home-fv__profile .profile { font-size: 1rem; line-height: 1.6; text-decoration: none; }
  .p-home-fv__profile .profile__txt { display: flex; justify-content: space-between; align-items: stretch; }
  .p-home-fv__profile .profile__txt dd { border-image-source: repeating-linear-gradient(0deg, #6e8d9c 0, #6e8d9c 1px, transparent 1px, transparent 3px); border-image-slice: 1; border-image-repeat: repeat; box-sizing: border-box; width: 28rem; padding-left: 2.5rem; border-left: solid 1px; }
  .p-home-fv__profile .profile__txt dd br { display: none; }
  .p-home-fv__profile .profile__ttl { height: 5rem; margin-bottom: 0; color: #83a2b2; font-size: 0.7rem; line-height: 1.3; opacity: 1; writing-mode: vertical-rl; }
  .p-home-fv__profile .profile .ico-sq { margin-top: 1rem; }
  .p-home-fv__scroll { display: none; }
  .p-home-message { margin-top: 15rem; }
  .p-home-message__copy { height: 14rem; font-size: 4.3rem; white-space: nowrap; }
  .p-home-message__copy .line--r .letter { translate: calc((var(--sy) - 50) * 0.5%) 0; }
  .p-home-message__copy .line--l { margin-top: 0; }
  .p-home-message__copy .line--l .letter { translate: calc((50 - var(--sy)) * 0.5%) 0; }
  .p-home-message__body { width: auto; }
  .p-home-message__txt { font-size: 1.55rem; line-height: 2; text-align: center; }
  .p-home-message__more { margin-top: 3rem; font-size: 1.2rem; text-align: center; }
  .p-home-message__more .c-arwlink { flex-direction: column; row-gap: 0.5rem; }
  .p-home-message__images { margin-top: 7.5rem; }
  .p-home-service { margin-top: 6.5rem; }
  .p-home-service .p-home-section__ttl { margin-bottom: 1rem; font-size: 2.5rem; }
  .p-home-service__container { display: block; }
  .p-home-service__container::before { display: none; }
  .p-home-service__head { margin-bottom: 2.5rem; padding-top: 0; border-right: none; }
  .p-home-service__head .c-arwlink { font-size: 1.2rem; }
  .p-home-service__body { padding: 0; font-size: 1.3rem; line-height: 1.6154; }
  .p-home-service__items { -moz-column-gap: 0.6rem; column-gap: 0.6rem; row-gap: 0.5rem; margin-top: 3.5rem; }
  .p-home-service__items .item__link { height: 5.2rem; padding: 0 1rem; border-radius: 0.5rem; font-size: 1.6rem; text-decoration: none; }
  .p-home-service__items .item__tooltip { display: none; }
  .p-home-media { margin-top: 5rem; }
  .p-home-media__inner { display: block; margin-bottom: 3rem; padding-top: 4.6rem; }
  .p-home-media__txt { font-size: 1.3rem; line-height: 1.6154; }
  .p-home-media__more { margin-top: 1.6rem; }
  .p-home-media__more .c-arwlink { font-size: 1.2rem; }
  .p-home-media .c-media-banners { padding: 0 1.5rem; }
  .p-home-media .c-media-banners .splide__list { display: grid !important; grid-template-columns: repeat(2, 1fr); gap: 1rem; }
  .p-home-media .c-media-banners .banner { padding: 0; }
  .footer__media .c-media-banners { padding: 0 1.5rem; }
  .footer__media .c-media-banners .splide__list { display: grid !important; grid-template-columns: repeat(2, 1fr); gap: 1rem; }
  .footer__media .c-media-banners .banner { padding: 0; }
  .p-home-feature { margin-top: 7.5rem; padding: 7rem 0 7.5rem; border-radius: 2rem 2rem 0 0; background: #83a2b2; color: #fff; }
  .p-home-feature__body { display: block; padding: 0 1.5rem; }
  .p-home-feature__head { width: auto; padding-left: 0; }
  .p-home-feature__head .p-home-section__ttl { color: #fff; }
  .p-home-feature__txt { font-size: 1.3rem; line-height: 1.75; }
  .p-home-feature__more { margin-top: 1rem; }
  .p-home-feature__more .c-arwlink { font-size: 1.2rem; }
  .p-home-feature__more .c-arwlink .ico-sq { border-color: #fff; background: rgba(0, 0, 0, 0); }
  .p-home-feature__more .c-arwlink .ico-sq .ico-arw { fill: #fff; }
  .p-home-feature__items { display: grid; grid-template-columns: repeat(2, 1fr); row-gap: 3rem; margin-top: 3.5rem; }
  .p-home-feature__items .item:first-child { border-left: none; }
  .p-home-feature__items .item:nth-child(even) { border-right: none; }
  .p-home-feature__items .item:nth-child(even) .item__link { padding: 0 0 0 1.5rem; }
  .p-home-feature__items .item__link { margin: 0; padding: 0 1.5rem 0 0; }
  .p-home-feature__items .item__link::before { display: none; }
  .p-home-feature__items .item__img { margin-bottom: 1rem; border-radius: 0.3rem; }
  .p-home-feature__items .item__txt dd { display: none; }
  .p-home-feature__items .item__ttl { margin-bottom: 0; font-size: 1.4rem; }
  .p-home-feature__wave { height: 24rem; margin-bottom: 0; }
  .p-home-feature__wave::after { top: 9rem; height: 7.15rem; -webkit-mask-size: 82.5rem auto; mask-size: 82.5rem auto; }
  .p-home-number { display: block; padding: 0 1.5rem; }
  .p-home-number__head { position: static; width: auto; }
  .p-home-number__head .p-home-section__sttl { color: #fff; font-size: 2.5rem; }
  .p-home-number__txt { font-size: 1.3rem; line-height: 1.75; }
  .p-home-number__more { margin-top: 1rem; }
  .p-home-number__more .c-arwlink { font-size: 1.2rem; }
  .p-home-number__more .c-arwlink .ico-sq { border-color: #fff; background: rgba(0, 0, 0, 0); }
  .p-home-number__more .c-arwlink .ico-sq .ico-arw { fill: #fff; }
  .p-home-number__items { display: grid; grid-template-columns: 1fr; row-gap: 1rem; max-width: none; margin-top: 2rem; padding-bottom: 0; }
  .p-home-number__items .item { height: auto; padding: 3rem 1.5rem; font-size: 1.3rem; line-height: 1.75; text-decoration: none; }
  .p-home-number__items .item:nth-child(even) { top: auto; }
  .p-home-number__items .item__ttl { margin-bottom: 1rem; font-size: 1.2rem; font-weight: 600; line-height: 1.5; }
  .p-home-number__items .item__caption { position: static; margin-top: 4rem; font-size: 1.2rem; }
  .p-home-number__more:not(.detail) { display: block; width: -moz-fit-content; width: fit-content; margin: 4.5rem auto 0; font-size: 1.3rem; font-weight: 600; line-height: 1.75; }
  .p-home-case { margin-top: -2rem; padding-top: 9rem; border-radius: 2rem 2rem 0 0; background: #fff; }
  .p-home-case .p-home-section__ttl { margin-bottom: 1rem; }
  .p-home-case__head { display: block; margin-bottom: 3rem; font-size: 1.3rem; }
  .p-home-case__more { margin-top: 1.5rem; }
  .p-home-case__more .c-arwlink { font-size: 1.2rem; }
  .p-home-case__items { padding: 0 5rem 0 0.5rem; }
  .p-home-case__items .splide__arrow { display: none; }
  .p-home-case__items .item { border-left: none; }
  .p-home-case__items .item__link { padding: 0 1rem; background: none; text-decoration: none; }
  .p-home-case__items .item__categories { margin-bottom: 0.5rem; }
  .p-home-case__items .item__categories li { height: 1.75rem; border-radius: 0.3rem; font-size: 1rem; }
  .p-home-case__items .item__ttl { margin-bottom: 0.8rem; font-size: 1.5rem; line-height: 1.55; }
  .p-home-case__items .item__txt { font-size: 1.3rem; line-height: 1.65; }
  .p-home-case__prev, .p-home-case__next { display: none; }
  .p-home-client { margin-top: 5rem; }
  .p-home-client__inner { display: block; padding-top: 4rem; }
  .p-home-client__head { width: auto; padding-right: 0; font-size: 1.3rem; line-height: 1.75; }
  .p-home-client__more .c-arwlink { font-size: 1.2rem; }
  .p-home-client__list { grid-template-columns: repeat(2, 1fr); -moz-column-gap: 4rem; column-gap: 4rem; row-gap: 1rem; max-width: none; margin-top: 4rem; padding-left: 0; }
  .p-home-client__img { max-width: none; margin-top: 4rem; padding-left: 0; }
  .p-home-recruit { margin-top: 10rem; padding: 10rem 0; border-radius: 2rem 2rem 0 0; background: none; background-size: cover; -webkit-clip-path: none; clip-path: none; }
  .p-home-recruit .p-home-section__sttl { font-size: 2rem; }
  .p-home-recruit .ico-sq { --border-color: #ffffff; --bg-color-ov: #ffffff; --arw-color: #ffffff; --arw-color-ov: #83a2b2; }
  .p-home-recruit__container { visibility: visible; opacity: 1; }
  .p-home-recruit__copy { font-size: 6.5rem; line-height: 1; letter-spacing: -0.05em; }
  .p-home-recruit__txt { font-size: 1.3rem; line-height: 1.75; }
  .p-home-recruit__items { margin-top: 4rem; }
  .p-home-recruit__items .item { padding-left: 0; }
  .p-home-recruit__items .item::before { display: none; }
  .p-home-recruit__items .item__link { align-items: flex-start; -moz-column-gap: 2.5rem; column-gap: 2.5rem; padding: 1.5rem 0 3.5rem; font-size: 1.3rem; line-height: 1.55; text-decoration: none; }
  .p-home-recruit__items .item__txt { grid-template-columns: 10rem 1fr; padding: 0; }
  .p-home-recruit__items .item__ttl { font-size: 1.5rem; }
  .p-home-recruit__items .item .ico-sq { flex-shrink: 0; width: 3rem; }
  .p-home-recruit__more { margin-top: 2.5rem; }
  .p-home-recruit__more .c-arwlink { font-size: 1.2rem; }
  .p-home-recruit__bg::before { background: rgba(0, 0, 0, 0.8); }
  .p-home-recruit.visibled { -webkit-clip-path: none; clip-path: none; }
  .p-home-recruit.visibled .p-home-recruit__container { visibility: visible; opacity: 1; }
  .p-home-news { position: relative; margin-top: -2rem; padding-top: 6.5rem; border-radius: 2rem 2rem 0 0; background: #fff; }
  .p-home-news .p-home-section__ttl { margin-bottom: 3rem; }
  .p-home-news__head { display: block; margin-bottom: 3rem; }
  .p-home-news__categories { -moz-column-gap: 1.5rem; column-gap: 1.5rem; font-size: 1.3rem; }
  .p-home-news__categories a.active { text-decoration: underline; }
  .p-home-news__items .item { border-top-color: #d9d9d9; }
  .p-home-news__items .item::before { display: none; }
  .p-home-news__items .item__link { display: grid; grid-template-columns: auto 1fr; -moz-column-gap: 0.8rem; column-gap: 0.8rem; align-items: start; padding: 2rem 0; text-decoration: none; }
  .p-home-news__items .item__date { width: auto; font-size: 1rem; line-height: 1.7; }
  .p-home-news__items .item__categories { row-gap: 0.5rem; width: auto; }
  .p-home-news__items .item__categories li { height: 1.7rem; border-radius: 0.3rem; font-size: 1rem; }
  .p-home-news__items .item__ttl { grid-column: 1/3; margin: 1rem 0 0; font-size: 1.3rem; line-height: 1.5; }
  .p-home-news__more { padding-top: 2rem; border-top-color: #d9d9d9; }
  .p-home-news__more .c-arwlink { font-size: 1.2rem; }
  .p-home-seminar { margin-top: 10rem; padding-bottom: 10rem; }
  .p-home-seminar .p-home-section__ttl { margin-bottom: 1.5rem; }
  .p-home-seminar__head { display: block; margin-bottom: 3rem; font-size: 1.3rem; line-height: 1.75; }
  .p-home-seminar__items { overflow: hidden; margin: 0 -1.5rem; padding: 0 5rem 0 0.5rem; }
  .p-home-seminar__items .splide__list { display: flex !important; -moz-column-gap: 0; column-gap: 0; }
  .p-home-seminar__items .splide__track { overflow: visible; }
  .p-home-seminar__items .splide__arrows { display: none; }
  .p-home-seminar__items .item__link { padding: 0 1rem; text-decoration: none; }
  .p-home-seminar__items .item__status { height: 1.8rem; padding: 0 0.75rem; font-size: 1rem; }
  .p-home-seminar__items .item__date { margin-bottom: 0.5rem; font-size: 1.3rem; }
  .p-home-seminar__items .item__ttl { font-size: 1.5rem; line-height: 1.75; }
  .p-home-seminar__items .item__categories { display: none; }
  .p-home-seminar__more { margin-top: 3rem; padding-top: 2rem; border-top-color: #d9d9d9; }
  .p-home-seminar__more .c-arwlink { font-size: 1.2rem; }
  .p-home-floating { transition: bottom 0.4s cubic-bezier(0.18, 0.06, 0.23, 1) 0s; box-sizing: border-box; display: block; position: fixed; inset: auto 0.5rem calc(6rem + env(safe-area-inset-bottom)); z-index: 10; padding: 0.7rem 0.75rem; border-radius: 0.5rem; background: #83a2b2; color: #fff; box-shadow: 0 0.2rem 0.5rem rgba(0, 0, 0, 0.1); }
  .p-home-floating__ttl { margin-bottom: 0.5rem; font-size: 1.2rem; line-height: 1.75; text-align: center; }
  .p-home-floating__links { display: grid; grid-template-columns: repeat(2, 1fr); -moz-column-gap: 0.5rem; column-gap: 0.5rem; }
  .p-home-floating__links a { display: flex; justify-content: center; align-items: center; -moz-column-gap: 0.4rem; column-gap: 0.4rem; height: 5rem; border-radius: 0.5rem; background: rgba(255, 255, 255, 0.2); font-size: 1.2rem; font-weight: 600; line-height: 1.75; text-decoration: none; }
  .p-home-floating__links a .ico-sq { border-color: #fff; }
  .p-home-floating__links a .ico-sq .ico-blank { fill: #fff; }
  .p-home-floating__close { display: block; overflow: hidden; text-indent: -5260px; position: absolute; inset: -1.3rem -0.35rem auto auto; aspect-ratio: 1/1; width: 2.5rem; margin: 0; padding: 0; border: #fff solid 1px; border-radius: 50%; background: #83a2b2; box-shadow: 0 0.1rem 0.15rem rgba(0, 0, 0, 0.1); }
  .p-home-floating__close::before, .p-home-floating__close::after { content: ""; display: block; position: absolute; inset: 50% auto auto calc(50% - 0.5rem); width: 1rem; height: 1px; background: #fff; }
  .p-home-floating__close::before { rotate: 45deg; }
  .p-home-floating__close::after { rotate: -45deg; }
  .p-home-floating.hidden { transition: opacity 0.4s cubic-bezier(0.18, 0.06, 0.23, 1) 0s; opacity: 0; }
  .header:not(.header--scrolled) + .main .p-service-wrapper .sideNav__outer { background: #757879; }
  .header:not(.header--scrolled) + .main .p-service-wrapper .sideNav__outer::after { content: ""; box-sizing: border-box; display: block; position: absolute; inset: 0; z-index: 1; border: #8f9092 solid 0.7px; border-radius: inherit; pointer-events: none; }
  .header:not(.header--scrolled) + .main .p-service-wrapper .sideNav__index .c-arwlink { color: #fff; }
  .header:not(.header--scrolled) + .main .p-service-wrapper .sideNav__index.current .c-arwlink { background: rgba(255, 255, 255, 0.2); }
  .header:not(.header--scrolled) + .main .p-service-wrapper .sideNav__list > li > a { color: #fff; }
  .header:not(.header--scrolled) + .main .p-service-wrapper .sideNav__list > li.current > a { background: rgba(255, 255, 255, 0.2); }
  .header:not(.header--scrolled) + .main .p-service-wrapper .sideNav__spChildren { background: rgba(0, 0, 0, 0.3); }
  .header:not(.header--scrolled) + .main .p-service-wrapper .sideNav__spChildren .children > li > a { color: rgba(255, 255, 255, 0.5); }
  .header:not(.header--scrolled) + .main .p-service-wrapper .sideNav__spChildren .children > li.current a { background: #484c4d; color: #fff; font-weight: 600; }
  .header:not(.header--scrolled) + .p-recruit-index .sideNav__outer { background: rgba(117, 120, 121, 0.4); }
  .header:not(.header--scrolled) + .p-recruit-index .sideNav__outer::after { content: ""; box-sizing: border-box; display: block; position: absolute; inset: 0; z-index: 1; border: rgba(255, 255, 255, 0.4) solid 0.7px; border-radius: inherit; pointer-events: none; }
  .header:not(.header--scrolled) + .p-recruit-index .sideNav__index .c-arwlink { color: #fff; }
  .header:not(.header--scrolled) + .p-recruit-index .sideNav__list > li > a { color: #fff; }
  .header:not(.header--scrolled) + .p-recruit-index .sideNav__list > li > .label { color: #fff; }
  .sp-hidden { display: none; }
}
/* SP: header--scrolled 時も本家どおり「下部タブバー＋左上ロゴ」を維持（PC用の scrolled 変形を打ち消す） */
@media only screen and (max-width: 849px) {
  .header--scrolled::after { display: none; }
  .header--scrolled .header__logo { animation: none; position: absolute; top: 0; left: 1.5rem; height: 7rem; padding: 0; border-radius: 0; background: none; }
  .header--scrolled .header__logo img { opacity: 1; }
  .header--scrolled .header__logo::after { display: none; }
  .header--scrolled .header__nav { animation: none; top: auto; height: calc(5.5rem + env(safe-area-inset-bottom)); color: #242e33; mix-blend-mode: normal; }
  .header--scrolled .header__nav li:not(:first-child)::before { border-image-source: repeating-linear-gradient(0deg, #83a2b2 0, #83a2b2 1px, transparent 1px, transparent 3px); }
  .header--scrolled .header__menu { animation: none; top: auto; right: 0.75rem; bottom: calc(0.25rem + env(safe-area-inset-bottom)); height: 5rem; border-radius: 0.5rem; }
  .header__drawerInner { grid-template-columns: 1fr; padding: 9rem 2.4rem 12rem; gap: 3rem; }
  .p-home-fv__copy .en { font-family: "Montserrat", sans-serif; }
}

@media only screen and (max-width: 849px) {
  .page-home.feature-inview { --textcolor: #242e33; }
  .page-home.feature-inview .p-home-section__ttl, .page-home.feature-inview .p-home-section__sttl { --textcolor: #485b66; }
  .page-home.feature-inview .ico-sq { --border-color: #83a2b2; --bg-color: #83a2b2; --arw-color: #ffffff; --arw-color-ov: #83a2b2; }
  .page-home.feature-inview .ico-sq.ghost { --bg-color: transparent; --bg-color-ov: #83a2b2; --arw-color: #83a2b2; --arw-color-ov: #ffffff; }
  .page-home .header:not(.header--scrolled)::after { display: block; right: 1.5rem; left: 1.5rem; height: 7rem; -o-border-image: linear-gradient(to right, #83a2b2 0, #83a2b2 8.2rem, #c6d5dd 8.2rem); border-image: linear-gradient(to right, #83a2b2 0, #83a2b2 8.2rem, #c6d5dd 8.2rem); border-image-slice: 1; }
  .page-home .header--scrolled::after, .page-home .header--scrolled .header__logo { position: absolute; }
  html.logo-fit .page-home .header--scrolled::after, html.logo-fit .page-home .header--scrolled .header__logo { animation: none; position: absolute; }
  .page-home .header--scrolled .header__nav, .page-home .header--scrolled .header__menu { animation: none; position: fixed; }
  html.logo-fit .page-home .header--scrolled .header__nav, html.logo-fit .page-home .header--scrolled .header__menu { animation: none; position: fixed; }
  .page-home .main { background: none; z-index: auto; }
  .page-home.feature-inview .p-home-bg::before { opacity: 0; }
  .page-home:not(.feature-inview) .p-home-number__items .item { background: linear-gradient(145deg, #7b9cad, #83a2b2); }
}
