/*補足*/
/*トップページタブレット*/
@media screen and (min-width:769px) and (max-width: 1100px) {
  section.topfuture ul li {
    width: 32%;
  }
  section.topfuture ul li div.thum {
    width: 100%;
    height: auto;
  }
  section.topfuture ul {
    align-items: flex-start;
  }
}
@media screen and (min-width:769px) and (max-width: 1400px) {
  section.ourbusiness h4 {
    font-size: 1.8vw;
  }
  .reverse.sideimag.ourbusiness-top .column:nth-child(2) {
    width: 60%;
  }
  .reverse.sideimag.ourbusiness-top .column-outside-right {
    margin-left: 3%;
  }
}
.slick-slide img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.accordion section {
  margin-bottom: 40px;
}
.green.yoko.headbtn {
  z-index: 4;
}
.recruitpage h1 {
  margin-left: 0;
}
@media screen and (max-width: 767px) {
  header {
    margin-bottom: 16px;
	  margin-bottom: 0;
  }
  header.recruitpage {
    margin-bottom: 16px;
    padding-top: 12px;
  }
  .recruitpage h1 {
    position: static;
    background: none;
    width: 246px;
    height: 48px;
    margin-left: 44px;
    margin-left: 43px;
    margin-top: 0;
  }
  .recruitpage h1 a img {
    width: 160px;
    height: 48px;
  }
  .main_logo {
    position: static;
    width: 160px;
    height: 48px;
    margin: 0;
  }
  .contents_main_left {
    position: absolute;
    width: 160px;
    height: 48px;
    left: 43px;
    top: -68px;
	  top: -54px;
  }
  section.newswrap {
    padding-top: 80px;
    padding-bottom: 70px;
  }
}
/*slick高さ揃える*/
.konoyouna .slick-track {
  display: flex;
}
.konoyouna .slick-slide {
  height: auto !important;
}
/*********************************

デバイス

**********************************/
@media screen and (max-width:768px) {
  .spnone {
    display: none !important;
  }
}
@media screen and (min-width:769px) {
  .pcnone {
    display: none !important;
  }
}
@media screen and (min-width:769px) and (max-width: 1000px) {
  .tab-spnone {
    display: none !important;
  }
}
.fade {
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  /* transition: 0.3s ease-in-out;*/
}
.fade:hover {
  opacity: 0.7;
  filter: alpha(opacity=70);
  -ms-filter: "alpha(opacity=70)";
}
/*********************************

ページャー

**********************************/
/*ページナビ*/
div.pagenavi {
  /*  width: 1000px;*/
  margin: 0 auto;
  width: clamp(320px, 83.3%, 1160px);
}
div.pagenavi ul.page-numbers {
  display: flex;
  justify-content: center;
  width: 100%;
  gap: 8px;
  align-items: center;
}
ul.page-numbers li {
  width: 40px;
  height: 40px;
}
ul.page-numbers li a.page-numbers {
  width: 40px;
  height: 40px;
  display: flex;
  justify-content: center;
  align-items: center;
}
ul.page-numbers li span.page-numbers.current {
  width: 40px;
  height: 40px;
  flex-shrink: 0;
  background-color: #008742;
  border-radius: 100vh;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
}
ul.page-numbers li a.page-numbers {
  width: 40px;
  height: 40px;
  flex-shrink: 0;
  color: #252525;
  text-align: center;
  leading-trim: both;
  text-edge: cap;
  font-size: 13px;
  font-style: normal;
  font-weight: 700;
  line-height: 190%; /* 24.7px */
}
.catgoryBtnlist li a.current {
  color: #fff;
  background-color: #008742;
}
/*前の記事、次の記事*/
div.PrevNext {
  justify-content: flex-start;
}
@media screen and (max-width:768px) {
  div.PrevNext {
    padding-top: 20px;
  }
  div.PrevNext a {
    position: relative;
  }
}
div.PrevNext div {
  width: calc(100% / 3);
}
div.PrevNext div {
  text-align: center;
}
div.PrevNext div:first-child {
  text-align: left;
}
div.PrevNext div:last-child {
  text-align: right;
}
ul.newsList {
  align-items: flex-start;
}
div.PrevNext div.prev a:before {
  content: "";
  display: inline-block;
  width: 40px;
  height: 40px;
  padding: 2px;
  justify-content: center;
  align-items: center;
  background-image: url(../image/news/prev.png);
  background-size: contain;
  background-repeat: no-repeat;
  vertical-align: middle;
  margin-right: 8px;
}
div.PrevNext div.next a:after {
  content: "";
  display: inline-block;
  width: 40px;
  height: 40px;
  padding: 2px;
  justify-content: center;
  align-items: center;
  background-image: url(../image/news/next.png);
  background-size: contain;
  background-repeat: no-repeat;
  vertical-align: middle;
  margin-left: 8px;
}
@media screen and (max-width:768px) {
  div.PrevNext div.prev, div.PrevNext div.next {
    padding-top: 50px;
  }
  div.PrevNext div.prev a:before {
    position: absolute;
    top: -50px;
    left: 22px;
    margin: 0;
  }
  div.PrevNext div.next a:after {
    position: absolute;
    top: -50px;
    right: 22px;
    margin: 0;
  }
}
.colorgreen {
  color: #008742
}
/*採用のスリック*/
.konoyouna {
  position: relative;
}
.konoyouna .arrow_box {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 43%;
  height: 100px;
}
@media screen and (max-width:768px) {
  .konoyouna .arrow_box {
    width: 100%;
  }
}
.konoyouna .prev-arrow, .konoyouna .next-arrow {
  display: block;
  width: 100px;
  height: 100px;
  border-radius: 50%;
  transition: all .3s ease;
  cursor: pointer;
  position: absolute;
  top: 0;
}
@media screen and (max-width:768px) {
  .konoyouna .prev-arrow, .konoyouna .next-arrow {
    width: 50px;
    height: 50px;
    aspect-ratio: 1/1;
  }
}
.konoyouna .prev-arrow {
  left: 0;
}
.konoyouna .next-arrow {
  transform: rotate(180deg);
}
@media screen and (max-width:768px) {
  .konoyouna .prev-arrow {
    left: 5px;
  }
  .konoyouna .next-arrow {
    right: 5px;
  }
}
.konoyouna .prev-arrow::before, .konoyouna .next-arrow::before {
  position: absolute;
  content: "";
  width: 100px;
  height: 100px;
  background-image: url("../image/recrit/arrowprev.svg");
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  background-repeat: no-repeat;
  background-size: contain;
}
@media screen and (max-width:768px) {
  .konoyouna .prev-arrow::before, .konoyouna .next-arrow::before {
    width: 50px;
    height: 50px;
    aspect-ratio: 1/1;
  }
}
.konoyouna .slick-track {
  display: flex !important;
  ;
}
/*.slick-slide {
  height: auto !important;
}*/
/*プライバシーポリシー*/
.pageWrap.privacypolicy {
  padding-top: 80px;
}
.pageWrap.privacypolicy .container {
  width: 920px;
}
.pageWrap.privacypolicy .container p {
  color: #111;
  font-size: 16px;
  font-style: normal;
  font-weight: 500;
  line-height: 200%; /* 32px */
  letter-spacing: 0.48px;
}
@media screen and (max-width: 767px) {
  .pageWrap.privacypolicy .container p {
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: 170%; /* 23.8px */
    letter-spacing: 0.42px;
  }
}
.pageWrap.privacypolicy .container p:first-child {
  margin-bottom: 80px;
}
@media screen and (max-width: 767px) {
  .pageWrap.privacypolicy .container p:first-child {
    margin-bottom: 50px;
  }
}
.pageWrap.privacypolicy .container p {
  margin-bottom: 60px;
}
@media screen and (max-width:768px) {
  .pageWrap.privacypolicy .container p {
    margin-bottom: 30px;
  }
}
.pageWrap.privacypolicy .container h2 {
  margin-bottom: 20px;
  font-size: 24px;
  font-style: normal;
  font-weight: 600;
  line-height: 160%; /* 38.4px */
  letter-spacing: 0.72px;
  color: #111;
}
@media screen and (max-width: 767px) {
  .pageWrap.privacypolicy .container h2 {
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: 160%; /* 25.6px */
    letter-spacing: 0.48px;
    margin-bottom: 10px;
  }
}
.pageWrap.privacypolicy .container h3 {
  color: #111;
  margin-bottom: 20px;
  font-size: 20px;
  font-style: normal;
  font-weight: 600;
  line-height: 160%; /* 32px */
  letter-spacing: 0.6px;
}
@media screen and (max-width: 767px) {
  .pageWrap.privacypolicy .container h3 {
    font-size: 15px;
    font-style: normal;
    font-weight: 600;
    line-height: 160%; /* 24px */
    letter-spacing: 0.45px;
  }
}
/*施工事例のページャー*/
@media screen and (max-width:768px) {
  .workspagenavi {
    padding-top: 70px;
  }
  .workspagenavi .page-numbers li {
    width: 40px;
  }
  .workspagenavi ul {
    display: flex;
    justify-content: center;
    width: 100%;
    gap: 8px;
    align-items: center;
  }
}
ul.newsList {
  align-items: flex-start;
}
div.PrevNext div.prev a:before {
  content: "";
  display: inline-block;
  width: 40px;
  height: 40px;
  padding: 2px;
  justify-content: center;
  align-items: center;
  background-image: url(../image/news/prev.png);
  background-size: contain;
  background-repeat: no-repeat;
  vertical-align: middle;
  margin-right: 8px;
}
div.PrevNext div.next a:after {
  content: "";
  display: inline-block;
  width: 40px;
  height: 40px;
  padding: 2px;
  justify-content: center;
  align-items: center;
  background-image: url(../image/news/next.png);
  background-size: contain;
  background-repeat: no-repeat;
  vertical-align: middle;
  margin-left: 8px;
}
@media screen and (max-width:768px) {
  div.PrevNext div.prev, div.PrevNext div.next {
    padding-top: 50px;
  }
  div.PrevNext div.prev a:before {
    position: absolute;
    top: -50px;
    left: 22px;
    margin: 0;
  }
  div.PrevNext div.next a:after {
    position: absolute;
    top: -50px;
    right: 22px;
    margin: 0;
  }
}
span.masame {
  position: relative;
}
span.masame.top {
  color: #fff;
}
span.masame:before {
  position: absolute;
  content: "まさめ";
  display: inline-block;
  color: var(--masame, #111);
  text-align: center;
  font-family: "Noto Sans JP";
  font-size: 10px;
  font-style: normal;
  font-weight: 500;
  line-height: 160%; /* 16px */
  white-space: nowrap;
  top: -11px;
  left: -5px;
}
span.masame.top:before {
  color: #fff;    left: -3px;
}
@media screen and (min-width:769px) and (max-width:1460px) {
  header h1, section.pageTitlewap h2 {
    margin-left: 60px;
  }
}
@media screen and (min-width:769px) and (max-width:1400px) {
  .workswrap ul li {
    width: 30%;
  }
  .workswrap ul {
    gap: 57% 5%;
  }
  .workswrap ul li div.thum {
    height: auto;
  }
}
@media screen and (max-width:768px) {
  .workswrap ul li div.thum {
    height: auto;
  }
}
.sa {
  opacity: 0;
  transition: all 1s ease;
}
.sa.show {
  opacity: 1;
  transform: none;
}
.sa--lr {
  transform: translate(-100px, 0);
}
.sa--rl {
  transform: translate(100px, 0);
}
.sa--up {
  transform: translate(0, 100px);
}
.sa--down {
  transform: translate(0, -100px);
}
.sa--scaleUp {
  transform: scale(.5);
}
.sa--scaleDown {
  transform: scale(1.5);
}
.sa--rotateL {
  transform: rotate(180deg);
}
.sa--rotateR {
  transform: rotate(-180deg);
}
.pagenavi.workspagenavi {
  padding-top: 110px;
}
/*採用のインタビュー*/
section.interviewwrap {
  border-radius: 30px 30px 0 0;
  background: url("../image/recrit/interviewback.jpg");
  padding-top: 160px;
  margin-top: -30px;
  padding-bottom: 120px;
}
@media screen and (max-width:768px) {
  section.interviewwrap {
    padding-top: 97px;
  }
}
section.interviewwrap h2.title {
  width: 722.855px;
  height: 163.654px;
  margin: 0 auto 30px;
}
@media screen and (max-width:768px) {
  section.interviewwrap h2.title {
    width: 353.885px;
    height: 99.69px;
  }
}
.interviewcontents.flex {
  flex-direction: column;
  gap: 108px;
  margin-bottom: 120px;
}
@media screen and (max-width:768px) {
  .interviewcontents.flex {
    flex-direction: column;
    gap: 60px;
    margin-bottom: 90px;
  }
}
.interview-container.flex {
  max-width: 1040px;
  margin: 0 auto;
  width: 100%;
	gap: 4px;
}
@media screen and (max-width:768px) {
  .interview-container.flex {
    flex-direction: column;
    width: 88.3vw;
  }
}
p.interview-ftxt {
  width: 698px;
  margin: 0 auto 70px;
  color: #111;
  font-family: "Noto Sans JP";
  font-size: 18px;
  font-style: normal;
  font-weight: 600;
  line-height: 200%; /* 36px */
  letter-spacing: 0.54px;
}
@media screen and (max-width:768px) {
  p.interview-ftxt {
    width: 88.3vw;
    font-family: "Noto Sans JP";
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: 200%; /* 32px */
    letter-spacing: 0.48px;
    margin-bottom: 50px;
  }
}
.imageicon {
  width: 460px;
  height: 460px;
  aspect-ratio: 1/1;
}
@media screen and (max-width:768px) {
  .imageicon {
    width: 250px;
    height: 250px;
    aspect-ratio: 1/1;
    margin-bottom: 15px;
  }
}
.txtarea h3 {
  color: #00913A;
  font-family: "Noto Sans JP";
  font-size: 28px;
  font-style: normal;
  font-weight: 600;
  line-height: 160%; /* 44.8px */
  letter-spacing: 0.84px;
  margin-bottom: 25px;
}
@media screen and (max-width:768px) {
  .txtarea h3 {
    margin-bottom: 20px;
    font-size: 25px;
    line-height: 160%; /* 40px */
    letter-spacing: 0.75px;
  }
}
.txtarea {
  width: 540px;
}
@media screen and (max-width:768px) {
  .txtarea {
    width: 100%;
  }
}
div.nameyear {
  border-bottom: 1px solid #00913A;
  padding-bottom: 20px;
  margin-bottom: 20px;
}
.txtarea p.name {
  color: #008742;
  font-family: "Noto Sans JP";
  font-size: 18px;
  font-style: normal;
  font-weight: 600;
  line-height: 160%; /* 28.8px */
  letter-spacing: 0.54px;
}
.txtarea p.year {
  color: #008742;
  font-family: "Noto Sans JP";
  font-size: 16px;
  font-style: normal;
  font-weight: 600;
  line-height: 160%; /* 25.6px */
  letter-spacing: 0.48px;
}
p.interviewtxt {
  color: #00913A;
  font-family: "Noto Sans JP";
  font-size: 16px;
  font-style: normal;
  font-weight: 500;
  line-height: 160%; /* 25.6px */
  letter-spacing: 0.48px;
}
.interview-container.flex.rev {
  flex-direction: row-reverse;
}
@media screen and (max-width:768px) {
  .interview-container.flex.rev {
    flex-direction: column;
  }
}
.greeting-content.rinen-content {
  width: 100%;
  display: block;
}
.greeting-content.rinen-content .greeting-text {
  width: 100%;
}
.philosophy {
  background: #fff;
  padding-top: 120px;
}
.greeting-description.rinen-description {
  margin-bottom: 0;
}
/*インタビューの下部*/
div.interviewbottom-wrap {
  display: flex;
  justify-content: space-between;
  /*max-width: 1158px;*/
  max-width: 1300px;
  padding: 40px;
  margin: auto;
}
@media screen and (max-width:768px) {
  div.interviewbottom-wrap {
    flex-direction: column;
    padding: 0;
    gap: 30px;
  }
}
div.interviewbottom-wrap .column {
  width: 48%;
  background: #fff;
  position: relative;
}
div.interviewbottom-wrap .column.pt {
  padding-top: 90px;
}
@media screen and (max-width:768px) {
  div.interviewbottom-wrap .column.pt {
    padding-top: 90px;
    width: 100%;
    height: auto;
    order: 1;
  }
}
div.watashitachito {
  position: absolute;
  width: 161px;
  height: 140px;
  bottom: 14px;
  right: 82px;
}
@media screen and (max-width:768px) {
  div.watashitachito {
    bottom: 50px;
    right: 10px;
  }
}
div.interviewbottom-wrap .column.pt:before {
  content: "";
  margin-left: calc(50% - 50vw);
  width: 50vw;
  height: 100%;
  display: inline-block;
  background: #fff;
  position: absolute;
  top: 0;
  left: 0;
}
div.interviewbottom-wrap .column.pt:after {
  content: "";
  border-radius: 0 30px 30px 0;
  min-width: 134px;
  /*width: 10%;*/
  height: 100%;
  display: inline-block;
  background: #fff;
  position: absolute;
  top: 0;
  right: -134px;
}
@media screen and (max-width:768px) {
  div.interviewbottom-wrap .column.pt:before {
    display: none;
  }
  div.interviewbottom-wrap .column.pt:after {
    display: none;
  }
}
/*右側へ要素を広げる（2カラム）*/
div.interviewbottom-wrap .column-outside-right {
  flex: 1;
  margin-right: calc(50% - 49.6vw);
  margin-left: 4%;
  height: 631px;
  background: none;
}
@media screen and (max-width:768px) {
  div.interviewbottom-wrap .column-outside-right {
    height: auto;
    width: 100%;
    order: 2;
    margin-right: 10px;
    box-sizing: border-box;
    margin-left: 0;
    padding-left: 5.85%;
  }
}
div.interviewbottom-wrap .column-outside-right .image {
  width: 100%;
  height: 100%;
  border-radius: 30px 0 0 30px;
  overflow: hidden;
  position: relative;
  margin-top: 75px;
  z-index: 1;
}
@media screen and (max-width:768px) {
  div.interviewbottom-wrap .column-outside-right .image {
    margin-top: 0;
  }
}
div.interviewbottom-wrap .column-outside-right .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
div.interviewbottom-wrap .column h2 {
  position: relative;
  margin-bottom: 30px;
}
@media screen and (max-width:768px) {
  div.interviewbottom-wrap .column h2 {
    width: 88.3vw;
    margin: 0 auto 19px;
  }
}
div.interviewbottom-wrap .column h2 span {
  color: #111;
  font-size: 36px;
  font-weight: 600;
  line-height: 160%; /* 57.6px */
  letter-spacing: 1.08px;
  background: linear-gradient(transparent 43%, #FFF100 43%);
}
@media screen and (max-width:768px) {
  div.interviewbottom-wrap .column h2 span {
    font-size: 25px;
    font-style: normal;
    font-weight: 600;
    line-height: 160%; /* 40px */
    letter-spacing: 0.75px;
  }
}
div.konnnatxt {
  position: relative;
  color: #111;
  font-family: "Noto Sans JP";
  font-size: 16px;
  font-style: normal;
  font-weight: 600;
  line-height: 160%; /* 25.6px */
  letter-spacing: 0.48px;
  width: 402px;
  margin-bottom: 40px;
}
@media screen and (max-width:768px) {
  div.konnnatxt {
    width: 88.3vw;
    margin: 0 auto 30px;
    font-size: 15px;
    font-style: normal;
    font-weight: 600;
    line-height: 160%; /* 24px */
    letter-spacing: 0.45px;
  }
}
div.interviewbottom-wrap .column.pt ul {
  position: relative;
}
@media screen and (max-width:768px) {
  div.interviewbottom-wrap .column.pt ul {
    width: 88.3vw;
    margin: 0 auto;
  }
}
div.interviewbottom-wrap .column.pt ul li {
  color: #111;
  font-family: "Noto Sans JP";
  font-size: 20px;
  font-style: normal;
  font-weight: 600;
  line-height: 160%; /* 32px */
  letter-spacing: 0.6px;
  position: relative;
  margin-bottom: 20px;
}
@media screen and (max-width:768px) {
  div.interviewbottom-wrap .column.pt ul li {
    font-size: 17px;
    font-weight: 600;
    line-height: 160%; /* 27.2px */
    letter-spacing: 0.51px;
    padding-left: 30px;
    position: relative;
  }
}
div.interviewbottom-wrap .column.pt ul li:before {
  content: "";
  display: inline-block;
  width: 25px;
  height: 25px;
  background-image: url("../image/recrit/arrow.svg");
  vertical-align: middle;
  margin-top: -2px;
  margin-right: 20px;
  background-repeat: no-repeat;
  background-size: contain;
}
@media screen and (max-width:768px) {
  div.interviewbottom-wrap .column.pt ul li:before {
    width: 20px;
    height: 20px;
    margin-right: 10px;
    position: absolute;
    left: 0;
    top: 7px;
  }
}
@media screen and (max-width:768px) {
  .interviewbottom {
    background: #fff;
    border-radius: 0 30px 30px 0;
    padding-bottom: 40px;
  }
}
@media screen and (max-width:768px) {
  .shigotowoshiru .reverse.widthmax.know {
    width: 100%;
    padding: 0;
  }
}
@media screen and (max-width:768px) {
  .pcnone.formoblesaiyomessagebottom {
    widows: 100%;
    position: relative;
    z-index: 2;
    width: 344px;
    height: 173px;
    margin: 16px auto -5px;
  }
  div.shigotowoshiru div.column.spmt {
    width: 83.3vw;
    margin: 60px auto 0;
  }
}
/*フッターのスマートフォン*/
@media screen and (max-width:768px) {
  footer .container {
    width: 88.3vw;
  }
}
.pageTitlewap .container {
  width: clamp(320px, 83.3%, 1160px);
}
.newspagewrap .container, .pageWrap.privacypolicy .container {
  width: clamp(320px, 83.3%, 1160px);
}
@media screen and (max-width:768px) {
  .newspagewrap .container {
    width: clamp(320px, 83.3%, 1160px);
  }
}
.recmessagewrap .pankuzu {
  position: absolute;
  top: 0;
  z-index: 1;
  background: none;
  right: 103px;
  left: auto;
}
@media screen and (max-width:768px) {
  .recmessagewrap .pankuzu {
    right: 21px;
  }
  .recmessagewrap .pankuzu .container ul li {
    white-space: nowrap;
  }
}
.pankuzu .container ul li {
  font-weight: 700;
}
.pankuzu .container ul li:first-child {
  font-weight: 600;
}
.pankuzu .container ul li:first-child a {
  font-weight: 500;
}
@media screen and (max-width:768px) {
  .sideimag.ourbusiness-top .column.column-outside-right {
    height: 300px;
  }
  .sideimag.ourbusiness-top .column.column-outside-right img {
    height: 300px;
  }
  .sideimag.ourbusiness-top .column.column-outside-right ul {}
  .newswrap .container {
    width: clamp(320px, 83.3%, 1160px);
  }
}
.promptsection.mb{
	margin-bottom: 32px;
}
@media screen and (max-width:768px) {
	.promptsection.mb{
	margin-bottom: 28px;
}
}
.pageWrap.contactPage.thank{
	 width: clamp(320px, 83.3%, 1160px);
	margin: 0 auto;
}
@media screen and (max-width:768px) {
.philosophy .container,
	.greeting .container,
	.outline .container,
	.history .container{
	width: clamp(320px, 83.3%, 1160px);
}
}

.mv_slider .slick-slide{
	position: relative;
}
.mv_slider .slick-slide:before{
	content: "";
	display: inline-block;
	width: 100%;
	height: 100%;
	background-color: rgba(23,23,23,0.2);
	position: absolute;
	top:0;
	left: 0;
}

