
/*トップページ*/
#header {
    width: 100%;
    box-sizing: border-box;
  }

#header.fixed{
	position: fixed;/*fixedを設定して固定*/
    z-index: 999;/*最前面へ*/
    top:0;/*位置指定*/
    left:0;/*位置指定*/
}
.header-container{
    display: flex;
    width: 100%;
    justify-content: space-between;
    align-items: center;
    height: 4em;
    background-color: #fff;
}
.top-logo{
    width: 20%;
}
.top-logo:hover{
    opacity: 0.7;
    transition: all 0.2s;
}
.header-list ul{
    display: flex;
}
.header-list ul li{
    padding: 0 30px;
}
.header-list ul li a {
    display: block;
    position: relative;
    display: inline-block;
    text-decoration: none;
    font-family: 'Zen Antique', serif;
}
.header-list ul li a::after {
    position: absolute;
    bottom: -3px;
    left: 0;
    content: '';
    width: 100%;
    height: 3px;
    background: #2250a1;
    transform: scale(0, 1);
    transform-origin: center top;
    transition: transform .3s;
}
.header-list ul li a:hover::after {
    transform: scale(1, 1);
}

.humberger-menu{
    display: none;
}


.top-wrapper{
    padding-top: 150px;
    height: 700px;
    position: relative;
    width: 100%;
}
.top-wrapper .top-img{
    width: 70%;
    position: absolute;
    top: 0;
    right: 0;
    opacity: 0.8;
}
.top-wrapper .top-img img{
    height: 700px;
}

.top-wrapper h2{
    font-size: 50px;
    line-height: 1.5;
    font-weight: bold;
    position: absolute;
    top: 18%;
    left: 8%;
    color: black;
    font-family: 'Zen Antique', serif;
}
.top-wrapper p{
    position: absolute;
    top: 45%;
    left: 8%;
    font-size: 16px;
    color: black;
    font-family: 'Zen Antique', serif;
}
.top-btn{
    position: absolute;
    left: 8%;
    top: 70%;
    color: #fff;
    padding: 10px 60px;
    background-color: #2250a1;
    font-family: 'Zen Antique', serif;
    transition-duration: 0.8s;
}
.top-btn:hover{
    color: #000;
    background-color: #fff;
    border: 1px solid #2250a1;
    transition: all 0.8s;
}


.news-wrapper{
    width: 100%;
    padding-top: 100px;
}

.container{
    width: 80%;
    margin: 0 auto;
    text-align: center;
    line-height: 1.2;
}
.container h3{
    font-size: 50px;
    color: #2250a1;
    font-family: 'Playfair Display', serif;
}
.container h4{
    font-size: 24px;
    padding-bottom: 30px;
}

.line {
    position: relative;
    text-align: center;
    width: 30%;
    margin: 0 auto;
}
.line::before {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 0;
    width: 0;
    border-bottom: solid 1px #2250a1;
    transform: translateX(-50%);
    animation: border_anim 3s linear infinite;
}
@keyframes border_anim {
	0%{
		width: 0%;
	}
	100%{
		width: 100%;
	}
}
.all-news{
    padding-top: 100px;
    width: 70%;
    margin: 0 auto;
    text-align: left;
}
.all-news .news-contents{
    margin-bottom: 20px;
    border-bottom: 1px solid rgba(213, 212, 212, 0.736);
}
.all-news .date{
    font-size: 14px;
    padding-right: 60px;
}
.news-more{
    margin-top: 100px;
}
button {
    position: relative;
    display: inline-block;
    cursor: pointer;
    outline: none;
    border: 0;
    vertical-align: middle;
    text-decoration: none;
    background: transparent;
    padding: 0;
    font-size: inherit;
    font-family: inherit;
   }
   
   button.learn-more {
    width: 12rem;
    height: auto;
    display: block;
    text-align: center;
    margin: 0 auto;
    margin-top: 90px;
   }
   
   button.learn-more .circle {
    transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
    position: relative;
    display: block;
    margin: 0;
    width: 3rem;
    height: 3rem;
    background: #2250a1;
    border-radius: 1.625rem;
   }
   
   button.learn-more .circle .icon {
    transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    background: #fff;
   }
   
   button.learn-more .circle .icon.arrow {
    transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
    left: 0.625rem;
    width: 1.125rem;
    height: 0.125rem;
    background: none;
   }
   
   button.learn-more .circle .icon.arrow::before {
    position: absolute;
    content: "";
    top: -0.29rem;
    right: 0.0625rem;
    width: 0.625rem;
    height: 0.625rem;
    border-top: 0.125rem solid #fff;
    border-right: 0.125rem solid #fff;
    transform: rotate(45deg);
   }
   
   button.learn-more .button-text {
    transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 0.75rem 0;
    margin: 0 0 0 1.85rem;
    color: #282936;
    font-weight: 700;
    line-height: 1.6;
    text-align: center;
    text-transform: uppercase;
   }
   
   button:hover .circle {
    width: 100%;
   }
   
   button:hover .circle .icon.arrow {
    background: #fff;
    transform: translate(1rem, 0);
   }
   
   button:hover .button-text {
    color: #fff;
   }
.company-wrapper{
    width: 100%;
    padding-top: 150px;
    margin-bottom: 100px;
}

.company-contents{
    width: 80%;
    margin: 0 auto;
    margin-top: 100px;
}
.company-contents .row{
    display: flex;
    justify-content: space-between;
    height: 400px;
}

.company-contents .row-1{
    width: 45%;
    padding: 50px 200px 70px 10px;
    background-image: url(../image/philosophy1.jpg);
    background-size:cover;
    background-position: 100% 50%;
    transition-duration: 1s;
}
.company-contents .row-1:hover{
    transform: scale(1.1,1.1);
    transition: 1s all;
}
.company-contents .row-2{
    width: 45%;
    padding: 50px 200px 70px 10px;
    background-image: url(../image/about.jpg);
    color: #fff;
    background-size: cover;
    transition-duration: 1s;
}
.company-contents .row-2:hover{
    transform: scale(1.1,1.1);
    transition: 1s all;
}
.company-contents .row-1 h3{
    font-family: 'Playfair Display', serif;
    font-size: 35px;
}
.company-contents .row-1 h4{
    font-family: 'Zen Antique', serif;
    font-size: 16px;
    border-bottom: 1px solid black;
    padding-bottom: 30px;
}
.company-contents .row-1 p{
    font-family: 'Zen Antique', serif;
    font-size: 16px;
    padding-top: 30px;
}
.company-contents .row-2 h3{
    font-family: 'Playfair Display', serif;
    font-size: 35px;
}
.company-contents .row-2 h4{
    font-family: 'Zen Antique', serif;
    font-size: 16px;
    border-bottom: 1px solid black;
    padding-bottom: 30px;
}
.company-contents .row-2 p{
    font-family: 'Zen Antique', serif;
    font-size: 16px;
    padding-top: 30px;
}

.business-wrapper{
    width: 100%;
    padding-top: 90px;
}
.business-text{
    width: 100%;
    text-align: center;
    margin: 0 auto;
    margin-top: 80px;
    font-family: 'Zen Antique', serif;
    background-size: cover;
    margin-bottom: 80px;
}
.business-text h3{
    font-size: 27px;
    color: #333;
    padding-bottom: 30px;
    padding-top: 50px;
}
.business-text p{
    font-size: 17px;
    color: #333;
    line-height: 1.8;
}


.slider img {
    width:100%;/*スライダー内の画像を横幅100%に*/
    height:350px;
    object-fit: cover;
}

/*slickのJSで書かれるタグ内、スライド左右の余白調整*/

.slider .slick-slide {
    margin:0 10px;/*スライド左右の余白調整*/
}


.works-wrapper{
    padding-top: 150px;
    margin-bottom: 130px;
}

.work-contents{
    display: flex;
    flex-wrap: wrap;
    width: 90%;
    justify-content: center;
    margin: 0 auto;
    margin-top: 50px;
}
.work-contents .work1{
    width: 35%;
    margin: 30px 30px;
    transition-duration: 0.8s;
}
.work-contents .work1:hover{
    opacity: 0.7;
    transition: 0.8s;
}
.work1 .date{
    font-size: 15px;
}
.work1 h3{
    background-color: black;
    color: #fff;
    display: inline-block;
    font-size: 12px;
}

.contact-wrapper{
    margin-bottom: 100px;
}
.contact-text p{
    text-align: center;
    padding-top: 80px;
    padding-bottom: 40px;
}


.contact-button {
    width: 80%;
    display: block;
    text-align: center;
    margin: 0 auto;
    padding: 3rem 1.25rem;
    color: #fff;
    text-transform: uppercase;
    font-size: 1rem;
    letter-spacing: 0.15rem;
    transition: all 0.3s;
    position: relative;
    overflow: hidden;
    z-index: 1;
    font-size: 20px;
    font-weight: bold;
    margin-bottom: 50px;
  }
  .contact-button:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #2250a1;
    z-index: -2;
  }
  .contact-button:before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0%;
    height: 100%;
    background-color: #fff;
    transition: all 0.3s;
    z-index: -1;
  }
  .contact-button:hover {
    color: #2250a1;
  }
  .contact-button:hover:before {
    width: 100%;
  }
  .contact-tel{
      display: block;
      margin: 0 auto;
      text-align: center;
      font-size: 32px;
  }
.contact-p{
    text-align: center;
    font-weight: bold;
    font-size: 14px;
    padding-bottom: 10px;
}
footer{
    width: 100%;
    background-color: #2250a1;
    padding-bottom: 10px;
}
.footer-list{
    color: #fff;
    width: 100%;
}
.footer-list li{
    padding-top: 10px;
}
.footer-list ul{
    display: flex;
    width: 90%;
    justify-content: space-between;
    margin: 0 auto;
}
.footer-top{
    padding-bottom: 50px;
    padding-top: 50px;
}

.arrow_s {
    position: relative;
    display: inline-block;
    padding-left: 12px;
    color: #fff;
    text-decoration: none;
}
.arrow_s:before {
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px 0 6px 8px;
    border-color: transparent transparent transparent #fff;
    position: absolute;
    top: 50%;
    left: 0;
    margin-top: -6px;
}
.footer-top{
    display: flex;
    justify-content: center;
    align-items: center;
}
.footer-top img{
    width: 400px;
    margin-right: 100px;
}
.footer-adress{
    padding-top: 20px;
}
.footer-adress p{
    font-size: 15px;
    color: #fff;
    line-height: 1.4;
}
footer small{
    color: #fff;
    display: block;
    text-align: center;
    padding-top: 30px;
}




/*経営理念*/

.philosophy-top{
    background-color: #2250a1;
    padding-bottom: 30px;
    padding-top: 20px;
    text-align: center;
    line-height: 1.3;
}
.ph-top h2{
    color: #fff;
    font-size: 50px;
    font-family: 'Playfair Display', serif;
}
.ph-top h3{
    color: #fff;
    font-size: 18px;
}
.ph-top img{
    width: 130px;
}
.top-massege{
    font-family: 'Zen Antique', serif;
    padding-bottom: 120px;
}
.top-massege h3{
    text-align: center;
    font-size: 30px;
    padding-top: 100px;
    display: inline-block;
    position: relative;
    color: #333;
    width: 100%;
    margin: 0 auto;
}
.top-massege h3::before{
    content: '';
    display: inline-block;
    position: absolute;
    bottom: -15px;
    left: 50%;
    transform: translateX(-50%);
    width: 60px;
    height: 4px;
    background-color: #2250a1;
}
.top-massege .big{
    text-align: center;
    font-size: 22px;
    padding-top: 100px;
    padding-bottom: 50px;
}
.top-massege .small{
    text-align: center;
    padding-top: 80px;
}
.top-philosophy h4{
    padding-top: 120px;
    text-align: center;
    font-size: 60px;
}
.top-philosophy p{
    text-align: center;
    font-size: 27px;
    padding-top: 30px;
}

.president-content{
    font-family: 'Zen Antique', serif;

}
.president-content h3{
    text-align: center;
    font-size: 30px;
    display: inline-block;
    position: relative;
    color: #333;
    width: 100%;
    margin: 0 auto;
    margin-bottom: 80px;
}
.president-content h3::before{
    content: '';
    display: inline-block;
    position: absolute;
    bottom: -15px;
    left: 50%;
    transform: translateX(-50%);
    width: 60px;
    height: 4px;
    background-color: #2250a1;
}
.president-flex{
    display: flex;
    justify-content: space-between;
    margin: 0 auto;
    width: 90%;
    margin-bottom: 110px;
}
.president-flex img{
    width: 40%;
    margin: 10px 20px 0 0;
}
.president-content p{
    font-size: 16px;
    padding-top: 50px;
}


/*会社概要*/

.about-top h3{
    text-align: center;
    font-size: 30px;
    padding-top: 100px;
    display: inline-block;
    position: relative;
    color: #333;
    width: 100%;
    margin: 0 auto;
    margin-bottom: 80px;
}
.about-top h3::before{
    content: '';
    display: inline-block;
    position: absolute;
    bottom: -15px;
    left: 50%;
    transform: translateX(-50%);
    width: 60px;
    height: 4px;
    background-color: #2250a1;
}

.about-table{
    width: 80%;
    margin: 0 auto;
    margin-bottom: 120px;
}
.about-table table{
    width: 100%;
    border-collapse: collapse;
  }
  
.about-table table tr{
    border-bottom: solid 12px white;
  }
  
.about-table  table tr:last-child{
    border-bottom: none;
  }
  
.about-table table th{
    position: relative;
    text-align: left;
    width: 20%;
    background-color: #2250a1;
    color: white;
    text-align: center;
    padding: 15px 0;
  }

  
.about-table table td{
    text-align: left;
    width: 70%;
    text-align: center;
    background-color: #eee;
    padding: 10px 0;
  }
  

/*ニュースページ*/

.news-content{
    display: flex;
    width: 100%;
    margin-top: 100px;
}
.news-left{
    width: 80%;
    margin-bottom: 70px;
}
.news-right{
    width: 20%;
}
.news-photo{
    display: flex;
    align-items: center;
    border-bottom: 1px solid rgba(213, 212, 212, 0.736);
    padding-bottom: 20px;
    margin-left: 70px;
    margin-right: 40px;
    margin-top: 30px;
}
.news-photo:hover{
    opacity: 0.7;
    transition: all 0.5s;
}
.news-photo img{
    width: 20%;
    margin-right: 10px;
}
.archive h4{
    font-size: 23px;
    font-family: 'Zen Antique', serif;
    padding-bottom: 30px;
    text-align: center;
}
.archive p{
    text-align: center;
    padding-bottom: 14px;
}
.archive p:hover{
    opacity: 0.7;
    transition: all 0.7s;
}


/*事業内容*/

.business-heading h2{
    text-align: center;
    font-size: 37px;
    padding-top: 120px;
    font-weight: bold;
    padding-bottom: 50px;
}
.business-heading p{
    text-align: center;
    font-size: 16px;
    padding-top: 50px;
    line-height: 2.3;
}
.business-flex{
    width: 100%;
    margin-top: 150px;
}
.business-flex1{
    display: flex;
    flex-direction: row-reverse;
    width: 90%;
    margin: 0 auto;
    text-align: center;
    justify-content: space-between;
    margin-bottom: 150px;
}
.flex1-box{
    width: 100%;
}
.flex1-box h3{
    font-size: 50px;
    font-weight: bold;
}

.flex1-box h4{
    font-size: 18px;
    color: #2250a1;
    font-family: 'Zen Antique', serif;
}

.flex1-box p{
    font-size: 16px;
    margin-top: 40px;
    line-height: 2;
}
.business-flex-img{
    width: 90%;
    margin: 0 auto;
}
.business-flex-img img{
    width: 100%;
    height: 90%;
}

.business-flex2{
    display: flex;
    width: 90%;
    margin: 0 auto;
    text-align: center;
    justify-content: space-between;
    margin-bottom: 150px;
}
.flex2-box{
    width: 100%;
}
.flex2-box h3{
    font-size: 50px;
    font-weight: bold;
}

.flex2-box h4{
    font-size: 18px;
    color: #2250a1;
    font-family: 'Zen Antique', serif;
}

.flex2-box p{
    font-size: 16px;
    margin-top: 40px;
    line-height: 2;
}

.business-flex3{
    display: flex;
    flex-direction: row-reverse;
    width: 90%;
    margin: 0 auto;
    text-align: center;
    justify-content: space-between;
    margin-bottom: 150px;
}
.flex3-box{
    width: 100%;
}
.flex3-box h3{
    font-size: 50px;
    font-weight: bold;
}

.flex3-box h4{
    font-size: 18px;
    color: #2250a1;
    font-family: 'Zen Antique', serif;
}

.flex3-box p{
    font-size: 16px;
    margin-top: 40px;
    line-height: 2;
}

.business-flex4{
    display: flex;
    width: 90%;
    margin: 0 auto;
    text-align: center;
    justify-content: space-between;
    margin-bottom: 150px;
}
.flex4-box{
    width: 100%;
}
.flex4-box h3{
    font-size: 50px;
    font-weight: bold;
}

.flex4-box h4{
    font-size: 18px;
    color: #2250a1;
    font-family: 'Zen Antique', serif;
}

.flex4-box p{
    font-size: 16px;
    margin-top: 40px;
    line-height: 2;
}

.business-flex5{
    display: flex;
    flex-direction: row-reverse;
    width: 90%;
    margin: 0 auto;
    text-align: center;
    justify-content: space-between;
    margin-bottom: 150px;
}
.flex5-box{
    width: 100%;
}
.flex5-box h3{
    font-size: 50px;
    font-weight: bold;
}

.flex5-box h4{
    font-size: 18px;
    color: #2250a1;
    font-family: 'Zen Antique', serif;
}

.flex5-box p{
    font-size: 16px;
    margin-top: 40px;
    line-height: 2;
}



/*施工事例*/

.work-wrap{
    padding-top: 100px;
}
.page-nation{
    width: 100%;
    text-align: center;
    margin-top: 100px;
    margin-bottom: 100px;
}
.example2 li {
    display: inline;
    padding:10px 15px;
    border:1px #ccc solid;color:#000053;
    border-radius: 5px / 5px;}
    .example2 .this {background-color:#2250a1;color:#fff;
}

/*お問い合わせ*/

.contact-form p{
    text-align: center;
    font-size: 15px;
    padding-top: 90px;
    padding-bottom: 90px;
}

.box_con02 {
    max-width: 900px;
    margin: 0  auto;
  }
  @media only screen and (max-width: 768px) {
    .box_con02 {
      width: 95%;
    }
  }
  .box_con02 form {
    width: 100%;
  }
  .box_con02 form table {
    width: 100%;
  }
  .box_con02 form table tr {
    position: relative;
  }
  .box_con02 form table tr:first-child td:before {
    content: "";
    position: absolute;
    width: 100%;
    left: 0;
    top: 0;
    height: 1px;
    border-bottom: solid 1px rgba(28, 46, 83, 0.5);
  }
  @media only screen and (max-width: 768px) {
    .box_con02 form table tr:first-child td:before {
      display: none;
    }
  }
  .box_con02 form table tr th {
    width: 30%;
    font-weight: normal;
    padding: 1em .5em;
    background: #2250a1;
    color: #fff;
    position: relative;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  @media only screen and (max-width: 768px) {
    .box_con02 form table tr th {
      text-align: center;
      width: 100%;
      display: block;
      padding: .8em .2em;
    }
  }
  .box_con02 form table tr th span {
    background: #cd6f55;
    padding: 0 .3em;
    color: #fff;
    margin-left: .5em;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  .box_con02 form table tr th:after {
    content: "";
    position: absolute;
    width: 100%;
    left: 0;
    bottom: 0;
    height: 1px;
    border-bottom: solid 1px #fff;
  }
  .box_con02 form table tr td {
    position: relative;
    padding: 1em .5em;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  @media only screen and (max-width: 768px) {
    .box_con02 form table tr td {
      padding: 1.5em .5em;
      display: block;
      width: 100%;
    }
  }
  .box_con02 form table tr td:after {
    content: "";
    position: absolute;
    width: 100%;
    left: 0;
    bottom: 0;
    height: 1px;
    border-bottom: solid 1px rgba(28, 46, 83, 0.5);
  }
  .box_con02 form table tr .box_br {
    display: block;
  }
  .box_con02 form table tr select, .box_con02 form table tr textarea, .box_con02 form table tr .wide {
    width: 100%;
    height: 3em;
    padding: .5em;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  .box_con02 form table tr textarea {
    height: 10em;
  }
  
  /*プライバシーのデザインcss↓*/
  .con_pri {
    max-width: 700px;
    margin: 0  auto;
  }
  @media only screen and (max-width: 768px) {
    .con_pri {
      width: 95%;
    }
  }
  .con_pri .box_pri {
    height: 300px;
    overflow-y: scroll;
    border: 1px solid #cdcdcd;
    background: #f7f7f7;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-top: 20px;
    padding: 20px 55px;
  }
  @media only screen and (max-width: 768px) {
    .con_pri .box_pri {
      margin-top: 4%;
      padding: 3%;
    }
  }
  @media only screen and (min-width: 769px) and (max-width: 1024px) {
    .con_pri .box_pri {
      padding: 4%;
    }
  }
  .con_pri .box_pri .box_tori {
    text-align: left;
    margin-top: 40px;
  }
  @media only screen and (max-width: 768px) {
    .con_pri .box_pri .box_tori {
      margin-top: 4%;
    }
  }
  .con_pri .box_pri .box_tori h4 {
    font-weight: normal;
    margin-bottom: 30px;
    font-size: 150%;
  }
  @media only screen and (max-width: 768px) {
    .con_pri .box_pri .box_tori h4 {
      margin-bottom: 4%;
    }
  }
  .con_pri .box_pri .box_tori .txt {
    padding: 0 20px;
  }
  @media only screen and (max-width: 768px) {
    .con_pri .box_pri .box_tori .txt {
      padding: 0;
    }
  }
  .con_pri .box_pri .box_num {
    margin-top: 30px;
  }
  @media only screen and (max-width: 768px) {
    .con_pri .box_pri .box_num {
      margin-top: 5%;
    }
  }
  .con_pri .box_pri .box_num h4 {
    font-weight: normal;
    font-size: 113%;
  }
  .con_pri .box_pri .box_num .txt {
    padding: 10px 0 0 20px;
  }
  @media only screen and (max-width: 768px) {
    .con_pri .box_pri .box_num .txt {
      padding: 3% 0 0 3%;
    }
  }
  
  .box_check {
    text-align: center;
    margin: 1em auto;
  }
  .box_check label {
    display: inline-block;
  }
  .box_check label span {
    margin-left: .3em;
  }
  
  .btn {
    text-align: center;
  }
  .btn input {
    display: inline-block;
    background: #eee;
    padding: .5em 4em;
    color: #000;
    text-decoration: none;
    cursor: pointer;
    border: none;
    -moz-transition: all 0.4s;
    -o-transition: all 0.4s;
    -webkit-transition: all 0.4s;
    transition: all 0.4s;
  }
  .btn input:hover {
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
    opacity: 0.7;
  }

/*採用情報*/

.recruit-top{
    width: 75%;
    margin: 0 auto;
}
.recruit-top h3{
    width: 100%;
    background-color: #2250a1;
    color: #fff;
    font-size: 22px;
    margin-bottom: 40px;
    padding: 10px 0 10px 20px;
}
.recruit-top p{
    width: 100%;
    margin: 0 auto;
    font-size: 16px;
    padding-bottom: 50px;
}

.recruit-table{
    width: 80%;
    margin: 0 auto;
    margin-bottom: 140px;
}
.recruit-table table{
    width: 100%;
    border-collapse: collapse;
  }
  
.recruit-table table tr{
    border-bottom: solid 12px white;
  }
  
.recruit-table  table tr:last-child{
    border-bottom: none;
  }
  
.recruit-table table th{
    position: relative;
    text-align: left;
    width: 20%;
    background-color: #2250a1;
    color: white;
    text-align: center;
    padding: 15px 0;
  }

  
.recruit-table table td{
    text-align: left;
    width: 70%;
    background-color: #eee;
    padding: 10px 0 0 30px;
  }
  


/*レスポンシブ*/

@media screen and (max-width:1024px){

    .header-list ul li{
        padding: 0 15px;
    }
    .header-list ul li a {
        font-size: 15px;
    }
    .top-wrapper .top-img{
        width: 85%;
    }
    .top-wrapper .top-img img{
        height: 630px;
    }
    .top-wrapper h2{
        font-size: 40px;
    }
    .top-wrapper p{
        font-size: 18px;
    }
    .top-btn{
        top: 74%;
    }
    .company-contents .row{
        height: 350px;
    }
    .company-contents .row-1 h3{
        font-size: 28px;
    }
    .company-contents .row-1 h4{
        padding-bottom: 20px;
    }
    .company-contents .row-2 h3{
        font-size: 28px;
    }
    .company-contents .row-2 h4{
        padding-bottom: 20px;
    }
    .business-text h3{
        font-size: 24px;
    }
    .business-text p{
        font-size: 15px;
    }
    .top-massege .big{
        font-size: 20px;
    }
    .top-massege .small{
        font-size: 16px;
    }
    .slider img {
        width:100%;/*スライダー内の画像を横幅100%に*/
        height:250px;
        object-fit: cover;
    }
    .business-heading h2{
        font-size: 30px;
    }
    .business-flex1{
        width: 100%;
        text-align: left;
    }
    .flex1-box h3{
        font-size: 30px;
        margin-top: -30px;
        text-align: center;
    }
    .flex1-box h4{
        font-size: 16px;
        text-align: center;
    }
    .flex1-box p{
        font-size: 16px;
        margin-top: 40px;
    }
    .business-flex-img img{
        width: 90%;
        height: 90%;
    }
    .business-flex2{
        width: 100%;
        text-align: left;
        margin-left: 40px;
    }
    .flex2-box h3{
        font-size: 30px;
        margin-top: -30px;
        text-align: center;
    }
    .flex2-box h4{
        font-size: 16px;
        text-align: center;
    }
    .flex2-box p{
        font-size: 16px;
        margin-top: 40px;
    }
    .business-flex3{
        width: 100%;
        text-align: left;
    }
    .flex3-box h3{
        font-size: 30px;
        margin-top: -30px;
        text-align: center;
    }
    .flex3-box h4{
        font-size: 16px;
        text-align: center;
    }
    .flex3-box p{
        font-size: 16px;
        margin-top: 40px;
    }
    .business-flex4{
        width: 100%;
        text-align: left;
        margin-left: 40px;
    }
    .flex4-box h3{
        font-size: 30px;
        margin-top: -30px;
        text-align: center;
    }
    .flex4-box h4{
        font-size: 16px;
        text-align: center;
    }
    .flex4-box p{
        font-size: 16px;
        margin-top: 40px;
    }
    .business-flex5{
        width: 100%;
        text-align: left;
    }
    .flex5-box h3{
        font-size: 30px;
        margin-top: -30px;
        text-align: center;
    }
    .flex5-box h4{
        font-size: 16px;
        text-align: center;
    }
    .flex5-box p{
        font-size: 16px;
        margin-top: 40px;
    }
    .business-flex6{
        width: 100%;
        text-align: left;
        margin-left: 40px;
    }
    .flex6-box h3{
        font-size: 30px;
        margin-top: -30px;
        text-align: center;
    }
    .flex6-box h4{
        font-size: 16px;
        text-align: center;
    }
    .flex6-box p{
        font-size: 16px;
        margin-top: 40px;
    }
   

}

@media screen and (max-width:800px){

    .header-container{
        display: none;
    }
    .humberger-menu{
        display: block;
        position: fixed;
        width: 100%;
        height: 52px;
        background-color: #fff;

    }
    .navtext img{
        width: 40%;
        display: block;
        margin: 0 auto;
    }
    .menu {
        list-style: none;
        position: absolute;
        width: 100%;
        height: auto;
        top: 0;
        margin-top: 52px;
        padding: 0 0 10px 0;
        clear: both;
        background: var(--background-navbar);
        transition: 0.3192s cubic-bezier(0.04, 0.04, 0.12, 0.96) 0.1008s;
        transform: scale(1, 0);
        transform-origin: top;
      }
      
      /* Hamburger menu button */
      .menu-btn:checked ~ .menu {
        background-color: #fff;
        transform: scale(1, 1);
        transform-origin: top;
        transition: 0.3192s cubic-bezier(0.04, 0.04, 0.12, 0.96) 0.1008s;
      }
      
      /* Hamburger menbu text */
      .menu a {
        text-decoration: none;
        font-weight: 500;
        letter-spacing: 2px;
        font-size: 16px;
        text-transform: capitalize;
        color: #2250a1;
        opacity: 0;
        transition: 0.5s;
      }
      
      .menu li {
        border-top: 1px solid rgb(75, 75, 75);
        padding: 15px 0;
        margin: 0 54px;
        opacity: 0;
        transition: 0.5s;
      }
      
      .menu-btn:checked ~ .menu a,
      .menu-btn:checked ~ .menu li {
        margin: 0 auto;
        text-align: center;
        opacity: 1;
        transition: 0.3192s cubic-bezier(0.04, 0.04, 0.12, 0.96) 0.2s;
        font-family: 'Zen Antique', serif;
      }
      
      .menu-btn {
        display: none;
      }
      
      .menu-icon {
        display: inline-block;
        position: relative;
        cursor: pointer;
        padding: 24px 14px;
        -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
      }
      
      .navicon {
        background: #2250a1;
        display: block;
        height: 3px;
        width: 26px;
        position: relative;
        transition: 0.3192s cubic-bezier(0.04, 0.04, 0.12, 0.96) 0.1008s;
      }
      
      .navicon:before,
      .navicon:after {
        content: "";
        display: block;
        height: 100%;
        width: 100%;
        position: absolute;
        background: #2250a1;
        transition: 0.3192s cubic-bezier(0.04, 0.04, 0.12, 0.96) 0.1008s;
      }
      
      .navicon:before {
        top: 9px;
      }
      
      .navicon:after {
        bottom: 9px;
      }
      
      /* Hamburger Menu Animation Start */
      .menu-btn:checked ~ .menu-icon .navicon:before {
        transform: rotate(-45deg);
      }
      
      .menu-btn:checked ~ .menu-icon .navicon:after {
        transform: rotate(45deg);
      }
      
      .menu-btn:checked ~ .menu-icon:not(.steps) .navicon:before {
        top: 0;
      }
      .menu-btn:checked ~ .menu-icon:not(.steps) .navicon:after {
        bottom: 0;
      }
      
      .menu-btn:checked ~ .menu-icon .navicon {
        background: rgba(0, 0, 0, 0);
        transition: 0.2192s cubic-bezier(0.04, 0.04, 0.12, 0.96) 0.1008s;
      }
      /* Hamburger Menu Animation End */
      
      /* Navbar Container */
      .navtext-container {
        width: 100%;
        height: 52px;
        position: absolute;
        box-sizing: border-box;
        display: flex;
        justify-content: center;
        align-items: center;
      }
      
      /* Navbar Text */
      .navtext {
        position: absolute;
        text-transform: uppercase;
        color: #ddd;
        letter-spacing: 4px;
        font-size: 20px;
      }


    .philosophy-top{
        padding-top: 60px;
    }
    .top-wrapper{
        height: 480px;
    }
    .top-wrapper .top-img{
        width: 100%;
    }
    .top-wrapper .top-img img{
        height: 480px;
    }
    .top-wrapper h2{
        font-size: 30px;
        top: 27%;
    }
    .top-wrapper p{
        top: 53%;
        left: 8%;
        font-size: 12px;
    }
    .top-btn{
        top: 80%;
    }
    .container h3{
        font-size: 30px;
    }
    .container h4{
        font-size: 18px;
        padding-bottom: 30px;
    }
    .all-news{
        padding-top: 60px;
        width: 80%;
    }
    .all-news .news-contents .content{
        font-size: 14px;
    }
    .all-news .date{
        font-size: 12px;
        padding-right: 30px;
    }
    .company-contents .row{
        display: block;
        height: 680px;
    }
    .company-contents .row-1{
        display: block;
        width: 100%;
        margin-bottom: 30px;
    }
    .company-contents .row-2{
        width: 100%;
        display: block;
    }
    .business-text h3{
        font-size: 18px;
        padding-top: 0px;
        width: 80%;
        margin: 0 auto;
    }
    .business-text p{
        font-size: 14px;
        width: 90%;
        margin: 0 auto;
    }
    .work-contents{
        display: block;
        width: 80%;
    }
    .work-contents .work1{
        width: 100%;
        margin: 0px 0px 30px 0px;
    }
    .contact-button {
        width: 90%;
        font-size: 16px;
    }
    .footer-top{
        display: block;
        margin: 0 auto;
        width: 100%;
    }
    .footer-top img{
        width: 80%;
        display: block;
        margin: 0 auto;
        text-align: center;
    }
    .footer-adress{
        width: 75%;
        margin: 0 auto;
    }
    .footer-list{
        display: none;
    }
    .slider img {
        width:100%;/*スライダー内の画像を横幅100%に*/
        height:200px;
        object-fit: cover;
    }

    /*ニュース*/

    .news-content{
        display: block;
    }
    .news-left{
        width: 90%;
        margin-bottom: 70px;
    }
    .news-right{
        width: 90%;
        margin-bottom: 30px;
    }

    /*経営理念*/

    .top-massege .big{
        font-size: 17px;
        width: 90%;
        margin: 0 auto;
    }
    .top-massege .small{
        font-size: 15px;
        width: 90%;
        margin: 0 auto;
    }
    .top-massege h3{
        font-size: 26px;
    }
    .president-content h3{
        font-size: 26px;
    }
    .president-flex{
        display: block;
    }
    .president-flex img{
        width: 95%;
        display: block;
        margin: 0 auto;
        height: 520px;
    }
    .president-content p{
        font-size: 14px;
        padding-top: 50px;
    }

    /*会社概要*/
    .about-top h3{
        font-size: 26px;
    }
    .about-table table th{
        font-size: 15px;
    }
    .about-table table td{
        font-size: 14px;
      }

    /*事業内容*/
    .business-heading h2{
        font-size: 20px;
    }
    .business-heading p{
        font-size: 15px;
        line-height: 2;
        width: 80%;
        margin: 0 auto;
    }
    .business-flex1{
        display: block;
        text-align: center;
    }
    .flex1-box p{
        font-size: 14px;
        line-height: 2;
        margin-bottom: 40px;
    }
    .business-flex2{
        display: block;
        text-align: center;
        margin: 0 auto;
        margin-bottom: 140px;
    }
    .flex2-box p{
        font-size: 14px;
        line-height: 2;
        margin-bottom: 40px;
    }
    .business-flex3{
        display: block;
        text-align: center;
        margin: 0 auto;
        margin-bottom: 140px;
    }
    .flex3-box p{
        font-size: 14px;
        line-height: 2;
        margin-bottom: 40px;
    }
    .business-flex4{
        display: block;
        text-align: center;
        margin: 0 auto;
        margin-bottom: 140px;
    }
    .flex4-box p{
        font-size: 14px;
        line-height: 2;
        margin-bottom: 40px;
    }
    .business-flex5{
        display: block;
        text-align: center;
        margin: 0 auto;
        margin-bottom: 140px;
    }
    .flex5-box p{
        font-size: 14px;
        line-height: 2;
        margin-bottom: 40px;
    }
    .business-flex6{
        display: block;
        text-align: center;
        margin: 0 auto;
        margin-bottom: 140px;
    }
    .flex6-box p{
        font-size: 14px;
        line-height: 2;
        margin-bottom: 40px;
    }
    
   



}