@charset "UTF-8";

@media screen and (max-width: 768px) {
  /* ==========================================================================
  ベース設定
  =========================================================================== */
  @font-face {
    font-family: "NotoSansJP";
    font-style: normal;
    font-weight: 400;
    src: url("../fonts/NotoSansJP-Regular.woff2") format("woff2");
    font-display: swap;
  }

  @font-face {
    font-family: "NotoSansJP";
    font-style: normal;
    font-weight: 500;
    src: url("../fonts/NotoSansJP-Medium.woff2") format("woff2");
    font-display: swap;
  }

  @font-face {
    font-family: "NotoSansJP";
    font-style: normal;
    font-weight: 700;
    src: url("../fonts/NotoSansJP-Bold.woff2") format("woff2");
    font-display: swap;
  }

  @font-face {
    font-family: "NotoSansJP";
    font-style: normal;
    font-weight: 600;
    src: url("../fonts/NotoSansJP-SemiBold.woff2") format("woff2");
    font-display: swap;
  }

  @font-face {
    font-family: "NotoSansJP_vert";
    font-style: normal;
    font-weight: 600;
    src: url("../fonts/NotoSansJP-SemiBold_vertical.woff2") format("woff2");
    font-display: swap;
  }

  @font-face {
    font-family: "NotoSansJP";
    font-style: normal;
    font-weight: 800;
    src: url("../fonts/NotoSansJP-ExtraBold.woff2") format("woff2");
    font-display: swap;
  }

  @font-face {
    font-family: "WorkSans";
    font-style: normal;
    font-weight: 500;
    src: url("../fonts/WorkSans-Medium.woff2") format("woff2");
    font-display: swap;
  }

  @font-face {
    font-family: "WorkSans";
    font-style: normal;
    font-weight: 600;
    src: url("../fonts/WorkSans-SemiBold.woff2") format("woff2");
    font-display: swap;
  }

  @font-face {
    font-family: "Inter";
    font-style: normal;
    font-weight: 700;
    src: url("../fonts/Inter_24pt-Bold.woff2") format("woff2");
    font-display: swap;
  }

  :root {
    /* カラー */
    --Main: #000;
    --Accent: #E60013;
    --Back: #C1C1C1;

    /* フォント */
    --font_ja: YakuHanJP, NotoSansJP, sans-serif;
    --font_ja_vert: NotoSansJP_vert, sans-serif;
    --font_WorkSans: WorkSans, sans-serif;
    --font_Inter: Inter, sans-serif;
  }

  .html {
    font-size: 16px;
  }

  .body {
    overflow-x: hidden;
  }

  .body:has(.hamburgerCont.active) {
    overflow: hidden;
  }

  .body a:hover {
    opacity: 1;
  }

  .forPC {
    display: none;
  }
  
  .forPC-inline {
    display: none;
  }  

  .forSP {
    display: block;
  }
  
  .forSP-inline {
    display: inline;
  }
  
  .body a.btn {
    width: 12.75rem;
  }

  .body a.btn:hover {
    color: #fff;
    background: var(--Accent);
    border: 1px solid var(--Accent);
  }

  .body a.btn:hover::after {
    color: var(--Accent);
    background: #fff;
  }


  /* ==========================================================================
  ヘッダー
  =========================================================================== */
  .header {
    justify-content: space-between;
    padding: 0.625rem 1.25rem 0.625rem 0.75rem;
  }

  .header__logo img {
    width: 4rem;
  }

  /* ハンバーガーメニュー */
  .hamburgerBtn {
    width: 2.1875rem;
    height: 1.875rem;
  }

  .hamburgerBtn::after {
    font-size: 0.6875rem;
    line-height: 0.8125rem;
  }

  .hamburgerBtn-inner {
    height: 0.625rem;
  }

  .hamburgerBtn span {
    height: 0.125rem;
  }

  .hamburgerContent {
    height: 100vh;
    padding: 5.875rem 5.33vw 5rem;
    transform: translateX(100%) translateY(0);
  }

  .hamburgerContent__wrap {
    flex-direction: column-reverse;
    justify-content: flex-start;
    align-items: flex-start;
    height: auto;
  }

  .hamburgerContent__nav {
    width: 100%;
    padding: 0 1rem;
  }

  .hamburgerContent__nav .menu {
    grid-auto-flow: row;
    grid-template-columns: repeat(1, 1fr);
    grid-template-rows: auto;
    gap: 1.75rem;
    width: 100%;
  }

  .hamburgerContent__nav .menu a {
    font-size: 1.125rem;
    font-weight: 500;
    line-height: 1.625rem;
    background: url(../img/arrow_black_02.svg) no-repeat right bottom 0.6875rem / 1.4375rem auto;
    padding-bottom: 0.375rem;
  }

  .hamburgerContent__contact {
    width: 100%;
    margin-top: 5.5rem;
  }

  .hamburgerContent__contact-wrap {
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
    align-items: center;
    gap: 1.5rem;
  }

  .body a.hamburgerContent__contact-btn {
    width: calc((100% - 1.5rem) / 2);
    height: 2.625rem;
  }

  .body a.hamburgerContent__contact-btn.btn--contact {
    font-size: 0.875rem;
    padding-right: 2rem;
    margin-top: 0;
  }

  .body a.hamburgerContent__contact-btn.btn--recruit {
    font-size: 1rem;
    padding-right: 0;
  }

  .body a.hamburgerContent__contact-btn::after {
    width: 1.625rem;
    right: 0.75rem;
  }

  .body a.hamburgerContent__contact-btn.btn--contact::after {
    background-size: 1.25rem auto;
  }

  .body a.hamburgerContent__contact-btn.btn--recruit::after {
    background-size: 0.6875rem auto;
  }

  .hamburgerContent__contact-sns {
    gap: 0.5rem;
    margin-top: 0.9375rem;
  }

  .hamburgerContent__contact-sns a[data-type="fb"] {
    width: 2.5rem;
  }

  .hamburgerContent__contact-sns a[data-type="yt"] {
    width: 2.75rem;
  }


  /* ==========================================================================
  トップページ
  =========================================================================== */
  .inner {
    width: 100%;
    padding: 0 5.33vw;
    margin: 0 auto;
  }

  .ttl {
    font-size: 2.75rem;
    gap: 0;
  }

  .ttl::before {
    line-height: 1.5rem;
  }

  /* FV */
  .home__fv {
    height: 100svh;
    max-height: 46.875rem;
    padding-top: 14vh;
    padding-left: 5.33vw;
  }

  .home__fv-bg {
    width: calc(46.875rem * var(--scale));
    height: auto;
    aspect-ratio: 1;
    padding-right: 1.25rem;
    padding-bottom: 0.625rem;
    right: auto;
    left: 54%;
    top: 74%;
    bottom: auto;
    transform: translate(-50%, -50%);
  }

  .home__fv-bg-mask {
    width: 46.875rem;
  }

  .home__fv-bg-shadow {
    bottom: -1%;
    right: calc(-1% * (var(--scale) * 4));

  }

  .home__fv-bg-img {
    width: 55.4375rem;
    left: -15%;
    top: 44%;
    bottom: auto;
    transform: translate(0, -50%);
  }

  .home__fv-catch {
    font-size: 1.875rem;
  }

  .home__fv-en {
    font-size: 0.9375rem;
    line-height: 1.5;
    margin-top: 1.375rem;
  }

  .home__fv-triangle01 {
    width: 10.13vw;
    max-width: 3.375rem;
    top: 45.27%;
    left: -1rem;
  }

  .home__fv-triangle02 {
    width: 8.53vw;
    max-width: 4.5rem;
    top: 9.13%;
    left: 57.07vw;
  }

  .home__fv-triangle03 {
    width: 20.27vw;
    max-width: 9.8125rem;
    top: 53.4%;
    right: 0.125rem;
  }

  @keyframes fluffy {
    0%, 100% {
      transform: translateY(0);
    }
    50% {
      transform: translateY(-30px);
    }
  }

  /* 導入 */
  .home__intro-content {
    /* padding-top: 3.625rem; */
    padding-bottom: 5.625rem;
  }

  .home__intro-catch {
    font-size: 1.875rem;
    gap: 1.125rem;
    position: static;
    margin: 0 auto;
    white-space: nowrap;
  }

  .home__intro-catch > span:nth-of-type(2) {
    padding-top: 4.625rem;
  }

  .home__intro-container {
    height: auto;
  }

  .home__intro-txt {
    font-size: 1rem;
    line-height: 2;
    padding-top: 2.5rem;
  }

  .home__intro-txt p + p {
    margin-top: calc(1em * 2);
  }

  .home__intro-links {
    flex-direction: column;
    gap: 2rem;
    margin-top: 3.75rem;
  }

  .home__intro-links-item {
    width: 15rem;
    padding-left: 0.5rem;
  }

  /* サポート内容 */
  .home__bg {
    background: url(../img/home_bg_sp.jpg) no-repeat center bottom / 100% auto,
                #fff;
    padding-bottom: 61.33vw;
  }

  .home__bg-wrap {
    border-radius: 0 0 0 5rem;
    padding-top: 4.375rem;
    padding-bottom: 5.5rem;
  }

  .home__bg-shape {
    width: calc(100% + 6.625rem * 2);
    top: -1.875rem;
  }

  .home__support-list {
    margin-top: 2.5rem;
  }

  .home__support-list-item {
    flex-direction: column;
    align-items: flex-start;
    gap: 0;
  }

  .home__support-list-item > img {
    width: 100%;
  }

  .home__support-list-item-num {
    margin-top: 1.5rem;
  }

  .home__support-list-item-ttl {
    margin-top: 0.5rem;
  }

  .home__support-list-item-txt {
    margin-top: 1rem;
  }

  .home__support-list--child {
    flex-direction: column;
    gap: 1.875rem;
    margin-top: 2.875rem;
  }

  .home__support-list--child .home__support-list-item {
    flex-direction: row;
  }

  .home__support-list--child .home__support-list-item > img {
    width: 8.625rem;
    height: 5.75rem;
  }

  .home__support-list--child .home__support-list-item-num {
    margin-top: 0.9375rem;
  }

  .home__support a.btn {
    margin: 3.25rem auto 0;
  }

  /* メディア実績 */
  .home__media {
    background: url(../img/home_media_bg_sp.png) no-repeat center / cover;
    border-radius: 1.625rem;
    width: calc(100% - 5.33vw * 2);
    padding: 2.25rem 3.73vw;
    margin: 3.75rem auto 0;
  }

  .home__media .ttl {
    font-size: 2.375rem;
  }

  .home__media .ttl::before {
    transform: translateX(0);
  }

  .home__media-txt {
    text-align: left;
    margin-top: 1.75rem;
  }

  .home__media-video {
    width: 100%;
    margin-top: 1.375rem;
  }



  /* アカツキだより */
  .home__topics {
    margin-top: 3.75rem;
  }

  .home__topics-contents {
    margin-top: 2.5rem;
  }

  .home__topics-item {
    flex-direction: column;
    gap: 0.625rem;
  }

  .home__topics-item:nth-of-type(n+2) {
    margin-top: 1.25rem;
  }

  .home__topics-item img {
    width: 100%;
  }

  .home__topics-item-wrap {
    padding-top: 0;
    padding-left: 0;
  }

  .home__topics-item-ttl {
    font-size: 1rem;
    margin-top: 0.375rem;
  }

  .home__topics a.btn {
    margin: 2.875rem auto 0;
  }

  /* ページリンク */
  .home__links {
    flex-direction: column;
    align-items: center;
    gap: 2.125rem;
    margin-top: 5rem;
  }

  .home__links-item {
    width: calc(100% - 5.33vw * 2);
    aspect-ratio: 335 / 167;
  }

  .home__links-item span {
    font-size: 1.125rem;
    width: calc(100% - 3.73vw * 2);
    bottom: 1.25rem;
    left: 3.73vw;
  }

  /* 画像 */
  .home__img {
    border-radius: 1.875rem;
    width: 89.34vw;
    margin-top: 5rem;
  }

  /* SDGs */
  .home__sdgs {
    margin-top: 5rem;
  }

  .home__sdgs-top {
    flex-direction: column;
    gap: 1.375rem;
  }

  .home__sdgs-top img {
    width: 100%;
  }

  .home__sdgs-list {
    width: 100%;
    margin-top: 3.75rem;
  }

  .home__sdgs-list-item {
    flex-direction: column;
    align-items: center;
    gap: 1rem;
    padding-right: 0;
  }

  .home__sdgs-list-item:nth-of-type(n+2) {
    margin-top: 3.125rem;
  }

  .home__sdgs-list-item:nth-of-type(n+2)::before {
    top: -1.5rem;
  }


  /* ==========================================================================
  固定ページ
  =========================================================================== */
  .page__top {
    height: auto;
    padding: 0;
  }

  .page__top-img {
    position: static;
  }

  .page__top-img img {
    width: 100%;
    height: 29.375rem;
    object-fit: cover;
  }

  .page__top-ttl {
    font-size: 3.875rem;
    gap: 0;
    margin-top: 1.875rem;
    margin-left: 5.33vw;
  }

  .page__top-ttl::after {
    font-size: 0.9375rem;
  }


  /* ==========================================================================
  About - アカツキ交通について
  =========================================================================== */
  .about__intro {
    padding: 0 5.33vw;
    margin-top: 2.5rem;
  }

  .about__intro::before {
    width: 9.75rem;
    height: 10.875rem;
    top: -6.5rem;
    right: -1.5rem;
    left: auto;
  }

  .about__intro-ttl {
    font-size: 1.375rem;
  }

  .about__intro-txt {
    font-size: 1rem;
    margin-top: 1.5rem;
  }

  .about__philosophy {
    margin-top: 7rem;
  }

  .about__philosophy-top {
    flex-direction: column;
    gap: 1.5rem;
    margin-top: 2.5rem;
  }

  .about__philosophy-top-catch {
    font-size: 1.375rem;
  }

  .about__philosophy-top-txt {
    font-size: 1rem;
  }

  .about__philosophy-box {
    flex-direction: column;
    gap: 1.25rem;
    padding: 2.25rem 3.73vw;
    margin-top: 2.5rem;
  }

  .about__philosophy-box:nth-of-type(3) {
    flex-direction: column;
    gap: 1.25rem;
  }

  .about__philosophy-box + .about__philosophy-box {
    margin-top: 2rem;
  }

  .about__philosophy-box > img {
    border-radius: 0.625rem;
    width: 100%;
  }

  .about__philosophy-box-wrap {
    padding-top: 0;
  }

  .about__philosophy-box-ttl {
    font-size: 1.375rem;
  }

  .about__philosophy-box-txt {
    margin-top: 1.25rem;
  }

  .about__message {
    margin-top: 5rem;
  }

  .about__message-content {
    flex-direction: column;
    gap: 1.875rem;
    margin-top: 2.5rem;
  }

  .about__message-content > img {
    width: 100%;
  }

  .about__message-txt {
    text-align: justify;
  }

  .about__message-company {
    font-size: 0.8125rem;
    line-height: 1.25rem;
    margin-top: 1.875rem;
  }

  .about__message-profile {
    gap: 0.375rem;
    margin-top: 0;
  }

  .about__message-profile-position {
    font-size: 0.8125rem;
  }

  .about__message-profile-name {
    font-size: 1.125rem;
    line-height: 1.625rem;
  }


  /* ==========================================================================
  Company - 企業情報
  =========================================================================== */
  .company__history {
    padding: 0 5.33vw;
    margin-top: 5rem;
    margin-left: 0;
  }

  .company__history-timeline {
    margin-top: 1.875rem;
  }

  .company__history-timeline-item {
    align-items: flex-start;
    gap: 3.25rem;
  }

  .company__history-timeline-item:nth-of-type(n+2) {
    margin-top: 2.75rem;
  }

  .company__history-timeline-item::before {
    height: calc(100% + 2.75rem);
    left: 6.5625rem;
  }

  .company__history-timeline-item:first-of-type::before {
    height: calc(100% - 1rem);
  }

  .company__history-timeline-item:last-of-type::before {
    height: calc(1rem + 2.75rem);
    top: -2.75rem;
    bottom: auto;
  }

  .company__history-timeline-item::after {
    width: 1rem;
    top: 0.5rem;
    left: 97px;
    transform: translateY(0);
  }

  .company__history-timeline-item-time {
    font-size: 2.125rem;
  }

  .company__history-timeline-item:nth-of-type(n) img {
    width: 100%;
    margin-top: 0.875rem;
    position: static;
  }

  .company__company {
    margin-top: 5rem;
  }

  .company__company-table {
    width: 100%;
    margin-top: 2.5rem;
  }

  .table th,
  .table td {
    padding: 1rem 2.67vw;
  }

  .company__company-table th {
    width: 7.125rem;
  }

  .company__company-map {
    padding-top: 12.5rem;
    margin-top: 2.5rem;
  }


  /* ==========================================================================
  Support Services - サポート内容
  =========================================================================== */
  .support__content {
    margin-top: 2.5rem;
  }

  .support__list {
    flex-direction: column;
    gap: 1.875rem;
    margin-top: 2.625rem;
  }

  .support__list-item {
    width: 100%;
    padding: 2.25rem 3.73vw;
  }

  .support__list-item img {
    border-radius: 1rem;
  }

  .support__list-item-ttl {
    margin-top: 0.625rem;
  }

  .support__list-item-txt {
    margin-top: 0.75rem;
  }

  .support__box {
    flex-direction: column;
    margin-top: 5rem;
  }

  .support__box-wrap {
    width: 100%;
  }

  .support__box-ttl {
    font-size: 1.5rem;
    font-weight: 600;
    line-height: 1.8;
    letter-spacing: 0.03em;
  }

  .support__box-txt {
    margin-top: 1.875rem;
  }

  .support__box img {
    border-radius: 0.875rem;
    width: 100%;
    margin-top: 1.875rem;
  }


  /* ==========================================================================
  フォーム
  =========================================================================== */
  .support__form,
  .entry__form,
  .contact__form {
    padding: 0 5.33vw;
    margin-top: 5rem;
  }

  .entry__form {
    margin-top: 60px;
  }

  .support__form-ttl,
  .entry__form-ttl,
  .contact__form-ttl {
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1.6;
    letter-spacing: 0.03em;
  }

  .support__form-content,
  .contact__form-content,
  .entry__form-content {
    width: 100%;
    padding: 3.125rem 3.73vw;
    margin-top: 2.5rem;
  }

  .body form textarea {
    height: 15rem;
  }

  .support__form-tel {
    flex-direction: column;
  }

  .body form .wpcf7-checkbox,
  .body form .wpcf7-radio {
    flex-wrap: wrap;
  }

  .body .entry__form form .wpcf7-radio {
    grid-auto-columns: auto;
  }

  .body form > p:has(.wpcf7-acceptance) {
    margin-top: 2.5rem;
  }

  .body form .wpcf7-acceptance label:has(input[type="checkbox"])::before,
  .body form .wpcf7-acceptance label:has(input[type="radio"])::before {
    margin-right: 0.75rem;
  }

  .body form > p:has(input[type="submit"]) {
    margin-top: 2.5rem;
  }

  .body .contact__form form > p:has(input[type="submit"]) {
    margin-top: 2.8125rem;
  }


  /* ==========================================================================
  Safety Initiatives - 安全への取り組み
  =========================================================================== */
  .safety__intro {
    margin-top: 2.5rem;
  }

  .safety__intro-top {
    flex-direction: column;
    align-items: flex-start;
    gap: 1.5rem;
  }

  .safety__intro-top-catch {
    font-size: 1.375rem;
    line-height: 1.6;
  }

  .safety__intro-top-txt {
    text-align: justify;
    width: 100%;
  }

  .safety__intro-list {
    flex-direction: column;
    gap: 2.5rem;
    margin-top: 3.75rem;
  }

  .safety__intro-list-item:nth-of-type(n+2)::before {
    width: 18.75rem;
    height: 1px;
    top: -1.25rem;
    bottom: auto;
    left: 50%;
    transform: translateX(-50%);
  }

  .safety__bg {
    background: url(../img/safety_bg_sp.jpg) no-repeat center top / 100% auto;
    padding-top: 16.375rem;
    margin-top: 5.75rem;
  }

  .safety__bg-wrap {
    padding: 3.125rem 0 3.875rem;
  }

  .safety__bg-wrap::before {
    width: calc(100% + 6rem * 2);
    height: 5.625rem;
    top: -3rem;
  }

  .safety__bg-wrap::after {
    width: calc(100% + 6rem * 2);
    height: 5.625rem;
    bottom: -2.375rem;
  }

  .safety__management-box {
    flex-direction: column;
    justify-content: flex-start;
    margin-top: 2.5rem;
  }

  .safety__management-box + .safety__management-box {
    margin-top: 5rem;
  }

  .safety__management-box-wrap {
    width: 100%;
    padding-top: 0;
  }

  .safety__management-box-ttl {
    font-size: 1.375rem;

  }

  .safety__management-box-txt {
    text-align: justify;
    margin-top: 1.5rem;
  }

  .safety__management-box img {
    width: 100%;
    padding: 1.875rem 4.00vw;
    margin-top: 2.5rem;
  }

  .safety__maintenance {
    margin-top: 7.375rem;
  }

  .safety__maintenance-top {
    flex-direction: column;
    align-items: flex-start;
    gap: 1.5rem;
    margin-top: 2.5rem;
  }

  .safety__maintenance-top-catch {
    font-size: 1.375rem;
  }

  .safety__maintenance-top-txt {
    text-align: justify;
    width: 100%;
  }

  .safety__maintenance-list {
    flex-direction: column;
    gap: 1.875rem;
    margin-top: 2.5rem;
  }

  .safety__maintenance-list-item {
    padding: 1rem 3.73vw 1.25rem;
  }

  .safety__maintenance-list-item-num {
    margin-left: 0.5rem;
  }

  .safety__maintenance-list-item img {
    margin-top: 0.25rem;
  }

  .safety__maintenance-list-item-ttl {
    font-size: 1.25rem;
    margin-top: 0.875rem;
  }

  .safety__training {
    border-radius: 2.5rem;
    width: calc(100% - 5.33vw * 2);
    padding: 3.25rem 3.73vw 3.125rem;
    margin-top: 5rem;
  }

  .safety__training img {
    border-radius: 0.625rem;
    width: 100%;
    margin-top: 2.5rem;
  }

  .safety__training-txt {
    margin-top: 1.5rem;
  }

  .safety__training-txt p + p {
    margin-top: calc(1em * 1.8);
  }


  /* ==========================================================================
  Q&A - よくある質問
  =========================================================================== */
  .qa__content {
    width: 100%;
    padding: 0 5.33vw;
    margin-top: 2.5rem;
  }

  .qa__wrap + .qa__wrap {
    margin-top: 5rem;
  }

  .qa__ttl {
    font-size: 1.375rem;
  }

  .qa .acc {
    margin-top: 1.5rem;
  }

  .qa .acc__btn {
    background-position: right 0.875rem center;
    padding: 1.375rem 2.625rem 1.375rem 3.875rem;
  }

  .qa .acc__btn::before {
    left: 0.875rem;
  }

  .qa .acc__cont p {
    padding: 0 0.875rem 0 3.875rem;
  }

  .qa .acc__cont p::before {
    left: 0.875rem;
  }


    /* ==========================================================================
  アカツキだより
  =========================================================================== */
  /* アーカイブ */
  .news__top {
    background: url(../img/news_top_bg_sp.png) no-repeat center top / 100% auto;
    padding-top: 9.6875rem;
    padding-bottom: 11.875rem;
  }

  .news__top-ttl {
    font-size: 2rem;
  }

  .news__contents {
    width: 100%;
    padding: 0 5.33vw;
  }

  .news__item {
    flex-direction: column;
  }

  .news__item:hover {
    opacity: 1;
  }

  .news__item img {
    width: 100%;
  }

  .news__item-wrap {
    padding-top: 1.5rem;
    padding-left: 0;
  }

  .news__item-ttl {
    font-size: 1.125rem;
    -webkit-line-clamp: 3;
  }

  .news__item-txt {
    -webkit-line-clamp: 4;
  }

  .pagination {
    width: 100%;
  }

  .news__media {
    background-image: url(../img/news_media_bg_sp.png);
    width: calc(100% - 5.33vw * 2);
    padding: 2.25rem 0.875rem;
    margin-top: 3.75rem;
  }

  .news__media .ttl {
    font-size: 2.375rem;
  }

  .news__media .ttl::before {
    transform: translateX(0);
  }

  .news__media-slider .splide__slide img {
    transform: scale(1);
  }

  .news__media-slider {
    margin-top: 1.75rem;
  }

  .news__media-slider .splide__arrow {
    width: 1.25rem;
    height: 1.25rem;
    top: 32%;
  }

  .news__media-slider .splide__arrow--prev {
    left: -3.2%;
  }

  .news__media-slider .splide__arrow--next {
    right: -3.2%;
  }

  /* 個別ページ */
  .single-news__top {
    padding: 0;
    margin-top: 8.375rem;
  }

  .single-news__top-ttl {
    font-size: 1.375rem;
    font-weight: 600;
    line-height: 1.6;
    letter-spacing: 0.02em;
    text-align: justify;
    margin-top: 0.75rem;
  }

  .single-news__content {
    padding: 0;
  }

  .single-news__under {
    padding-top: 1.875rem;
    margin-top: 3.75rem;
  }


  /* ==========================================================================
  Recruit - 採用
  =========================================================================== */
  .recruit .container {
    padding-top: 3.875rem;
  }

  .body a.recruit__bnr {
    display: none;
  }

  .recruit__top {
    display: block;
  }

  .recruit__top-content {
    padding: 1.25rem 5.33vw;
  }

  .recruit__top-catch {
    font-size: 2rem;
    display: inline-block;
  }

  .recruit__top-en {
    font-family: var(--font_WorkSans);
    font-size: 0.875rem;
    margin-top: 0.9375rem;
  }

  .recruit__top-img {
    display: none;
  }

  .recruit__sliderSec {
    display: block;
  }

  .recruit__sliderWrap {
    border: none;
  }

  .recruit__sliderWrap + .recruit__sliderWrap {
    border-top: 1px solid var(--Main);
  }

  .recruit__slider .splide__slide {
    padding-top: 0.625rem;
    padding-bottom: 1.25rem;
  }

  .frame {
    display: block;
  }

  .frame__center {
    border: none;
  }

  .entry .frame__center {
    padding-bottom: 5rem;
  }

  .recruit__side {
    display: none;
  }

  .recruitTtl {
    font-size: 2.5rem;
    display: flex;
    flex-direction: column;

  }

  .recruitTtl::after {
    content: attr(data-ja);
    font-family: var(--font_ja);
    font-size: 0.9375rem;
    line-height: 1.6;
    letter-spacing: 0;
  }

  /* intro */
  .recruit__intro-content {
    display: block;
    padding: 1.25rem 5.33vw 3.125rem;
    position: relative;
  }

  .recruit__intro-ttl {
    font-size: 1rem;
    line-height: 1.6;
  }

  .recruit__intro-catch {
    padding: 0;
    margin-top: 1.25rem;
  }

  .recruit__intro-catch p {
    font-size: 1.375rem;
  }

  .recruit__intro-txt {
    border-top: none;
    padding: 0;
    margin-top: 1.75rem;
  }

  .recruit__intro-txt p {
    font-size: 1rem;
  }

  .recruit__intro-img {
    border-left: none;
    width: 10.875rem;
    position: absolute;
    top: 3.4375rem;
    right: -2.375rem;
  }

  /* Benefits */
  .recruit__benefits-content {
    padding: 1.875rem 5.33vw 3.125rem;
  }

  .recruit__benefits-list {
    flex-direction: column;
    gap: 2rem;
    margin-top: 2.5rem;
  }

  .recruit__benefits-list-item {
    width: 100%;
  }

  .recruit__benefits-list-item-ttl {
    font-size: 1.125rem;
    margin-top: 1rem;
  }

  .recruit__benefits-list-item-txt {
    font-size: 1rem;
  }

  /* Schedule */
  .recruit__schedule-content {
    padding: 1.875rem 5.33vw 3.125rem;
  }

  .recruit__schedule-txt {
    margin-top: 2.5rem;
    position: static;
  }

  .recruit__schedule .tab {
    margin-top: 2rem;
  }

  .recruit__schedule .tab__menu-item {
    font-size: 1.25rem;
    border-bottom: 2px solid var(--Main);
    border-radius: 0.25rem;
    width: calc((100% - 1.25rem * 2) / 3);
    height: 3rem;
  }

  .recruit__schedule .tab__content {
    border-radius: 0.625rem;
    padding: 2.5rem 3.73vw;
    margin-top: 1.5rem;
  }

  .recruit__schedule .tab__content-box img {
    width: 6.75rem;
    right: 8.00vw;
    bottom: 1.25rem;
  }

  .recruit__schedule-timeline {
    flex-direction: column;
    gap: 0;
  }

  .recruit__schedule-timeline-dl {
    display: block;
    padding-bottom: 0;
    padding-left: 2rem;
  }

  .recruit__schedule-timeline-dl:nth-of-type(n+2) {
    padding-top: 1.25rem;
  }

  .recruit__schedule-timeline-dl::before {
    display: none;
  }

  .recruit__schedule-timeline-time {
    font-size: 1.25rem;
    line-height: 1.5;
  }

  .recruit__schedule-timeline-time:nth-of-type(n+2) {
    margin-top: 1.25rem;
  }

  .recruit__schedule-timeline-time::before {
    width: 1rem;
    top: 0.3em;
    left: -2rem;
  }

  .recruit__schedule-timeline-desc {
    width: 100%;
    margin-top: 0.25rem;
    position: relative;
  }

  .recruit__schedule-timeline-desc::before {
    content: "";
    display: inline-block;
    background: #BABFC2;
    height: calc(100% + 1rem + 1.25rem + 1rem);
    width: 2px;
    position: absolute;
    top: -1rem;
    left: -1.5625rem;
    z-index: -1;
  }

  .recruit__schedule-timeline-dl:last-of-type .recruit__schedule-timeline-desc:last-of-type:before {
    display: none;
  }

  .recruit__schedule-timeline-dl:first-of-type .recruit__schedule-timeline-desc {
    width: 100%;
  }

  .recruit__schedule-timeline-desc-ttl {
    font-size: 1.125rem;
  }

  .recruit__schedule-timeline-desc-txt {
    font-size: 1rem;
    margin-top: 0.5rem;
  }

  /* Crosstalk */
  .recruit__crosstalk-content {
    padding: 1.875rem 5.33vw 3.125rem;
  }

  .recruit__crosstalk-flex {
    flex-direction: column;
    margin-top: 2.5rem;
  }

  .recruit__crosstalk-flex > img {
    width: 100%;
    margin-top: 1.875rem;
  }

  .recruit__crosstalk-txt {
    font-size: 1.125rem;
    margin-top: 0;
  }

  .recruit__crosstalk a.recruitBtn {
    font-size: 1.125rem;
    width: 12.5rem;
    margin: 2.5rem auto 0;
  }

  /* Us in Numbers */
  .recruit__numbers-content {
    padding: 1.875rem 5.33vw 3.125rem;
  }

  .recruit__numbers .recruitTtl {
    margin: 0;
  }

  .recruit__numbers-grid {
    display: flex;
    flex-direction: column;
    border-left: 1px solid var(--Main);
    border-right: 1px solid var(--Main);
    padding: 0 4.27vw;
    margin-top: 2.5rem;
  }

  .recruit__numbers-grid01 {
    border-radius: 0.125rem 0.125rem 0 0;
  }

  .recruit__numbers-grid02 {
    border-top: none;
    border-bottom: 1px solid var(--Main);
    border-radius: 0 0 0.125rem 0.125rem;
    margin-top: 0;
  }

  .recruit__numbers-grid-item {
    min-height: 11.25rem;
    padding-top: 0.75rem;
    padding-bottom: 0;
  }

  .recruit__numbers-grid-item:nth-of-type(n+2) {
    border-top: 1px solid var(--Main);
    border-left: none;
  }

  .recruit__numbers-grid02 .recruit__numbers-grid-item:nth-of-type(1) {
    border-top: 1px solid var(--Main);
  }

  .recruit__numbers-grid-item-ttl {
    font-size: 1.125rem;
    line-height: 2rem;
  }

  .recruit__numbers-grid-item-mf {
    display: flex;
    justify-content: center;
    gap: 1.5rem;
    padding: 0 0 1.25rem;
    margin-top: 1.25rem;
    margin-left: 0;
  }

  .recruit__numbers-grid-item-mf-wrap {
    gap: 0.375rem;
    margin-left: 0;
  }

  .recruit__numbers-grid-item-mf-wrap:nth-of-type(n+2) {
    margin-top: 0;
  }

  .recruit__numbers-grid-item-mf img {
    width: 3rem;
  }

  .recruit__numbers-grid-item-mf-ttl {
    font-size: 1rem;
    line-height: 1.8;
    margin-left: 0.5rem;
  }

  .recruit__numbers-grid-item-txt {
    margin-top: 0.375rem;
  }

  .recruit__numbers-grid-item-txt-num {
    font-size: 2.625rem;
    line-height: 1.2;
  }

  .recruit__numbers-grid-item-txt-unit {
    font-size: 1.5rem;
    line-height: 1.2;
  }

  .recruit__numbers-grid-item-inex {
    justify-content: center;
    gap: 2.375rem;
    padding: 0 0 1.125rem;
    margin-top: 2rem;
    margin-left: 0;
  }

  .recruit__numbers-grid-item-inex img {
    width: 7.5625rem;
  }

  .recruit__numbers-grid-item-holiday {
    justify-content: center;
    gap: 1.5rem;
    padding-bottom: 0.625rem;
    margin-top: 1.375rem;
    margin-left: 0;
  }

  .recruit__numbers-grid-item-holiday img {
    width: 7.5rem;
  }

  .recruit__numbers-grid-item-holiday .recruit__numbers-grid-item-txt {
    padding-bottom: 0.625rem;
  }

  .recruit__numbers-grid-item-holiday .recruit__numbers-grid-item-txt-unit {
    font-size: 1.375rem;
  }

  .recruit__numbers-grid-item-pto {
    justify-content: center;
    gap: 2.5rem;
    padding-right: 4%;
    padding-bottom: 1rem;
    margin-top: 2.25rem;
    margin-left: 0;
  }

  .recruit__numbers-grid-item-pto img {
    width: 7.625rem;
  }

  .recruit__numbers-grid-item-pto .recruit__numbers-grid-item-txt {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
  }

  .recruit__numbers-grid-item-hours {
    justify-content: center;
    gap: 1.5rem;
    padding-bottom: 1.875rem;
    margin-top: 1.875rem;
    margin-left: 0;
  }

  .recruit__numbers-grid-item-hours img {
    width: 6.875rem;
  }

  .recruit__numbers-grid-item-hours .recruit__numbers-grid-item-txt {
    margin-top: 50px;
  }

  .recruit__numbers-grid-item-years {
    justify-content: center;
    gap: 3.125rem;
    padding-bottom: 1rem;
    margin-top: 1rem;
    margin-left: 0;
  }

  .recruit__numbers-grid-item-years .recruit__numbers-grid-item-txt {
    margin-top: 3.75rem;
  }

  .recruit__numbers-grid-item-founding {
    padding-bottom: 4rem;
  }

  .recruit__numbers-grid-item-founding .recruit__numbers-grid-item-txt {
    /* margin-top: 3rem; */
  }

  .recruit__numbers-grid-item-founding::before {
    width: 12.5rem;
    top: -0.5rem;
    left: 50%;
    transform: translateX(-50%);
  }

  /* recruit__desc */
  .recruit__desc {
    margin-top: 3.125rem;
  }
  
  .recruit__desc-sliderWrap {
    padding: 0.9375rem 0;
  }

  .recruit__desc-slider .splide__slide p {
    font-size: 3.125rem;
  }

  .recruit__desc-slider .splide__slide img {
    width: 3.75rem;
    margin-top: 0;
  }

  .recruit__desc-content {
    padding: 2.5rem 5.33vw 3.125rem;
  }

  .recruit__desc-dl {
    display: block;
    width: 100%;
    margin: 2.5rem 0 0;
  }

  .recruit__desc-dl dt {
    padding: 1rem 4.27vw;
  }

  .recruit__desc-dl dd {
    border-top: 1px solid var(--Main);
    border-left: none;
    padding: 0.9375rem 3.73vw;
  }

  /* Info */
  .recruit__info {
    padding: 0 5.33vw;
  }

  .recruit__info-grid {
    grid-template-columns: 1fr;
  }

  .recruit__info-grid01 {
    border-top: none;
  }

  .recruit__info-grid-ttl {
    font-size: 1.875rem;
    grid-column: 1;
    width: 100%;
  }

  .recruit__info-grid-desc {
    padding: 1.625rem 3.73vw;
    position: relative;
  }

  .recruit__info-grid-desc::after {
    content: "";
    display: inline-block;
    background: var(--Main);
    width: calc(100% - 3.73vw * 2);
    height: 1px;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
  }

  .recruit__info-grid-desc-ttl {
    font-size: 1.25rem;
  }

  .recruit__info-grid-desc-txt {
    margin-top: 0.5rem;
  }

  .recruit__info-grid01 .recruit__info-grid-item {
    flex-direction: column;
    align-items: center;
    gap: 1.25rem;
    grid-column: 1;
    border-left: none;
    padding: 0.625rem 0 3.75rem; 
  }

  .recruit__info-grid01 .recruit__info-grid-item img {
    width: 7.6875rem;
  }

  .recruit__info-grid-item-flex {
    flex-direction: column;
    gap: 0.5rem;
  }

  .recruit__info-grid-item-flex-wrap {
    text-align: center;
  }

  .recruit__info-grid02 .recruit__info-grid-item {
    border-left: none;
    padding: 0;
  }

  .recruit__info-grid02 .recruit__info-grid-item:nth-of-type(2) {
    margin-top: 2rem;
  }

  .recruit__info-grid02 .recruit__info-grid-item:last-of-type {
    padding-bottom: 1.75rem;
    margin-top: 2rem;
  }

  .recruit__info-grid02 .recruit__info-grid-item:nth-of-type(n+3) {
    margin-top: 2.125rem;
  }

  .recruit__info-grid02 .recruit__info-grid-item:nth-of-type(2) img {
    width: 9.125rem;
    margin-top: 0.75rem;
  }

  .recruit__info-grid02 .recruit__info-grid-item:nth-of-type(3) img {
    width: 8.875rem;
    margin-top: 0.75rem;
  }

  .recruit__info-grid02 .recruit__info-grid-item:nth-of-type(4) img {
    width: 12rem;
    margin-top: 0.75rem;
  }

  .recruit__info-grid01 .recruit__info-grid-item-ttl {
    font-size: 1.125rem;
  }

  .recruit__info-grid01 .recruit__info-grid-item-txt {
    text-align: left;
    margin-top: 0.625rem;
  }

  /* Flow */
  .recruit__flow-content {
    padding: 1.875rem 5.33vw 3.125rem;
  }

  .recruit__flow-list {
    flex-direction: column;
    gap: 1.25rem;
  }

  .recruit__flow-list-item {
    width: 100%;
    padding-top: 0;
    padding-left: 5.5rem;
  }

  .recruit__flow-list-item::before {
    width: 4.0625rem;
    aspect-ratio: 64 / 164;
  }

  .recruit__flow-list-item:nth-of-type(1)::before {
    background-image: url(../img/recruit_flow_step01_sp.png);
  }

  .recruit__flow-list-item:nth-of-type(2)::before {
    background-image: url(../img/recruit_flow_step02_sp.png);
    top: -0.1875rem;
    left: 0;
  }

  .recruit__flow-list-item:nth-of-type(3)::before {
    background-image: url(../img/recruit_flow_step03_sp.png);
    top: -0.375rem;
    left: 0;
  }

  .recruit__flow-list-item:nth-of-type(4)::before {
    background-image: url(../img/recruit_flow_step04_sp.png);
    top: -0.5625rem;
    left: 0;
  }

  .recruit__flow-list-item:nth-of-type(5)::before {
    background-image: url(../img/recruit_flow_step05_sp.png);
    top: -0.75rem;
    left: 0;
  }

  .recruit__flow-list-item-box {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 8.5rem;
    padding: 0 3.73vw;
  }

  .recruit__flow-list-item-box-ttl {
    font-size: 1rem;
  }

  .recruit__flow-list-item-box-txt {
    font-size: 0.9375rem;
  }

  /* エントリーパーツ */
  .recruit__entry-content {
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(3, auto);
  }

  .recruit__entry-img {
    height: 13.125rem;
  }

  .recruit__entry-img > div {
    background-position: 46% 40%;
    padding-bottom: 1.375rem;
  }

  .recruit__entry-img:nth-of-type(1) {
    grid-column: 1;
    grid-row: 1;
  }

  .recruit__entry-img:nth-of-type(2) {
    grid-column: 2;
    grid-row: 1;
    border-left: 1px solid var(--Main);
  }

  .recruit__entry-img:nth-of-type(4) {
    grid-column: 1;
    grid-row: 3;
  }

  .recruit__entry-img:nth-of-type(5) {
    grid-column: 2;
    grid-row: 3;
    border-left: 1px solid var(--Main);
  }

  .recruit__entry-img img {
    height: 95%;
  }

  .recruit__entry-message {
    grid-column: 1 / 3;
    grid-row: 2;
    gap: 2.375rem;
    border-top: 1px solid var(--Main);
    border-right: none;
    border-left: none;
    padding: 1.875rem 0;
  }

  .recruit__entry-message p {
    font-size: 1.875rem;
  }

  .recruit__entry-message a.recruitBtn {
    font-size: 1.375rem;
    width: 15rem;
    padding: 0.6875rem 0;
  }


  /* ==========================================================================
  Crosstalk - 対談
  =========================================================================== */
  /* アーカイブ */
  .archive__top {
    padding-top: 2.5rem;
  }

  .archive__top-ttl {
    font-size: 3.875rem;
    gap: 0;
  }

  .archive__top-ttl::after {
    font-size: 0.9375rem;
  }

  .crosstalk__blank {
    height: 3.875rem;
  }

  .crosstalk__contents {
    row-gap: 3.75rem;
    padding: 0 5.33vw 6.25rem;
    margin-top: 3.75rem;
  }

  .crosstalk__contents-item {
    width: 100%;
  }

  .crosstalk__contents-item-catch {
    gap: 0.5rem;
    margin-top: 1.125rem;
  }

  .crosstalk__contents-item-catch span {
    border-radius: 0.25rem;
    height: 2.625rem;
  }

  .crosstalk__topInterview .frame__center {
    padding: 2.5rem 5.33vw 3.125rem;
  }

  .crosstalk__topInterview-heading {
    flex-direction: column;
  }

  .crosstalk__topInterview-heading-ttl {
    font-size: 2.75rem;
  }

  .crosstalk__topInterview-heading-txt {
    font-size: 1rem;
    margin-top: 2.5rem;
  }

  .crosstalk__topInterview-img {
    width: 100%;
    margin-top: 1.875rem;
  }

  .crosstalk__topInterview-img:hover {
    opacity: 1;
  }

  .crosstalk__topInterview-img-catch {
    gap: 0.5rem;
    position: static;
    margin-top: 1.125rem;
  }

  .crosstalk__topInterview-img-catch span {
    font-size: 1.25rem;
    border-radius: 0.25rem;
    height: 2.625rem;
    padding: 0 0.5rem;
  }

  /* 個別ページ */
  .single-crosstalk .container {
    padding-top: 3.875rem;
  }

  .single-crosstalk .frame__center:not(.recruit__entry-content) {
    padding-top: 2.875rem;
    padding-bottom: 5rem;
  }

  .single-crosstalk__top-img {
    width: calc(100% - 5.33vw * 2);
  }

  .single-crosstalk__top-img-catch {
    gap: 0.5rem;
    margin-top: 1.25rem;
    position: static;
  }

  .single-crosstalk__top-img-catch span:nth-of-type(n) {
    height: 2.625rem;
    padding-left: 0.5rem;
    padding-right: 1rem;
  }

  .single-crosstalk__top-member {
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 1.25rem;
    padding: 0 5.33vw;
  }

  .single-crosstalk__top-member:has(> :only-child) {
    padding: 0 5.33vw;
  }

  .single-crosstalk__top-member-item {
    gap: 0.75rem;
  }

  .single-crosstalk__top-member-item img {
    width: 4.375rem;
  }

  .single-crosstalk__top-member-item-txt {
    margin-top: 0.375rem;
  }

  .single-crosstalk__content {
    padding-top: 5rem;
  }

  .single-crosstalk__content-wrap {
    width: 100%;
    padding: 0 5.33vw;
  }

  .single-crosstalk__content-wrap h2 {
    font-size: 1.25rem;
    padding-top: 4.125rem;
    padding-bottom: 0.625rem;
    margin-right: 0;
  }

  .single-crosstalk__content-wrap h2 + * {
    margin-top: 1.875rem;
  }

  .single-crosstalk__content-wrap dl {
    grid-template-columns: 1fr;
    row-gap: 0;
    margin-top: 1.875rem;
  }

  .single-crosstalk__content-wrap dl dt:nth-of-type(n+2) {
    margin-top: 2rem;
  }

  .single-crosstalk__content-wrap dl dd {
    width: 100%;
    margin-top: 0.875rem;
  }

  .single-crosstalk .recruit__entry {
    border-top: 1px solid var(--Main);
  }

  .single-crosstalk .footerRecruit {
    margin-top: 0;
  }

  .single-crosstalk__link {
    margin-top: 5rem;
  }

  /* Top Interview */
  .single-crosstalk.postid-143 .frame__center:not(.recruit__entry-content),
  .single-crosstalk.postid-168 .frame__center:not(.recruit__entry-content),
  .single-crosstalk.postid-22130 .frame__center:not(.recruit__entry-content) {
    padding: 0 5.33vw 5rem;
  }

  .topInterview__top {
    padding-top: 2.875rem;
  }

  .topInterview__top img {
    width: 100%;
  }

  .topInterview__top-catch {
    margin-top: 1.25rem;
    position: static;
  }

  .topInterview__top-catch span {
    font-size: 1.25rem;
    height: 2.625rem;
  }

  .topInterview__top-profile {
    margin-top: 1rem;
    position: static;
  }

  .topInterview__content {
    flex-direction: column-reverse;
    gap: 2.5rem;
    margin-top: 4.125rem;
  }

  .topInterview__conten + .topInterview__content {
    margin-top: 3.75rem;
  }

  .topInterview__content-wrap {
    width: 100%;
  }

  .topInterview__content-wrap h2 {
    font-size: 1.25rem;
  }

  .topInterview__content-wrap h2 + * {
    margin-top: 1.125rem;
  }

  .topInterview__content-wrap * + h2 {
    margin-top: 2.25rem;
  }


  .topInterview__content img {
    width: 100%;
  }



  /* ==========================================================================
  フッター
  =========================================================================== */
  /* 採用情報  */
  .footerRecruit {
    padding: 2.5rem 0 3rem;
    margin-top: 5rem;
  }

  .home .footerRecruit {
    margin-top: 0;
  }

  .footerRecruit-heading {
    flex-direction: column;
    gap: 1.875rem;
  }

  .footerRecruit-heading-txt {
    font-size: 1rem;
    margin-top: 0;
  }

  .footerRecruit-img {
    background: url(../img/footerRecruit_img_sp.png) no-repeat center / cover;
    aspect-ratio: 335 / 188;
    margin-top: 1.375rem;
  }

  .footerRecruit-img:hover {
    opacity: 1;
  }

  .footerRecruit-img-catch {
    gap: 0.25rem;
    bottom: 1rem;
    left: 0.875rem;
  }

  .footerRecruit-img-catch span {
    font-size: 1.125rem;
    height: 2rem;
    padding: 0 0.5rem;
  }

  /* お問い合わせ */
  .footerContact {
    padding: 3.75rem 0;
  }

  .footerContact__box {
    border-radius: 1.625rem;
    box-shadow: 0.625rem 0.625rem 0 0 rgba(0, 0, 0, 0.1);
    padding: 2.5rem 3.73vw;
  }

  .footerContact__box .ttl::before {
    transform: translateX(0);
  }

  .footerContact__box-txt {
    text-align: left;
    margin-top: 1.875rem;
  }

  .footerContact__box-links {
    flex-direction: column;
    align-items: center;
    gap: 1.5rem;
    margin-top: 2.125rem;
  }

  .body a.footerContact__box-links-btn {
    font-size: 1.75rem;
    justify-content: flex-start;
    width: 100%;
    max-width: 19.125rem;
    height: 4.5rem;
    padding-left: 3.375rem;
  }

  .body a.footerContact__box-links-btn::before {
    width: 1.75rem;
  }

  .body a.footerContact__box-links-btn span {
    font-size: 0.875rem;
    margin-top: 0.5rem;
    margin-left: 2rem;
  }

  .footerContact__triangle01 {
    background-image: url(../img/footerContact_triangle_red_02.png);
    width: 10.93vw;
    max-width: 5.1875rem;
    top: 29.01%;
    left: 0.3125rem;
  }

  .footerContact__triangle02 {
    display: none;
  }

  .footerContact__triangle03 {
    width: 22.93vw;
    max-width: 10.9375rem;
    top: 83.24%;
    right: 4.75rem;
  }

  .footerContact__triangle04 {
    width: 19.20vw;
    max-width: 8.875rem;
    top: 38.16%;
    right: -1.6875rem;
  }

  /* フッター */
  .footer {
    border-radius: 2.125rem 2.125rem 0 0;
  }

  .footer__inner {
    width: 100%;
    padding: 2.75rem 0 0.625rem;
  }

  .footer__logo {
    width: 3.5rem;
    margin-left: auto;
    margin-right: auto;
  }

  .footer__grid {
    grid-template-columns: 1fr;
    grid-template-rows: none;
    grid-auto-rows: auto;
    padding: 0;
  }

  .footer__nav {
    grid-column: 1;
    grid-row: 2;
  }

  .footer__nav .menu {
    grid-auto-flow: row;
    grid-template-columns: repeat(1, auto);
    grid-template-rows: auto;
    justify-items: center;
    gap: 1.25rem 3.75rem;
    padding: 0 3.73vw;
    margin-top: 2rem;
  }

  .footer__nav .menu a {
    font-weight: 600;
  }

  .footer__info {
    font-weight: 400;
    text-align: center;
    grid-column: 1;
    grid-row: 3;
    line-height: 1.5;
    margin-top: 2.375rem;
  }

  .footer__info-address {
    margin-top: 0.3125rem;
  }

  .footer__info a {
    display: inline-block;
    margin-top: 0.625rem;
  }

  .footer__contact {
    flex-direction: column-reverse;
    justify-content: center;
    align-items: center;
    gap: 0.75rem;
    border-top: none;
    padding: 0;
    margin-top: 2.5rem;
  }

  .footer__contact-sns {
    gap: 0.5rem;
  }

  .footer__contact-wrap {
    flex-direction: column-reverse;
    gap: 1.125rem;
  }

  .footer__contact a.btn {
    width: 9.75rem;
    height: 2.5rem;
  }

  .body a.btn--contact:hover {
    color: var(--Accent);
    background-color: #fff;
  }

  .body a.btn--contact:hover::after {
    background-image: url(../img/mail_icon_white.svg);
    background-color: var(--Accent);
  }

  .body a.btn--recruit:hover::after {
    background-image: url(../img/arrow_red.svg);
    background-color: #fff;
  }

  .footer__contact a.btn--contact {
    padding-right: 2rem;
  }

  .footer__contact a.btn--contact:hover {
    color: var(--Accent);
  }

  .footer__copyright {
    font-size: 0.6875rem;
    margin-top: 0.1875rem;
  }

  .footer__copyright small {
    font-size: 0.6875rem;
  }

}