@charset "UTF-8";
/* Sass Document */
@media (min-width: 1450px) {
  .gene-img2box-under {
    width: 100%;
  }
  .cnte-pad {
    padding: 20% 0;
  }

  .cnte-pad-sde2 {
    padding: 5% 0;
  }

  .cnte-pad-large-aff {
    padding: 12% 0;
  }
  .ge01-right2 img {
    width: 100%;
  }
  .cnte-pad-large {
    padding: 30% 0;
  }
  .gene-img2box-under {
    width: 100%;
    max-width: 1400px;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
  }
}

@media (min-width: 1500px) {
  .message-box-h2 {
    left: 45%;
  }
  .message-box p {
    left: 45%;
  }
  .cnte-pad {
    padding: 17% 0;
  }
  .gene-02-content .gene-img3 {
    height: 320vh;
  }
  .cnte-pad-sde2 {
    padding: 30% 0;
  }
  .cnte-pad-large {
    padding: 22% 0;
  }
  .gene-02-content .gene-img2box-under-sde02 {
    top: -14%;
    bottom: auto;
  }
  .gene-02-content .sdh-gene-img2 {
    height: 100vh;
  }
  .cnte-pad-sde2 {
    padding: 8% 0;
  }
}

@media (min-width: 1600px) {
  .message-box-h2 {
    left: 50%;
  }
  .message-box p {
    left: 50%;
  }
}

@media (min-width: 1800px) {
  .message-box-h2 {
    left: 57%;
  }
  .message-box p {
    left: 57%;
  }
  .gene-img2box .gene-img2 {
    height: 110vh;
  }
  .cnte-pad {
    padding: 13% 0;
  }
  .gene-02-content .gene-img3 {
    height: 250vh;
  }
  .cnte-pad-large {
    padding: 22% 0;
  }
  .gene-02-content .gene-img2box-under-sde02 {
    top: 5%;
    bottom: auto;
  }
  .gene-02-content .sdh-gene-img2 {
    height: 100vh;
  }
  .cnte-pad-sde2 {
    padding: 8% 0;
  }
}

@media (min-width: 2300px) {
  .gene-img2box .gene-img2 {
    height: 80vh;
  }
  .cnte-pad {
    padding: 10% 0;
  }
  .gene-02-content .gene-img3 {
    height: 180vh;
  }
}

@media (min-width: 2600px) {
  .gene-img2box .gene-img2 {
    height: 80vh;
  }
  .cnte-pad {
    padding: 10% 0;
  }
  .gene-02-content .gene-img3 {
    height: 180vh;
  }
  .gene-img2box .gene-img2-sale-v {
    height: 60vh !important;
  }
  .cnte-pad-large {
    padding: 20% 0;
  }
  .gene-02-content .gene-img2box-under-sde02 {
    top: -50%;
    bottom: auto;
  }
  .gene-02-content .gene-img2box-under-sde03 {
    bottom: -90%;
  }
  .gene-02-content .sdh-gene-img2 {
    height: 50vh;
  }
}

@media (max-width: 1340px) {
  .img02-top {
    width: 100%;
  }
  .img02-top {
    width: 100%;
    position: relative;
    top: auto;
    left: auto;
    transform: inherit;
    -webkit-transform: inherit;
    -ms-transform: inherit;
  }
  .gene-02-content .ge-content {
    top: auto;
    position: relative;
    left: auto;
    transform: inherit;
    -webkit-transform: inherit;
    -ms-transform: inherit;
    margin: 0 auto;
  }
  .gene-img3 {
    display: none;
  }
  .gene-02-content .gene-img2box-under {
    position: relative;
    bottom: auto;
    padding-top: 50px;
  }
  .ge01-right2 {
    width: 100%;
    float: none;
    text-align: center;
  }
  .ge01-left2 {
    width: 100%;
    float: none;
    padding-bottom: 25px;
  }
  .gene-02-content .ge-content2-left {
    padding-top: 20px;
    width: 100%;
    padding: 20px 0px 0 0px;
    margin: 0 auto;
  }
  .cnte-pad {
    padding: 200px 0;
  }
  .gene-02-content .ge-title2 {
    padding-left: 0px;
  }
  .cnte-pad2 {
    /*padding: 70px 0;*/
    display: none;
  }

  .gene-img2box-under-sde02 .ge-title, .gene-img2box-under-sde02 .ge-maintext, .gene-img2box-under-sde02 .ge-subtext {
    width: 80%;
    margin: 0 auto;
  }
  .cnte-pad-sde {
    padding: 180px 0;
  }
  .gene-02-content .ge-content2-left-sde2 {
    padding: 60px 80px 60px 60px;
    width: 580px;
  }
  .line03 {
    right: -45px;
    left: auto;
    z-index: 2;
  }

}

@media (max-width: 1449px) and (min-width: 1340px) {
  /*
    インタビューページ
    Topとセクション01の距離を調整
  */
  .interview-construction .ge-contentsde,
  .interview-sales .ge-contentsde {
    top: 20%;
  }
  .interview-affairs .ge-content--top {
    top: 25%;
  }
}



@media (max-width: 1340px) and (min-width: 1025px) {
  /*
    インタビューページ
    総務部以外
  */
  .interview-construction .gene-02-content .ge-title2,
  .interview-sales .gene-02-content .ge-title2 {
    margin-top: 80px;
  }

  .interview-construction .gene-02-content .ge-content2-left-sde2,
  .interview-sales .gene-02-content .ge-content2-left-sde2 {
    padding-bottom: 0;
  }
}


@media (max-width: 1250px) {
  .about-maincon-box {
    margin-bottom: 40px;
  }
  .about-maincon-box img {
    width: 100%;
  }
  .about-color-box {
    position: relative;
    right: auto;
    bottom: auto;
    padding: 20px 3%;
    width: 94%;
  }
  .about-maincon-box {
    padding-bottom: 0;
  }
  .sidebar {
    border-left: none;
  }

  .sidebar ul {
    padding: 0;
  }
  .sidebar ul li {
    font-size: 16px;
    border-bottom: 1px solid #d6d5da;
    color: #3e465d;
    line-height: 20px;
  }
  .sidebar a {
    display: block;
  }

  .sidebar i {
    display: inline-block !important;
    margin-right: 16px;
    padding: 0;
    color: #1c7fe5;
  }

  .sidebar ul li span {
    margin-left: 26px;
  }
  .cinfo-box {
    width: 100%;
  }
  .ms2 .ms-message2 {
    width: 100%;
    padding: 0 0 60px 0;
    position: relative;
    top: auto;
    left: auto;
    transform: inherit;
    -webkit-transform: inherit;
    -ms-transform: inherit;
  }
  .ms2-box {
    height: auto;
  }
  .ms-maintext {
    margin-left: 2.5em;
  }
  .gene-more {
    margin-top: 80px;
    margin-bottom: 100px;
  }
  .main-con-css-left {
    float: none;
    margin: 0 auto;
  }
  .main-con-css-right {
    float: none;
    padding-top: 50px;
    max-width: 800px;
    margin: 0 auto;
  }
  .cp-table {
    margin-bottom: 0px;
  }
  .cp-table-recruit:first-child {
    margin-bottom: 40px;
  }
  .cpcase-companyinfo {
    padding-bottom: 0px;
  }
  .about-maincon-box:last-child {
    margin-bottom: 0px;
  }
  /* 環境への取り組みページ*/
  .environment-list__inner:last-child {
    margin-bottom: 0;
  }
}

@media (max-width: 1200px) {
  .top-baner-left img, .top-baner-right img {
    width: 100%;
  }
  .gene-02-content .ge-content {
    padding: 100px 0;
    width: 100%;
  }
  .ge-content2 .ge-title, .ge-content2 .ge-subtext, .ge-content2 .ge-maintext {
    width: 95%;
    margin: 0 auto;
  }
  .ge03-titposi2 {
    right: auto;
    left: -35px;
  }
}

@media (max-width: 1155px) {
  .message-box .mese-back {
    width: 100%;
  }
  .message-box-h2 {
    left: 240px;
    top: 40px;
    text-shadow: 2px  2px 1px #fff,-2px  2px 1px #fff,2px -2px 1px #fff,-2px -2px 1px #fff,2px  0px 1px #fff,0px  2px 1px #fff,-2px  0px 1px #fff,0px -2px 1px #fff;
  }
  .message-box p {
    left: 240px;
    top: 220px;
    text-shadow: 2px  2px 1px #fff,-2px  2px 1px #fff,2px -2px 1px #fff,-2px -2px 1px #fff,2px  0px 1px #fff,0px  2px 1px #fff,-2px  0px 1px #fff,0px -2px 1px #fff;
  }
  .fv {
    background: url("../img/fv.jpg") right/cover;
    height: 69vh;
    margin-top: 80px;
  }
  .cs-content {
    width: 94%;
  }
}

@media (max-width: 1024px) {
  .news-box {
    width: 100%;
    padding: 60px 0px;
  }
  .news-box ul li {
    width: 90%;
    margin: 0 auto;
  }
  .casestudy-content {
    width: 95%;
    border: none;
  }
  .cate-sort span {
    margin-left: 20px;
  }
  .ms {
    margin-bottom: 20px;
    padding: 130px 0px 40px 0px;
  }
  .ms img {
    width: 100%;
  }
  .ms .ms-message {
    position: relative;
    right: auto;
    bottom: auto;
    font-size: 20px;
  }
  .ge-content {
    font-size: 22px;
    padding: 50px 0;
    width: 100%;
    position: relative;
    top: auto;
    left: auto;
    transform: inherit;
    -webkit-transform: inherit;
    -ms-transform: inherit;
  }
  .gene-img2 {
    display: none;
  }
  .ge-title {
    width: 80%;
    margin: 0 auto;
  }
  .ge-subtext {
    width: 85%;
    margin: 0 auto;
  }
  .ge-maintext {
    width: 85%;
    margin: 0 auto;
  }
  .gene-02-content .ge-content {
    width: 85%;
  }
  .ge-subtext-top {
    width: 80%;
    margin: 0 auto;
  }
  .ge-titposi2 {
    right: 0px;
    top: 0px;
  }
  .gene-img2box-under {
    position: relative;
    bottom: auto;
  }
  .ge01-left, .ge01-right {
    width: 100%;
    float: none;
  }
  .ge01-left .ge-title {
    padding-left: 0;
  }
  .ge01-left {
    padding: 20px 0;
  }
  .ge-content2-left {
    padding: 20px 0;
    width: auto;
    padding-left: 0;
  }
  .general-box {
    width: 100%;
  }
  .gene-img2box-under-smbx {
    width: 100%;
  }
  .cnte-pad {
    padding: 15px 0;
  }
  .cnte-pad2 {
    padding: 30px 0;
  }
  .under-arrow {
    margin-bottom: 100px;
    margin-top: 0px;
  }
  .ge01-titposi2 {
    right: -15px;
    width: 30px;
    font-size: 14px;
  }
  .ge03-titposi2:before {
    margin-right: 0.2rem;
  }
  .ge03-titposi2 {
    width: 70px;
  }
  .gene-02-content .ge-content2-left-sde2 {
    padding: 20px 0 !important;
    padding-left: 0px !important;
    width: auto !important;
  }
  .sele-case {
    margin-left: 20px;
  }
  .ge03-titposi2 {
    left: 20px;
    right: auto;
  }
  .gene-top-img-abso .abso--name {
    top: auto;
    bottom: 10px;
    width: auto;
  }
  .aro-line {
    display: none;
  }
}

@media (max-width: 970px) {
  .footer-left {
  }
  .footer-right {
  }
  .interteck {
    bottom: 30px;
  }
	.intertek{
		right:15px;
	}
}

@media (max-width: 800px) {
  .casestudy-content-wid {
    width: 100%;
  }
  .case-child-titlebox {
    padding: 20px 0 30px 0;
  }
  .casestudy-content {
    margin: 20px auto;
  }
  .cachi-img-box {
    padding: 10px 0;
  }
  .btn-prene {
    padding: 5px 0;
    width: 83%;
    margin: 0 auto;
  }
	
	/**2012 代表挨拶**/
	.top_message .top_message_inner .top_message_sign{
		background:url(../img/top_message_sp.jpg) left bottom no-repeat;
		background-size:cover;
		padding:125px 30px;
	}
	.top_message{
		background:none;
		padding:0;
	}
	.top_message .top_message_inner{
		width:100%;
		margin:auto;
		padding:0;
	}
	.top_message .top_message_inner .top_message_sign span{
		display:block;
	}
}

@media (max-width: 780px) {
  /* パンくず ハンバーガーに変わるとき、余白不要 */
  .hierarchy {
    margin-top: 0;
  }

  .pc {
    display: none;
  }
  .sp {
    display: block;
  }
  h2,
	.front_statement .textarea .title,
	#front_about .title{
    font-size: 20px;
  }
  h2 span {
    font-size: 12px;
    top: 45px;
  }
	.front_statement .textarea .title span,
	#front_about .title span{
    font-size: 12px;
	}
  .message-box-h2 span::before {
    bottom: -6px;
  }
  .more {
    width: 270px;
    text-align: center;
    font-size: 14px;
    padding: 16px 0 16px 5px;
    letter-spacing: 6px;
  }
  .more-cs-link {
    width: 210px;
    font-size: 12px;
    padding: 10px 0 10px 5px;
    bottom: -40px;
  }
  .more-top_css {
    width: 210px;
    font-size: 12px;
    padding: 10px 0 10px 5px;
    bottom: -40px;
  }
  .more img {
    padding: 0px 0px 6px 5px;
  }
  .more2 {
    padding: 16px 5px 16px 0;
  }
  .more img {
    padding: 0px 5px 6px 0px;
  }
  .more3 img {
    position: absolute;
    left: 8px;
  }
  .more4 img {
    position: absolute;
    right: 8px;
  }
  .more-pad-new-left img {
    position: absolute;
    left: 8px;
  }
  .more-pad-new-right img {
    position: absolute;
    right: 8px;
  }
  .sp-menu {
    display: block;
  }
  header {
    padding: 5px 0;
    background: #fff;
  }
  nav {
    display: none;
    position: absolute;
    top: 0;
    width: 100%;
    height: 100vh;
    background: #00092f;
    left: 0;
    z-index: 80;
  }
  header nav ul {
    display: block;
    width: 90%;
    height: 350px;
    position: absolute;
    top: 0px;
    right: 0px;
    bottom: 0px;
    left: 0px;
    margin: auto;
  }
  header nav ul li {
    margin: 0 auto;
    text-align: center;
  }
  header nav ul li:last-child {
    border: none;
  }
  header nav ul li a {
    display: block;
    color: #00092f;
    font-family: 'Noto Serif JP', serif;
    color: #fff;
    text-align: left;
    font-size: 22px;
    margin: 30px auto;
    padding: 0;
  }
  header nav ul li a:hover {
    display: blue;
  }
  .detail-text a {
    padding: 10px 50px 10px 50px;
  }
  #nav_toggle {
    display: block;
    width: 35px;
    height: 40px;
    position: relative;
    top: 8px;
    right: 8px;
    z-index: 100;
  }
  #nav_toggle div {
    position: relative;
  }
  #nav_toggle span {
    display: block;
    height: 3px;
    background: #00092f;
    position: absolute;
    width: 100%;
    left: 0;
    -webkit-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out;
  }
  #nav_toggle span:nth-child(1) {
    top: 0px;
  }
  #nav_toggle span:nth-child(2) {
    top: 12px;
  }
  #nav_toggle span:nth-child(3) {
    top: 24px;
  }
  .open #nav_toggle span:nth-child(1) {
    top: 12px;
    background-color: #fff;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
  }
  .open #nav_toggle span:nth-child(2) {
    width: 0;
    left: 50%;
  }
  .open #nav_toggle span:nth-child(3) {
    top: 12px;
    background-color: #fff;
    -webkit-transform: rotate(-135deg);
    transform: rotate(-135deg);
  }
  .area img {
    width: 120%;
  }
  .top-left, .top-right {
    width: 100%;
  }
  .fv {
    position: relative;
    background: url("../img/fv.jpg") right/cover;
    width: 100%;
    height: 50vh;
    margin-top: 70px;
  }
  .news {
    padding: 60px 0;
  }
  .news-box-h2 {
    top: -15px;
  }
  .news-box ul li p {
    font-size: 12px;
  }
  .cate-blog, .cate-reload, .cate-news {
    margin: 0 20px;
  }
  .news-a {
    margin-top: 15px;
  }
  .message-box p {
    left: 240px;
    top: 170px;
    font-size: 12px;
  }
  .baner-box {
    padding: 15px 0;
    width: 60%;
    background-color: #fff;
    margin: 0 auto;
  }
  .top-baner-left img {
    margin-bottom: 30px;
    -webkit-box-shadow: none;
            box-shadow: none;
  }
  .top-baner-right img {
    margin-bottom: 30px;
    -webkit-box-shadow: none;
            box-shadow: none;
  }
  .top-baner-left, .top-baner-right {
    width: 100%;
    text-align: center;
    margin: 0 auto;
  }
  .fa-chevron-box {
    top: 51px;
  }
  footer {
    padding-top: 10px;
    padding-bottom: 53px;
  }
  .footer-left, .footer-right {
    width: 100%;
    float: none;
    text-align: center;
  }
  .footer-content {
    padding-bottom: 0px;
  }
  .footer-left p {
    margin: 15px 0 5px 0;
    text-align: left;
    padding-left: 60px;
  }
  .footer-right .footer-contact {
    margin: 10px auto 0 auto;
    padding: 14px 20px 14px 20px;
  }
  .footer-right ul {
    padding-top: 20px;
  }
  .footer-right ul li {
    border: none;
    width: 100%;
    float: left;
  }
	.footer-right ul li:first-child{
		border-left:none;
	}
  .footer-right ul li:last-child {
    margin-top: 0;
  }
  .footer-right ul li a {
    padding: 10px 0;
    border-bottom: 1px solid #fff;
    width: 100%;
    display: inline-block;
    text-align: left;
    font-size: 14px;
  }
  .footer-right ul li:nth-child(1) a {
    border-top: 1px solid #fff;
  }
  .footer-right ul li a i {
    padding-left: 10px;
  }
  .footer-right .footer-contact img {
    padding: 0px 0 7px 10px;
  }
  .interteck {
    top: 10px;
    left: 10px;
    text-align: left;
  }
  .copyright {
    text-align: left;
    padding: 25px 0;
    font-size: 13px;
  }
  .footer-right .footer-contact {
    display: none;
  }
  .footer-contact-sp {
    color: #fff;
    text-align: center;
    border: 1px solid #fff;
    padding: 15px 0;
    font-size: 14px;
    display: block;
    position: fixed;
    bottom: 0;
    width: 100%;
    background-color: #00092f;
    z-index: 2;
  }
  .footer-contact-sp img {
    padding: 0 0 5px 10px;
  }
  .btn-prene-icon {
    top: 22px;
  }
  .btn-prene-icon2 {
    top: 22px;
  }
  .fa-info-chevron-box {
    top: 50px;
  }
  .main-con-css-left {
    padding-right: 0px;
    width: 100%;
  }
  .about-24 {
    font-size: 16px;
  }
  .about-20 {
    font-size: 12px;
  }
  .about-28 {
    font-size: 20px;
  }
  .about-33 {
    font-size: 25px;
  }
  .cinfo-box .under-main-titie-css {
    padding-top: 20px;
  }
  .cpcase-study {
    padding-bottom: 10px;
  }
  .cinfo-box .cs-content {
    margin: 10px auto 30px auto;
  }
  .bd-box {
    padding: 10px 0;
  }
  .ci-box {
    padding: 10px 0;
  }
  .cih2-1 {
    padding-right: 30px;
  }
  .cih2-2 {
    padding-left: 60px;
  }
  .coh2-1 {
    padding-right: 50px;
  }
  .msh2-1 {
    padding-right: 60px;
  }
  .msh2-2 {
    padding-left: 50px;
  }
  .ge01-right2 img {
    width: 100%;
  }
  .slider {
    margin: 0 auto;
  }
  .lineee {
    bottom: -15px;
    padding: 20px 0.5px;
    left: 49.9%;
  }
  .ms-titposi {
    top: 60px;
  }
  .gene-h2 {
    margin-bottom: 30px;
  }
  .scroll {
    display: none;
  }
  .rela-pad {
    padding-right: 10px;
    display: inline-block !important;
  }
  .ge-content {
    padding: 25px 0;
  }
  .ge-title {
    font-size: 20px;
  }
  .ge-maintext {
    font-size: 14px;
  }
  .ge-content2-left {
    padding: 0;
  }
  .ge01-left {
    padding: 25px 0;
  }
  .gene-02-content .ge-content {
    width: 100%;
    padding: 75px 0 0 0;
  }
  .gene-02-content .ge-content img {
    margin-top: 25px;
  }
  .gene-02-content .gene-img2box-under {
    padding-top: 0px;
  }
  .cnte-pad {
    padding: 0;
  }
  .gene-02-content .ge-content2-left {
    padding: 0px 0px 0px 0px;
  }
  .gene-02-content .ge-content2-left-sde2 {
    padding: 0px !important;
  }
  .ge01-left2 {
    padding: 25px 0;
  }
  .under-arrow {
    margin-bottom: 65px;
  }
  .under-arrow img {
    width: 5px;
  }
  .footer-left a {
    width: 100%;
    display: block;
    text-align: left;
  }
  .footer-left a img {
    padding-left: 10px;
  }
  .interteck {
    top: 100px;
    width: 35px;
  }
  .footer-content .nav-width {
    width: 100%;
    padding: 15px 0 10px 0;
  }
  /* プライバシーポリシー */
  .privacy-page__intro {
    font-size: 14px;
    line-height: 2;
  }
  .privacy-page__intro p {
    margin-bottom: 20px;
  }
  .privacy-page__list-body {
    font-size: 14px;
    line-height: 1.65;
  }
  .privacy-page__list-text {
    margin-bottom: 20px;
  }
  .privacy-page__outro {
    font-size: 14px;
  }
  /* テーブル関係 */
  .cp-table th ,
  .cp-table td {
    font-size: 14px;
  }
  /* 環境への取り組み */
  .environment-list__text {
    font-size: 14px;
  }
  /* 採用情報 */
  .recruit-page__head {
    margin-bottom: 20px;
  }
  .recruit-page__intro {
    font-size: 14px;
    margin-bottom: 20px;
    line-height: 2;
  }
  .recruit-page__intro br {
    display: none;
  }
  /* サイドバナー */
  .sidebar-margin {
    margin-bottom: 20px;
  }
}

@media (max-width: 600px) {
  .lineee {
    bottom: -11px;
    padding: 10px 0.5px;
    z-index: 2;
  }
  .min-dis-block {
    display: block;
  }
	
	ul.telfax li:nth-child(odd){
		width:160px;
	}
	.hierarchy ul{
		padding-left:15px;
	}
	#front_about{
		padding:60px 20px 90px;
	}
}

@media (max-width: 480px) {
  .message {
    padding: 20px 0 30px 0;
    overflow: hidden;
  }
  .message-box-h2 {
    top: 6%;
    left: 50%;
  }
  .message-box p {
    top: 55%;
    left: 50%;
    width: 90%;
  }
  .message-box .mese-back {
    padding: 80px 0px 60px 0px;
  }
  .baner-box {
    width: 90%;
  }
  .top-baner-right img {
    margin-bottom: 0px;
  }
  .btn-prene a {
    width: 70%;
    margin: 5px auto;
    float: none;
    letter-spacing: 8px;
    font-size: 12px;
    padding: 12px 0;
  }
  .more img {
    width: 15px;
    top: 18px;
  }
  .cate-box {
    width: 50%;
    padding: 0.5%;
  }
  .info-news-css {
    padding: 0;
  }
  .news-box {
    padding: 30px 0px;
  }
  .pagine-box-info {
    margin-bottom: 30px;
  }
  .under-main-css {
    padding: 20px 0;
  }
  .under-main-titie-css {
    padding-bottom: 20px;
  }
  .cp-table .table-head-bg-blue {
    margin: 0 -20px 10px;
    padding: 15px 0 15px 20px;
  }
  .ms-logo {
    padding-top: 10px;
  }
  .ms2 .ms-message2 {
    width: 100%;
    padding: 0 0 20px 0;
  }
  .ms2 .ms-message2 p {
    padding: 10px 0;
    font-size: 14px;
  }
  .gene-02-content .ge-content {
    padding: 50px 0 0px 0;
  }
  .gene-02-content .gene-img2box-under {
    padding-top: 0px;
  }
  .gene-02-content .ge-content img {
    margin-top: 25px;
  }
  .gene-more {
    margin-top: 30px;
    margin-bottom: 30px;
  }
  .ge02-titposi2 {
    top: -10px;
    font-size: 14px !important;
  }
  .ge02-titposi2 .bou1 {
    height: 15px;
    margin-bottom: 20px;
    margin-right: -10px;
  }
  .abso--name-size-role {
    font-size: 12px;
  }
  .abso--name-size {
    font-size: 20px;
  }
  .abso--name-size2 {
    padding: 0 20px;
  }
  .role-name {
    font-size: 12px;
  }
  .lineee {
    bottom: -14px;
    padding: 10px 0.5px;
  }
  .all-fv h2 {
    top: 40%;
    width: 100%;
  }
  .case-child {
    margin-bottom: 20px;
  }
  /* 採用親ページ */
  .recruit-page__link-outer {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .recruit-page__link:first-child {
    margin: 0 0 10px 0;
  }
  /* 問い合わせフォーム */
  .contact-page .contact-form__label {
    font-size: 14px;
  }
  .contact-page .contact-form__btn-outer {
    margin-bottom: 60px;
  }
  .contact-page .contact-form__btn {
    font-size: 14px;
  }
  /* about us */
  .about-24 {
    font-size: 14px;
  }
	.top_message .top_message_inner .top_message_sign{
		padding-top:90px;
		padding-bottom:90px;
	}
	.under-main-titie-css i{
		padding-right:20px;
	}
	h3.under-main-titie-css{
		font-size:16px;
	}
	.under-main-titie-css span{
		display:block;
		padding-left:0;
	}
}

@media (max-width: 300pxs) {
  .lineee {
    display: none;
  }
  .jobp-width {
    width: auto;
  }
}

@media (max-width: 780px) {
  .bd-box.cst .bd-img {
    margin: 0;
    width: 50%;
    padding: 0.5%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .bd-box.cst .bd-img:nth-child(1) {
    margin: 0;
    width: 50%;
    padding: 0.5%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .bd-box.cst .bd-img:nth-child(4) {
    margin: 0;
    width: 50%;
    padding: 0.5%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .bd-box.cst .bd-img:nth-child(even) {
    margin: 0;
    width: 50%;
    padding: 0.5%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .ci-box.cst .ci-img {
    width: 100%;
    margin: 0 auto 10px;
  }
  .ci .ci-img:nth-child(1) {
    width: 100%;
    margin: 0 auto 10px;
  }
  .ci .ci-img:nth-child(2n) {
    width: 100%;
    margin: 0 auto 10px;
  }
  .ge-title {
    font-size: 16px;
    width: calc(100% - 45px - 2.5%) !important;
    padding: 0 45px 0 2.5% !important;
    margin: 0 auto 10px;
  }
  .ge-subtext {
    font-size: 14px;
    width: calc(100% - 45px - 2.5%) !important;
    padding: 0 45px 0 2.5% !important;
  }
  .ge-maintext {
    font-size: 12px;
    width: calc(100% - 45px - 2.5%) !important;
    padding: 0 45px 0 2.5% !important;
    line-height: 2;
  }
  .ge-content2 .ge-title, .ge-content2 .ge-subtext, .ge-content2 .ge-maintext {
    width: 90% !important;
    margin: 0 auto;
    padding: 0 2.5% !important;
  }
  .ge01-left2 .ge-title, .ge01-left2 .ge-subtext, .ge01-left2 .ge-maintext {
    width: 90% !important;
    margin: 0 auto;
    padding: 0 2.5% !important;
  }
  .ge01-left2 .ge-title {
    margin: 0 auto 10px;
  }
  .gene-02-content .ge-content2-left-sde2 .ge-title, .gene-02-content .ge-content2-left-sde2 .ge-subtext, .gene-02-content .ge-content2-left-sde2 .ge-maintext {
    width: 90% !important;
    margin: 0 auto;
    padding: 0 2.5% !important;
  }
  .ge-sales-cs {
    width: 90% !important;
    padding: 0 2.5% !important;
  }
}
/*# sourceMappingURL=responsive.css.map */


@media (max-width: 1250px) {
	.baner-box{
		display:none;
	}
}



@media(min-width: 1440px) {

  /* 総務 */
  .interview-affairs .under-arrow {
    margin-top: 140px;
    margin-bottom: 80px;
  }


  /* 営業 */
  .interview-sales .under-arrow {
    margin-bottom: 80px;
    margin-top: 0;
  }


  /* 工事部 */
  .interview-construction .under-arrow {
    margin-top: 0;
    margin-bottom: 80px;
  }

}


@media(min-width: 1800px) {
  /* 総務 */
  .interview-affairs .gene-img2box .gene-img2 {
    height: 130vh;
  }

  .interview-affairs .gene-02-content .gene-img3 {
    height: 280vh;
  }

  .interview-affairs .under-arrow {
    margin-top: 60px;
  }

  /* 営業 */
  .interview-sales .gene-img2box .gene-img2 {
    height: 90vh;
  }

  /* 工事部 */
  .interview-construction .gene-img2box .gene-img2 {
    height: 95vh;
  }

  .interview-construction .gene-02-content .sdh-gene-img2 {
    height: 105vh;
  }

}

@media(min-width: 1800px) and (max-height: 800px) {

  .gene-02-content .sdh-gene-img2,
  .gene-img2box .gene-img2 {
    height: auto !important;
  }

  .interview-construction .ge-contentsde,
  .interview-sales .ge-contentsde {
    top: 20%;
  }

  .interview-construction .gene-02-content .gene-img2box-under-sde03 {
    bottom: -75%;
  }

  .interview-affairs .gene-02-content .gene-img3 {
    height: auto !important;
  }

  .interview-affairs .gene-02-content .gene-img2box-under {
    bottom: -20%;
  }

  .interview-affairs .ge-content--top {
    top: 25%;
  }

}

/* 2021 */

@media (max-width: 780px) {
	.front_menu ul li .front_menu_text h3{
		font-size:110%;
	}
	.front_menu ul li .front_menu_text span{
		font-size:90%;
	}
	.front_statement .textarea h2,
	#front_about,
	#front_about h3{
		font-size:110%;
	}
}

@media (max-width: 600px) {
.front_menu ul{
	max-width:480px;
	margin:auto;
}
.front_menu ul li{
	float:none;
	width:100%;
}
.front_menu ul li:last-child{
	margin-left:auto;
	margin-top:30px;
}
	#front_about{
		font-size:92%;
	}
	#front_about h3{
		font-size:96%;
	}
	#front_about h3{
		letter-spacing:.05em;
	}
	
	.front_statement .textarea h2{
font-size:90%;
	}
	.footer-left .ftel{
		display:block;
	}
	.footer-left .ftel a{
		color:#fff;
		display:initial;
		width:auto;
	}
}


@media (max-width: 800px) {
	.case_content{
		padding-bottom:30px;
	}
	.btn-back{
		padding:15px 30px;
	}
}

@media (max-width: 600px) {
	.btn-back{
		font-size:90%;
	}
	
	.case-child-titlebox h3{
		font-size:100%;
	}

	.office_tel{
		font-size:80%;
	}
	
	/**関連企業**/
	
	.cp-table th,
	.cp-table td{
		box-sizing:border-box;
		padding:15px;
	}
	.cp-table th,
	.cp-table td,
	.cp-table.cp-table-associated th,
	.cp-table.cp-table-associated td{
		display:block;
		width:100%;
		padding:5px 15px ;
		vertical-align:top;
		border-bottom: 1px solid #00092f;
	}
	.cp-table th{
		border-bottom: 1px solid #efefef;
	}
	.cp-table td{
		margin-bottom:10px;
	}

	.cp-table.cp-table-associated th{
		text-align:center;
		padding-top: 30px;
	}
	.cp-table.cp-table-associated th img{
		max-width:240px;
	}
	.cp-table.cp-table-associated td{
		margin-bottom:30px;
	}
	.cp-table-associated_name{
		padding-left: 0;
	}
	.cp-table.cp-table-office th,
	.cp-table.cp-table-office td{
		width:100%;
	}
	.office_tel{
		margin:auto auto 10px;
	}
}

@media (max-width: 480px) {
	.cp-table th,
	.cp-table td,
	.cp-table.cp-table-associated th,
	.cp-table.cp-table-associated td{
		padding:5px 8px ;
	}
	ul.telfax li:nth-child(odd){
		width:156px;
	}
	ul.telfax li{
		letter-spacing:-.05em;
	}
}