footer {padding:0;position:relative; border-top:1px solid #CBCBCB; z-index:1; background:#fff; }

@media screen and (min-width:320px) {
.fbox { width:100%; display: flex;justify-content: space-between;margin: 0 auto;flex-wrap:wrap; position:relative; padding-bottom:100px; }
}
.fbox { padding-bottom:80px; }
.fleft { width:90%; margin:30px auto 0 auto; text-align:center; order:2; }
.fleft .link_other { width:auto; margin:0 auto; padding:0; display:block; color:#696D70; font-weight:400; font-size:14px; }
.fleft .fleft_link_wrap { display:block; position:absolute; bottom:10px; }
.fleft .fleft_logo { width:70%; display:block; margin:0 auto; }
.fleft .fleft_logo img { width:100%; }
@media screen and (min-width:768px) {
  footer { padding-top:40px; }
  .fbox { padding-bottom:0; }
  .fleft { width:30%; margin:0; order:initial; }
  .fleft .fleft_logo { width:280px; margin:0 0 48px 0;}
  .fleft .link_other { text-align:left; padding:0; margin-bottom:5px; }
  .fleft .link_other:hover { text-decoration: underline;}
  .fleft .fleft_link_wrap { width:auto; display:block; position:relative; bottom:initial; }
}
@media screen and (min-width: 768px) and (max-width: 1024px) {
  .fleft { width:100%;  }
  .fleft .fleft_logo { margin:20px 0; }
}
@media screen and (min-width:1025px) {
  .fleft { width:30%;  }
  .fleft .fleft_logo { margin:0; }
  .fleft .companyinfo { width:100%; margin:0 0 10px 0; text-align:left; display:inline-block; font-weight:400; line-height:1.7em; }
}
.tel-link { display: none; }
  @media screen and (max-width: 768px) {
    .tel-text { display: none; }
    .tel-link { display: inline; margin-bottom:20px; }
  }


.fright {width:100%;text-align: right; border-bottom:1px solid #ccc; margin-top:20px; }
.fpp {width:100%; margin:0px auto 10px auto; color:#000; font-size:14px; text-align:center; display:block;}
.fpp:hover { text-decoration:none;}
.fmenu { width:90%; margin:0 auto 0 auto; }
.fmenu li { width:50%; }
.fmenu li a { width:100%; text-align:left; display:inline-block; color:#000;  font-family:"Noto Sans JP", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN","メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;font-weight: 400;}
.fmenu li a:link { color:#000; } 
.fmenu li a:visited { color:#000; } 
.fmenu li .current { color: #D10000;}
.fmenu li .current:link { color: #D10000;}
.fmenu li .current:visited { color: #D10000;}
.fmenu li a {transition: color 0.3s ease; /* ← 追加：色の変化をアニメーション */}
.fmenu li a:hover {color: #D10000;}
.fmenu li .current::after{ content:none;}
.sp_entry { width:100%; height:auto; color:#fff;text-align:center; }
.sp_entry_wrap { width:200px; margin:0 auto;  display:flex; align-items:right; }
.icon_other { width:12px; }
@media screen and (min-width:768px) {
    .fpp { margin-bottom:0; }
    .fmenu {margin:0 auto 36px auto; }
    .fbox { width:90%; padding:0; display:flex; justify-content:space-between; margin: 0 auto; flex-wrap:wrap; }
    .fcompany { width: auto;display: block;margin: 0 auto 10px auto; color: #fff; text-align:left; font-weight:bold; }
    .fright { max-width:600px;border-bottom:none; margin-top:0; }
    .fright .fmenu { width:100%; display:flex; justify-content:space-between; flex-wrap:wrap; }
    .fright .fmenu li { width:33%; height:100%; padding:0;line-height: 1.7; border-bottom:0; }


    .fright .fmenu li a {
      display: block;
      font-size: 14px;
      white-space: nowrap;
      padding: 8px 0;
      width:100%; 
      text-align:left; 
      font-family: "dnp-shuei-anti-std", sans-serif;
    }

  
    .fmenu li a.current {
      position: relative;
      color: #AD1D22;
      width: 100%;
      display: block;
      height: auto;
      padding: 8px 16px 8px 0;
      line-height: 1.7;
      border-bottom: 0;
      overflow: visible;
    }
    .fmenu li .current:link { color:#AD1D22;}
    .fmenu li .current:visited { color:#AD1D22}
    
  

}


@media screen and (max-width:768px) {
.fright .fmenu { display:flex; flex-wrap:wrap;  }
.fright .fmenu li { width:50%; text-align:left; font-size:14px; margin-bottom:10px; }
.fright .fmenu li:nth-child(1) { order:1; border-bottom:1px solid #ccc; padding-bottom:10px; margin-bottom:10px; }/*新卒採用トップ*/
.fright .fmenu li:nth-child(2) { order:3; }/*代表メッセージ*/
.fright .fmenu li:nth-child(3) { order:8; }/*最新情報*/
.fright .fmenu li:nth-child(4) { order:2; border-bottom:1px solid #ccc; padding-bottom:10px; margin-bottom:10px;} /*中途採用サイト*/
.fright .fmenu li:nth-child(5) { order:4; }/*社員インタビュー*/
.fright .fmenu li:nth-child(6) { order:9; }/*地域の取り組み*/
.fright .fmenu li:nth-child(7) { display:none; } 
.fright .fmenu li:nth-child(8) { order:5; }/*数字で見るアート建工*/
.fright .fmenu li:nth-child(9) { order:10; }/*会社概要*/
.fright .fmenu li:nth-child(10) { display:none; } 
.fright .fmenu li:nth-child(11) { order:6; }/*職種紹介*/
.fright .fmenu li:nth-child(12) { order:11; }/*募集要項*/
.fright .fmenu li:nth-child(13) { display:none; } 
.fright .fmenu li:nth-child(14) { order:7; } /*働く環境*/
.fright .fmenu li:nth-child(15) { order:12; } 




}

@media screen and (min-width:768px) {
  .fbox { width:90%; max-width:1260px; margin-bottom:10px; }



}

.fcopyright_wrap { width:100%; border-top:1px solid #CBCBCB; }
.fcopyright_wrap .fcopyright_wrap_inner { width:90%; margin:0 auto;}

.fcopyright_wrap .fcopyright { width: 100%; padding:10px 0; display:block;text-align:center; line-height:1.3em; }
@media screen and (min-width:768px) {
  .fcopyright_wrap .fcopyright { padding:16px 0;}
}

.fcopyright_wrap .fcopyright_wrap_inner .pagetop {position: fixed;bottom: 30px;right: 30px;padding: 10px 15px;text-decoration: none;border-radius: 5px;opacity: 0.7;}
.fcopyright_wrap .fcopyright_wrap_inner .pagetop img { height:20px; margin-left:10px; }

.pagetop { display:none; }
@media screen and (min-width:768px) {
.pagetop {position: fixed;bottom: 30px;right: 30px;padding: 10px 20px;text-decoration: none;border-radius: 30px;display: flex;align-items: center;font-family: 'Oswald', sans-serif;font-size: 14px;transition: background-color 0.3s ease;z-index: 999;}
.pagetop img {width: 20px;height: 20px;margin-left: 8px;transition: transform 0.3s ease;}
.pagetop:hover img {transform: translateY(-5px);}
.pagetop:hover {opacity: 1.0;}
}

.pagetop_wrap {
  position: fixed;
  bottom: 30px;
  right: 30px;
  display: none; /* 初期状態は非表示 */
  z-index: 1000;
}

@media screen and (min-width:768px) {
  .fcopyright_wrap .fcopyright_wrap_inner { width:90%; max-width:1260px; display:flex; justify-content: space-between;}
  .fcopyright_wrap .fcopyright { width:40%; text-align:left; }
}


footer li a { width:80%; text-align:center; }
@media screen and (min-width:900px) {
  footer li a { width:100%; text-align:center; }
}







  



