@charset "UTF-8";
/* 共通 */
/* table */
/* catColor */
/* set */
/* load */
/* %extend */
/* wp-block-button__link */
/* common 共通 */
.blockLink {
  cursor: pointer; }

/* top-mainSlide */
#top-mainSlide {
  position: relative;
  width: 100%;
  margin: 0 auto 3rem auto;
  /* sliderKV */ }
  #top-mainSlide ul {
    margin-bottom: 0; }
  #top-mainSlide .sliderKVWrap {
    /* 日本語・英語版差異あり注意 */
    position: relative; }
    @media print, screen and (min-width: 768px) {
      #top-mainSlide .sliderKVWrap {
        margin-bottom: 3rem; } }
    @media print, screen and (min-width: 1300px) {
      #top-mainSlide .sliderKVWrap {
        margin-bottom: 0; } }
    #top-mainSlide .sliderKVWrap .sliderKV {
      margin-left: auto;
      position: relative;
      overflow: hidden; }
      @media screen and (max-width: 767px) {
        #top-mainSlide .sliderKVWrap .sliderKV {
          margin-bottom: 0 !important; } }
      @media print, screen and (min-width: 768px) {
        #top-mainSlide .sliderKVWrap .sliderKV {
          margin-bottom: 0 !important; } }
      #top-mainSlide .sliderKVWrap .sliderKV .slick-slide {
        background-size: cover; }
        #top-mainSlide .sliderKVWrap .sliderKV .slick-slide a {
          display: block; }
        #top-mainSlide .sliderKVWrap .sliderKV .slick-slide .copyText {
          position: absolute;
          display: flex;
          flex-wrap: wrap;
          z-index: 1;
          box-sizing: border-box; }
          @media screen and (max-width: 767px) {
            #top-mainSlide .sliderKVWrap .sliderKV .slick-slide .copyText {
              align-content: flex-end;
              align-items: center;
              background: linear-gradient(rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.4) 40%, rgba(255, 255, 255, 0.8) 60%);
              padding: 4rem 1.6rem 6rem 1.6rem;
              height: 70vw;
              width: 100%;
              box-sizing: border-box;
              bottom: 0;
              left: 0; } }
          @media print, screen and (min-width: 768px) {
            #top-mainSlide .sliderKVWrap .sliderKV .slick-slide .copyText {
              background-color: rgba(255, 255, 255, 0.5);
              align-content: center;
              align-items: center;
              padding: 2rem 3rem;
              height: 25vw;
              /* EN 30vw */
              max-height: 300px;
              width: 50%;
              top: 50%;
              right: 5%;
              transform: translateX(0%) translateY(-50%); } }
          @media print, screen and (min-width: 1300px) {
            #top-mainSlide .sliderKVWrap .sliderKV .slick-slide .copyText {
              padding: 3rem 4rem;
              /* JPN only */
              height: 35vh;
              min-height: 250px;
              max-height: 300px;
              width: 45%;
              /* JPN only */
              left: 50%;
              right: auto;
              /* JPN only */ } }
          #top-mainSlide .sliderKVWrap .sliderKV .slick-slide .copyText p {
            width: 100%;
            box-sizing: border-box;
            font-weight: bold;
            margin-bottom: 0 !important; }
            @media screen and (max-width: 767px) {
              #top-mainSlide .sliderKVWrap .sliderKV .slick-slide .copyText p {
                letter-spacing: 0.2em;
                /* EN 0.1em; */ } }
  @media only screen and (max-width: 767px) and (orientation: portrait) {
    #top-mainSlide .sliderKVWrap .sliderKV .slick-slide .copyText p {
      font-size: 5vw; } }
            @media print, screen and (min-width: 768px) {
              #top-mainSlide .sliderKVWrap .sliderKV .slick-slide .copyText p {
                letter-spacing: 0.1em;
                /* EN 0.1em */
                font-size: 135%; } }
            @media print, screen and (min-width: 1300px) {
              #top-mainSlide .sliderKVWrap .sliderKV .slick-slide .copyText p {
                letter-spacing: 0.2em;
                font-size: 170%;
                /* EN 100% */ } }
          #top-mainSlide .sliderKVWrap .sliderKV .slick-slide .copyText .btn {
            margin-top: 1.3em; }
            @media screen and (max-width: 767px) {
              #top-mainSlide .sliderKVWrap .sliderKV .slick-slide .copyText .btn {
                margin-top: 1.3rem; } }
            #top-mainSlide .sliderKVWrap .sliderKV .slick-slide .copyText .btn a {
              display: inline-block;
              height: auto;
              width: auto;
              vertical-align: bottom;
              font-size: 1rem; }
              @media screen and (max-width: 767px) {
                #top-mainSlide .sliderKVWrap .sliderKV .slick-slide .copyText .btn a {
                  letter-spacing: 0.25em;
                  padding-left: 1.3rem;
                  padding-right: 3.3rem; } }
      #top-mainSlide .sliderKVWrap .sliderKV .slick-slide > a,
      #top-mainSlide .sliderKVWrap .sliderKV .slick-slide {
        height: 50vw; }
        @media screen and (max-width: 767px) {
          #top-mainSlide .sliderKVWrap .sliderKV .slick-slide > a,
          #top-mainSlide .sliderKVWrap .sliderKV .slick-slide {
            height: 120vw; } }
        @media print, screen and (min-width: 768px) {
          #top-mainSlide .sliderKVWrap .sliderKV .slick-slide > a,
          #top-mainSlide .sliderKVWrap .sliderKV .slick-slide {
            height: 50vw; } }
        @media print, screen and (min-width: 1300px) {
          #top-mainSlide .sliderKVWrap .sliderKV .slick-slide > a,
          #top-mainSlide .sliderKVWrap .sliderKV .slick-slide {
            height: 50vw;
            max-height: 550px; } }
  #top-mainSlide #slide_nav {
    height: 30px;
    position: absolute;
    bottom: 1em;
    left: 1em; }
    #top-mainSlide #slide_nav #slide_nav_inner {
      position: relative;
      font-size: 1em;
      line-height: 1;
      align-items: center;
      display: flex;
      justify-content: flex-start;
      flex-direction: row; }
      #top-mainSlide #slide_nav #slide_nav_inner .slick-arrow {
        cursor: pointer;
        position: relative;
        right: 0;
        left: 0;
        color: black;
        display: inline-block; }
        #top-mainSlide #slide_nav #slide_nav_inner .slick-arrow:hover {
          opacity: 0.5; }
        #top-mainSlide #slide_nav #slide_nav_inner .slick-arrow.prev-arrow {
          order: 1; }
        #top-mainSlide #slide_nav #slide_nav_inner .slick-arrow.next-arrow {
          order: 3; }
      #top-mainSlide #slide_nav #slide_nav_inner ul {
        order: 2; }
      #top-mainSlide #slide_nav #slide_nav_inner img {
        vertical-align: bottom; }
    #top-mainSlide #slide_nav .slick-dots {
      position: relative;
      bottom: 0;
      vertical-align: middle; }
      #top-mainSlide #slide_nav .slick-dots li {
        vertical-align: middle;
        opacity: 1 !important; }
        #top-mainSlide #slide_nav .slick-dots li button:hover::before {
          opacity: 0.5; }
        #top-mainSlide #slide_nav .slick-dots li button::before {
          cursor: pointer;
          line-height: 30px;
          content: '';
          width: 15px;
          height: 15px;
          top: 50%;
          transform: translateY(-50%);
          background-color: #666;
          opacity: 0.9;
          border: none;
          border-radius: 100%; }
        #top-mainSlide #slide_nav .slick-dots li.slick-active button::before {
          border: none;
          content: '';
          background-color: #1177BA;
          opacity: 1;
          border-radius: 100%; }

/* top-noticeArea */
#top-noticeArea {
  padding: 1em 0;
  margin-bottom: 4rem;
  position: relative;
  background-color: #eee; }
  #top-noticeArea h2 {
    margin: 0.5em auto;
    font-size: 150%;
    padding: 0;
    color: #1177BA;
    font-weight: bold; }
    @media print, screen and (min-width: 1300px) {
      #top-noticeArea h2 {
        font-size: 130%;
        margin-top: -2em;
        position: absolute;
        top: 0;
        left: 50%;
        transform: translateX(-50%); } }
  #top-noticeArea ul {
    margin: auto; }
    #top-noticeArea ul li {
      margin: 0.5em 0; }
      #top-noticeArea ul li a {
        text-decoration: none;
        display: inline-block;
        line-height: 1.5; }
        @media print, screen and (min-width: 768px) {
          #top-noticeArea ul li a {
            position: relative;
            text-decoration: none;
            line-height: 1.4em; }
            #top-noticeArea ul li a::before {
              content: '';
              display: block;
              width: 0%;
              height: 1px;
              background-color: #1177BA;
              position: absolute;
              bottom: 0.2em;
              left: 0; }
            #top-noticeArea ul li a:hover::before {
              width: 100%; } }
        @media screen and (max-width: 767px) {
          #top-noticeArea ul li a:active, #top-noticeArea ul li a:hover {
            text-decoration: none; } }

/* top-newsArea */
#top-newsArea {
  margin-bottom: 5rem; }
  @media print, screen and (min-width: 768px) {
    #top-newsArea {
      width: 90%;
      max-width: 1100px;
      margin: 5rem auto 5rem auto; } }
  @media print, screen and (min-width: 768px) {
    #top-newsArea a.btn {
      max-width: 50%; } }

/* top-newsArea */
/* top-developArea */
@media print, screen and (min-width: 1300px) {
  #top-developArea {
    background-image: url(../img/top-developarea-bg.jpg);
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    position: relative;
    padding: 8rem 2rem 2rem 2rem; } }

#top-developArea .bgimgBtn .copy {
  background-image: url(../img/top-developarea-bg.jpg);
  background-position: top center;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  padding: 20rem 5% 5rem 5%; }
  @media print, screen and (min-width: 1300px) {
    #top-developArea .bgimgBtn .copy {
      background-image: none;
      padding: 0 0 18rem 0; } }
  @media print, screen and (min-width: 768px) {
    #top-developArea .bgimgBtn .copy .inner {
      position: relative; } }
  @media screen and (max-width: 767px) {
    #top-developArea .bgimgBtn .copy .inner img {
      width: 50vw;
      position: absolute;
      left: 5vw;
      right: auto;
      top: 5vw;
      transform: none; } }
  @media print, screen and (min-width: 768px) {
    #top-developArea .bgimgBtn .copy .inner img {
      width: 40vw;
      position: absolute;
      right: 5vw;
      top: 0;
      transform: translateY(-50%); } }
  @media print, screen and (min-width: 1300px) {
    #top-developArea .bgimgBtn .copy .inner img {
      transform: none;
      top: 0;
      height: 22rem;
      width: auto;
      top: auto;
      right: 0;
      bottom: -15rem; } }

/* top-developArea */
/* top-infection */
#top-infection {
  background-size: cover;
  background-position: center center;
  padding: 3.5rem 1rem 2rem 1rem;
  margin-bottom: 4rem; }
  @media print, screen and (min-width: 768px) {
    #top-infection {
      background-image: url(../img/top-infection-bg.jpg); } }
  @media screen and (max-width: 767px) {
    #top-infection {
      background-image: url(../img/top-infection-bg_sp.jpg); } }
  @media screen and (max-width: 767px) {
    #top-infection .copy p {
      font-size: 120%; } }

/* top-infection */
/* top-bannerArea */
@media print, screen and (min-width: 768px) {
  #top-bannerArea {
    padding: 2em; } }

#top-bannerArea ul {
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 1rem;
  margin-bottom: 0; }
  #top-bannerArea ul li {
    margin-bottom: 1rem;
    position: relative;
    z-index: 1; }
    #top-bannerArea ul li a {
      display: block;
      text-decoration: none;
      line-height: 1.3; }
      #top-bannerArea ul li a .textBlock {
        font-size: 120%;
        width: 100%;
        box-sizing: border-box;
        position: relative; }
        @media screen and (max-width: 767px) {
          #top-bannerArea ul li a .textBlock {
            padding: 1em; } }
        @media print, screen and (min-width: 768px) {
          #top-bannerArea ul li a .textBlock {
            padding: 1em 2em; } }
        #top-bannerArea ul li a .textBlock::after {
          background-image: url(../img/arrow_right.svg);
          background-repeat: no-repeat;
          content: '';
          width: 2.5em;
          height: 0.5em;
          vertical-align: middle;
          display: inline-block;
          margin-left: 1em;
          position: absolute;
          top: 50%;
          transform: translateY(-50%);
          right: 1em; }
      #top-bannerArea ul li a span {
        display: block;
        font-size: 50%;
        letter-spacing: 0.1em;
        margin-top: 0.5em; }
    #top-bannerArea ul li img {
      width: 100%;
      vertical-align: bottom; }
    #top-bannerArea ul li.company a {
      background-color: #1177BA;
      color: #fff; }
    #top-bannerArea ul li.sustainability a {
      background-color: #36AB80;
      color: #fff; }
    #top-bannerArea ul li.medical a {
      background-color: #424E97;
      color: #fff; }
    #top-bannerArea ul li.recruit a {
      background-color: #369FAB;
      color: #fff; }
