@charset "UTF-8";
/*
---------------------------------------------------------------------------------------------------------------------
メインビジュアル
---------------------------------------------------------------------------------------------------------------------
*/
#career-mv {
  background-color: #FF0000;
  margin-top: 40px; }
  @media (min-width: 768px) {
    #career-mv {
      margin-top: 0; } }
  #career-mv .career-mv-in {
    position: relative;
    width: 96%;
    margin-left: 4%;
    overflow: hidden; }
    #career-mv .career-mv-in ul.photo li:first-child img {
      border-bottom-left-radius: 40px; }
    #career-mv .career-mv-in ul.photo li:last-child {
      width: 100%; }
      @media (min-width: 768px) {
        #career-mv .career-mv-in ul.photo li:last-child {
          width: 100%; } }
    @media (min-width: 1250px) {
      #career-mv .career-mv-in .mv-title {
        bottom: 50px;
        left: 50px; } }
    #career-mv .career-mv-in .mv-title .txt {
      position: absolute;
      bottom: 130px;
      left: 20px;
      width: 95%;
      z-index: 11; }
      @media (min-width: 768px) {
        #career-mv .career-mv-in .mv-title .txt {
          width: 100%;
          top: 0;
          bottom: 0;
          left: 30px;
          display: flex;
          align-items: center; } }
      @media (min-width: 1250px) {
        #career-mv .career-mv-in .mv-title .txt {
          left: 50px; } }
      #career-mv .career-mv-in .mv-title .txt h2 {
        font-size: 1em;
        display: inline-block;
        background-color: #fff;
        color: #FF0000;
        border-radius: 40px;
        padding: 4px 20px 6px; }
        @media (min-width: 1250px) {
          #career-mv .career-mv-in .mv-title .txt h2 {
            font-size: 1.4em;
            padding: 6px 25px 8px; } }
      #career-mv .career-mv-in .mv-title .txt h1 {
        font-size: 9.0vw;
        font-feature-settings: "palt";
        letter-spacing: 0.04em;
        color: #FF0000;
        margin-top: 5px; }
        @media (min-width: 768px) {
          #career-mv .career-mv-in .mv-title .txt h1 {
            font-size: 4.5vw; } }
        @media (min-width: 1250px) {
          #career-mv .career-mv-in .mv-title .txt h1 {
            margin-top: 10px; } }
      #career-mv .career-mv-in .mv-title .txt p {
        font-size: 0.8em;
        line-height: 1.8em;
        color: #fff;
        margin-top: 8px; }
        @media (min-width: 768px) {
          #career-mv .career-mv-in .mv-title .txt p {
            font-size: 0.9em; } }
        @media (min-width: 1250px) {
          #career-mv .career-mv-in .mv-title .txt p {
            font-size: 1.125em;
            margin-top: 30px; } }
    #career-mv .career-mv-in .mv-btn {
      position: absolute;
      bottom: 10px;
      left: 20px;
      z-index: 50; }
      @media (min-width: 768px) {
        #career-mv .career-mv-in .mv-btn {
          display: flex;
          bottom: 20px;
          left: 30px; } }
      @media (min-width: 1024px) {
        #career-mv .career-mv-in .mv-btn {
          bottom: 30px; } }
      @media (min-width: 1250px) {
        #career-mv .career-mv-in .mv-btn {
          margin: 40px 0 0 0;
          bottom: 50px;
          left: 50px; } }
      #career-mv .career-mv-in .mv-btn .common-btn-type1 {
        margin-bottom: 10px; }
        @media (min-width: 768px) {
          #career-mv .career-mv-in .mv-btn .common-btn-type1 {
            margin: 0 20px 0 0; } }
        @media (min-width: 1250px) {
          #career-mv .career-mv-in .mv-btn .common-btn-type1 {
            margin: 0 40px 0 0; } }
        #career-mv .career-mv-in .mv-btn .common-btn-type1:last-child {
          margin-right: 0; }

/*
---------------------------------------------------------------------------------------------------------------------
ツルハとは？
---------------------------------------------------------------------------------------------------------------------
*/
#company {
  background-color: #FF0000;
  padding: 40px 0; }
  @media (min-width: 1024px) {
    #company {
      padding: 120px 0; } }
  #company .company-in {
    max-width: 1600px;
    width: 92%;
    margin: auto; }
    @media (min-width: 1024px) {
      #company .company-in {
        display: flex; } }
    @media (min-width: 1024px) {
      #company .company-in .company-L {
        width: 40%;
        padding-right: 4%; } }
    #company .company-in .company-L .txt {
      margin-top: 30px; }
      @media (min-width: 1024px) {
        #company .company-in .company-L .txt {
          margin-top: 60px; } }
      #company .company-in .company-L .txt p {
        text-align: justify;
        color: #fff; }
    #company .company-in .company-L ul {
      margin-top: 20px;
      display: inline-block; }
      @media (min-width: 1024px) {
        #company .company-in .company-L ul {
          margin-top: 40px; } }
      @media (min-width: 1250px) {
        #company .company-in .company-L ul {
          margin-top: 60px; } }
      #company .company-in .company-L ul li {
        margin-bottom: 20px; }
        @media (min-width: 1024px) {
          #company .company-in .company-L ul li {
            margin-bottom: 30px; } }
        #company .company-in .company-L ul li:last-child {
          margin-bottom: 0; }
        #company .company-in .company-L ul li a {
          position: relative;
          display: flex; }
          #company .company-in .company-L ul li a:hover p::after {
            transform-origin: left top;
            transform: scale(1, 1); }
          #company .company-in .company-L ul li a p {
            font-size: 1.125em;
            font-weight: bold;
            color: #fff;
            margin-right: 1em;
            position: relative;
            line-height: 1.2em; }
            @media (min-width: 1024px) {
              #company .company-in .company-L ul li a p {
                font-size: 1.125em; } }
            #company .company-in .company-L ul li a p::after {
              position: absolute;
              bottom: -2px;
              left: 0;
              content: '';
              width: 100%;
              height: 1px;
              background: #fff;
              transform: scale(0, 1);
              transform-origin: right top;
              transition: transform .3s; }
          #company .company-in .company-L ul li a img {
            width: 15px; }
    #company .company-in .company-R {
      position: relative;
      margin-top: 40px; }
      @media (min-width: 1024px) {
        #company .company-in .company-R {
          width: 60%;
          margin-top: 0; } }
      #company .company-in .company-R img {
        border-radius: 20px; }
        @media (min-width: 1024px) {
          #company .company-in .company-R img {
            border-radius: 30px; } }

/*
---------------------------------------------------------------------------------------------------------------------
ツルハはこんな会社
---------------------------------------------------------------------------------------------------------------------
*/
#culture {
  padding: 60px 0 0; }
  @media (min-width: 1024px) {
    #culture {
      padding: 120px 0 0; } }
  #culture .culture-title {
    padding: 0 4%; }
    @media (min-width: 768px) {
      #culture .culture-title {
        padding: 0 5%; } }
    @media (min-width: 1024px) {
      #culture .culture-title {
        display: flex; } }
    @media (min-width: 1024px) {
      #culture .culture-title .common-title-top {
        width: 50%; } }
    #culture .culture-title .txt {
      margin-top: 20px; }
      @media (min-width: 1024px) {
        #culture .culture-title .txt {
          width: 50%;
          margin-top: 0; } }
  #culture .common-slide-card {
    margin-top: 60px; }
    @media (min-width: 1024px) {
      #culture .common-slide-card {
        margin-top: 80px; } }
    #culture .common-slide-card .swiper-slide {
      width: 280px;
      margin: 0 30px 0 0; }
      @media (min-width: 768px) {
        #culture .common-slide-card .swiper-slide {
          width: 450px;
          margin: 0 60px 0 0; } }
      @media (min-width: 1024px) {
        #culture .common-slide-card .swiper-slide {
          width: 480px; } }
      @media (min-width: 1250px) {
        #culture .common-slide-card .swiper-slide {
          width: 540px;
          margin: 0 100px 0 0; } }
      #culture .common-slide-card .swiper-slide:last-child {
        margin-right: 4%; }
    #culture .common-slide-card .culture-box {
      position: relative; }
      #culture .common-slide-card .culture-box h3 {
        font-size: 1.25em;
        height: 40px; }
        @media (min-width: 768px) {
          #culture .common-slide-card .culture-box h3 {
            font-size: 1.5em; } }
        @media (min-width: 1250px) {
          #culture .common-slide-card .culture-box h3 {
            font-size: 1.75em;
            height: inherit; } }
      #culture .common-slide-card .culture-box .contents {
        margin-top: 40px; }
        @media (min-width: 768px) {
          #culture .common-slide-card .culture-box .contents {
            display: flex; } }
        #culture .common-slide-card .culture-box .contents p {
          width: 100%;
          text-align: justify;
          margin-top: 10px; }
          @media (min-width: 768px) {
            #culture .common-slide-card .culture-box .contents p {
              width: 50%;
              margin-top: -5px;
              padding-right: 6%; } }
        #culture .common-slide-card .culture-box .contents img {
          width: 100%;
          border-radius: 10px; }
          @media (min-width: 768px) {
            #culture .common-slide-card .culture-box .contents img {
              width: 50%;
              border-radius: 20px; } }

/*
---------------------------------------------------------------------------------------------------------------------
薬剤師職・登録販売者　キャリア採用情報
---------------------------------------------------------------------------------------------------------------------
*/
#jobflame {
  position: relative;
  width: 90%;
  margin: 60px auto 0;
  border-radius: 20px; }
  @media (min-width: 768px) {
    #jobflame {
      display: flex;
      border-radius: 40px;
      width: 94%; } }
  @media (min-width: 1024px) {
    #jobflame {
      border-radius: 60px;
      margin: 120px auto 0; } }
  #jobflame.sogo {
    background-color: #FF1B20; }
  #jobflame.yakuzaishi {
    background-color: #064CCE; }
  #jobflame .txt-area {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    width: 100%;
    margin-top: 20px; }
    @media (min-width: 768px) {
      #jobflame .txt-area {
        margin: auto;
        width: 50%; } }
    @media (min-width: 1024px) {
      #jobflame .txt-area {
        width: 40%; } }
    #jobflame .txt-area .txt-area-in {
      color: #fff;
      width: 90%;
      margin: 0 auto 30px;
      max-width: 400px; }
      @media (min-width: 768px) {
        #jobflame .txt-area .txt-area-in {
          margin: 0;
          width: 80%; } }
      #jobflame .txt-area .txt-area-in .title h2 {
        font-size: 1.75em;
        line-height: 1.2em; }
        @media (min-width: 1024px) {
          #jobflame .txt-area .txt-area-in .title h2 {
            font-size: 3.0em; } }
      #jobflame .txt-area .txt-area-in .title .job-btn {
        margin-top: 16px;
        display: inline-block;
        position: relative; }
        #jobflame .txt-area .txt-area-in .title .job-btn a {
          display: flex;
          align-items: center; }
          #jobflame .txt-area .txt-area-in .title .job-btn a:hover img {
            right: -40px; }
          #jobflame .txt-area .txt-area-in .title .job-btn a h3 {
            font-size: 1.0em;
            color: #fff;
            margin-top: -1.5px; }
            @media (min-width: 1024px) {
              #jobflame .txt-area .txt-area-in .title .job-btn a h3 {
                font-size: 1.125em; } }
          #jobflame .txt-area .txt-area-in .title .job-btn a img {
            width: 24px;
            position: absolute;
            right: -32px;
            transition: .5s; }
      #jobflame .txt-area .txt-area-in p {
        margin-top: 20px; }
        @media (min-width: 1024px) {
          #jobflame .txt-area .txt-area-in p {
            margin-top: 40px; } }
      #jobflame .txt-area .txt-area-in ul {
        margin-top: 15px; }
        @media (min-width: 1024px) {
          #jobflame .txt-area .txt-area-in ul {
            margin-top: 30px; } }
        #jobflame .txt-area .txt-area-in ul li {
          margin-bottom: 10px; }
          #jobflame .txt-area .txt-area-in ul li:last-child {
            margin-bottom: 0; }
          #jobflame .txt-area .txt-area-in ul li a {
            display: block; }
            #jobflame .txt-area .txt-area-in ul li a:hover .link > img {
              left: 5px; }
            #jobflame .txt-area .txt-area-in ul li a .link > h5::after {
              position: absolute;
              bottom: 0;
              left: 0;
              content: '';
              width: 100%;
              height: 1px;
              background: #fff;
              transform: scale(0, 1);
              transform-origin: right top;
              transition: transform .5s; }
            #jobflame .txt-area .txt-area-in ul li a .link > h5:hover::after {
              transform-origin: left top;
              transform: scale(1, 1); }
            #jobflame .txt-area .txt-area-in ul li a .link {
              display: flex;
              align-items: center;
              position: relative; }
              #jobflame .txt-area .txt-area-in ul li a .link img {
                width: 15px;
                position: absolute;
                left: 0;
                transition: .5s; }
              #jobflame .txt-area .txt-area-in ul li a .link h5 {
                font-size: 0.9em;
                font-weight: 500;
                line-height: 1.2em;
                color: #fff;
                position: relative;
                margin-left: 25px;
                transition: .5s; }
                @media (min-width: 1024px) {
                  #jobflame .txt-area .txt-area-in ul li a .link h5 {
                    font-size: 1.0em; } }
  #jobflame .Slide {
    display: flex;
    justify-content: flex-end;
    width: 100%;
    overflow: hidden;
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
    position: relative; }
    @media (min-width: 768px) {
      #jobflame .Slide {
        width: 50%; } }
    @media (min-width: 1024px) {
      #jobflame .Slide {
        width: 60%; } }
    #jobflame .Slide.right {
      padding: 0 2.5%; }
      @media (min-width: 768px) {
        #jobflame .Slide.right {
          border-top-right-radius: 40px;
          border-bottom-right-radius: 40px;
          border-top-left-radius: 0;
          z-index: 10;
          padding: 0 2% 0 0; } }
      @media (min-width: 1024px) {
        #jobflame .Slide.right {
          border-top-right-radius: 60px;
          border-bottom-right-radius: 60px; } }
    #jobflame .Slide.left {
      padding: 0 2.5%; }
      @media (min-width: 768px) {
        #jobflame .Slide.left {
          border-top-left-radius: 40px;
          border-bottom-left-radius: 40px;
          border-top-right-radius: 0;
          z-index: 10;
          padding: 0 0 0 2%; } }
      @media (min-width: 1024px) {
        #jobflame .Slide.left {
          border-top-left-radius: 60px;
          border-bottom-left-radius: 60px; } }
    #jobflame .Slide .line-box {
      width: 50%;
      padding-right: 10px; }
      @media (min-width: 1024px) {
        #jobflame .Slide .line-box {
          padding-right: 20px; } }
      @media (min-width: 1600px) {
        #jobflame .Slide .line-box {
          width: 50%;
          padding-right: 25px; } }
      #jobflame .Slide .line-box:nth-child(2), #jobflame .Slide .line-box:nth-child(3) {
        padding-right: 0; }
      #jobflame .Slide .line-box .line-wrap {
        overflow: hidden;
        height: 50vh; }
        @media (min-width: 768px) {
          #jobflame .Slide .line-box .line-wrap {
            height: 60vh; } }
        @media (min-width: 1024px) {
          #jobflame .Slide .line-box .line-wrap {
            height: 760px; } }
        #jobflame .Slide .line-box .line-wrap ul {
          margin: 0; }
          #jobflame .Slide .line-box .line-wrap ul li {
            margin-bottom: 10px; }
            @media (min-width: 1024px) {
              #jobflame .Slide .line-box .line-wrap ul li {
                margin-bottom: 20px; } }
            @media (min-width: 1600px) {
              #jobflame .Slide .line-box .line-wrap ul li {
                margin-bottom: 25px; } }
            #jobflame .Slide .line-box .line-wrap ul li img {
              border-radius: 10px; }
              @media (min-width: 1250px) {
                #jobflame .Slide .line-box .line-wrap ul li img {
                  border-radius: 18px; } }
        #jobflame .Slide .line-box .line-wrap ul.line-type1 {
          animation: infinity-scroll-left1 80s infinite linear 0.5s both; }
        #jobflame .Slide .line-box .line-wrap ul.line-type2 {
          animation: infinity-scroll-left2 80s infinite linear 0.5s both; }
    #jobflame .Slide .people {
      position: absolute;
      bottom: 0;
      left: 0;
      right: 0;
      width: 50%;
      margin: auto; }
      @media (min-width: 768px) {
        #jobflame .Slide .people {
          width: 60%; } }
      @media (min-width: 1250px) {
        #jobflame .Slide .people {
          width: 50%;
          max-width: 400px; } }
@keyframes infinity-scroll-left1 {
  from {
    transform: translateY(0); }
  to {
    transform: translateY(-100%); } }
@keyframes infinity-scroll-left2 {
  from {
    transform: translateY(-100%); }
  to {
    transform: translateY(0); } }
