@charset "UTF-8";

/* ===== */
body.target {
  width: 100%;
  margin: auto;
}

/* ===== */

/* lower mv 768 start */
.lower-mv {
  height: 250px;
}
/* lower mv 768 end */

/* contact banner 768px start */
.contactbnr__wrapper {
  flex-direction: column;
}

.contactbnr__item {
  width: 100%;
  max-width: 350px;
}

.contactbnr__tel {
  border-right: none;
  border-bottom: 1px solid #fff;
}

.contactbnr__desc--large {
  font-size: 24px;
}
/* contact banner 768px end */

/* company 2 - 768px start */
.sub-company02__table dl {
  flex-direction: column;
  gap: 12px;
}

.sub-company02__table .col-1,
.sub-company02__table .col-2 {
  width: 100%;
  min-width: unset;
}
/* company 2 - 768px end */

/* contact form */
.contact-form {
  max-width: 500px;
  margin: 0 auto;
}

.contact-form__item {
  flex-direction: column;
}

#mailformpro .contact-form__item dt,
#mailformpro .contact-form__item dd {
  width: 100%;
  display: flex;
  flex-direction: row;
}

/* top page */

/*jun start*/
.dialogue__txt h3 {
  font-size: 20px;
}

.dialogue .brown-bgtxt {
  flex-direction: column;
}

.dialogue_card {
  flex-direction: column;
}

.dialogue_card .card {
  width: 100%;
}

.dialogue_card .card img {
  max-width: 400px;
}

.dialogue_card .card__img {
  text-align: center;
}

.construction-result_list li {
  border-bottom: solid 1px;
}

.construction-result_list li span {
  width: 100%;
}

.construction-result_list li span:nth-child(2),
.construction-result_list li span:nth-child(3),
.construction-result_list li span:nth-child(4) {
  padding-left: 0;
}

.construction-result_wrap .bb {
  border-bottom: 0;
}

.company__lower {
  padding: 30px 0;
}

.company__profile {
  padding: 30px 0;
}

.company__profile .right {
  flex-direction: column;
  text-align: center;
  align-items: center;
}

.company__ttl .inner {
  flex-direction: column;
  text-align: center;
  padding: 20px 0;
}

.company__ttl .left {
  width: 100%;
}

.company__ttl .right {
  width: 100%;
}

.company__ttl h1 {
  font-size: 40px;
  text-align: left;
  line-height: 60px;
  padding: 0% 0% 10% 0%;
  letter-spacing: 14px;
}

.company__ttl h2 {
  font-size: 16px;
}

.company__ttl .right .ttl {
  font-size: 25px;
}

.company__ttl .pc {
  display: none;
}

.company__ttl .sp {
  display: block;
  width: 90%;
  max-width: 350px;
}

.company__graph {
  flex-direction: column;
  padding: 10px;
}

.company__graph .graph {
  width: 105%;
}

.message__wrap .left img {
  width: 70%;
}

.company__logo {
  width: 75%;
}

.company__address {
    width: 75%;
}

/*jun end*/

/* sub-news */

.sub-news .card a {
  row-gap: 10px;
}

.sub-news .card a .date {
  width: 100%;
}

.sub-news .card a .title {
  width: 100%;
}

/* office-info-start */

.map-start .image-area {
  width: 100%;
  /* overflow-x: scroll; */
}

.map-start img {
  min-width: unset;
}

.map-details {
  position: initial;
  left: initial;
  top: initial;
}

.map-details .map_title {
  font-size: 28px;
}

.map-details .legend {
  font-size: 16px;
}

.office_info .card {
  max-width: 100%;
  width: 100%;
}

.map_ttl {
  font-size: 20px;
}

.sub-attractive .flow .content {
  flex-direction: column;
}

.sub-attractive .flow .content .imgbox,
.sub-attractive .flow .content .textbox {
  width: 100%;
}

.sub-attractive .flow .wrapper .ttl {
  font-size: 20px;
}

.sub-attractive .flow .container {
  max-width: 600px;
  margin: 0 auto;
  padding-left: 30px;
}

.sub-attractive .flow .container::before {
  left: 15px;
}

.sub-attractive .flow .wrapper .ttl::before {
  width: 12px;
  height: 12px;
  left: -14px;
}

.sub-attractive .scenery .wrapper {
  max-width: 600px;
  margin: 0 auto;
}

.sub-attractive .scenery .cards .card {
  width: 100%;
}

/* corporate-history */

.sub-history--content .item,
.sub-history--content .item:nth-of-type(odd) {
  margin-bottom: 30px;
}

.sub-history--content .item::before {
  font-size: 38px;
  text-shadow: 0px 0px 3px rgb(255 255 255);
}

.sub-history--content .item .cards {
  margin-top: 70px;
}

/* corporate-history-end */

@media (max-width: 576px) {

  .contact-form__item--type dd {
    flex-direction: column;
  }

  .sub-attractive .future .wrapper-container--images {
    flex-direction: column;
  }
}

@media (max-width: 400px) {
  .sub-history--content .item .cards .float2 {
    width: 80px;
    top: 7%;
  }
}



.ttl-company {
    display: flex;
    justify-content: center;
}



.company__ttl h2 {
    letter-spacing: 4px;
}


.recruitdetail-box .recdetail h2 {
    font-size: 24px;
    padding: 0 3%;
    margin: 0 0 17px;
}


.message {
    margin-bottom: 0px;
}


span.details.column {
    display: flex;
    flex-direction: column;
}


.company__profile-wrap ul li .details {
    align-items: flex-start;
    display: flex;
    flex-direction: column;
    }

/* Override the link color for Safari */
@media not all and (min-resolution: 0.001dpcm) {
    @supports (-webkit-appearance: none) {
        /* This CSS rule will only apply to Safari */
        .defalt_lineheight a {
            color: #000; /* Black */
        }
    }
}

/* Override the link color for Safari */
@media not all and (min-resolution: 0.001dpcm) {
    @supports (-webkit-appearance: none) {
        /* This CSS rule will only apply to Safari */
        .defalt_lineheight {
            color: #000; /* Black */
}

p.defalt_lineheight a {
    color: black;
    text-decoration: none;
}}}


.daihyou img, .senmu img, .joumu img {
    width: 60vw;
    max-width: 350px;
    filter: drop-shadow(10px 10px 6px rgba(160, 160, 160, 0.8));
}


.graph.u-m{
    margin-bottom: 10px;
}


.taidan_flex_outer {
    display: flex;
    flex-direction: column;
    gap: 20px;
    margin-bottom: var(--def-line-height);
    justify-content: space-around;
    align-items: center;
}

.recruit-box .recruit_list li .reclist_box .boxtype1 {
    padding: 22px 34px 27px 34px;
    border-top: 2px solid #d5dee7;
    display: flex;
    justify-content: space-between;
}


.top-recruit {
    margin-top: -50px;
    margin-bottom: 0px;
}
