#home section {
  margin-bottom: 100px; }
  @media screen and (max-width: 1023px) {
    #home section {
      margin-bottom: 60px; } }
#home #first {
  overflow-x: clip; }
  #home #first .wrap {
    display: flex;
    justify-content: space-between;
    flex-direction: row-reverse; }
    #home #first .wrap .area {
      min-width: 40%;
      padding-top: 10vw; }
    #home #first .wrap .word {
      border-radius: 20px 0px 0px 20px;
      width: 100vw;
      min-height: 30vw;
      margin-right: calc(50% - 50vw);
      z-index: -1;
      padding: 40px 0;
      text-align: right;
      position: relative; }
      #home #first .wrap .word p {
        color: #59A8C9;
        font-size: 800%;
        font-weight: 700;
        position: absolute;
        bottom: 40px;
        display: block;
        text-align: right;
        width: 100%; }
      #home #first .wrap .word img {
        border-radius: 20px 0px 0px 20px;
        position: absolute;
        top: 0;
        left: 0;
        animation: image-switch-animation 20s infinite; }
        #home #first .wrap .word img:nth-of-type(1) {
          animation-delay: 0s; }
        #home #first .wrap .word img:nth-of-type(2) {
          animation-delay: 5s; }
        #home #first .wrap .word img:nth-of-type(3) {
          animation-delay: 10s; }
        #home #first .wrap .word img:nth-of-type(4) {
          animation-delay: 15s; }
    #home #first .wrap h2 {
      color: #59A8C9;
      margin-bottom: 40px; }
#home #news .area {
  background: #fff;
  border-radius: 20px;
  padding: 45px 37px;
  display: flex;
  justify-content: space-between;
  position: relative; }
  #home #news .area h2.title {
    width: 160px; }
    #home #news .area h2.title span {
      font-size: 312.5%; }
  #home #news .area ul {
    display: flex;
    width: 70%;
    margin-left: -20px; }
    #home #news .area ul li {
      width: 100%;
      padding: 0px 40px; }
      #home #news .area ul li:last-child {
        border-left: 1px #333 solid; }
  #home #news .area > div {
    align-items: center; }
    #home #news .area > div a.more {
      align-items: center;
      transform: translate(0px, -50%);
      position: relative;
      top: 50%; }
@media screen and (max-width: 1023px) {
  #home #news .area {
    flex-wrap: wrap; }
    #home #news .area ul {
      display: block;
      width: calc(100% - 160px); }
      #home #news .area ul li {
        margin-bottom: 40px; }
        #home #news .area ul li:last-child {
          border-left: 0; } }
@media screen and (max-width: 768px) {
  #home #news .area {
    padding: 25px; }
    #home #news .area h2.title {
      width: 120px; }
    #home #news .area ul {
      width: calc(100% - 120px); }
      #home #news .area ul li {
        padding: 0; } }
@media screen and (max-width: 420px) {
  #home #news .area h2.title {
    width: 100px; }
  #home #news .area ul {
    width: calc(100% - 100px); } }
#home #recruit .wrap {
  position: relative; }
  #home #recruit .wrap img {
    clip-path: inset(0 0 round 20px 20px 20px 20px);
    max-height: 300px;
    object-fit: cover; }
  #home #recruit .wrap h2.title {
    color: #fff; }
    #home #recruit .wrap h2.title span {
      color: #fff; }
  #home #recruit .wrap .arrows {
    position: absolute;
    top: 90px;
    right: 100px;
    width: 300px; }
    #home #recruit .wrap .arrows .arrow {
      position: absolute;
      top: 30px;
      left: 240px;
      display: inline-block;
      width: 26px;
      height: 74px; }
      #home #recruit .wrap .arrows .arrow:before, #home #recruit .wrap .arrows .arrow:after {
        content: "";
        position: absolute;
        top: calc(50% - 1px);
        right: 0;
        width: 45.3px;
        height: 2px;
        border-radius: 9999px;
        background-color: #ffffff;
        transform-origin: calc(100% - 1px) 50%; }
      #home #recruit .wrap .arrows .arrow:before {
        transform: rotate(57.85deg); }
      #home #recruit .wrap .arrows .arrow:after {
        transform: rotate(-57.85deg); }
  @media screen and (max-width: 1279px) {
    #home #recruit .wrap .arrows {
      width: 160px;
      right: 140px; }
      #home #recruit .wrap .arrows .arrow {
        top: 15px;
        left: 160px; } }
  @media screen and (max-width: 768px) {
    #home #recruit .wrap img {
      max-height: 200px; }
    #home #recruit .wrap .arrows {
      right: 60px; }
      #home #recruit .wrap .arrows .arrow {
        left: 140px;
        width: 18px;
        height: 50px; }
        #home #recruit .wrap .arrows .arrow:before, #home #recruit .wrap .arrows .arrow:after {
          width: 30.8px; }
        #home #recruit .wrap .arrows .arrow:before {
          transform: rotate(56.3deg); }
        #home #recruit .wrap .arrows .arrow:after {
          transform: rotate(-56.3deg); } }
  @media screen and (max-width: 420px) {
    #home #recruit .wrap img {
      max-height: 160px; }
    #home #recruit .wrap .arrows {
      top: 70px;
      right: 30px; }
      #home #recruit .wrap .arrows .arrow {
        left: 120px;
        top: 8px; } }
#home #information {
  position: relative; }
  #home #information .wrap {
    /*h2 { color:map-get($Colors,beige); margin-bottom: 40px;
      span { display:block; color:map-get($Colors,base);}
    }*/ }
    #home #information .wrap .area {
      margin-left: 736px;
      width: 340px;
      padding-top: 20px; }
      #home #information .wrap .area p {
        margin: 30px 0; }
    #home #information .wrap p {
      margin-bottom: 20px; }
    #home #information .wrap ul {
      margin-bottom: 20px; }
      #home #information .wrap ul li {
        border-radius: 10px;
        background: #fff;
        margin-bottom: 10px;
        padding: 10px 20px; }
  #home #information .word {
    width: calc(50vw + 100px);
    padding-right: 78px;
    height: 400px;
    aspect-ratio: 5 / 2;
    background: #59A8C9;
    border-radius: 0px 20px 20px 0px;
    position: absolute;
    top: 0;
    left: 0px; }
    #home #information .word img {
      margin: 78px 78px 0px 0px;
      clip-path: inset(0 0 round 0px 20px 20px 0px);
      max-height: 400px;
      object-fit: cover; }
  @media screen and (max-width: 1279px) {
    #home #information .wrap {
      display: flex;
      flex-direction: row-reverse; }
      #home #information .wrap .area {
        margin-left: 0;
        width: 32vw; }
    #home #information .word {
      width: calc(100vw - 44vw);
      padding-right: 4vw;
      height: 30vw;
      top: 6vw; }
      #home #information .word img {
        margin: 4vw 4vw 0px 0px; } }
  @media screen and (max-width: 1023px) {
    #home #information .wrap .area {
      padding-top: 14px; }
      #home #information .wrap .area p {
        margin: 2vw 0; }
    #home #information .wrap .word img {
      top: 40px;
      right: 38px; } }
  @media screen and (max-width: 768px) {
    #home #information .wrap .area {
      width: 36vw; }
    #home #information .word {
      width: calc(100vw - 48vw);
      padding-right: 4vw; } }
  @media screen and (max-width: 500px) {
    #home #information {
      margin-bottom: 160px; }
      #home #information .wrap {
        display: block; }
        #home #information .wrap .area {
          width: 100%;
          margin-bottom: 4vw; }
          #home #information .wrap .area ul {
            display: flex;
            justify-content: space-between;
            margin-bottom: 20px; }
            #home #information .wrap .area ul li {
              width: 32%;
              padding: 2vw 3vw;
              text-align: center; }
          #home #information .wrap .area a.more {
            margin: 0px auto; }
      #home #information .word {
        position: static;
        width: 90vw;
        height: 45vw;
        margin-right: 10vw;
        padding: 3vw 6vw 0 0; } }
#home #product .wrap {
  display: flex;
  justify-content: space-between;
  margin-bottom: 44px; }
  #home #product .wrap a.more {
    height: 44px; }
#home #product .loop {
  position: relative;
  display: flex;
  width: 100vw;
  overflow: hidden; }
  #home #product .loop ul {
    padding: 0;
    width: 1920px;
    display: flex;
    flex-shrink: 0; }
    @media screen and (max-width: 1023px) {
      #home #product .loop ul {
        width: 200vw; } }
    @media screen and (max-width: 500px) {
      #home #product .loop ul {
        width: 260vw; } }
    #home #product .loop ul:first-child {
      animation: slide1 60s -30s linear infinite; }
    #home #product .loop ul:last-child {
      animation: slide2 60s linear infinite; }
    #home #product .loop ul li {
      display: block;
      width: 364px;
      margin-right: 20px;
      list-style: none;
      text-align: left;
      background: #fff;
      border-radius: 20px; }
      #home #product .loop ul li div {
        background: #59A8C9;
        width: 80px;
        line-height: 80px;
        color: #fff;
        border-radius: 20px 0px 20px 0;
        font-family: "bebas-neue-pro", sans-serif;
        font-size: 312.5%;
        text-align: center; }
      #home #product .loop ul li img {
        position: relative;
        top: -80px;
        margin-bottom: -80px;
        display: block;
        width: 100%;
        height: auto; }
      #home #product .loop ul li h3 {
        padding: 0px 20px;
        margin-bottom: 0px;
        color: #59A8C9;
        font-size: 125%;
        font-weight: 700; }
        #home #product .loop ul li h3 span {
          display: block;
          color: #333;
          font-size: 70%;
          margin-bottom: 4px; }
      #home #product .loop ul li p {
        margin: 20px;
        padding-top: 20px;
        background-image: linear-gradient(90deg, #cba57c 0 20px, #fff 20px);
        background-repeat: no-repeat;
        background-size: 100% 1px;
        background-position: top; }
      @media screen and (max-width: 1023px) {
        #home #product .loop ul li div {
          width: 60px;
          line-height: 60px;
          font-size: 230%; } }
      @media screen and (max-width: 500px) {
        #home #product .loop ul li {
          width: 60vw; }
          #home #product .loop ul li div {
            width: 40px;
            line-height: 40px;
            font-size: 200%; } }
  #home #product .loop:hover ul {
    animation-play-state: paused; }

@keyframes image-switch-animation {
  0% {
    opacity: 0; }
  5% {
    opacity: 1; }
  25% {
    opacity: 1; }
  30% {
    opacity: 0; }
  100% {
    opacity: 0; } }
@keyframes slide1 {
  0% {
    transform: translateX(100%); }
  to {
    transform: translateX(-100%); } }
@keyframes slide2 {
  0% {
    transform: translateX(0); }
  to {
    transform: translateX(-200%); } }
