@charset "UTF-8";
/*
---------------------------------------------------------------------------------------------------------------------
About
---------------------------------------------------------------------------------------------------------------------
*/
#about {
  margin: 20px auto 0; }
  @media (min-width: 1024px) {
    #about {
      margin: 100px auto 0; } }
  @media (min-width: 1024px) {
    #about .about-ue {
      display: flex; } }
  #about .about-ue .about-area-L {
    padding: 0 5%; }
    @media (min-width: 768px) {
      #about .about-ue .about-area-L {
        width: 40%;
        padding: 0 0 0 3%;
        margin: auto 0 2%; } }
    #about .about-ue .about-area-L h3 {
      font-size: 2.3em;
      color: #FF9301;
      line-height: 1.0em; }
      @media (min-width: 1024px) {
        #about .about-ue .about-area-L h3 {
          font-size: 4.3em; } }
    #about .about-ue .about-area-L p {
      font-size: 1.0em;
      text-align: justify;
      margin-top: 10px; }
      @media (min-width: 1024px) {
        #about .about-ue .about-area-L p {
          font-size: 1.3em; } }
  #about .about-ue .about-area-R {
    display: flex; }
    @media (min-width: 768px) {
      #about .about-ue .about-area-R {
        width: 60%; } }
    #about .about-ue .about-area-R .title {
      width: 50%;
      display: flex;
      justify-content: end;
      margin-right: 10px; }
      @media (min-width: 1024px) {
        #about .about-ue .about-area-R .title {
          margin-right: 30px; } }
      #about .about-ue .about-area-R .title h2 {
        writing-mode: vertical-rl;
        font-size: 10vw; }
        @media (min-width: 768px) {
          #about .about-ue .about-area-R .title h2 {
            font-size: 7vw; } }
        @media (min-width: 1800px) {
          #about .about-ue .about-area-R .title h2 {
            font-size: 7em; } }
    #about .about-ue .about-area-R .photo {
      width: 50%; }
  #about .about-zu {
    max-width: 400px;
    margin: 20px auto 0;
    width: 90%; }
    @media (min-width: 1250px) {
      #about .about-zu {
        max-width: 670px; } }

/*
---------------------------------------------------------------------------------------------------------------------
slogan
---------------------------------------------------------------------------------------------------------------------
*/
#slogan {
  padding: 40px 0;
  overflow: hidden;
  position: relative; }
  @media (min-width: 1024px) {
    #slogan {
      display: flex;
      padding: 100px 0; } }
  #slogan .slogan-L {
    position: relative;
    width: 90%;
    margin: auto; }
    @media (min-width: 1024px) {
      #slogan .slogan-L {
        width: 100%;
        position: absolute;
        padding-left: 3%; } }
    #slogan .slogan-L .people-1-sp {
      position: absolute;
      top: 0;
      right: 0%;
      width: 35%; }
      @media (min-width: 1024px) {
        #slogan .slogan-L .people-1-sp {
          display: none; } }
    #slogan .slogan-L .txt {
      position: relative;
      z-index: 5; }
      #slogan .slogan-L .txt h5 {
        font-size: 1.275em;
        color: #F88C0C; }
        @media (min-width: 1024px) {
          #slogan .slogan-L .txt h5 {
            font-size: 1.875em; } }
      #slogan .slogan-L .txt .slogan-title {
        margin-top: 15px; }
        @media (min-width: 768px) {
          #slogan .slogan-L .txt .slogan-title {
            margin-top: 20px; } }
        @media (min-width: 1024px) {
          #slogan .slogan-L .txt .slogan-title {
            margin-top: 30px; } }
        #slogan .slogan-L .txt .slogan-title h2 {
          font-size: 2.0em;
          line-height: 1.05em; }
          @media (min-width: 768px) {
            #slogan .slogan-L .txt .slogan-title h2 {
              font-size: 3.5em; } }
          @media (min-width: 1024px) {
            #slogan .slogan-L .txt .slogan-title h2 {
              font-size: 5.0em; } }
      #slogan .slogan-L .txt h3 {
        font-size: 1.125em;
        line-height: 1.4em;
        margin-top: 10px; }
        @media (min-width: 1024px) {
          #slogan .slogan-L .txt h3 {
            font-size: 1.25em;
            margin-top: 20px;
            width: 50%; } }
        @media (min-width: 1250px) {
          #slogan .slogan-L .txt h3 {
            width: 100%; } }
      #slogan .slogan-L .txt h4 {
        font-size: 1.125em;
        line-height: 1.4em;
        margin-top: 20px; }
        @media (min-width: 1024px) {
          #slogan .slogan-L .txt h4 {
            font-size: 1.3em;
            margin-top: 40px; } }
      #slogan .slogan-L .txt p {
        font-size: 0.9em;
        line-height: 1.6em;
        text-align: justify;
        margin-top: 10px; }
        @media (min-width: 1024px) {
          #slogan .slogan-L .txt p {
            width: 35%;
            font-size: 1.0em;
            margin-top: 20px; } }
      #slogan .slogan-L .txt .common-btn {
        margin-top: 40px; }
  #slogan .slogan-R {
    position: relative;
    background-color: #FFF7E0;
    margin: 40px 0 0 5%;
    border-top-left-radius: 25px;
    border-bottom-left-radius: 25px; }
    @media (min-width: 1024px) {
      #slogan .slogan-R {
        width: 57%;
        margin: 0 0 0 40%;
        border-radius: 50px; } }
    #slogan .slogan-R .photo {
      position: relative;
      top: -30px;
      right: -10%;
      z-index: 5; }
      @media (min-width: 1024px) {
        #slogan .slogan-R .photo {
          top: -10%; } }
    #slogan .slogan-R .txt {
      position: relative;
      z-index: 5;
      padding: 0 5% 10%; }
      @media (min-width: 1024px) {
        #slogan .slogan-R .txt {
          padding: 0 10% 10% 15%; } }
      #slogan .slogan-R .txt h4 {
        font-size: 0.9em; }
        @media (min-width: 1024px) {
          #slogan .slogan-R .txt h4 {
            font-size: 1.25em; } }
      #slogan .slogan-R .txt h3 {
        font-size: 1.125em;
        margin-top: 3px; }
        @media (min-width: 1024px) {
          #slogan .slogan-R .txt h3 {
            font-size: 2.0em; } }
      #slogan .slogan-R .txt h2 {
        font-size: 1.5em;
        margin-top: 20px; }
        @media (min-width: 768px) {
          #slogan .slogan-R .txt h2 {
            font-size: 2.0em;
            margin-top: 30px; } }
        @media (min-width: 1024px) {
          #slogan .slogan-R .txt h2 {
            font-size: 3.5vw;
            margin-top: 40px; } }
        @media (min-width: 1800px) {
          #slogan .slogan-R .txt h2 {
            font-size: 3.0em; } }
      #slogan .slogan-R .txt p {
        font-size: 0.9em;
        line-height: 1.6em;
        text-align: justify;
        margin-top: 10px; }
        @media (min-width: 1024px) {
          #slogan .slogan-R .txt p {
            font-size: 1.0em;
            margin-top: 20px; } }
      #slogan .slogan-R .txt .common-btn {
        margin-top: 40px; }
    #slogan .slogan-R .heart-1 {
      position: absolute;
      top: 15%;
      right: -20%;
      width: 300px; }
      @media (min-width: 1024px) {
        #slogan .slogan-R .heart-1 {
          bottom: 0;
          right: 2%;
          width: 70%; } }
    #slogan .slogan-R .heart-2 {
      position: absolute;
      bottom: -8%;
      right: -32%;
      width: 50%; }
  #slogan .people-1-pc {
    display: none; }
    @media (min-width: 1024px) {
      #slogan .people-1-pc {
        position: absolute;
        bottom: 0;
        left: 20%;
        width: 30%;
        display: block; } }
    @media (min-width: 1250px) {
      #slogan .people-1-pc {
        left: 10%;
        width: 40%; } }

/*
---------------------------------------------------------------------------------------------------------------------
働き方の特徴
---------------------------------------------------------------------------------------------------------------------
*/
.benefits-flow {
  position: relative;
  overflow: hidden; }
  .benefits-flow .people-2 {
    position: absolute;
    top: 40%;
    right: -5%;
    width: 30%;
    z-index: -1; }
    @media (min-width: 1024px) {
      .benefits-flow .people-2 {
        top: inherit;
        bottom: 15%; } }

.title-area {
  position: relative;
  text-align: center;
  margin-bottom: 60px; }
  .title-area .title-txt {
    text-align: center;
    position: relative;
    display: inline-block; }
    .title-area .title-txt h4 {
      font-size: 1.25em;
      color: #F88C0C;
      margin-bottom: 4px; }
      @media (min-width: 1024px) {
        .title-area .title-txt h4 {
          font-size: 1.4em;
          margin-bottom: 10px; } }
      @media (min-width: 1250px) {
        .title-area .title-txt h4 {
          font-size: 1.8em;
          margin-bottom: 20px; } }
    .title-area .title-txt h2 {
      font-size: 2.3em;
      line-height: 1.0em; }
      @media (min-width: 1024px) {
        .title-area .title-txt h2 {
          font-size: 3.0em; } }
      @media (min-width: 1250px) {
        .title-area .title-txt h2 {
          font-size: 4.3em; } }
    .title-area .title-txt .illust-1 {
      position: absolute;
      bottom: -80%;
      right: -40%;
      width: 120px; }
      @media (min-width: 768px) {
        .title-area .title-txt .illust-1 {
          bottom: -20%;
          right: -60%; } }
      @media (min-width: 1024px) {
        .title-area .title-txt .illust-1 {
          bottom: 0;
          right: -70%;
          width: 200px; } }
      @media (min-width: 1250px) {
        .title-area .title-txt .illust-1 {
          right: -60%; } }
  .title-area .illust-2 {
    position: absolute;
    bottom: -65px;
    left: 0;
    width: 140px; }
    @media (min-width: 768px) {
      .title-area .illust-2 {
        width: 200px; } }
    @media (min-width: 1024px) {
      .title-area .illust-2 {
        width: 300px; } }

#benefits {
  position: relative;
  padding-top: 40px; }
  @media (min-width: 1024px) {
    #benefits {
      padding-top: 100px; } }
  #benefits .feature {
    margin: auto;
    width: 310px; }
    @media (min-width: 1024px) {
      #benefits .feature {
        width: auto; } }
    @media (min-width: 1024px) {
      #benefits .feature ul {
        margin-bottom: 20px;
        display: flex;
        justify-content: center; } }
    #benefits .feature ul li {
      display: inline-block;
      margin-bottom: 10px; }
      @media (min-width: 1024px) {
        #benefits .feature ul li {
          margin: 0 40px 0 0; }
          #benefits .feature ul li:last-child {
            margin-right: 0; } }
      #benefits .feature ul li .benefits-box {
        display: flex;
        align-items: center; }
        #benefits .feature ul li .benefits-box img {
          width: 40px; }
          @media (min-width: 1024px) {
            #benefits .feature ul li .benefits-box img {
              width: 80px; } }
        #benefits .feature ul li .benefits-box h4 {
          font-size: 1.125em;
          margin-left: 15px; }
          @media (min-width: 1024px) {
            #benefits .feature ul li .benefits-box h4 {
              font-size: 1.45em; } }
          @media (min-width: 1250px) {
            #benefits .feature ul li .benefits-box h4 {
              font-size: 1.75em; } }
  #benefits .kome {
    margin-top: 10px; }
    #benefits .kome p {
      font-size: 1.0em;
      text-align: center; }

/*
---------------------------------------------------------------------------------------------------------------------
採用までの流れ
---------------------------------------------------------------------------------------------------------------------
*/
#flow {
  position: relative;
  max-width: 1800px;
  width: 85%;
  margin: auto;
  padding-top: 60px; }
  @media (min-width: 1024px) {
    #flow {
      width: 94%;
      padding-top: 100px; } }
  @media (min-width: 1024px) {
    #flow .flow {
      display: flex;
      align-items: center; } }
  #flow .flow .step-box {
    background-color: #FFF7E0;
    border-radius: 30px;
    padding: 30px; }
    @media (min-width: 1024px) {
      #flow .flow .step-box {
        height: 280px;
        width: 33%;
        padding: 20px 40px; } }
    @media (min-width: 1250px) {
      #flow .flow .step-box {
        height: 320px;
        padding: 40px 60px; } }
    #flow .flow .step-box .txt {
      text-align: center; }
      #flow .flow .step-box .txt h5 {
        font-size: 1.4em; }
        @media (min-width: 1024px) {
          #flow .flow .step-box .txt h5 {
            font-size: 1.8em; } }
        @media (min-width: 1450px) {
          #flow .flow .step-box .txt h5 {
            font-size: 2.4em; } }
      #flow .flow .step-box .txt p {
        font-size: 0.9em;
        line-height: 1.8em;
        text-align: justify;
        margin-top: 10px; }
        @media (min-width: 1250px) {
          #flow .flow .step-box .txt p {
            font-size: 1.0em;
            margin-top: 20px; } }
  #flow .flow .arrow-c1 {
    width: 20px;
    margin: 10px auto 10px; }
    @media (min-width: 1024px) {
      #flow .flow .arrow-c1 {
        width: 30px;
        margin: 10px; }
        #flow .flow .arrow-c1 img {
          transform: rotate(-90deg); } }

/*
---------------------------------------------------------------------------------------------------------------------
ラジオ
---------------------------------------------------------------------------------------------------------------------
*/
#radio .heart-ye {
  position: absolute;
  left: -20%;
  bottom: 20%;
  z-index: -1;
  width: 40%;
  max-width: 800px; }
  @media (min-width: 1800px) {
    #radio .heart-ye {
      left: -5%; } }
