@charset "UTF-8";
.mail-address {
  width: 250px;
  vertical-align: middle;
  padding-bottom: 3px; }
  @media screen and (max-width: 767px) {
    .mail-address {
      width: 170px;
      padding-bottom: 0px; } }

body, * {
  box-sizing: border-box !important;
  font-feature-settings: "palt"; }

body {
  background: fcfcfe;
  font-family: 'Noto Sans JP', sans-serif;
  color: #18191d; }

@media screen and (max-width: 767px) {
  .sp-none {
    display: none; } }

article {
  overflow: hidden; }

.flex {
  display: flex;
  justify-content: space-between; }

.logo {
  width: 200px; }
  @media screen and (max-width: 1111px) {
    .logo {
      margin-bottom: 20px; } }
  @media screen and (max-width: 767px) {
    .logo {
      margin-bottom: 0px;
      width: 150px; } }
  .logo img {
    width: 200px; }
    @media screen and (max-width: 767px) {
      .logo img {
        width: 100%; } }

.res_only {
  display: none; }

@media screen and (max-width: 767px) {
  .res-mb0 {
    margin-bottom: 0px !important; } }

.prev {
  position: absolute;
  color: #E83828;
  top: 125px;
  left: -125px;
  background: #fff;
  content: '';
  z-index: 999;
  text-align: center;
  padding: 50px 20px; }
  @media screen and (max-width: 767px) {
    .prev {
      left: -25px;
      padding: 30px 20px; } }

.next {
  position: absolute;
  color: #E83828;
  top: 125px;
  right: -125px;
  background: #fff;
  content: '';
  z-index: 999;
  text-align: center;
  padding: 50px 20px; }
  @media screen and (max-width: 767px) {
    .next {
      right: -25px;
      padding: 30px 20px; } }

.y_box {
  margin: 10px;
  text-align: center;
  background: #fff; }
  .y_box img {
    width: 100%; }
  .y_box h1 {
    margin-top: 10px;
    margin-bottom: 0px !important;
    font-size: 18px;
    color: #E83828; }
    @media screen and (max-width: 767px) {
      .y_box h1 {
        font-size: 14px !important; } }
  .y_box h2 {
    font-size: 24px !important;
    font-weight: bold;
    margin-bottom: 20px !important; }
    @media screen and (max-width: 767px) {
      .y_box h2 {
        font-size: 15px; } }
    .y_box h2 span {
      font-weight: normal;
      font-size: 12px; }

.container {
  width: 1000px;
  margin: auto auto; }
  @media screen and (max-width: 767px) {
    .container {
      width: 90%; } }

.large-container {
  width: 90%;
  max-width: 1200px;
  margin: 0 auto; }

.midium-container {
  width: 80%;
  max-width: 1200px;
  margin: 0 auto; }

.top-discription-area {
  background: #D6E0EC;
  padding: 20px 18px; }
  .top-discription-area h1 {
    font-size: 12px;
    color: #727171; }
  @media screen and (max-width: 767px) {
    .top-discription-area {
      display: none; } }

.top-header-area {
  display: flex;
  /*flex-wrap: wrap;*/
  justify-content: space-between;
  padding: 0px 0px 0 30px;
  margin-bottom: 50px; }
  @media screen and (max-width: 1111px) {
    .top-header-area {
      /*flex-wrap: wrap;*/ } }
  @media screen and (max-width: 767px) {
    .top-header-area {
      position: fixed;
      align-items: center;
      width: 100%;
      /*min-width:350px;*/
      top: 0;
      z-index: 10;
      background: #fff;
      padding: 10px; } }

.top-logo-box {
  margin-right: 65px; }
  @media screen and (max-width: 767px) {
    .top-logo-box {
      margin-right: 15px; } }

.top-left-side {
  margin-top: 30px;
  display: flex;
  align-items: center;
  /*flex-wrap: wrap;*/ }
  @media screen and (max-width: 1111px) {
    .top-left-side {
      min-width: 800px; } }
  @media screen and (max-width: 767px) {
    .top-left-side {
      margin-top: 0px;
      min-width: inherit; } }

.mizukiri-button {
  align-self: center;
  margin-top: 30px;
  min-width: 170px; }
  @media screen and (max-width: 767px) {
    .mizukiri-button {
      display: none; } }

.pc-none {
  display: none; }
  @media screen and (max-width: 767px) {
    .pc-none {
      display: block; }
      .pc-none a {
        border: none !important; } }

.contact-box {
  display: flex;
  background: #E83828; }
  .contact-box a {
    display: block;
    font-weight: bold;
    font-size: 15px;
    padding: 25px 50px;
    color: #fff;
    white-space: nowrap; }
    @media screen and (max-width: 767px) {
      .contact-box a {
        padding: 15px 20px;
        font-size: 12px;
        min-width: inherit; } }
    .contact-box a i {
      margin-left: 15px; }
      @media screen and (max-width: 767px) {
        .contact-box a i {
          margin-left: 5px; } }
  @media screen and (max-width: 767px) {
    .contact-box {
      margin-right: 45px; } }
  .contact-box p {
    color: #fff; }
    @media screen and (max-width: 767px) {
      .contact-box p {
        padding: 0px 0px; } }
    .contact-box p img {
      width: 34px; }

.global-navi {
  display: flex;
  justify-content: space-between;
  /*width:800px;*/
  font-size: 15px;
  font-weight: bold; }
  .global-navi li {
    margin-right: 80px;
    white-space: nowrap; }
    @media screen and (max-width: 1111px) {
      .global-navi li {
        margin-right: 20px; } }
  @media screen and (max-width: 767px) {
    .global-navi {
      display: block;
      width: 100%; } }

.slider-section {
  overflow: hidden; }

.top-slider-area {
  margin-left: -5%;
  position: relative;
  width: 100%;
  /*overflow:hidden;*/
  margin-bottom: 0px; }
  .top-slider-area:after {
    position: absolute;
    /*height:100vh;
    width: 100%;
    height:110%;
    content:'';
    background:url('../images/movie-frame.svg');
    background-size:cover;
    z-index:99999;
    top:-50px;
    right:-80px;*/ }
    @media screen and (max-width: 767px) {
      .top-slider-area:after {
        display: none; } }
  @media screen and (max-width: 767px) {
    .top-slider-area {
      margin-top: 73px; } }
  @media screen and (max-width: 767px) {
    .top-slider-area .catch-copy {
      text-align: center; }
      .top-slider-area .catch-copy img {
        width: 80%; } }

.movie-section {
  overflow: hidden; }

.movie-area {
  margin-left: -5%;
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  /*overflow:hidden;*/
  margin-bottom: 0px; }
  @media screen and (max-width: 767px) {
    .movie-area {
      margin-top: 73px; } }
  @media screen and (max-width: 767px) {
    .movie-area .catch-copy {
      text-align: center; }
      .movie-area .catch-copy img {
        width: 80%; } }

.movie-area:after {
  position: absolute;
  /*height:100vh;*/
  width: 100%;
  height: 110%;
  content: '';
  background: url("../../../../images/movie-frame.svg");
  background-size: cover;
  z-index: 2;
  top: -50px;
  right: -80px;
  display: none; }
  @media screen and (max-width: 767px) {
    .movie-area:after {
      display: none; } }

.movie-container {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }

.movie-area .movie-text {
  position: absolute;
  top: 0%;
  left: 0%;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: flex-start;
  align-items: flex-end;
  padding-bottom: 5%;
  margin-left: 15%;
  /*
  -ms-transform: translateY(-50%);
  -webkit-transform : translateY(-50%);
  transform : translateY(-50%);
  color:#fff;*/
  z-index: 3; }
  @media screen and (max-width: 767px) {
    .movie-area .movie-text {
      margin-left: 5%; } }

.movie-area .movie-text h2 {
  font-size: 5vw;
  font-weight: 600;
  color: #fff;
  line-height: 1.3em; }

.movie-area .movie-text .top_p {
  font-size: 1.2vw;
  line-height: 1.6em; }

.movie-area .news_area:before {
  position: absolute;
  left: 0;
  z-index: 3;
  background: #0062B0;
  background: #18259c;
  width: 50%;
  display: inline-block;
  height: 100%;
  content: '';
  /*background-repeat: no-repeat;*/
  /*background-position: center;*/
  /*background-size: cover;
  content: "";
  display: inline-block;
  vertical-align: middle;
  background-color: #003;
  left: 0;
  position: absolute;
  height: 100%;
  width: 50%;
  z-index:3;*/ }

.slider-area {
  max-height: 800px; }

.slider-area .slider-text {
  position: absolute;
  top: 0%;
  left: 0%;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: flex-start;
  align-items: flex-end;
  padding-bottom: 15px;
  margin-left: 15%;
  /*
  -ms-transform: translateY(-50%);
  -webkit-transform : translateY(-50%);
  transform : translateY(-50%);
  color:#fff;*/
  z-index: 3; }
  @media screen and (max-width: 767px) {
    .slider-area .slider-text {
      margin-left: 0;
      padding-bottom: 35px;
      padding-left: 10px; } }

.top-image {
  height: 900px; }
  @media screen and (max-width: 767px) {
    .top-image {
      height: 400px;
      margin-top: 76px; } }
  @media screen and (max-width: 767px) {
    .top-image .catch-copy img {
      padding: 10px; } }

.top-list {
  display: flex;
  margin-top: 4px; }
  @media screen and (max-width: 767px) {
    .top-list {
      flex-wrap: wrap; } }
  .top-list li {
    width: 25%; }
    @media screen and (max-width: 767px) {
      .top-list li {
        width: 50%; } }
    .top-list li img {
      width: 100%; }

.top-about-section {
  margin-top: 100px;
  padding-bottom: 180px;
  position: relative; }
  @media screen and (max-width: 767px) {
    .top-about-section {
      margin-top: 40px;
      padding-bottom: 40px; } }
  .top-about-section:before {
    position: absolute;
    z-index: 0;
    background: url(../../../../images/town-bg.svg);
    background-repeat: no-repeat;
    background-size: cover;
    content: '';
    width: 70%;
    height: 350px;
    top: 450px;
    left: -5%; }
    @media screen and (max-width: 767px) {
      .top-about-section:before {
        background: url(../../../../images/town-bg-sp.png);
        background-size: contain;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        background-repeat: no-repeat;
        display: none; } }
  .top-about-section .left-side {
    width: 50%; }
    @media screen and (max-width: 767px) {
      .top-about-section .left-side {
        width: 100%; } }
  .top-about-section .right-side {
    width: 40%;
    position: relative;
    text-align: right;
    z-index: 10; }
    @media screen and (max-width: 767px) {
      .top-about-section .right-side {
        width: 100%;
        margin-top: 30px; } }
    @media screen and (max-width: 767px) {
      .top-about-section .right-side p {
        display: none; } }
    .top-about-section .right-side:before {
      position: absolute;
      z-index: 10;
      background: url(../../../../images/top-about-2.jpg);
      background-size: contain;
      background-repeat: no-repeat;
      width: 350px;
      height: 380px;
      content: '';
      left: -50px;
      bottom: -80px; }
      @media screen and (max-width: 767px) {
        .top-about-section .right-side:before {
          width: 190px;
          height: 180px;
          bottom: 0px;
          left: 0px;
          display: none; } }
    .top-about-section .right-side:after {
      position: absolute;
      z-index: 1;
      background: url(../../../../images/top-about-1.jpg);
      background-size: contain;
      background-repeat: no-repeat;
      width: 470px;
      height: 450px;
      content: '';
      right: -150px;
      top: 30px; }
      @media screen and (max-width: 767px) {
        .top-about-section .right-side:after {
          top: 30px;
          right: 0px;
          width: 170px;
          height: 150px;
          display: none; } }
  .top-about-section h1 {
    font-size: 22px;
    color: #E83828;
    margin-bottom: 20px; }
    @media screen and (max-width: 767px) {
      .top-about-section h1 {
        font-size: 16px;
        margin-bottom: 20px; } }
    .top-about-section h1 strong {
      padding-bottom: 10px;
      border-bottom: 3px solid #E83828; }
      @media screen and (max-width: 767px) {
        .top-about-section h1 strong {
          border-bottom: 2px solid #E83828; } }
  .top-about-section h2 {
    font-size: 45px;
    font-weight: bold;
    line-height: 1.5;
    margin-bottom: 40px; }
    @media screen and (max-width: 767px) {
      .top-about-section h2 {
        font-size: 22px;
        margin-bottom: 10px; } }
  .top-about-section h3 {
    font-size: 16px;
    line-height: 1.8;
    margin-bottom: 70px; }
    @media screen and (max-width: 767px) {
      .top-about-section h3 {
        font-size: 12px;
        margin-bottom: 20px; } }
  @media screen and (max-width: 767px) {
    .top-about-section .flex {
      display: block; } }

.link-button {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px 20px;
  background: #E83828;
  color: #fff;
  font-size: 15px;
  font-weight: bold;
  border-radius: 14px;
  width: 230px;
  margin: 0 auto; }
  @media screen and (max-width: 767px) {
    .link-button {
      font-size: 13px;
      width: 80%;
      padding: 14px 20px; } }
  .link-button i {
    font-size: 21px;
    margin-left: 20px;
    vertical-align: middle; }
  .link-button img {
    margin-left: 20px; }

.link-button-1 {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px 20px;
  color: #E83828;
  border: 1px solid #E83828;
  font-size: 15px;
  font-weight: bold;
  border-radius: 14px;
  width: 230px;
  margin: 0 auto; }
  @media screen and (max-width: 767px) {
    .link-button-1 {
      font-size: 13px;
      padding: 14px 20px; } }
  .link-button-1 i {
    font-size: 21px;
    margin-left: 20px;
    vertical-align: middle; }

.link-button-2 {
  display: inline-block;
  padding: 20px 45px;
  background: #fff;
  color: #E83828;
  font-size: 15px;
  font-weight: bold;
  border-radius: 14px; }
  @media screen and (max-width: 767px) {
    .link-button-2 {
      font-size: 13px;
      width: 80%;
      padding: 14px 20px; } }
  .link-button-2 i {
    font-size: 21px;
    margin-left: 20px;
    vertical-align: middle; }

.link-button-3 {
  display: flex;
  justify-content: space-between;
  padding: 13px 45px;
  color: #fff;
  font-size: 15px;
  font-weight: bold;
  border-radius: 14px;
  border: 1px solid #fff;
  width: 100%; }
  .link-button-3 i {
    font-size: 21px;
    margin-left: 20px;
    vertical-align: middle; }

.heading-border-bottom {
  text-align: center; }

.consultation-section {
  width: 100%;
  text-align: center;
  margin-top: 100px;
  margin-bottom: 150px;
  padding-top: 100px;
  padding-bottom: 100px;
  background: #E83828;
  color: #fff;
  position: relative;
  z-index: 1;
  /*&:before{
    background:url(../images/top-consultation-bg.svg);
    background-repeat: no-repeat;
    background-size: cover;
    width:100%;
    height:100%;
    top:0;
    left:-10%;
    position:absolute;
    content:'';
    z-index:-1;
    min-height:717px;
  }
  &:after{
    background:$main-color;
    width:200%;
    min-height:640px;
    top:50px;
    right:-120%;
    position:absolute;
    content:'';
    z-index:-2;
  }*/ }
  @media screen and (max-width: 767px) {
    .consultation-section {
      margin-top: 40px;
      margin-bottom: 40px;
      padding-top: 40px;
      padding-bottom: 50px; } }
  .consultation-section:before {
    position: absolute;
    width: 100%;
    height: 50px;
    content: '';
    background: url(../../../../images/red-border-2.svg);
    background-repeat: no-repeat;
    background-size: 100%;
    top: -25px;
    left: 0; }
    @media screen and (max-width: 767px) {
      .consultation-section:before {
        top: -12px; } }
  .consultation-section:after {
    position: absolute;
    width: 100%;
    height: 50px;
    content: '';
    background: url(../../../../images/red-border-2.svg);
    background-repeat: no-repeat;
    background-size: 100%;
    bottom: -20px;
    left: 0; }
  .consultation-section h1 {
    font-size: 22px;
    margin-bottom: 40px; }
    @media screen and (max-width: 767px) {
      .consultation-section h1 {
        font-size: 16px;
        margin-bottom: 20px; } }
    .consultation-section h1 strong {
      border-bottom: 3px solid #fff;
      padding-bottom: 10px; }
      @media screen and (max-width: 767px) {
        .consultation-section h1 strong {
          border-bottom: 2px solid #fff;
          padding-bottom: 10px; } }
  .consultation-section h2 {
    font-size: 45px;
    font-weight: bold;
    margin-top: 30px;
    margin-bottom: 45px; }
    @media screen and (max-width: 767px) {
      .consultation-section h2 {
        font-size: 20px;
        font-weight: bold;
        margin-top: 20px;
        margin-bottom: 20px;
        line-height: 1.6; } }
  .consultation-section h3 {
    font-size: 23px;
    line-height: 1.7;
    margin-bottom: 40px; }
    @media screen and (max-width: 767px) {
      .consultation-section h3 {
        font-size: 14px;
        margin-bottom: 20px; } }

.top-products-section {
  margin-top: 100px;
  padding-bottom: 50px;
  position: relative; }
  @media screen and (max-width: 767px) {
    .top-products-section {
      margin-top: 0px; } }
  @media screen and (max-width: 767px) {
    .top-products-section .flex {
      flex-wrap: wrap-reverse; } }
  .top-products-section .left-side {
    width: 50%; }
    @media screen and (max-width: 767px) {
      .top-products-section .left-side {
        width: 100%;
        margin-top: 20px; } }
  .top-products-section .right-side {
    width: 45%;
    position: relative;
    text-align: left;
    z-index: 10; }
    @media screen and (max-width: 767px) {
      .top-products-section .right-side {
        width: 100%; } }
  .top-products-section h1 {
    font-size: 22px;
    color: #E83828;
    margin-bottom: 20px; }
    @media screen and (max-width: 767px) {
      .top-products-section h1 {
        font-size: 16px;
        margin-bottom: 20px; } }
    .top-products-section h1 strong {
      padding-bottom: 10px;
      border-bottom: 3px solid #E83828; }
      @media screen and (max-width: 767px) {
        .top-products-section h1 strong {
          border-bottom: 2px solid #E83828; } }
  .top-products-section h2 {
    font-size: 45px;
    font-weight: bold;
    line-height: 1.5;
    margin-bottom: 40px; }
    @media screen and (max-width: 767px) {
      .top-products-section h2 {
        font-size: 22px;
        margin-bottom: 10px; } }
  .top-products-section h3 {
    font-size: 16px;
    line-height: 1.8;
    margin-bottom: 40px; }
    @media screen and (max-width: 767px) {
      .top-products-section h3 {
        font-size: 12px;
        margin-bottom: 15px; } }
  .top-products-section h4 {
    font-weight: bold;
    font-size: 27px;
    margin-bottom: 25px; }
    @media screen and (max-width: 767px) {
      .top-products-section h4 {
        font-size: 22px;
        margin-bottom: 20px; } }

.eng-heading {
  color: #CFD8E5;
  font-family: 'Oswald', sans-serif;
  font-size: 70px;
  font-weight: 300;
  line-height: 1;
  margin-bottom: 30px; }
  @media screen and (max-width: 767px) {
    .eng-heading {
      font-size: 30px;
      font-weight: 300;
      line-height: 1;
      margin-bottom: 20px; } }

.eng-heading-small {
  color: #CFD8E5;
  font-family: 'Oswald', sans-serif;
  font-size: 40px;
  font-weight: 300;
  line-height: 1;
  margin-bottom: 15px; }
  @media screen and (max-width: 767px) {
    .eng-heading-small {
      font-size: 30px;
      margin-bottom: 10px; } }

.town-icon {
  margin-top: 30px;
  margin-bottom: 30px; }

.employment-section {
  padding-top: 75px;
  padding-bottom: 80px;
  margin-top: 50px;
  background: #EDF0F5;
  /*background:url(../images/gray-bg.svg);
  background-size:cover;
  width:120%;*/
  position: relative; }
  @media screen and (max-width: 767px) {
    .employment-section {
      padding-top: 40px;
      padding-bottom: 50px;
      margin-top: 20px; }
      .employment-section .flex {
        display: block; } }
  .employment-section:before {
    position: absolute;
    width: 100%;
    height: 50px;
    content: '';
    background: url(../../../../images/white-border.svg);
    background-repeat: no-repeat;
    background-size: 100%;
    top: -35px;
    left: 0; }
  .employment-section:after {
    position: absolute;
    width: 100%;
    height: 50px;
    content: '';
    background: url(../../../../images/white-border.svg);
    background-repeat: no-repeat;
    background-size: 100%;
    bottom: -20px;
    left: 0; }
  .employment-section h1 {
    font-size: 22px;
    color: #E83828;
    margin-bottom: 20px; }
    @media screen and (max-width: 767px) {
      .employment-section h1 {
        font-size: 16px;
        margin-bottom: 20px; } }
    .employment-section h1 strong {
      padding-bottom: 10px;
      border-bottom: 3px solid #E83828; }
      @media screen and (max-width: 767px) {
        .employment-section h1 strong {
          border-bottom: 2px solid #E83828; } }
  .employment-section h2 {
    font-size: 36px;
    font-weight: bold;
    line-height: 1.5;
    margin-bottom: 40px; }
    @media screen and (max-width: 767px) {
      .employment-section h2 {
        font-size: 22px;
        margin-bottom: 10px; } }
  .employment-section h3 {
    font-size: 16px;
    line-height: 1.8;
    margin-bottom: 15px; }
    @media screen and (max-width: 767px) {
      .employment-section h3 {
        font-size: 12px;
        margin-bottom: 10px; } }
  .employment-section .mb {
    margin-bottom: 50px; }
  .employment-section .right-side {
    position: relative;
    margin-top: -50px; }
    @media screen and (max-width: 767px) {
      .employment-section .right-side {
        margin-top: 30px; } }
    .employment-section .right-side:before {
      content: '';
      position: absolute;
      width: 100%;
      height: 100%;
      background: url(../../../../images/red-circle.svg);
      background-repeat: no-repeat;
      background-size: cover;
      z-index: -1;
      right: 0;
      bottom: -60px; }
    .employment-section .right-side .text-pic {
      margin-top: -25px; }
    .employment-section .right-side .people-pic {
      margin-top: -20px; }

.interview-section {
  padding-top: 50px;
  padding-bottom: 50px;
  margin-bottom: 50px;
  background: #E83828;
  position: relative; }
  @media screen and (max-width: 767px) {
    .interview-section {
      padding-top: 20px;
      padding-bottom: 50px; } }
  .interview-section:before {
    position: absolute;
    width: 100%;
    height: 50px;
    content: '';
    background: url(../../../../images/red-border-2.svg);
    background-repeat: no-repeat;
    background-size: 100%;
    top: -35px;
    left: 0;
    z-index: 5; }
    @media screen and (max-width: 767px) {
      .interview-section:before {
        z-index: -2; } }
  .interview-section:after {
    position: absolute;
    width: 100%;
    height: 50px;
    content: '';
    background: url(../../../../images/red-border.svg);
    background-repeat: no-repeat;
    background-size: 100%;
    bottom: -15px;
    left: 0; }
  .interview-section .interview-title-area {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    z-index: 1;
    margin-bottom: 10px; }
    .interview-section .interview-title-area h1 {
      color: #fff;
      font-family: 'Oswald', sans-serif;
      font-size: 70px;
      font-weight: 300;
      line-height: 1;
      margin-right: 20px;
      margin-bottom: 0px; }
      @media screen and (max-width: 767px) {
        .interview-section .interview-title-area h1 {
          font-size: 30px; } }
    .interview-section .interview-title-area h2 {
      color: #fff;
      font-size: 34px;
      line-height: 1;
      font-weight: bold;
      margin-bottom: 0px; }
      @media screen and (max-width: 767px) {
        .interview-section .interview-title-area h2 {
          font-size: 18px; } }
      .interview-section .interview-title-area h2 strong {
        font-size: 16px;
        display: block;
        padding-bottom: 5px;
        margin-bottom: 5px;
        border-bottom: 1px solid #fff; }

.news-section {
  margin-top: 50px;
  margin-bottom: 150px; }
  .news-section h1 {
    color: #ced8e5;
    font-family: 'Oswald', sans-serif;
    font-size: 70px;
    font-weight: 300;
    line-height: 1;
    padding-bottom: 30px;
    border-bottom: 1px solid #333;
    margin-bottom: 20px; }
    @media screen and (max-width: 767px) {
      .news-section h1 {
        font-size: 30px; } }

.contact-area {
  background: url(../../../../images/contact-bg.jpg);
  background-size: cover;
  padding-top: 150px;
  padding-bottom: 150px;
  text-align: center;
  position: relative; }
  @media screen and (max-width: 767px) {
    .contact-area {
      padding-top: 50px;
      padding-bottom: 50px; } }
  .contact-area:before {
    position: absolute;
    width: 100%;
    height: 50px;
    content: '';
    background: url(../../../../images/white-border.svg);
    background-repeat: no-repeat;
    background-size: 100%;
    top: -35px;
    left: 0; }
  .contact-area .contact-info {
    padding: 45px 100px;
    background: rgba(255, 255, 255, 0.9); }
    @media screen and (max-width: 767px) {
      .contact-area .contact-info {
        padding: 25px 20px; } }
    .contact-area .contact-info h1 {
      font-size: 22px;
      color: #E83828;
      margin-bottom: 40px; }
      @media screen and (max-width: 767px) {
        .contact-area .contact-info h1 {
          font-size: 18px;
          color: #E83828;
          margin-bottom: 20px; } }
    .contact-area .contact-info p {
      font-weight: bold;
      font-size: 15px;
      margin-bottom: 20px; }
    .contact-area .contact-info ul li {
      display: flex;
      align-items: center;
      justify-content: center;
      margin-bottom: 10px; }
      .contact-area .contact-info ul li h2 {
        background: #E83828;
        color: #fff;
        font-size: 21px;
        padding: 10px 15px;
        text-align: center;
        border-radius: 10px;
        margin-right: 20px; }
        @media screen and (max-width: 767px) {
          .contact-area .contact-info ul li h2 {
            font-size: 12px;
            margin-right: 10px; } }
      .contact-area .contact-info ul li h3 {
        font-weight: bold;
        font-size: 36px; }
        @media screen and (max-width: 767px) {
          .contact-area .contact-info ul li h3 {
            font-size: 20px; } }
        .contact-area .contact-info ul li h3 i {
          color: #E83828;
          margin-right: 5px; }

.footer-menu-area {
  background: #E83828;
  padding-top: 100px;
  padding-bottom: 50px;
  position: relative; }
  @media screen and (max-width: 767px) {
    .footer-menu-area {
      padding-top: 40px;
      padding-bottom: 50px; } }
  .footer-menu-area:before {
    position: absolute;
    width: 100%;
    height: 50px;
    content: '';
    background: url(../../../../images/red-border-2.svg);
    background-repeat: no-repeat;
    background-size: 100%;
    top: -25px;
    left: 0; }
    @media screen and (max-width: 767px) {
      .footer-menu-area:before {
        top: -11px; } }
  .footer-menu-area address {
    color: #fff;
    text-align: center;
    display: block;
    margin-top: 190px; }
    @media screen and (max-width: 767px) {
      .footer-menu-area address {
        margin-top: 80px;
        font-size: 11px; } }
  .footer-menu-area .flex {
    align-items: flex-start;
    justify-content: space-between; }
    @media screen and (max-width: 767px) {
      .footer-menu-area .flex {
        display: block; } }
    .footer-menu-area .flex .left-box {
      width: 33%; }
      @media screen and (max-width: 767px) {
        .footer-menu-area .flex .left-box {
          width: 100%; } }
      .footer-menu-area .flex .left-box h1 {
        margin-bottom: 30px; }
        @media screen and (max-width: 767px) {
          .footer-menu-area .flex .left-box h1 {
            width: 150px; } }
      .footer-menu-area .flex .left-box h2 {
        font-size: 15px;
        color: #fff;
        margin-bottom: 5px; }
    .footer-menu-area .flex .center-box {
      width: 33%;
      display: flex;
      justify-content: center; }
      @media screen and (max-width: 767px) {
        .footer-menu-area .flex .center-box {
          width: 100%; } }
      .footer-menu-area .flex .center-box ul {
        margin-right: 30px;
        border-left: 1px solid #fff; }
        @media screen and (max-width: 767px) {
          .footer-menu-area .flex .center-box ul {
            margin-top: 20px;
            margin-bottom: 25px;
            border-left: none; } }
        .footer-menu-area .flex .center-box ul li {
          margin-left: 20px; }
          .footer-menu-area .flex .center-box ul li a {
            color: #fff; }
    .footer-menu-area .flex .right-box {
      height: 100%;
      display: flex;
      flex-flow: column;
      flex-wrap: wrap; }
      .footer-menu-area .flex .right-box p:first-child {
        margin-bottom: 10px; }

.tel-box {
  display: inline-block;
  margin-right: 10px;
  width: 8em;
  text-align: center;
  /*background:#fff;
  color: $main-color;*/
  border: 1px solid #fff;
  padding: 3px 5px;
  border-radius: 4px; }
  @media screen and (max-width: 767px) {
    .tel-box {
      display: block; } }

.subpage-title-area {
  margin-top: 50px;
  margin-bottom: 150px; }
  @media screen and (max-width: 767px) {
    .subpage-title-area {
      margin-top: 100px;
      margin-bottom: 30px; } }
  .subpage-title-area .subpage-title {
    font-size: 40px; }
    @media screen and (max-width: 767px) {
      .subpage-title-area .subpage-title {
        font-size: 18px; } }
    .subpage-title-area .subpage-title span {
      font-family: 'Oswald', sans-serif;
      font-size: 80px;
      font-weight: 500;
      line-height: 1;
      margin-bottom: 30px;
      display: block;
      color: #E83828; }
      @media screen and (max-width: 767px) {
        .subpage-title-area .subpage-title span {
          font-size: 32px;
          margin-bottom: 10px; } }
  .subpage-title-area .subpage-image {
    position: relative;
    margin-top: 50px; }
    @media screen and (max-width: 767px) {
      .subpage-title-area .subpage-image {
        margin-top: 20px; } }
    .subpage-title-area .subpage-image:before {
      position: absolute;
      width: 100%;
      height: 50px;
      content: '';
      background: url(../../../../images/white-border.svg);
      background-repeat: no-repeat;
      background-size: 100%;
      top: -35px;
      left: 0; }
      @media screen and (max-width: 767px) {
        .subpage-title-area .subpage-image:before {
          top: -10px; } }
    .subpage-title-area .subpage-image:after {
      position: absolute;
      width: 100%;
      height: 50px;
      content: '';
      background: url(../../../../images/white-border.svg);
      background-repeat: no-repeat;
      background-size: 100%;
      bottom: -15px;
      left: 0; }
      @media screen and (max-width: 767px) {
        .subpage-title-area .subpage-image:after {
          bottom: -40px; } }
    .subpage-title-area .subpage-image img {
      width: 100%; }

.heading-1 {
  font-size: 22px;
  color: #E83828;
  margin-bottom: 70px; }
  @media screen and (max-width: 767px) {
    .heading-1 {
      font-size: 16px;
      margin-bottom: 30px; } }
  .heading-1 span {
    border-bottom: 3px solid #E83828;
    padding-bottom: 5px; }
    @media screen and (max-width: 767px) {
      .heading-1 span {
        border-bottom: 2px solid #E83828; } }

.catalog-list {
  border-top: solid 1px #AFBCCB;
  position: relative;
  margin-bottom: 100px; }
  .catalog-list:after {
    position: absolute;
    content: " ";
    display: block;
    border-top: solid 1px #E83828;
    top: -1px;
    width: 30%; }
  .catalog-list li {
    border-bottom: solid 1px #AFBCCB;
    position: relative;
    display: flex;
    padding-top: 30px;
    padding-bottom: 30px; }
    .catalog-list li:after {
      position: absolute;
      content: " ";
      display: block;
      border-bottom: solid 1px #E83828;
      bottom: -1px;
      width: 30%; }
    .catalog-list li .left-side {
      margin-right: 50px; }
      @media screen and (max-width: 767px) {
        .catalog-list li .left-side {
          margin-right: 20px; } }
    .catalog-list li .right-side h1 {
      font-size: 26px;
      font-weight: bold;
      margin-bottom: 5px; }
      @media screen and (max-width: 767px) {
        .catalog-list li .right-side h1 {
          font-size: 16px; } }
      .catalog-list li .right-side h1 + p {
        margin-bottom: 10px;
        color: #91999E; }
    .catalog-list li .right-side p:last-child {
      margin-top: 5px;
      color: #91999E; }
    .catalog-list li .right-side a {
      margin-left: inherit;
      margin-right: inherit; }
    .catalog-list li .link-button {
      display: flex;
      align-items: center;
      justify-content: center;
      padding: 20px 20px;
      background: #E83828;
      color: #fff;
      font-size: 15px;
      font-weight: bold;
      border-radius: 14px;
      width: 230px;
      margin: 0 auto 10px; }
      @media screen and (max-width: 767px) {
        .catalog-list li .link-button {
          font-size: 13px;
          padding: 14px 20px; } }
      .catalog-list li .link-button img {
        margin-left: 20px;
        vertical-align: middle; }

.about-heading {
  font-size: 45px;
  font-weight: bold;
  margin-bottom: 70px;
  text-align: center; }
  @media screen and (max-width: 767px) {
    .about-heading {
      font-size: 22px;
      line-height: 1.4;
      margin-bottom: 30px; } }
  .about-heading strong {
    color: #E83828; }

.about-youtube-area {
  padding-top: 50px;
  padding-bottom: 50px;
  margin-bottom: 140px;
  background: #E83828;
  position: relative; }
  @media screen and (max-width: 767px) {
    .about-youtube-area {
      padding-top: 40px;
      padding-bottom: 40px;
      margin-bottom: 40px; } }
  .about-youtube-area h1 {
    font-size: 24px;
    font-weight: bold;
    text-align: center;
    color: #fff;
    margin-bottom: 20px; }
    @media screen and (max-width: 767px) {
      .about-youtube-area h1 {
        font-size: 16px; } }
  .about-youtube-area:before {
    position: absolute;
    width: 100%;
    height: 50px;
    content: '';
    background: url(../../../../images/red-border-2.svg);
    background-repeat: no-repeat;
    background-size: 100%;
    top: -25px;
    left: 0; }
    @media screen and (max-width: 767px) {
      .about-youtube-area:before {
        top: -12px; } }
  .about-youtube-area:after {
    position: absolute;
    width: 100%;
    height: 50px;
    content: '';
    background: url(../../../../images/red-border-2.svg);
    background-repeat: no-repeat;
    background-size: 100%;
    bottom: -20px;
    left: 0; }

/*
.youtube-box{
  iframe{
    height:460px;
    @include mq("sp") {
      height:230px;
    }
  }
}
*/
.youtube-box {
  margin: 0 auto;
  position: relative;
  width: 100%;
  height: 100%;
  padding-top: 40%; }
  .youtube-box iframe {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0; }

.business-contents li {
  border-bottom: solid 1px #AFBCCB;
  position: relative;
  padding-bottom: 100px;
  margin-bottom: 100px;
  height: 1.6; }
  @media screen and (max-width: 767px) {
    .business-contents li {
      padding-bottom: 30px;
      margin-bottom: 40px; } }
  .business-contents li:after {
    position: absolute;
    content: " ";
    display: block;
    border-bottom: solid 1px #E83828;
    bottom: -1px;
    width: 30%; }
  .business-contents li h1 {
    font-size: 60px;
    margin-bottom: 35px;
    /*font-family: 'Noto Serif JP', serif;*/ }
    @media screen and (max-width: 767px) {
      .business-contents li h1 {
        font-size: 24px;
        margin-bottom: 10px; } }
  .business-contents li h2 {
    font-size: 16px;
    line-height: 1.6; }
    @media screen and (max-width: 767px) {
      .business-contents li h2 {
        font-size: 12px; } }
.business-contents .first-contents {
  background: url(../../../../images/about-1-bg.jpg);
  background-repeat: no-repeat;
  background-position: right top 30%; }
  @media screen and (max-width: 767px) {
    .business-contents .first-contents {
      background-size: contain; } }
  .business-contents .first-contents h2 {
    margin-bottom: 70px; }
    @media screen and (max-width: 767px) {
      .business-contents .first-contents h2 {
        font-size: 14px; } }
.business-contents .second-contents h2 {
  margin-bottom: 40px; }
  @media screen and (max-width: 767px) {
    .business-contents .second-contents h2 {
      margin-bottom: 20px; }
      .business-contents .second-contents h2 br {
        display: none; } }
.business-contents .second-contents:before {
  position: absolute;
  content: '';
  width: 120%;
  height: 300px;
  right: -50%;
  background: url(../../../../images/about-2-2.png);
  z-index: -1; }
  @media screen and (max-width: 767px) {
    .business-contents .second-contents:before {
      background-repeat: no-repeat;
      background-size: contain; } }
.business-contents .second-contents .button-flex {
  display: flex;
  margin-top: 30px; }
  @media screen and (max-width: 767px) {
    .business-contents .second-contents .button-flex {
      margin-top: 20px;
      display: block; } }
  .business-contents .second-contents .button-flex a {
    margin: 0;
    margin-right: 10px; }
    @media screen and (max-width: 767px) {
      .business-contents .second-contents .button-flex a {
        width: 80%;
        display: block;
        margin: 10px auto;
        text-align: center; } }
.business-contents .third-contents {
  /*background:url(../images/about-3-bg.jpg);
  background-repeat: no-repeat;
  background-position:right top 50%;
  padding-bottom:300px;*/ }
  @media screen and (max-width: 767px) {
    .business-contents .third-contents {
      /*background-size:contain;
      padding-bottom:100px;*/ } }
  .business-contents .third-contents h2 {
    margin-bottom: 40px; }
    @media screen and (max-width: 767px) {
      .business-contents .third-contents h2 {
        margin-bottom: 15px; }
        .business-contents .third-contents h2 br {
          display: none; } }
.business-contents .fourth-contents h2 {
  margin-bottom: 35px; }
  @media screen and (max-width: 767px) {
    .business-contents .fourth-contents h2 {
      margin-bottom: 15px; }
      .business-contents .fourth-contents h2 br {
        display: none; } }
.business-contents .fourth-contents .flex {
  margin-top: 14px;
  flex-wrap: wrap; }
  @media screen and (max-width: 767px) {
    .business-contents .fourth-contents .flex {
      margin-top: 5px; } }
  .business-contents .fourth-contents .flex img {
    margin-bottom: 14px; }
    @media screen and (max-width: 767px) {
      .business-contents .fourth-contents .flex img {
        width: 100%;
        margin-bottom: 5px; } }

.inquiry-section {
  margin-top: 50px;
  margin-bottom: 150px; }
  @media screen and (max-width: 767px) {
    .inquiry-section {
      margin-top: 30px;
      margin-bottom: 80px; }
      .inquiry-section br {
        display: none; } }

.inquiry-heading {
  text-align: center;
  font-size: 24px; }
  @media screen and (max-width: 767px) {
    .inquiry-heading {
      font-size: 18px; } }
  .inquiry-heading i {
    margin-right: 5px; }
  .inquiry-heading strong {
    font-size: 30px;
    font-weight: bold;
    display: block;
    margin-top: 20px;
    margin-bottom: 30px; }
    .inquiry-heading strong span {
      margin-right: 20px; }
      @media screen and (max-width: 767px) {
        .inquiry-heading strong span {
          display: block; } }
    @media screen and (max-width: 767px) {
      .inquiry-heading strong {
        font-size: 18px;
        font-weight: bold;
        display: block;
        margin-top: 10px;
        margin-bottom: 10px; } }

.con_table {
  width: 100%;
  margin-top: 40px; }

.con_table tr {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 20px; }
  @media screen and (max-width: 767px) {
    .con_table tr {
      margin-bottom: 5px;
      display: block; } }

.con_table th {
  margin-right: 20px;
  min-width: 270px;
  padding: 20px;
  text-align: left;
  font-size: 15px;
  display: flex;
  justify-content: space-between;
  font-weight: bold; }
  @media screen and (max-width: 767px) {
    .con_table th {
      flex-wrap: wrap;
      min-width: auto;
      width: 100%;
      padding: 20px 0px 0px 0;
      font-size: 13px; } }

.con_table td {
  width: 80%;
  position: relative; }
  @media screen and (max-width: 767px) {
    .con_table td {
      width: 1000px !important; } }

.con_table td input {
  width: 100%;
  background: #FFFFFF;
  border: 1px solid #e6e7e8;
  box-sizing: border-box;
  padding: 13px 12px; }
  @media screen and (max-width: 767px) {
    .con_table td input {
      padding: 5px; } }

.con_table td .bd {
  width: 100px; }

.con_table td .cd {
  width: 100px; }

/*
.con_table td label{
  border:1px solid #ccc;
  padding:10px;
  background:#fff;
}
*/
.con_table td .ed {
  width: 15px;
  margin: 0; }

.con_table .btn {
  margin-bottom: 10px;
  width: 20px;
  background: #FFFFFF;
  border: 1px solid #e6e7e8;
  box-sizing: border-box;
  padding: 13px 12px; }

.con_table td select {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  padding: 5px 10px 5px 10px; }

.con_table td textarea {
  width: 100%;
  background: #FFFFFF;
  border: 1px solid #e6e7e8;
  box-sizing: border-box;
  padding: 10px 12px;
  margin-top: 20px; }
  @media screen and (max-width: 767px) {
    .con_table td textarea {
      margin-top: 0px; } }

.con_table small {
  position: absolute;
  bottom: -2em;
  left: 0;
  font-size: 13px; }
  @media screen and (max-width: 767px) {
    .con_table small {
      font-size: 10px; } }

.req {
  background: #005bab;
  color: #fff;
  padding: 3px 15px;
  font-size: 12px;
  border-radius: 3px;
  display: block;
  font-weight: 100; }
  @media screen and (max-width: 767px) {
    .req {
      padding: 0px 5px;
      font-size: 10px;
      margin-left: 10px;
      margin-bottom: 3px; } }

/*.gaiyowaku table { width: 100%; }
.gaiyowaku th, .gaiyowaku td  { padding: 10px; border: 1px solid #ddd; }
.gaiyowakutd  { background: #eeeeee; width: 300px;vertical-align: top;
}
.gaiyowaku th  { width: 30%; text-align: left; }
*/
.red2 {
  color: #f44336; }

.pri_button a {
  /*background:#555;
  color:#fff;*/
  border-bottom: 1px solid #005bab;
  margin-left: 5px;
  margin-right: 5px;
  display: inline-block;
  color: #005bab; }
  @media screen and (max-width: 767px) {
    .pri_button a {
      margin-left: 0px;
      margin-right: 0px; } }

.agree_box {
  text-align: center;
  line-height: 1.8em;
  margin-top: 30px;
  border: 1px solid #e6e7e8;
  padding: 30px;
  background: #fff; }
  @media screen and (max-width: 767px) {
    .agree_box {
      margin-top: 0px;
      padding: 10px;
      line-height: 1.6em;
      font-size: 12px;
      text-align: left; } }

.agree {
  width: 30%;
  margin: 20px auto 0; }
  @media screen and (max-width: 767px) {
    .agree {
      width: 100%;
      margin: 10px auto 0; } }

.agree label {
  background: #e6e7e8;
  padding: 15px 0;
  font-weight: 600;
  line-height: 1.4em;
  font-size: 16px;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer; }
  @media screen and (max-width: 767px) {
    .agree label {
      font-size: 12px;
      padding: 5px 0; } }

.done {
  width: 100%;
  padding: 20px 40px;
  font-size: 18px;
  font-weight: bold;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background: #005bab;
  border: none;
  color: #fff;
  margin-top: 30px;
  transition: .4s; }
  @media screen and (max-width: 767px) {
    .done {
      margin-top: 10px;
      font-size: 12px;
      padding: 10px 20px; } }

.center-heading {
  text-align: center;
  font-size: 45px;
  font-weight: bold;
  position: relative;
  margin-bottom: 50px; }
  @media screen and (max-width: 767px) {
    .center-heading {
      font-size: 22px;
      margin-bottom: 20px; } }
  .center-heading strong {
    color: #E83828; }
  .center-heading .absolute-1 {
    position: absolute;
    z-index: -1;
    width: 560px;
    top: -70px;
    right: 0px; }
    @media screen and (max-width: 767px) {
      .center-heading .absolute-1 {
        top: -10px;
        width: 80% !important; } }

@media screen and (max-width: 767px) {
  .mb50 {
    margin-bottom: 20px; } }

.list-divide {
  display: flex;
  justify-content: space-between;
  width: 670px;
  margin: 50px auto; }
  @media screen and (max-width: 767px) {
    .list-divide {
      display: block;
      width: 100%;
      margin: 20px auto; } }
  .list-divide .left-side, .list-divide .right-side {
    width: 45%;
    line-height: 1.8em;
    font-size: 16px;
    color: #E83828; }
    @media screen and (max-width: 767px) {
      .list-divide .left-side, .list-divide .right-side {
        width: 100%;
        font-size: 13px !important; } }
    .list-divide .left-side li, .list-divide .right-side li {
      /*
      position:relative;
      &:after{
        position:absolute;
        font-family: "Font Awesome 5 Free";
        content: "\f0a9";
        font-weight: 900;
        right:0;
      }
      &:last-child{
        /*
        &:after{
          display: none;
        }
        
      }
      */ }
      .list-divide .left-side li a, .list-divide .right-side li a {
        display: flex;
        justify-content: space-between;
        align-items: center;
        color: #E83828; }
        .list-divide .left-side li a span, .list-divide .right-side li a span {
          color: #AFBCCB; }
        .list-divide .left-side li a i, .list-divide .right-side li a i {
          color: #AFBCCB; }
    .list-divide .left-side ul, .list-divide .right-side ul {
      margin-left: 1em; }

.products-section-2 {
  margin-top: 140px;
  padding-top: 180px;
  border-top: solid 1px #AFBCCB;
  position: relative;
  margin-bottom: 100px; }
  @media screen and (max-width: 767px) {
    .products-section-2 {
      margin-top: 40px;
      padding-top: 80px; } }
  .products-section-2:after {
    position: absolute;
    content: " ";
    display: block;
    border-top: solid 1px #E83828;
    top: -1px;
    width: 10%; }
  .products-section-2 .center-heading {
    text-align: center;
    font-size: 45px;
    font-weight: bold;
    position: relative;
    margin-bottom: 0px; }
    @media screen and (max-width: 767px) {
      .products-section-2 .center-heading {
        font-size: 22px; } }
    .products-section-2 .center-heading strong {
      color: #3964C2;
      z-index: 1;
      position: relative; }
    .products-section-2 .center-heading .absolute-1 {
      position: absolute;
      z-index: 0;
      width: 560px;
      top: -60px;
      left: 0px; }
      @media screen and (max-width: 767px) {
        .products-section-2 .center-heading .absolute-1 {
          z-index: -1;
          width: 80%; } }

.products-list {
  width: 30%;
  line-height: 1.8em;
  font-size: 16px;
  color: #E83828;
  margin: 50px auto; }
  @media screen and (max-width: 767px) {
    .products-list {
      width: 100%;
      margin: 20px auto;
      font-size: 13px; } }
  .products-list li {
    /*
    position:relative;
    &:after{
      position:absolute;
      font-family: "Font Awesome 5 Free";
      content: "\f0a9";
      font-weight: 900;
      right:0;
    }
    &:last-child{
      /*
      &:after{
        display: none;
      }
      
    }
    */ }
    .products-list li a {
      display: flex;
      justify-content: space-between;
      align-items: center;
      color: #3964C2; }
      .products-list li a i {
        color: #AFBCCB; }
  .products-list ul {
    margin-left: 1em; }

.greeting-bg {
  background: #E4E9F0;
  padding-top: 70px;
  padding-bottom: 70px; }
  @media screen and (max-width: 767px) {
    .greeting-bg {
      padding-top: 40px;
      padding-bottom: 40px; } }
  .greeting-bg p {
    font-size: 16px;
    letter-spacing: 0.135em;
    margin-bottom: 50px;
    line-height: 1.8; }
    @media screen and (max-width: 767px) {
      .greeting-bg p {
        font-size: 12px;
        margin-bottom: 15px; } }

.heading-border-bottom-2 {
  font-size: 22px;
  color: #E83828;
  margin-bottom: 30px; }
  @media screen and (max-width: 767px) {
    .heading-border-bottom-2 {
      font-size: 16px;
      margin-bottom: 25px; } }
  .heading-border-bottom-2 strong {
    /*padding-bottom:10px;*/
    border-bottom: 3px solid #E83828; }
    @media screen and (max-width: 767px) {
      .heading-border-bottom-2 strong {
        border-bottom: 2px solid #E83828; } }

.heading-border-bottom-3 {
  margin-top: 20px;
  font-size: 22px;
  margin-bottom: 30px; }
  @media screen and (max-width: 767px) {
    .heading-border-bottom-3 {
      font-size: 16px;
      margin-bottom: 25px; } }
  .heading-border-bottom-3 strong {
    font-weight: bold;
    display: inline-block;
    padding-bottom: 0px;
    border-bottom: 3px solid #E83828;
    letter-spacing: 0.125em; }
    @media screen and (max-width: 767px) {
      .heading-border-bottom-3 strong {
        border-bottom: 2px solid #E83828; } }
    .heading-border-bottom-3 strong span {
      font-size: 14px;
      font-weight: normal;
      letter-spacing: 0em; }

.greeting-heading {
  font-size: 36px;
  font-weight: bold;
  margin-bottom: 30px; }
  @media screen and (max-width: 767px) {
    .greeting-heading {
      font-size: 22px;
      margin-bottom: 10px; } }

.name-img {
  text-align: right;
  margin-top: 110px; }
  @media screen and (max-width: 767px) {
    .name-img {
      margin-top: 30px; } }
  .name-img img {
    width: 400px !important; }
    @media screen and (max-width: 767px) {
      .name-img img {
        width: 80% !important; } }

.philosophy-size {
  text-align: center; }
  .philosophy-size img {
    width: 900px; }

.policy-size {
  text-align: center; }
  .policy-size img {
    /*width:530px;*/ }

@media screen and (max-width: 767px) {
  .company-page {
    margin-bottom: 80px; } }
.company-page section {
  margin-bottom: 180px; }
  @media screen and (max-width: 767px) {
    .company-page section {
      margin-bottom: 40px; } }
.company-page iframe {
  margin-top: 20px;
  margin-bottom: 50px; }
  @media screen and (max-width: 767px) {
    .company-page iframe {
      margin-top: 10px;
      margin-bottom: 30px; } }
@media screen and (max-width: 767px) {
  .company-page .mt30 {
    font-size: 12px;
    margin-top: 10px; } }

.company-table {
  margin-top: 70px;
  font-size: 18px;
  width: 100%; }
  @media screen and (max-width: 767px) {
    .company-table {
      font-size: 13px;
      margin-top: 40px; } }
  .company-table th {
    color: #E83828;
    text-align: left;
    padding: 35px 0;
    border-top: 1px solid #E83828;
    width: 20%; }
    @media screen and (max-width: 767px) {
      .company-table th {
        padding: 5px 0; } }
  .company-table td {
    text-align: left;
    padding: 35px 0;
    border-top: 1px solid #AFBCCB;
    width: 80%;
    line-height: 1.8; }
    @media screen and (max-width: 767px) {
      .company-table td {
        padding: 5px 0; } }
    .company-table td a {
      color: #E83828; }

.spot {
  margin-top: 70px;
  font-size: 18px;
  letter-spacing: 0.125em;
  line-height: 1.8; }
  @media screen and (max-width: 767px) {
    .spot {
      margin-top: 30px;
      font-size: 13px;
      line-height: 1.7; } }

.company-table-2 {
  margin-top: 70px;
  font-size: 18px;
  width: 100%;
  border-top: solid 1px #AFBCCB;
  border-bottom: solid 1px #AFBCCB;
  position: relative;
  margin-bottom: 100px;
  border-collapse: separate;
  padding-top: 30px;
  padding-bottom: 30px; }
  @media screen and (max-width: 767px) {
    .company-table-2 {
      margin-top: 40px;
      padding-top: 15px;
      padding-bottom: 15px;
      font-size: 13px;
      margin-bottom: 40px; } }
  .company-table-2:before {
    position: absolute;
    content: " ";
    display: block;
    border-top: solid 1px #E83828;
    top: -1px;
    width: 15%; }
  .company-table-2:after {
    position: absolute;
    content: " ";
    display: block;
    border-bottom: solid 1px #E83828;
    bottom: -1px;
    width: 15%; }
  .company-table-2 th {
    color: #E83828;
    text-align: left;
    padding: 5px 35px 5px 0;
    width: 20%; }
    @media screen and (max-width: 767px) {
      .company-table-2 th {
        padding: 5px 5px 5px 0;
        width: 30%; } }
  .company-table-2 td {
    text-align: left;
    width: 80%;
    line-height: 1.8; }
    .company-table-2 td a {
      color: #E83828; }

.map-info {
  display: flex; }
  .map-info p {
    margin-right: 20px; }
    @media screen and (max-width: 767px) {
      .map-info p {
        margin-right: 10px;
        margin-bottom: 10px;
        width: 40%; } }
  .map-info .info {
    font-size: 18px;
    line-height: 1.6; }
    @media screen and (max-width: 767px) {
      .map-info .info {
        font-size: 13px;
        font-weight: normal; } }
    .map-info .info h1 {
      background: #E83828;
      color: #FFFFFF;
      display: inline-block;
      padding: 7px 10px;
      margin-bottom: 15px; }
      @media screen and (max-width: 767px) {
        .map-info .info h1 {
          margin-bottom: 5px; } }

.access-link {
  font-size: 18px;
  margin-top: 60px;
  margin-bottom: 30px; }
  @media screen and (max-width: 767px) {
    .access-link {
      font-size: 13px;
      margin-top: 50px;
      margin-bottom: 10px; } }
  .access-link a {
    color: #E83828; }

.image-divide {
  display: flex;
  justify-content: space-between;
  margin-top: 20px; }
  .image-divide img {
    width: 49%; }

.the-person-section {
  margin-top: 100px;
  padding-bottom: 0px;
  position: relative; }
  @media screen and (max-width: 767px) {
    .the-person-section {
      margin-top: 40px; } }
  @media screen and (max-width: 767px) {
    .the-person-section .flex {
      display: block; } }
  .the-person-section .left-side {
    width: 50%; }
    @media screen and (max-width: 767px) {
      .the-person-section .left-side {
        width: 100%; } }
  .the-person-section .right-side {
    width: 40%;
    position: relative;
    text-align: right;
    z-index: 10; }
    @media screen and (max-width: 767px) {
      .the-person-section .right-side {
        width: 100%; } }
    .the-person-section .right-side:after {
      position: absolute;
      z-index: 1;
      background: url(../../../../images/peoples.png);
      background-size: contain;
      background-repeat: no-repeat;
      width: 450px;
      height: 450px;
      content: '';
      right: -25px;
      top: 30px; }
      @media screen and (max-width: 767px) {
        .the-person-section .right-side:after {
          width: 100%; } }
  .the-person-section h1 {
    font-size: 22px;
    color: #E83828;
    margin-bottom: 20px; }
    @media screen and (max-width: 767px) {
      .the-person-section h1 {
        font-size: 16px;
        margin-bottom: 20px; } }
    .the-person-section h1 strong {
      padding-bottom: 10px;
      border-bottom: 3px solid #E83828; }
      @media screen and (max-width: 767px) {
        .the-person-section h1 strong {
          border-bottom: 2px solid #E83828; } }
  .the-person-section h2 {
    font-size: 36px;
    font-weight: bold;
    line-height: 1.5;
    margin-bottom: 40px; }
    @media screen and (max-width: 767px) {
      .the-person-section h2 {
        font-size: 22px;
        margin-bottom: 10px; } }
  .the-person-section h3 {
    font-size: 22px;
    color: #E83828 !important;
    margin-bottom: 15px; }
    @media screen and (max-width: 767px) {
      .the-person-section h3 {
        font-size: 16px;
        margin-bottom: 10px; } }
    .the-person-section h3 span {
      color: #91999E; }
  .the-person-section h4 {
    font-size: 16px;
    line-height: 1.8;
    margin-bottom: 70px; }
    @media screen and (max-width: 767px) {
      .the-person-section h4 {
        font-size: 12px;
        margin-bottom: 10px; } }

.interview-heading {
  color: #333;
  font-size: 34px;
  line-height: 1;
  font-weight: bold;
  margin-bottom: 0px;
  position: relative; }
  @media screen and (max-width: 767px) {
    .interview-heading {
      font-size: 24px; } }
  .interview-heading strong {
    font-size: 18px;
    display: inline-block;
    padding-bottom: 5px;
    margin-bottom: 5px;
    border-bottom: 1px solid #333; }
    @media screen and (max-width: 767px) {
      .interview-heading strong {
        font-size: 13px; } }
  .interview-heading:after {
    position: absolute;
    width: 90%;
    height: 300px;
    content: '';
    background: url(../../../../images/interview.svg);
    background-repeat: no-repeat;
    top: -100px;
    left: 100px;
    z-index: -1; }
    @media screen and (max-width: 767px) {
      .interview-heading:after {
        height: 80px;
        top: -20px; } }

.interview-list {
  display: flex;
  justify-content: space-between;
  margin-top: 40px; }
  @media screen and (max-width: 767px) {
    .interview-list {
      flex-wrap: wrap; } }
  .interview-list li {
    width: 30%; }
    @media screen and (max-width: 767px) {
      .interview-list li {
        width: 48%;
        margin-bottom: 10px; } }
    .interview-list li h1 {
      margin-top: 10px;
      font-size: 18px;
      color: #E83828; }
      @media screen and (max-width: 767px) {
        .interview-list li h1 {
          font-size: 13px; } }
    .interview-list li h2 {
      font-size: 24px;
      font-weight: bold; }
      @media screen and (max-width: 767px) {
        .interview-list li h2 {
          font-size: 15px; } }
      .interview-list li h2 span {
        font-weight: normal;
        font-size: 12px; }

.requirements {
  margin-top: 70px; }
  @media screen and (max-width: 767px) {
    .requirements {
      margin-top: 30px; } }
  .requirements div {
    display: flex;
    margin-bottom: 15px; }
    @media screen and (max-width: 767px) {
      .requirements div {
        margin-bottom: 5px; } }
  .requirements dt {
    width: 5em;
    font-size: 20px;
    color: #E83828; }
    @media screen and (max-width: 767px) {
      .requirements dt {
        width: 20%;
        font-size: 14px; } }
  .requirements dd {
    font-size: 20px; }
    @media screen and (max-width: 767px) {
      .requirements dd {
        width: 80%;
        font-size: 14px; } }

.entry-outer .con_table {
  background: #EFEFEF;
  padding: 20px 40px;
  border-collapse: separate; }
  @media screen and (max-width: 767px) {
    .entry-outer .con_table {
      padding: 20px;
      margin-top: 20px; } }
  @media screen and (max-width: 767px) and (max-width: 767px) {
    .entry-outer .con_table {
      padding: 0 20px 20px; } }

  .entry-outer .con_table .req {
    background: #C30D23; }
.entry-outer .done {
  background: #C30D23; }

.privacy-heading {
  font-size: 22px;
  margin-bottom: 50px; }
  @media screen and (max-width: 767px) {
    .privacy-heading {
      font-size: 14px;
      margin-bottom: 30px; } }

.privacy-list {
  margin-bottom: 150px; }
  @media screen and (max-width: 767px) {
    .privacy-list {
      margin-bottom: 80px; } }
  .privacy-list > li {
    margin-bottom: 50px; }
    @media screen and (max-width: 767px) {
      .privacy-list > li {
        margin-bottom: 25px; } }
    .privacy-list > li h1 {
      font-weight: bold;
      font-size: 22px;
      margin-bottom: 20px;
      border-bottom: 1px solid #AFBCCB; }
      @media screen and (max-width: 767px) {
        .privacy-list > li h1 {
          font-size: 16px;
          margin-bottom: 10px; } }
      .privacy-list > li h1 span {
        font-size: 36px;
        color: #fff;
        background: #AFBCCB;
        padding: 10px 20px;
        margin-right: 10px;
        display: inline-block; }
        @media screen and (max-width: 767px) {
          .privacy-list > li h1 span {
            margin-right: 5px;
            font-size: 16px;
            padding: 5px 10px; } }
    .privacy-list > li div {
      padding: 0 22px;
      font-size: 16px;
      line-height: 1.6; }
      @media screen and (max-width: 767px) {
        .privacy-list > li div {
          font-size: 12px;
          padding: 0 9px; } }
    .privacy-list > li .in-list {
      margin-top: 5px; }

/*====================================
/* ローディングアニメーションの設定
====================================*/
#loader_wrap {
  position: fixed;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100vw;
  height: 100vh;
  top: 0;
  background: #fff; }

/* ローディングアニメーションの設定 */
.loader {
  width: 150px;
  height: 150px;
  background: url("../../../../image/logo.png") no-repeat;
  opacity: 0;
  animation: blink 1.5s infinite linear; }

@keyframes blink {
  50% {
    opacity: 1; } }
/* ローディング終了後 */
.loaded {
  opacity: 0;
  visibility: hidden; }

#page-top {
  z-index: 9;
  position: fixed;
  right: 10px;
  bottom: 20px;
  font-size: 15px;
  line-height: 1.2rem;
  background: #fff;
  color: #E83828;
  padding: 20px 20px;
  border-radius: 8px;
  box-shadow: 0 2px 10px -6px rgba(0, 0, 0, 0.5), 0 3px 10px -4px rgba(0, 0, 0, 0.2); }
  @media screen and (max-width: 767px) {
    #page-top {
      right: 10px;
      bottom: 10px;
      padding: 10px; } }
  #page-top i {
    margin-left: 10px; }
    @media screen and (max-width: 767px) {
      #page-top i {
        margin-left: 0px;
        font-size: 20px; } }
  @media screen and (max-width: 767px) {
    #page-top span {
      display: none; } }

/*====================================
ハンバーガーメニュー
====================================*/
@media screen and (max-width: 767px) {
  .res_only {
    display: block; }

  .res_nav {
    display: none;
    position: fixed;
    top: 0px;
    right: 0;
    width: 100%;
    height: 100%;
    background: rgba(233, 29, 23, 0.92);
    left: 0;
    transition-property: transform;
    overflow: hidden;
    z-index: 99; }

  header nav ul {
    display: block;
    width: 90%;
    height: 80%;
    position: absolute;
    top: 0px;
    right: 0px;
    bottom: 0px;
    left: 0px;
    margin: auto; }

  header nav ul li {
    margin: 0 auto;
    text-align: center;
    width: 100%; }

  header nav ul li:last-child {
    border: none; }

  header nav ul li a {
    display: block;
    color: #fff;
    padding: 10px 20px;
    font-weight: bold;
    font-size: 14px;
    border-bottom: 1px dotted #fff;
    text-align: left;
    letter-spacing: 0.075em; }
    header nav ul li a br {
      display: none; }

  #nav_toggle {
    display: block;
    width: 5%;
    width: 30px;
    height: 5%;
    height: 30px;
    position: fixed;
    top: 25px;
    right: 12px;
    z-index: 101;
    margin-left: auto; }

  #nav_toggle div {
    position: relative; }

  #nav_toggle span {
    display: block;
    height: 3px;
    background: #E83828;
    position: absolute;
    width: 100%;
    right: 0;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out; }

  #nav_toggle span:nth-child(1) {
    top: 0px; }

  #nav_toggle span:nth-child(2) {
    top: 9px; }

  #nav_toggle span:nth-child(3) {
    top: 18px; }

  .open {
    position: relative; }

  .open #nav_toggle span:nth-child(1) {
    background: #fff !important;
    top: 10px;
    -webkit-transform: rotate(135deg);
    -moz-transform: rotate(135deg);
    transform: rotate(135deg);
    z-index: 100; }

  .open #nav_toggle span:nth-child(2) {
    width: 0;
    left: 50%; }

  .open #nav_toggle span:nth-child(3) {
    background: #fff !important;
    top: 10px;
    -webkit-transform: rotate(-135deg);
    -moz-transform: rotate(-135deg);
    transform: rotate(-135deg); } }
/*====================ハンバーガーメニューEND==========================*/
.interview-flex {
  display: flex;
  justify-content: space-between;
  align-items: center; }
  @media screen and (max-width: 767px) {
    .interview-flex {
      display: block; } }
  .interview-flex .interview-icon {
    width: 150px; }
    @media screen and (max-width: 767px) {
      .interview-flex .interview-icon {
        display: none; } }
    .interview-flex .interview-icon img {
      min-width: 150px;
      min-height: 150px;
      border-radius: 50%;
      object-fit: cover; }

.interview-page section {
  margin-bottom: 70px; }
.interview-page .spot {
  border-radius: 20px;
  background: #faf7f7;
  padding: 30px;
  position: relative;
  display: inline-block;
  margin: 0 15px 1.5em 0;
  min-width: 120px;
  max-width: 100%;
  color: #555;
  font-size: 16px;
  box-sizing: border-box; }
  .interview-page .spot br {
    display: none; }
  .interview-page .spot:before {
    content: "";
    position: absolute;
    top: 50%;
    right: -24px;
    margin-top: -12px;
    border: 12px solid transparent;
    border-left: 12px solid #faf7f7;
    z-index: 2; }
  .interview-page .spot:after {
    content: "";
    position: absolute;
    top: 50%;
    right: -30px;
    margin-top: -14px;
    border: 14px solid transparent;
    z-index: 1; }
.interview-page .interview-list {
  display: flex;
  justify-content: flex-start;
  margin-top: 40px; }
  .interview-page .interview-list li {
    margin-right: 40px; }
    @media screen and (max-width: 767px) {
      .interview-page .interview-list li {
        margin-right: 0px; } }

.left-bar {
  padding-top: 40px;
  border-left: 10px solid rgba(233, 29, 23, 0.2); }

.schedule-list li {
  position: relative;
  margin-bottom: 40px; }
  .schedule-list li::after {
    position: absolute;
    content: "";
    width: 20px;
    height: 20px;
    background: #c84a3c;
    border-radius: 50%;
    top: 22.5px;
    left: -15px;
    bottom: 0; }
  .schedule-list li .fukidashi {
    position: relative;
    display: inline-block;
    /*margin-top:-26px;*/
    margin-left: 40px;
    /*padding: 7px 10px;*/
    min-width: 120px;
    max-width: 100%;
    color: #555;
    font-size: 16px;
    background: #FFF;
    /*border: solid 3px #555;*/
    box-sizing: border-box; }
    @media screen and (max-width: 767px) {
      .schedule-list li .fukidashi {
        margin-left: 20px; } }
    .schedule-list li .fukidashi::before {
      content: "";
      position: absolute;
      top: 50%;
      left: -24px;
      margin-top: -12px;
      border: 12px solid transparent;
      border-right: 12px solid #c84a3c;
      z-index: 2; }
    .schedule-list li .fukidashi::after {
      content: "";
      position: absolute;
      top: 50%;
      left: -30px;
      margin-top: -14px;
      border: 14px solid transparent;
      /*border-right: 14px solid #555;*/
      z-index: 1; }
  .schedule-list li .schedule-time i {
    margin-right: 5px; }
  .schedule-list li .schedule-time strong {
    display: inline-block;
    padding: 20px;
    background: #c84a3c;
    color: #fff;
    font-weight: bold;
    font-size: 20px; }
    @media screen and (max-width: 767px) {
      .schedule-list li .schedule-time strong {
        font-size: 16px;
        white-space: nowrap;
        padding: 20px 10px; } }
    .schedule-list li .schedule-time strong span {
      margin-left: 10px;
      font-weight: normal;
      font-size: 12px; }
      @media screen and (max-width: 767px) {
        .schedule-list li .schedule-time strong span {
          font-size: 10px; } }
  .schedule-list li .schedule-text {
    display: inline-block;
    width: 100%;
    padding: 10px 20px;
    background: #eee;
    margin-top: 10px;
    margin-left: 40px; }
    @media screen and (max-width: 767px) {
      .schedule-list li .schedule-text {
        margin-left: 20px; } }

.sns-icons {
  margin-top: 20px; }
  .sns-icons i {
    font-size: 23px;
    color: #fff;
    margin-right: 5px; }

.slick-dots li button:before {
  font-family: 'slick';
  font-size: 30px;
  line-height: 20px;
  position: absolute;
  top: 0;
  left: 0;
  width: 20px;
  height: 20px;
  content: '•';
  text-align: center;
  color: black;
  opacity: .75;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

/*# sourceMappingURL=style.css.map */
