@charset "UTF-8";
/*------------- color --------------*/
/*------------- font-Gothic --------------*/
/*------------- font-Serif --------------*/
/*------------- font-Serif --------------*/
/*------------- break_point --------------*/
/*--------------------------------------------------------------------------------*/
/*	common */
/*--------------------------------------------------------------------------------*/
#sub-page #inc-contact.contact-none {
  display: none;
}
#sub-page main.site-width {
  padding-top: 0px;
}
#sub-page main .site-width {
  padding-top: 0;
  padding-bottom: 0;
}
#sub-page main #first-view {
  margin-bottom: 64px;
}
#sub-page main > section:not(:first-of-type) {
  margin-bottom: 128px;
}
@media screen and (max-width: 767px) {
  #sub-page main > section:not(:first-of-type) {
    margin-bottom: 64px;
  }
}
#sub-page h2 {
  font-size: 2rem;
  line-height: 1.6;
  font-weight: 700;
  color: #ed7d31;
  margin-bottom: 32px;
}
#sub-page h2 + p {
  line-height: 1.6;
  margin-bottom: 48px;
}
#sub-page h3 {
  font-size: 1.25rem;
  font-weight: 700;
  margin-bottom: 16px;
}
#sub-page h3 + p {
  line-height: 1.6;
}
@media screen and (max-width: 767px) {
  #sub-page h2 + p {
    margin-bottom: 32px;
  }
}
#sub-page .sub-flex {
  width: 100%;
  display: flex;
  justify-content: space-between;
}
#sub-page .img-container img {
  border: 1px solid;
}
#sub-page .img-container img:not(:last-of-type) {
  margin-bottom: 16px;
}
@media screen and (max-width: 767px) {
  #sub-page .img-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 8px;
  }
  #sub-page .img-container img:not(:last-of-type) {
    margin-bottom: 0px;
  }
}
#sub-page figure figcaption {
  margin-top: 8px;
  font-size: 0.8rem;
  line-height: 1.6;
  text-align: center;
}
#sub-page .tel-link {
  display: inline-block;
  font-size: 2.5rem;
  margin-bottom: 16px;
}
#sub-page .tel-link + span {
  display: block;
  font-size: 0.8rem;
}
@media screen and (max-width: 767px) {
  #sub-page .tel-link {
    font-size: 2rem;
  }
}

table {
  width: 100%;
  border-top: 1px solid #999;
  border-bottom: 1px solid #999;
}
table th,
table td {
  padding: 16px;
  line-height: 1.8;
  border-bottom: 1px solid #999;
}
table th:not(:last-of-type),
table td:not(:last-of-type) {
  border-right: 1px solid #999;
}
table th {
  background-color: #fafafa;
  font-size: 0.9rem;
  font-weight: 600;
  text-align: center;
}
table td {
  font-size: 1rem;
}

@media screen and (max-width: 767px) {
  table th {
    font-size: 0.8rem;
    padding: 8px 4px;
  }
  table td {
    font-size: 0.9rem;
    padding: 8px 4px 16px 4px;
  }
}
.bitech-table th {
  width: 18%;
  text-align: left;
}
.bitech-table p {
  margin-bottom: 8px;
}

@media screen and (max-width: 767px) {
  .bitech-table {
    border-bottom: none;
  }
  .bitech-table th,
  .bitech-table td {
    width: 100%;
    display: block;
  }
}
@media screen and (max-width: 767px) {
  .swip {
    width: 104%;
    height: 480px;
    overflow-y: auto;
    overflow-x: auto;
    position: relative;
    border-bottom: 1px solid #999;
    -webkit-overflow-scrolling: touch;
  }
  .swip table {
    width: 640px;
    border-top: none;
  }
  .swip table th {
    font-size: 0.7rem;
    padding: 4px;
  }
  .swip table td {
    font-size: 0.8rem;
    padding: 8px 4px;
  }
  .swip table .sticky_cross,
  .swip table .sticky_row {
    position: sticky;
    top: 0;
    left: 0;
    z-index: 1;
    border-right: none;
  }
  .swip table .sticky_cross::after,
  .swip table .sticky_row::after {
    content: "";
    border-right: 1px solid #999;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .swip table .sticky_cross {
    z-index: 3;
    border-bottom: none;
    width: 28%;
  }
  .swip table .sticky_cross::after {
    content: "";
    border-top: 1px solid #999;
    border-right: 1px solid #999;
    border-bottom: 1px solid #999;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .swip table .sticky_col {
    position: sticky;
    top: 0;
    border-bottom: none;
  }
  .swip table .sticky_col::after {
    content: "";
    border-top: 1px solid #999;
    border-bottom: 1px solid #999;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
}
/*-------------------- 767px --------------------*/
@media screen and (max-width: 767px) {
  #sub-page .contact-none #inc-contact {
    display: none;
  }
  #sub-page main > section {
    margin-bottom: 64px;
  }
  #sub-page h2 {
    font-size: 1.5rem;
    margin-bottom: 16px;
  }
  #sub-page .sub-flex {
    flex-direction: column;
  }
}
/*-------------------------------------*/
/*	common-breadcrumb-item
/*-------------------------------------*/
#inc-breadcrumb01 {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  font-size: 0.8rem;
  line-height: 1.6;
  margin-bottom: 16px;
  color: #999;
}
#inc-breadcrumb01 .breadcrumb-item a {
  transform: translate3d(0, 0, 0);
}
@media (hover: hover) {
  #inc-breadcrumb01 .breadcrumb-item a:hover {
    color: #323232;
    transform: scale(1.15);
  }
  #inc-breadcrumb01 .breadcrumb-item a:hover .dli-mail {
    transform: scale(1.2);
  }
}

.breadcrumb-item:not(:last-child)::after {
  content: " › ";
  margin: 0 4px;
  color: #999;
}

/*-------------------------------------*/
/*	common-first-view
/*-------------------------------------*/
#first-view {
  padding-top: 160px;
}
#first-view .site-width {
  padding: 0;
}
#first-view .title-container {
  display: flex;
}
#first-view .title-container > p {
  font-size: 1.5rem;
  font-family: "Oswald", sans-serif;
  color: #ea5514;
  font-weight: bold;
  display: block;
  margin-right: 16px;
}
#first-view .title-container h1 {
  color: #ea5514;
  font-size: 3.5rem;
  line-height: 1.4;
  font-weight: 900;
  display: flex;
  margin-bottom: 96px;
}
#first-view .main-img-container {
  margin-bottom: 32px;
  display: flex;
}
#first-view .main-img-container .color-box01,
#first-view .main-img-container .color-box02 {
  flex-grow: 1;
  flex-shrink: 1;
}
#first-view .main-img-container .color-box01 {
  background-color: #ea5514;
}
#first-view .main-img-container .img-box {
  border-top: 16px solid #ea5514;
  max-width: 1184px;
  flex: 1 1 auto;
}
#first-view .main-img-container .color-box02 {
  background-color: #fff;
}
@media screen and (max-width: 1312px) {
  #first-view .main-img-container .color-box01,
  #first-view .main-img-container .color-box02 {
    flex: 0 0 4%;
  }
}
#first-view > p {
  font-size: 1.25rem;
  color: #ea5514;
  font-weight: 500;
  line-height: 1.8;
}

/*-------------------- 1184px --------------------*/
@media screen and (max-width: 1184px) {
  #first-view {
    padding-top: 160px;
  }
  #first-view .site-width {
    padding: 0;
  }
  #first-view .title-container {
    flex-direction: column;
  }
  #first-view .title-container > p {
    margin-right: 0;
    margin-bottom: 16px;
  }
  #first-view > p {
    font-size: 1.2rem;
  }
}
/*-------------------- 767px --------------------*/
@media screen and (max-width: 767px) {
  #first-view {
    padding-top: 128px;
  }
  #first-view .site-width {
    padding: 0;
  }
  #first-view .title-container > p {
    font-size: 1.2rem;
    margin-bottom: 8px;
  }
  #first-view .title-container h1 {
    font-size: 2.5rem;
    font-weight: 800;
    margin-bottom: 32px;
  }
  #first-view > p {
    font-size: 1rem;
  }
  #first-view .main-img-container {
    margin-bottom: 16px;
  }
}
/*--------------------------------------------------------------------------------------------------*/
/*	業務内容ページ */
/*--------------------------------------------------------------------------------------------------*/
#service-index #section02 .service-item:not(:last-of-type) {
  margin-bottom: 64px;
}
#service-index #section02 .service-item div {
  width: 48%;
}
#service-index #section02 .service-item div .service-number {
  display: block;
  font-size: 1rem;
  color: #ed7d31;
  font-family: "Oswald", sans-serif;
  margin-bottom: 16px;
}
#service-index #section02 .service-item div .service-title {
  font-size: 2rem;
  line-height: 1.4;
  font-weight: 600;
  margin-bottom: 24px;
}
#service-index #section02 .service-item div > p {
  line-height: 1.6;
  margin-bottom: 32px;
}
#service-index #section02 .service-item div .btn-container {
  width: 100%;
  display: flex;
  justify-content: flex-end;
}
#service-index #section03 .sub-flex .table-container,
#service-index #section04 .sub-flex .table-container {
  width: 50%;
}
#service-index #section03 .sub-flex .img-container,
#service-index #section04 .sub-flex .img-container {
  width: 35%;
}

/*-------------------- 960px --------------------*/
@media screen and (max-width: 960px) {
  #service-index {
    /*---------- section02 ----------*/
    /*---------- section03,section04 ----------*/
  }
  #service-index #section02 .service-item:not(:last-of-type) {
    margin-bottom: 64px;
  }
  #service-index #section02 .service-item div {
    width: 48%;
  }
  #service-index #section02 .service-item div .service-number {
    font-size: 0.9rem;
    margin-bottom: 8px;
  }
  #service-index #section02 .service-item div .service-title {
    font-size: 1.6rem;
  }
  #service-index #section03 .sub-flex > div,
  #service-index #section04 .sub-flex > div {
    width: 48%;
  }
}
/*-------------------- 767px --------------------*/
@media screen and (max-width: 767px) {
  #service-index #section02 .service-item:not(:last-of-type) {
    margin-bottom: 64px;
  }
  #service-index #section02 .service-item > div:not(:last-of-type) {
    margin-bottom: 16px;
  }
  #service-index #section02 .service-item div {
    width: 100%;
  }
  #service-index #section02 .service-item div .service-number {
    margin-bottom: 4px;
  }
  #service-index #section02 .service-item div .service-title {
    font-size: 1.4rem;
    margin-bottom: 16px;
  }
  #service-index #section02 .service-item div > p {
    margin-bottom: 16px;
  }
  #service-index #section02 .service-item div .btn-container {
    justify-content: center;
  }
  #service-index #section03 .sub-flex .img-container {
    width: 100%;
    flex-wrap: nowrap;
  }
  #service-index #section03 .sub-flex .table-container {
    width: 100%;
    margin-bottom: 32px;
  }
  #service-index #section04 .sub-flex .img-container {
    width: 100%;
  }
  #service-index #section04 .sub-flex .img-container img {
    width: 48%;
  }
  #service-index #section04 .sub-flex .table-container {
    width: 100%;
    margin-bottom: 32px;
  }
}
/*--------------------------------------------------------------------------------*/
/*	築炉工事事業ページ：#service01 */
/*--------------------------------------------------------------------------------*/
#service01 #section02 .sub-flex {
  flex-wrap: wrap;
  gap: 24px;
}
#service01 #section02 .sub-flex figure {
  width: 48%;
}
#service01 #section03 h2 {
  margin-bottom: 24px;
}
#service01 #section03 .img-container {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  margin-bottom: 32px;
  gap: 32px;
}
#service01 #section03 .img-container img {
  margin-bottom: 0px;
}
#service01 #section03 .license .sub-flex {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  flex-wrap: wrap;
  gap: 8px;
}
#service01 #section03 .license .sub-flex > div {
  background-color: #fafafa;
  border-radius: 8px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  font-size: 0.9rem;
  line-height: 1.5;
  text-align: center;
  padding: 16px;
}
#service01 #section03 .license .sub-flex > div p:last-of-type {
  font-size: 1.5rem;
  font-weight: 700;
  color: #ed7d31;
}
#service01 #section03 .license .sub-flex > div p:last-of-type strong {
  font-size: 2rem;
}
#service01 #section04 .swip table .sticky_row {
  font-weight: 800;
  background-color: #fff;
  z-index: 0;
}

/*-------------------- 960px --------------------*/
@media screen and (max-width: 960px) {
  #service01 #section03 .license .sub-flex {
    grid-template-columns: repeat(4, 1fr);
  }
  #service01 #section03 .license .sub-flex > div {
    padding: 16px 8px;
  }
}
/*-------------------- 767px --------------------*/
@media screen and (max-width: 767px) {
  #service01 #section02 .sub-flex {
    flex-direction: initial;
  }
  #service01 #section02 .sub-flex figure {
    width: 46%;
  }
  #service01 #section03 h2 {
    margin-bottom: 8px;
  }
  #service01 #section03 .license .sub-flex {
    grid-template-columns: repeat(3, 1fr);
    margin-bottom: 32px;
  }
  #service01 #section03 .license .sub-flex > div {
    font-size: 0.7rem;
    padding: 8px 4px;
    justify-content: space-between;
  }
  #service01 #section04 .annotation01 {
    margin-bottom: 8px;
  }
}
/*--------------------------------------------------------------------------------*/
/*	キャスターブロック製造事業ページ：#service02 */
/*--------------------------------------------------------------------------------*/
#service02 dl {
  font-size: 0.9rem;
  font-weight: 600;
  padding-top: 16px;
  border-top: 1px solid #999;
  margin-top: 16px;
}
#service02 dl dt {
  margin-bottom: 4px;
}
#service02 dl dd {
  line-height: 1.6;
}
#service02 #section02 .sub-flex {
  justify-content: flex-start;
  align-items: flex-end;
}
#service02 #section02 .sub-flex > div:last-of-type {
  margin-left: 32px;
}
#service02 #section02 .sub-flex > div:last-of-type dl {
  margin-bottom: 8px;
}
#service02 #section03 article {
  margin-bottom: 96px;
}
#service02 #section03 article .text-container {
  line-height: 1.8;
  width: 50%;
}
#service02 #section03 article .img-container {
  width: 40%;
}
#service02 #section03 article:last-of-type {
  margin-bottom: 96px;
}
#service02 #section03 .sub-flex:last-of-type .table-container {
  width: 55%;
}
#service02 #section03 .sub-flex:last-of-type .img-container {
  width: 35%;
}
#service02 #section04 p {
  font-size: 1.25rem;
  font-weight: 700;
  margin-bottom: 16px;
}
@media screen and (max-width: 960px) {
  #service02 #section04 .sub-flex {
    flex-direction: column;
  }
}
#service02 #section04 .sub-flex .img-container {
  width: 35%;
}
@media screen and (max-width: 960px) {
  #service02 #section04 .sub-flex .img-container {
    flex: auto;
    margin-bottom: 32px;
  }
}
@media screen and (max-width: 767px) {
  #service02 #section04 .sub-flex .img-container {
    width: 100%;
  }
}
#service02 #section04 .sub-flex .slideshow-area {
  width: 60%;
}
#service02 #section04 .sub-flex .slideshow-area p {
  font-size: 0.9rem;
  font-weight: normal;
}
@media screen and (max-width: 960px) {
  #service02 #section04 .sub-flex .slideshow-area {
    width: 100%;
    flex: auto;
  }
}

/*-------------------- 767px --------------------*/
@media screen and (max-width: 767px) {
  #service02 dl {
    font-size: 0.9rem;
    font-weight: 600;
    padding-top: 16px;
    border-top: 1px solid #999;
    margin-top: 16px;
  }
  #service02 dl dt {
    margin-bottom: 4px;
  }
  #service02 dl dd {
    line-height: 1.6;
  }
  #service02 #section02 .sub-flex {
    align-items: flex-start;
  }
  #service02 #section02 .sub-flex > div:first-of-type {
    margin-bottom: 16px;
  }
  #service02 #section02 .sub-flex > div:last-of-type {
    margin-left: 0px;
  }
  #service02 #section03 article {
    margin-bottom: 64px;
  }
  #service02 #section03 article .text-container {
    width: 100%;
  }
  #service02 #section03 article .img-container {
    width: 100%;
    margin-bottom: 16px;
  }
  #service02 #section03 article:last-of-type {
    margin-bottom: 64px;
  }
  #service02 #section03 .sub-flex:first-of-type {
    flex-direction: column-reverse;
  }
  #service02 #section03 .sub-flex:last-of-type {
    flex-direction: column;
  }
  #service02 #section03 .sub-flex:last-of-type .table-container {
    width: 100%;
    margin-bottom: 16px;
  }
  #service02 #section03 .sub-flex:last-of-type .img-container {
    flex-wrap: nowrap;
    width: 100%;
  }
}
#service02 .content-wrapper {
  display: flex;
  justify-content: space-between;
  gap: 88px;
  align-items: flex-start;
}
@media screen and (max-width: 767px) {
  #service02 .content-wrapper {
    flex-direction: column;
    gap: 40px;
  }
}
#service02 .slide-viewer {
  background-color: #eeeeee;
  padding: 48px 56px 0px 56px;
  text-align: center;
  position: relative;
  margin-bottom: 32px;
}
@media screen and (max-width: 767px) {
  #service02 .slide-viewer {
    padding: 10px;
  }
}
#service02 .slide-window {
  width: 100%;
  height: 380px;
  margin: 0 auto;
  overflow: hidden;
  position: relative;
}
@media screen and (max-width: 767px) {
  #service02 .slide-window {
    height: 240px;
  }
}
#service02 .slide-track {
  display: flex;
  height: 100%;
  transition: transform 0.5s ease-in-out;
  width: 100%;
}
#service02 .slide-item {
  min-width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
#service02 .slide-item img {
  max-width: 100%;
  max-height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
#service02 .nav-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  font-size: 32px;
  cursor: pointer;
  padding: 10px 20px;
  z-index: 10;
  transition: color 0.2s;
  line-height: 1;
  font-family: monospace;
  font-weight: bold;
}
#service02 .nav-arrow:hover {
  color: #000000;
}
#service02 .nav-arrow.nav-prev {
  left: 0;
}
#service02 .nav-arrow.nav-next {
  right: 0;
}
@media screen and (max-width: 767px) {
  #service02 .nav-arrow {
    font-size: 24px;
    padding: 10px;
  }
}
#service02 .instruction-text {
  text-align: center;
  font-size: 16px;
  margin-bottom: 20px;
}
@media screen and (max-width: 767px) {
  #service02 .instruction-text {
    font-size: 12px;
  }
}
#service02 .button-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}
@media screen and (max-width: 1184px) {
  #service02 .button-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media screen and (max-width: 767px) {
  #service02 .button-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
#service02 .action-btn {
  background-color: #ed7d31;
  color: white;
  border: none;
  padding: 16px 8px;
  font-size: 0.9rem;
  border-radius: 4px;
  cursor: pointer;
  transition: background-color 0.2s;
  text-align: left;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
#service02 .action-btn::before {
  content: "▶";
  font-size: 0.5em;
  margin-right: 6px;
  color: yellow;
}
#service02 .action-btn:hover, #service02 .action-btn.active {
  background-color: #ea5514;
}
@media screen and (max-width: 767px) {
  #service02 .action-btn {
    padding: 12px;
  }
}

/*--------------------------------------------------------------------------------*/
/*	緑化工事・造園工事事業ページ：#service03 */
/*--------------------------------------------------------------------------------*/
#service03 #section02 .sub-flex {
  flex-wrap: wrap;
  gap: 24px;
}
#service03 #section02 .sub-flex figure {
  width: 48%;
}
#service03 #section03 .swip table .sticky_row {
  font-weight: 800;
  background-color: #fff;
  z-index: 0;
}

/*-------------------- 767px --------------------*/
@media screen and (max-width: 767px) {
  #service03 #section02 .sub-flex {
    flex-direction: initial;
  }
  #service03 #section02 .sub-flex figure {
    width: 46%;
  }
  #service03 #section03 .annotation01 {
    margin-bottom: 8px;
  }
  #service03 #section03 .swip {
    width: 104%;
    height: 480px;
    overflow-y: auto;
    overflow-x: auto;
    position: relative;
    border-bottom: 1px solid #999;
    -webkit-overflow-scrolling: touch;
  }
  #service03 #section03 .swip table {
    width: 560px;
  }
  #service03 #section03 .swip table th {
    width: 38%;
  }
}
/*--------------------------------------------------------------------------------------------------*/
/*	会社概要 */
/*--------------------------------------------------------------------------------------------------*/
/*--------------------------------------------------------------------------------*/
/*	ビーアイテックについてページ：#about */
/*--------------------------------------------------------------------------------*/
#about .about-text {
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.8;
  margin-bottom: 0px;
}
#about .about-text.text-indent {
  margin-left: 1.4rem;
  text-indent: -1.4rem;
}
#about #section02 .sub-flex {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 96px;
}
#about #section02 .sub-flex .text-box {
  font-size: 1.25rem;
  line-height: 2.5rem;
  font-family: "Noto Serif JP", serif;
  font-weight: 600;
}
#about #section02 .sub-flex .text-box span {
  margin-top: 24px;
  font-size: 1rem;
  display: block;
  text-align: right;
}
#about #section06 > p {
  margin-bottom: 16px;
}
#about #section06 > ul {
  line-height: 1.8;
  margin-bottom: 32px;
  margin-left: 1rem;
  text-indent: -1rem;
}
#about #section06 > ul li:not(:last-of-type) {
  margin-bottom: 8px;
}
#about #section06 .img-container {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 32px;
}

/*-------------------- 960px --------------------*/
@media screen and (max-width: 1184px) {
  #about #section02 .sub-flex {
    gap: 32px;
  }
  #about #section02 .sub-flex .text-box {
    font-size: 1.125rem;
    line-height: 2;
  }
}
/*-------------------- 767px --------------------*/
@media screen and (max-width: 767px) {
  #about .about-text {
    font-size: 1.125rem;
  }
  #about .about-text.text-indent {
    margin-left: 1.2rem;
    text-indent: -1.2rem;
  }
  #about #section02 .sub-flex {
    grid-template-columns: repeat(1, 1fr);
    gap: 32px;
  }
  #about #section02 .sub-flex .text-box {
    font-size: 1rem;
    line-height: 2;
  }
  #about #section06 .img-container {
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
  }
  #about #section06 .img-container img {
    width: 100%;
  }
}
/*--------------------------------------------------------------------------------*/
/*	会社案内ページ：#company */
/*--------------------------------------------------------------------------------*/
#company #section03 .bitech-table {
  border: none;
}
#company #section03 .bitech-table th {
  font-size: 0.8rem;
  line-height: 1.5rem;
  background-color: #fff;
  padding-left: 0;
}
#company #section04 .sub-flex {
  flex-wrap: wrap;
  flex: 1;
}
#company #section04 .sub-flex ul {
  line-height: 2;
  font-size: 1rem;
}
#company #section04 .sub-flex span {
  width: 1px;
  background: #ccc;
}
#company #section05 .bitech-table th {
  width: 24%;
}
#company #section05 .bitech-table td:first-of-type {
  width: 52%;
}
#company #section05 .bitech-table td:last-of-type {
  width: 24%;
}

/*-------------------- 1184px --------------------*/
@media screen and (max-width: 1184px) {
  #company #section05 .bitech-table {
    flex-direction: column;
    border-bottom: none;
  }
  #company #section05 .bitech-table th {
    width: 100%;
    display: block;
  }
  #company #section05 .bitech-table td:first-of-type {
    display: block;
    width: 100%;
    border-right: none;
    border-bottom: none;
    padding-bottom: 0;
  }
  #company #section05 .bitech-table td:last-of-type {
    display: block;
    width: 100%;
  }
  #company #section05 .bitech-table td:last-of-type iframe {
    width: 100%;
  }
}
/*-------------------- 960px --------------------*/
@media screen and (max-width: 960px) {
  #company #section04 .sub-flex {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
  }
  #company #section04 .sub-flex ul:not(:last-of-type) {
    margin-bottom: 24px;
  }
  #company #section04 .sub-flex span {
    display: none;
  }
}
/*-------------------- 767px --------------------*/
@media screen and (max-width: 767px) {
  #company #section03 .bitech-table {
    border-top: 1px solid;
  }
  #company #section03 .bitech-table th {
    padding-top: 16px;
    padding-bottom: 0;
    border-bottom: none;
  }
  #company #section03 .bitech-table td {
    padding: 4px 0px 16px 14px;
  }
  #company #section04 .sub-flex {
    grid-template-columns: repeat(1, 1fr);
  }
}
/*--------------------------------------------------------------------------------*/
/*	採用情報ページ：#recruit */
/*--------------------------------------------------------------------------------*/
#recruit #section04 h2 + p {
  margin-bottom: 16px;
}
#recruit #section04 .sub-flex {
  gap: 32px;
  margin-bottom: 64px;
}
#recruit #section04 .sub-flex article {
  background-color: #fafafa;
  border-radius: 16px;
  padding: 32px;
  display: flex;
}
#recruit #section04 .sub-flex article > img {
  border-radius: 50%;
  background-color: #fff;
  margin-right: 32px;
  width: 128px;
  height: 128px;
}
#recruit #section04 .sub-flex article > p {
  line-height: 1.6;
  width: calc(100% - 160px);
}
#recruit #section04 .sub-flex article > p span {
  display: block;
  margin-top: 16px;
  text-align: right;
  font-size: 1rem;
  font-weight: 700;
}

/*-------------------- 1184px --------------------*/
@media screen and (max-width: 1184px) {
  #recruit #section04 .sub-flex {
    flex-direction: column;
  }
}
/*-------------------- 767px --------------------*/
@media screen and (max-width: 767px) {
  #recruit #section04 .sub-flex {
    margin-bottom: 32px;
  }
  #recruit #section04 .sub-flex article {
    flex-direction: column;
    padding: 32px 24px;
  }
  #recruit #section04 .sub-flex article > img {
    width: 128px;
    height: 128px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 16px;
  }
  #recruit #section04 .sub-flex article > p {
    width: 100%;
  }
  #recruit #section04 .sub-flex article > p span {
    font-size: 0.9rem;
  }
}
/*--------------------------------------------------------------------------------*/
/*	お問い合わせページ：#contact */
/*--------------------------------------------------------------------------------*/
#contact #section02 .sub-flex {
  justify-content: flex-start;
  margin-bottom: 32px;
}
#contact #section02 .sub-flex .office:first-of-type {
  padding-right: 64px;
  border-right: 1px dotted;
  margin-right: 64px;
}
#contact #section02 .sub-flex .office {
  width: -moz-fit-content;
  width: fit-content;
}
#contact #section02 .sub-flex .office p {
  font-size: 0.9rem;
  line-height: 1.6;
}
#contact #section02 .sub-flex .office .office-name {
  font-size: 1.25rem;
  font-weight: 700;
  margin-bottom: 8px;
}
#contact #section02 .sub-flex .office .office-fax {
  margin-bottom: 8px;
}
#contact #section02 > p {
  font-size: 1rem;
  line-height: 1.6;
}
#contact #section03 .sub-flex {
  align-items: center;
  justify-content: flex-start;
  margin-bottom: 32px;
}
#contact #section03 .sub-flex a {
  margin-right: 64px;
  border: 4px solid #323232;
  border-radius: 50%;
  width: 120px;
  height: 120px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.3s ease;
}
@media (hover: hover) {
  #contact #section03 .sub-flex a:hover {
    transform: scale(1.15);
  }
  #contact #section03 .sub-flex a:hover .dli-mail {
    transform: scale(1.2);
  }
}
#contact #section03 .sub-flex .mail-text {
  width: 70%;
}
#contact #section03 .sub-flex .mail-text p {
  font-size: 1rem;
  line-height: 1.6;
  margin-bottom: 8px;
}
#contact #section03 .sub-flex .mail-text small {
  display: block;
  line-height: 1.8;
}
#contact #section03 .sub-flex .mail-text small:first-of-type {
  margin-bottom: 8px;
  font-weight: 600;
}

/*-------------------- 1024px --------------------*/
@media screen and (max-width: 1024px) {
  #contact #section02 .sub-flex {
    flex-direction: column;
  }
  #contact #section02 .sub-flex .office:first-of-type {
    padding-right: 0;
    border-right: none;
    margin-right: 0;
    padding-bottom: 32px;
    border-bottom: 1px dotted;
    margin-bottom: 32px;
  }
  #contact #section02 .sub-flex .office {
    width: 100%;
  }
}
/*-------------------- 767px --------------------*/
@media screen and (max-width: 767px) {
  #contact #section03 .sub-flex {
    flex-direction: column;
  }
  #contact #section03 .sub-flex a {
    margin-right: 0;
    margin-bottom: 32px;
  }
  #contact #section03 .sub-flex .mail-text {
    width: 100%;
  }
}
/*--------------------------------------------------------------------------------------------------*/
/*	お知らせ */
/*--------------------------------------------------------------------------------------------------*/
/*--------------------------------------------------------------------------------*/
/*	お知らせ一覧ページ：#news-index */
/*--------------------------------------------------------------------------------*/
#news #first-view > p {
  color: #323232;
}
#news article {
  padding-bottom: 64px;
  border-bottom: 1px dotted;
  margin-bottom: 64px;
}
#news article span {
  display: block;
  margin-bottom: 16px;
}
#news article h2 {
  font-size: 1.5rem;
  line-height: 1.6;
  font-weight: 600;
  color: #323232;
  margin-bottom: 0px;
}
#news article h2::after {
  background-color: #000;
}
#news article:last-of-type {
  margin-bottom: 0px;
}

/*-------------------- 767px --------------------*/
@media screen and (max-width: 767px) {
  #news article {
    padding-bottom: 32px;
    margin-bottom: 32px;
  }
  #news article span {
    display: block;
    margin-bottom: 16px;
  }
  #news article h2 {
    font-size: 1.125rem;
  }
}
/*--------------------------------------------------------------------------------*/
/*	お知らせページ：#news-article */
/*--------------------------------------------------------------------------------*/
#news-article #first-view h1 {
  font-size: 3rem;
}
#news-article #first-view #inc-breadcrumb01 {
  margin-bottom: 64px;
}
#news-article #first-view p {
  font-size: 1rem;
  color: #323232;
}
#news-article .btn-container {
  display: flex;
  justify-content: center;
}

/*-------------------- 767px --------------------*/
@media screen and (max-width: 767px) {
  #news-article #first-view h1 {
    font-size: 1.5rem;
  }
  #news-article #first-view #inc-breadcrumb01 {
    margin-bottom: 32px;
  }
  #news-article .btn-container {
    display: flex;
    justify-content: center;
  }
}
/*--------------------------------------------------------------------------------*/
/*	個人情報保護方針ページ：#privacy */
/*--------------------------------------------------------------------------------*/
#sub-page #privacy p,
#sub-page #privacy ul {
  line-height: 1.8;
  margin-bottom: 0;
}
#sub-page #privacy ul {
  margin-left: 1.2rem;
  text-indent: -1.2rem;
}
#sub-page #privacy #first-view > p {
  color: #323232;
}
#sub-page #privacy > section:not(:last-of-type) {
  margin-bottom: 64px;
}
#sub-page #privacy > section:last-of-type {
  margin-bottom: 0px;
}
#sub-page #privacy section h2 {
  font-size: 1.5rem;
  color: #323232;
  margin-bottom: 8px;
}

/*-------------------- 767px --------------------*/
@media screen and (max-width: 767px) {
  #sub-page #privacy ul {
    margin-left: 1rem;
    text-indent: -1rem;
  }
  #sub-page #privacy > section:not(:last-of-type) {
    margin-bottom: 32px;
  }
  #sub-page #privacy section h2 {
    font-size: 1.2rem;
    margin-left: 1.4rem;
    text-indent: -1.4rem;
  }
}
/*--------------------------------------------------------------------------------*/
/*	サイトマップページ：#site-map */
/*--------------------------------------------------------------------------------*/
#site-map ul {
  line-height: 1.8;
}
#site-map ul li {
  margin-bottom: 16px;
}
#site-map ul li ul {
  margin-top: 16px;
}
#site-map ul li:last-of-type {
  margin-bottom: 0px;
}
#site-map ul .text-hover::after {
  background-color: #323232;
}
#site-map ul .arrow.arrow-right {
  margin-right: 8px;
}
#site-map ul .arrow {
  top: -1px;
}
#site-map ul ul {
  margin-left: 1.2rem;
}/*# sourceMappingURL=sub-common.css.map */