﻿/* ============================================
   ABOUT PAGE MOBILE STYLES
   ============================================ */

.about-mobile-tab {
  display: none;
}

@media (max-width: 991px) {
 
  body.is-nav-mobile .about-header-tab {
    display: none !important;
  }
  body.is-nav-mobile .tab-nav-item::before {
    display: none;
  }
  body.is-nav-mobile .about-mobile-tab {
    position: fixed;
    top: 69px;
    left: 0;
    width: 100%;
    z-index: 110;
    display: block;
    background: rgba(255, 255, 255, 0.84);
    backdrop-filter: blur(0.5px);
  }

  body.is-nav-mobile .about-mobile-tab-inner {
            display: flex;
        align-items: center;
        gap: 8% !important;
        padding: 8px 16px;
        width: 100%;
        min-height: 56px;
        box-sizing: border-box;
                justify-content: flex-start !important; 
  }

  body.is-nav-mobile .about-mobile-tab .tab-nav-item {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    min-height: 40px;
    padding: 8px 0;
    margin: 0;
    color: #888888;
    font-family: Roboto, "Hiragino Sans", "Meiryo", sans-serif;
    font-size: 15px;
    font-weight: 400;
    line-height: 19px;
    text-align: left;
    white-space: nowrap;
  }

  body.is-nav-mobile .about-mobile-tab .tab-nav-item:first-child,
  body.is-nav-mobile .about-mobile-tab .tab-nav-item:last-child {
    font-size: 16px;
    line-height: 24px;
  }

  body.is-nav-mobile .about-mobile-tab .tab-nav-item > span {
    font-weight: 400;
  }

  body.is-nav-mobile .about-mobile-tab .tab-nav-item.is-active,
  body.is-nav-mobile .about-mobile-tab .tab-nav-item[aria-current="page"] {
    color: #1c7dcd;
  }

  body.is-nav-mobile .about-mobile-tab .tab-nav-item.is-active > span,
  body.is-nav-mobile .about-mobile-tab .tab-nav-item[aria-current="page"] > span {
    font-weight: 700;
  }

  body.is-mobile .pCAboutOverview {
    overflow: hidden;
    background: #ffffff;
    padding-top: 52px;
  }

  body.is-mobile .pCAboutOverview .container {
    width: 100% !important;
    max-width: none;
    padding-left: 16px;
    padding-right: 16px;
  }
  body .pCAboutOverview .contentsAll.container {
padding-top: 48px !important;
padding-bottom: 16px !important;
  }
.title2{
  line-height: 1.2 !important;
}
  body.is-mobile .pCAboutOverview .contentsAll.container {
    width: 100% !important;
    min-height: 108px;
    padding: 48px 16px 16px !important;
    box-sizing: border-box;
  }
 
  body.is-mobile .pCAboutOverview .title2 {
    margin: 0;
    font-size: 34px;
    line-height: 44px;
    letter-spacing: -0.34px;
  }

  body.is-mobile .section-top-message {
    padding: 48px 0 64px;
  }

  body.is-mobile .top-message-container {
    row-gap: 24px;
  }

  body.is-mobile .section-top-message .topMessage,
  body.is-mobile .section-who-we-are .whoWeAre,
  body.is-mobile .section-company-profile .companyProfile,
  body.is-mobile .section-company-history .topMessage,
  body.is-mobile .section-more-info .more-information-title {
    font-size: 28px;
    line-height: 36px;
  }

  body.is-mobile .top-message-content {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    align-self: stretch;
    gap: 24px;
  }

  body.is-mobile .top-message-image {
    position: relative;
    order: -1;
    flex-shrink: 0;
    align-self: stretch;
    width: 100%;
    max-width: none;
    min-width: 0;
    height: 238px;
    margin-top: 0;
  }

  body.is-mobile .top-message-copy {
    display: flex;
    flex-direction: column;
    flex-shrink: 0;
    align-items: flex-start;
    align-self: stretch;
    width: 100%;
    row-gap: 24px;
  }

  body.is-mobile .top-message-dot-grid,
  body.is-mobile .top-message-dot-grid-2 {
    display: block !important;
    opacity: 1;
    visibility: visible;
    background-repeat: no-repeat;
    pointer-events: none;
    z-index: 0;
  }

  body.is-mobile .top-message-dot-grid {
    position: absolute;
    top: 0;
    left: 0;
    width: 142px;
    height: 148px;
    background-image: url('../assets/images/about_dot_grid_large.png');
    background-size: 142px 148px;
  }

  body.is-mobile .top-message-dot-grid-2 {
    position: absolute;
    top: 177px;
    right: 0;
    left: auto;
    width: 58px;
    height: 61px;
    background-image: url('../assets/images/about_dot_grid_small.png');
    background-size: 58px 61px;
  }

  body.is-mobile .top-message-photo {
    position: absolute;
    top: 33px;
    left: 23px;
    z-index: 1;
    width: calc(100% - 34px);
    max-width: calc(100% - 34px);
    height: 182px;
    object-fit: cover;
  }

  body.is-mobile .top-message-quote-icon {
    flex-shrink: 0;
    width: 42px;
    height: 50px;
  }

  body.is-mobile .top-message-quote-text {
    display: flex;
    flex-grow: 1;
    align-items: center;
    justify-content: center;
    margin-left: -24px;
    padding-top: 24px;
  }

  body.is-mobile .top-message-lead {
    width: auto;
    max-width: 100%;
    font-size: 18px;
    line-height: 27px;
    font-weight: 700;
  }

  body.is-mobile .top-message-name {
    font-size: 15px;
    line-height: 19px;
  }

  body.is-mobile .top-message-body {
    font-size: 16px;
    line-height: 24px;
  }

  body.is-mobile .top-message-toggle {
    align-self: stretch;
    justify-content: flex-start;
    margin-right: 249px;
    padding-top: 8px;
    padding-bottom: 8px;
  }

  body.is-mobile .top-message-toggle-text {
    font-size: 16px;
    line-height: 24px;
  }

  body.is-mobile .section-who-we-are {
    position: relative;
    overflow: hidden;
    padding: 64px 0;
  
    background: #edf7ff;
  }

  body.is-mobile .who-we-are-container {
    position: relative;
    z-index: 3;
    row-gap: 32px;
  }

  body.is-mobile .who-we-are-dot-grid,
  body.is-mobile .who-we-are-dot-grid-2,
  body.is-mobile .who-we-are-dot-grid-3 {
    display: block !important;
    pointer-events: none;
    background-repeat: no-repeat;
  }

  body.is-mobile .who-we-are-dot-grid-3 {
    top: 12px;
    right: 0;
    width: 200px;
    height: 120px;
    background-image: url('../assets/images/about_dot_grid_mobile_main.png');
    background-size: 200px 120px;
    background-position: top right;
    z-index: 0;
  }

  body.is-mobile .who-we-are-dot-grid {
    top: 112px;
    left: 0;
    width: 100px;
    height: 100px;
    background-image: url('../assets/images/about_dot_grid_mobile_left.png');
    background-size: 100px 100px;
    background-position: top left;
    z-index: 1;
  }

  body.is-mobile .section-who-we-are .whoWeAre,
  body.is-mobile .section-who-we-are .who-we-are-intro,
  body.is-mobile .section-who-we-are .who-we-are-detail-title,
  body.is-mobile .section-who-we-are .who-we-are-detail-text {
    margin: 0;
  }

  body.is-mobile .who-we-are-intro {
    position: relative;
    z-index: 2;
    width: 100%;
    font-size: 16px;
    line-height: 24px;
  }

  body.is-mobile .who-we-are-detail-shell {
    position: relative;
    z-index: 2;
    width: 100%;
    overflow: visible;
    isolation: isolate;
  }

  body.is-mobile .who-we-are-dot-grid-2 {
    position: absolute;
    top: 12px;
    left: 8px;
    right: auto;
    bottom: auto;
    width: 100%;
    height: 100%;
    transform: none;
    background-image: url('../assets/images/about_dot_grid_mobile_bottom.png');
    background-size: 100%;
    background-position: 0 0;
    z-index: 2;
  }

  body.is-mobile .who-we-are-detail {
    position: relative;
    z-index: 5;
    padding: 15px;
    row-gap: 8px;
    overflow: hidden;
  }

  body.is-mobile .who-we-are-detail-title {
    font-size: 22px;
    line-height: 29px;
  }

  body.is-mobile .who-we-are-detail-text {
    font-size: 16px;
    line-height: 24px;
  }

  body.is-mobile .section-company-profile {
    
    padding: 64px 0;
  }

  body.is-mobile .company-profile-container {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    row-gap: 32px;
  }

  body.is-mobile .section-company-profile .companyProfile,
  body.is-mobile .section-company-profile .company-profile-intro,
  body.is-mobile .section-company-profile .company-profile-label,
  body.is-mobile .section-company-profile .company-profile-value {
    margin: 0;
  }

  body.is-mobile .company-profile-intro {
    width: 100%;
    font-size: 16px;
    line-height: 24px;
  }

  body.is-mobile .company-profile-list {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    align-self: stretch;
    row-gap: 8px;
  }

  body.is-mobile .company-profile-row,
  body.is-mobile .company-profile-row--multiline {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    align-self: stretch;
    gap: 0;
  }

  body.is-mobile .company-profile-label {
    width: 200px;
    padding: 4px 0;
    color: #1c7dcd;
    font-size: 16px;
    font-weight: 700;
    line-height: 24px;
  }

  body.is-mobile .company-profile-value,
  body.is-mobile .company-profile-value-wrap {
    width: 100%;
    max-width: none;
    padding: 4px 0;
  }

  body.is-mobile .company-profile-value-wrap {
    display: flex;
    align-items: center;
    align-self: stretch;
    column-gap: 10px;
  }

  body.is-mobile .company-profile-value {
    color: #333333;
    font-size: 16px;
    line-height: 24px;
  }

  body.is-mobile .section-company-history {
    position: relative;
    padding: 64px 0;
    background: #edf7ff;
    overflow: visible;
  }

  body.is-mobile .section-company-history > .container {
    position: relative;
    z-index: 1;
    opacity: 1;
    filter: none;
  }

  body.is-mobile .section-company-history .container {
    row-gap: 32px;
  }

  body.is-mobile .section-company-history .backIn1952UlvacWasSt3,
  body.is-mobile .section-company-history .date,
  body.is-mobile .section-company-history .content4,
  body.is-mobile .section-company-history .content5 {
    font-family: Roboto, "Hiragino Sans", "Meiryo", sans-serif;
  }

  body.is-mobile .section-company-history .backIn1952UlvacWasSt3 {
    margin: 0;
    font-size: 16px;
    line-height: 24px;
    color: #4d4d4d;
  }

  body.is-mobile .history-content {
    display: flex;
    flex-direction: column;
    gap: 24px;
    margin-top: 0;
  }

  body.is-mobile .company-history-intro {
    width: 100%;
    margin: 0;
    color: #333333;
    font-size: 16px;
    line-height: 24px;
  }

  body.is-mobile .company-history-desktop {
    display: none;
  }

  body.is-mobile .company-history-mobile {
    display: flex;
    flex-direction: column;
    gap: 24px;
    width: 100%;
    align-self: stretch;
  }

  body.is-mobile .company-history-mobile-image,
  body.is-mobile .history-image,
  body.is-mobile .pic {
    display: block;
    flex: 0 0 100%;
    align-self: stretch;
    position: sticky;
    top: 136px;
    z-index: 10;
    width: 100%;
    max-width: 100%;
    margin-left: 0;
    margin-right: 0;
    max-height: none;
    height: 200px;
    aspect-ratio: auto;
    border-radius: 8px;
    overflow: hidden;
    object-fit: cover;
    background: transparent;
  }

  body.is-mobile .company-history-mobile-image-frame {
    position: relative;
    width: 100%;
    height: 100%;
    border-radius: inherit;
    overflow: hidden;
    background: transparent;
    isolation: isolate;
  }

  body.is-mobile .company-history-image-year {
    top: 12px;
    left: 12px;
    min-height: 24px;
    padding: 3px 10px;
    font-size: 12px;
    line-height: 18px;
  }

  body.is-mobile .company-history-image-status {
    top: 12px;
    left: 12px;
    min-height: 24px;
    padding: 3px 10px;
    font-size: 12px;
    line-height: 18px;
  }

  body.is-mobile .company-history-mobile-image .timeline-img,
  body.is-mobile .company-history-mobile-image .timeline-img--overlay,
  body.is-mobile .history-image .timeline-img,
  body.is-mobile .pic .timeline-img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    background-color: #edf7ff;
  }

  body.is-mobile .company-history-mobile-image .timeline-img,
  body.is-mobile .company-history-mobile-image .timeline-img--overlay {
    transition-duration: 0.5s;
  }

  body.is-mobile .company-history-mobile-image .timeline-img[src*="ulvac-logo.png"],
  body.is-mobile .history-image .timeline-img[src*="ulvac-logo.png"],
  body.is-mobile .pic .timeline-img[src*="ulvac-logo.png"] {
    object-fit: contain;
  
  }

  body.is-mobile .company-history-timeline-column {
    width: 100%;
  }

  body.is-mobile .company-history-mobile-list {
    position: relative;
  }

  body.is-mobile .company-history-scroll-hint {
    align-self: flex-start;
    margin-bottom: 8px;
    font-size: 11px;
    line-height: 16px;
    letter-spacing: 0.06em;
  }

  body.is-mobile .timeline-list,
  body.is-mobile .list2,
  body.is-mobile .mobile-list,
  body.is-mobile .company-history-mobile-list {
    display: flex;
    flex-direction: column;
    gap: 0;
    height: min(700px, calc(100vh - 320px));
    min-height: 520px;
    padding-bottom: 48px;
    box-sizing: border-box;
    overflow-x: hidden;
    overflow-y: auto;
    width: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: none;
    scrollbar-width: none;
  }

  body.is-mobile .timeline-list::-webkit-scrollbar,
  body.is-mobile .mobile-list::-webkit-scrollbar,
  body.is-mobile .company-history-mobile-list::-webkit-scrollbar {
    display: none;
  }

  body.is-mobile .timeline-item,
  body.is-mobile .timeline-item-last,
  body.is-mobile .item2,
  body.is-mobile .item3,
  body.is-mobile .item4,
  body.is-mobile .item5,
  body.is-mobile .company-history-timeline-item {
    display: flex;
    align-items: stretch;
    column-gap: 24px;
    min-height: auto;
    cursor: pointer;
  }

  body.is-mobile .barVertical,
  body.is-mobile .barVertical2,
  body.is-mobile .bar-vertical,
  body.is-mobile .company-history-bar {
    width: 14px;
    align-items: center;
  }

  body.is-mobile .ellipse5,
  body.is-mobile .ellipse6,
  body.is-mobile .ellipse7,
  body.is-mobile .bar-dot,
  body.is-mobile .company-history-dot {
    width: 14px;
    height: 14px;
  }

  body.is-mobile .rectangle,
  body.is-mobile .rectangle2,
  body.is-mobile .rectangle3,
  body.is-mobile .bar-line,
  body.is-mobile .company-history-bar-line {
    width: 2px;
    background: #daecfa;
    flex: 1 1 auto;
  }

  body.is-mobile .timeline-text,
  body.is-mobile .text8,
  body.is-mobile .text9,
  body.is-mobile .text10,
  body.is-mobile .text11,
  body.is-mobile .text12,
  body.is-mobile .item-text,
  body.is-mobile .company-history-item-text {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding: 16px 0;
    padding-bottom: 16px;
  }

  body.is-mobile .section-company-history .date {
    margin: 0;
    color: #1a1a1a;
    font-size: 16px;
    font-weight: 700;
    line-height: 24px;
  }

  body.is-mobile .section-company-history .content4,
  body.is-mobile .section-company-history .content5 {
    margin: 0;
    color: #666666;
    font-size: 16px;
    line-height: 24px;
  }

  body.is-mobile .item-year,
  body.is-mobile .company-history-year {
    margin: 0;
    color: #949494;
    font-size: 16px;
    line-height: 24px;
    font-weight: 700;
  }

  body.is-mobile .item-desc,
  body.is-mobile .company-history-desc {
    margin: 0;
    color: #949494;
    font-size: 16px;
    line-height: 24px;
  }

  body.is-mobile .timeline-item.active .item-year,
  body.is-mobile .company-history-timeline-item.active .item-year {
    color: #1a1a1a;
  }

  body.is-mobile .timeline-item.active .item-desc,
  body.is-mobile .company-history-timeline-item.active .item-desc {
    color: #666666;
  }

  body.is-mobile .company-history-button {
    width: 100%;
  }

  body.is-mobile .section-more-info {
    min-height: 604px;
    padding: 64px 0;
    background: #ffffff;
  }

  body.is-mobile .more-info-container {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    row-gap: 32px;
  }

  body.is-mobile .section-more-info .more-information-title,
  body.is-mobile .section-more-info .more-info-card-title,
  body.is-mobile .section-more-info .more-info-card-link-text {
    margin: 0;
  }

  body.is-mobile .more-info-grid {
    display: flex;
    flex-direction: column;
    width: 100%;
    row-gap: 16px;
  }

  body.is-mobile .more-info-row {
    display: flex;
    flex-direction: column;
    grid-template-columns: 1fr;
    row-gap: 16px;
    width: 100%;
  }

  body.is-mobile .more-info-card {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    align-self: stretch;
    width: 100%;
    min-height: 0;
    min-height: 90px;
    border: 0;
    border-radius: 8px;
    box-shadow: none;
    background-color: #1164a7;
    background-image: linear-gradient(
      284.07deg,
      #0d5895 0.01%,
      #1164a7 50%,
      #4da8f5 99.99%
    );
    background-repeat: no-repeat;
    background-size: 100% 100%;
    background-position: 0 0;
    background-clip: padding-box;
    overflow: hidden;
    padding: 16px;
    row-gap: 7px;
  }

  body.is-mobile .more-info-card-title {
    align-self: stretch;
    font-size: 18px;
    line-height: 27px;
  }

  body.is-mobile .more-info-card-link {
    display: flex;
    align-items: center;
    align-self: stretch;
    justify-content: flex-end;
  }

  body.is-mobile .more-info-card-link-text {
    font-size: 16px;
    line-height: 24px;
  }

  body.is-mobile .more-info-card-link-icon {
    width: 24px;
    height: 24px;
    flex-shrink: 0;
  }

  body.is-mobile .more-info-card:hover {
    border: 0;
    box-shadow: none;
    background-color: #1164a7;
    background-image: linear-gradient(
      284.07deg,
      #0d5895 0.01%,
      #1164a7 50%,
      #4da8f5 99.99%
    );
  }

  body.is-mobile .more-info-card:hover .more-info-card-title,
  body.is-mobile .more-info-card:hover .more-info-card-link-text {
    color: #ffffff;
  }

  body.is-mobile .more-info-card:hover .more-info-card-link-icon {
    filter: brightness(0) invert(1);
  }
}
