main {
    background-color: #FBFAF8;
    color: #434E48;
    line-height: 2.2;
}

#top h1{
    text-align: left;
    margin:0 0 3vw;
}

p {
  font-size:0.938vw;
}

.recruit_visual {
    display: flex;
    justify-content: space-between;
    position: relative;
    z-index: 0;
}

.ttl_txt {
  width: 40vw;
  margin: 3vw;
  padding:4vw 3vw 0;
}

.ttl_txt p{
  text-align: left;
}

.ttl_en {
    position: absolute;
    left: 0%;
    bottom: 0%;
    color: #434E48;
    font-size: 14rem !important;
    opacity: 0.1 !important;
    line-height: 1.0;
    text-align: left;
}

.title::after {
    display: none;
}

.ttl_img img{
    width: 60vw;
    height: 90vh;
    object-fit: cover;
    vertical-align: bottom;
    position: relative;
    z-index: -1;
}

/* message */
#message {
  width: 100vw;
  background-color: #144d53;
  padding: 7vw 0;
  color: #FBFAF8;
}

.message_wrapper {
  width: 80vw;
  margin: auto;
}

.message_inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.message_txt {
  width: 40vw;
}

.message_inner img {
  width:30vw;
  height: auto;
  object-fit: cover;
}

.message_txt h2{
  font-size: 1.458vw;
  margin-bottom: 3vw;
}

/* 募集要項 */
#recruitment {
  width: 100vw;
  background-color: #FBFAF8;
  padding-bottom: 5vw;
}

.recruitment_wrapper {
  width: 80vw;
  margin:8vw auto 0;
}

.recruitment_contents {
  padding-bottom: 5vw;
  margin-bottom: 5vw;
  border-bottom:solid 1px #144d53;
}

.recruitment_contents h2 {
  font-size: 1.458vw;
  width: fit-content;
  margin-bottom: 3vw;
  position: relative;
  z-index: 0;
}

.recruitment_contents h2::after {
  content: '';
  position: absolute;
  top: 45%;
  right: -70px;
  width: 50px;
  height: 1px;
  background-color: #333;
}

.recruitment_contents h3 {
  width: fit-content;
  background-color: #144d53;
  color: #FBFAF8;
  line-height: 3.0;
  padding:0 3vw;
}

.recruitment_contents p {
  margin-bottom: 4vw;
}

.feature {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin-top: 6vw;
}

.feature_contents {
  width: 20vw;
  height: auto;
  margin-right: 4vw;
}

.feature_contents img {
  width: 100%;
  height: auto;
  object-fit: cover;
}

.feature_txt h4 {
  font-size:1.146vw;
  margin: 2vw 0;
}

iframe {
  width: 60vw;
  height: 50vh;
  margin: 3vw 0;
}

/* 問い合わせ */
#contact {
    display: flex;
    position: relative;
    width: 100vw;
    height: 85vh;
    background: linear-gradient(
          90deg,
          #307672 0%,
          #307672 0%,
          #307672 30%,
          #144d53 20%
        );
  }
  
  #contact a{
    color: #434E48;
    width: 25vw;
    line-height: 6.0;
    text-align: center;
    align-items: center;
    background:linear-gradient(
          to right,
          #584F45,
          #584F45 50%,
          transparent 50%,
          transparent) 100% 0 / 200% 100%;
    transition:background-position 0.3s;
    position: absolute;
    top: 30%;
    right: 10%;
    z-index: 3;
    background-color: #FBFAF8;
  }
  
  #contact a:hover {
    color: #fff;
    background-position:0 0;
  }
  
  #contact p {
    color: #434E48;
    position: absolute;
    bottom: -10%;
    right: 0;
    font-size: 16rem;
    opacity: 0.6;
  }
  
  .contact_image {
    position: absolute;
    top: -10%;
  }
  
  .contact_image img{
    width: 55%;
  }
  
  .yajirushi {
    display: block;
    width: fit-content;
    margin: 40px auto;
    text-align: center;
  }
  
  .Arrow-Bottom {
    position: relative;
    border-bottom: solid 4px #144d53;
    border-right: solid 4px #144d53;
    width: 50px;
    height: 50px;
    transform: rotate(45deg);
    margin: 20px;
  }
  
  .Arrow-Bottom::after {
    content: '';
    position: absolute;
    top: 35%;
    left: 35%;
    right: 0;
    margin: 0 auto;
    border-bottom: solid 4px #144d53;
    border-right: solid 4px #144d53;
    width: 50px;
    height: 50px;
  }
  /* 問い合わせここまで */
  
  /* 問い合わせレスポンシブ */
  @media screen and (max-width: 1300px){
    #contact {
      display: flex;
      position: relative;
      width: 100vw;
      height: 55vh;
      background: linear-gradient(
            90deg,
            #307672 0%,
            #307672 0%,
            #307672 30%,
            #144d53 20%
          );
    }
    
    #contact a{
      color: #434E48;
      width: 25vw;
      line-height: 6.0;
      text-align: center;
      align-items: center;
      background:linear-gradient(
            to right,
            #584F45,
            #584F45 50%,
            transparent 50%,
            transparent) 100% 0 / 200% 100%;
      transition:background-position 0.3s;
      position: absolute;
      top: 30%;
      right: 10%;
      z-index: 3;
      background-color: #FBFAF8;
    }
    
    #contact a:hover {
      color: #fff;
      background-position:0 0;
    }
    
    #contact p {
      color: #434E48;
      position: absolute;
      bottom: -10%;
      right: 0;
      font-size: 11rem;
      opacity: 0.6;
    }
    
    .contact_image {
      position: absolute;
      top: -10%;
    }
    
    .contact_image img{
      width: 55%;
    }
  }
  
  @media screen and (max-width: 1024px){
    #contact {
      display: flex;
      position: relative;
      width: 100vw;
      height: 45vh;
      background: linear-gradient(
            90deg,
            #307672 0%,
            #307672 0%,
            #307672 30%,
            #144d53 20%
          );
    }
    
    #contact a{
      color: #434E48;
      width: 25vw;
      line-height: 4.0;
      text-align: center;
      align-items: center;
      background:linear-gradient(
            to right,
            #584F45,
            #584F45 50%,
            transparent 50%,
            transparent) 100% 0 / 200% 100%;
      transition:background-position 0.3s;
      position: absolute;
      top: 30%;
      right: 10%;
      z-index: 3;
      background-color: #FBFAF8;
    }
    
    #contact a:hover {
      color: #fff;
      background-position:0 0;
    }
    
    #contact p {
      color: #434E48;
      position: absolute;
      bottom: -10%;
      right: 0;
      font-size: 8rem;
      opacity: 0.6;
    }
    
    .contact_image {
      position: absolute;
      top: -10%;
    }
    
    .contact_image img{
      width: 55%;
    }
  }
  
  @media screen and (max-width: 768px){
    #contact {
      display: flex;
      position: relative;
      width: 100vw;
      height: 35vh;
      background: linear-gradient(
            90deg,
            #307672 0%,
            #307672 0%,
            #307672 30%,
            #144d53 20%
          );
    }
    
    #contact a{
      color: #434E48;
      width: 25vw;
      font-size: 1rem;
      line-height: 4.0;
      text-align: center;
      align-items: center;
      background:linear-gradient(
            to right,
            #584F45,
            #584F45 50%,
            transparent 50%,
            transparent) 100% 0 / 200% 100%;
      transition:background-position 0.3s;
      position: absolute;
      top: 30%;
      right: 10%;
      z-index: 3;
      background-color: #FBFAF8;
    }
    
    #contact a:hover {
      color: #fff;
      background-position:0 0;
    }
    
    #contact p {
      color: #434E48;
      position: absolute;
      bottom: -10%;
      right: 0;
      font-size: 6rem;
      opacity: 0.6;
    }
    
    .contact_image {
      position: absolute;
      top: -10%;
    }
    
    .contact_image img{
      width: 55%;
    }
  }
  
  @media screen and (max-width: 530px) {
    #contact {
      display: flex;
      position: relative;
      width: 100vw;
      height: 55vh;
      background: #144d53;
      margin-top: 10%;
    }
    
    #contact a{
      color: #434E48;
      width: 80vw;
      font-size: 0.8rem;
      line-height: 5.0;
      text-align: center;
      align-items: center;
      background:linear-gradient(
            to right,
            #584F45,
            #584F45 50%,
            transparent 50%,
            transparent) 100% 0 / 200% 100%;
      transition:background-position 0.3s;
      position: absolute;
      top: 60%;
  
      z-index: 3;
      background-color: #FBFAF8;
    }
    
    #contact a:hover {
      color: #fff;
      background-position:0 0;
    }
    
    #contact p {
      color: #434E48;
      position: absolute;
      top: 30%;
      right: 0;
      font-size: 3.5rem;
      opacity: 0.6;
    }
    
    .contact_image {
      position: absolute;
      top: -10%;
    }
    
    .contact_image img{
      width: 100%;
    }
    
    .yajirushi {
      display: block;
      width: fit-content;
      margin: 40px auto;
      text-align: center;
    }
    
    .Arrow-Bottom {
      position: relative;
      border-bottom: solid 4px #144d53;
      border-right: solid 4px #144d53;
      width: 5vw;
      height: 5vw;
      transform: rotate(45deg);
      margin: 20px;
    }
    
    .Arrow-Bottom::after {
      content: '';
      position: absolute;
      top: 35%;
      left: 35%;
      right: 0;
      margin: 0 auto;
      border-bottom: solid 4px #144d53;
      border-right: solid 4px #144d53;
      width: 5vw;
      height: 5vw;
    }
  }
  
  /* 問い合わせレスポンシブここまで */