@charset "utf-8";

/*===================================
共通
===================================*/

body {
position: relative;
font-family: "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体" , YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
letter-spacing: 0.5px;
padding-top: 84px;
}

/*    ▼fade in
スクロールで表示（jquery.inview.js）
====================================*/
.fade {
transition: 1.5s;
opacity: 0;
/*    opacity: 1;*/
}
.show { opacity: 1.0;}


.flex {
display: -webkit-flex;
display: -ms-flex;
display: flex;
}

.inner_1000 {
max-width: 1000px;
width: 94%;
margin: 0 auto;
}
.inner_1200 {
max-width: 1200px;
width: 94%;
margin: 0 auto;
}

img { width: 100%;}

.pc { display: block;}
.sp { display: none;}

.cap_Txt {
position: absolute;
font-size: 10px;
font-weight: 600;
bottom: 5px;
font-family:"Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
transform: rotate(.028deg);
}
.cap_W { color: #fff;}
.cap_B { color: #333;}
.cap_ShaW { text-shadow: 2px 0 2px #fff, -2px 0 2px #fff, 0 2px 2px #fff, 0 -2px 2px #fff;}
.cap_ShaB { text-shadow: 2px 0 2px #666, -2px 0 2px #666, 0 2px 2px #666, 0 -2px 2px #666;}
.cap_R { right: 5px;}
.cap_L { left: 5px;}

.notes_wrap {
margin: 80px auto 50px;
}
.notes {
font-size: 12px;
font-family:"Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
transform: rotate(.028deg);
line-height: 1.8;
text-align: justify;
}


/* header
----------------------*/
header {
position: absolute;
width: 100%;
position: fixed;
top: 0;
left:0;
z-index: 101;
transition: .5s;
padding: 0 0 0 2%;
background: #fff;
}

.logo_Box {
justify-content: space-between;
width:280px;
}
header h1 {
width: 149px;
padding: 0 0 0 0;
}
header h1 img {
width: 100%;
}

header .nishitetsu_Logo {
width: 110px;
padding: 0 0;
}

header.flex{
justify-content: space-between;
}

.scroll_bg {
background: rgba(255,255,255,.8);
transition: .5s;
}


.g_nav_pc {
width:100%;
margin: 0 auto;
}
.g_nav_pc ul {
display: flex;
flex-wrap: wrap;
justify-content: center;
align-items: center;
}
.g_nav_pc ul li {
position: relative;
text-align: center;
}
.g_nav_pc ul li:not(:last-of-type)::after{
content:"";
display:inline-block;
width:1px;
height:26px;
background-color:rgba(0,0,0,.3);
position:absolute;
top:50%;
right:0;
transform: translateY(-50%);
}

.g_nav_pc ul li a {
position: relative;
display: block;
color: #000;
font-size: 15px;
font-weight: 600;
line-height: 1.1;
letter-spacing: 0.06em;
padding: 10px 30px;
transition: 0.5s;
}

.g_nav_pc ul li a:hover {
transition: 0.5s;
}
.g_nav_pc ul li a::before,
.g_nav_pc ul li a::after {
position: absolute;
bottom: 0;
content: "";
width: 0;
height: 4px;
transition: .3s;
display: inline-block;
text-align: center;
}
.g_nav_pc ul li a::before {
left: 50%;
background: #31b372;
}
.g_nav_pc ul li a::after {
right: 49%;
background: #31b372;
}

.g_nav_pc ul li a:hover::before,
.g_nav_pc ul li a:hover::after {
width: 42%;
transform: skewX(-25deg);
}

/*現在地　カレント*/
#support .g_nav_pc ul li:nth-child(1) a::before,
#support .g_nav_pc ul li:nth-child(1) a::after {
width: 42%;
transform: skewX(-30deg);
}
#support .g_nav_pc ul li:nth-child(1) a::before{left: 50%;}
#support .g_nav_pc ul li:nth-child(1) a::after {right: 49%;}


.hdr {
width: 100%;
justify-content: space-between;
align-items: center;
padding: 10px 0;
}
.nav_box {

}
.sub_nav_pc {
padding: 0 30px 0 0;
}

.sub_nav_pc a{
display: block;
font-size: 11px;
font-weight: 600;
padding: 0 20px;
transition: 0.3s;
}
.sub_nav_pc a:hover{
opacity: 0.5;
transition: 0.3s;
}
.sub_nav_pc ul.flex{
justify-content: flex-end;
}

.hdr_request {

}

.hdr_tel {
width: 209px;
height: 66px;
margin: auto 0;
padding: 2px 12px;
border: solid 1px #31b372;
transition: 0.3s;
}
.hdr_tel:hover {
opacity: 0.7;
transition: 0.3s;
}

/*-----SP以外電話リンク押せないように-----*/
@media only screen and (min-width: 767px) {
.hdr_tel {
pointer-events: none;
}
}



.hdr_tel a {
font-size: 10px;
font-weight: 600;
}
.hdr_tel span {
display: block;
width: 100%;
max-width: 183px;
margin: 5px auto 0;
}


.request {
position: relative;
display: block;
width: 117px;
height: 66px;
color: #fff;
    background: #002750;
margin: auto 0 auto 44px;
transition: 0.3s;
}
.request::before {
content: "";
position: absolute;
display: block;
top: 0;
left:-14px;
width: 0;
height: 0;
border-style: solid;
border-width: 0 0 66px 14px;
    border-color: transparent transparent #002750 transparent;
}
.request:hover {
transition: 0.3s;
opacity: 0.7;
}


.request a{
display: block;
position: absolute;
top: 50%;
left: 50%;
padding: 25px 15px;
transform: translate(-50%, -50%);
font-weight: 600;
white-space: nowrap;
color: #fff;
font-size: 14px;
}

.requestBtn {
}
.requestBtn a {
color: #fff;
font-size: 13px;
letter-spacing: 0.12em;
background: #c2a448;
padding: 10px 40px;
}
.sub_nav_pc li{
position: relative;
}
.sub_nav_pc li:not(:last-child){
margin: 0 12px 0 0;
}
.sub_nav_pc li::after {
content: "";
position: absolute;
top: 49%;
bottom: 0;
right: 7px;
width: 5px;
height: 5px;
border-top: 1px solid #000;
border-right: 1px solid #000;
-webkit-transform: rotate(45deg) translate(0,-50%);
transform: rotate(45deg) translate(0,-50%);
}
.sub_nav_pc li.requestBtn::after {
content: "";
position: absolute;
top: 42%;
bottom: 0;
right: 7px;
width: 5px;
height: 5px;
border-top: 1px solid #fff;
border-right: 1px solid #fff;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
}

/*ハンバーガーメニュー*/
#navMenu {
width: 59px;
height: 59px;
transition: all 0.4s;
box-sizing: border-box;
color: #fff;
z-index: 999;
background: #298e5b;
position: absolute;
top:0;
right:0;
}
#navMenu .bar {
width: 20px;
height: 16px;
display: block;
position: relative;
top: 50%;
left: 50%;
transform: translate(-50%,-50%);

}
#navMenu,
#navMenu .bar span {
display: inline-block;
transition: all .4s;
box-sizing: border-box;
}
#navMenu .bar span {
position: absolute;
left: 0;
width: 100%;
height: 2px;
background-color: #fff;
border-radius: 2px;
}
#navMenu .bar span:nth-of-type(1) { top: 0;}
#navMenu .bar span:nth-of-type(2) { top: 10;}
#navMenu .bar span:nth-of-type(3) { bottom: 0;}
#navMenu .bar span:nth-of-type(2) {
top: 50%;
left: 50%;
-webkit-transform: translate3d(-50%, -50%, 0);
transform: translate3d(-50%, -50%, 0);
}

#navMenu.active .bar span:nth-of-type(1) {
-webkit-transform: translateY(10px) rotate(-315deg);
transform: translateY(10px) rotate(-315deg);
top: -3px;
}
#navMenu.active .bar span:nth-of-type(2) {
display: none;
}
#navMenu.active .bar span:nth-of-type(3) {
background-color: #fff;
-webkit-transform: translateY(-10px) rotate(315deg);
transform: translateY(-10px) rotate(315deg);
bottom: -3px;
}

/*グローバルメニュー*/
.nav_wrap01 {
opacity: 0;
position: absolute;
right:0;
top: 59px;
width: 100%;
height: 100vh;
-webkit-perspective: 400px;
perspective: 400px;
transition: .5s;
pointer-events: none;
transform: rotateY(-5deg);
transform-origin: right;
}
.nav_wrap01.active {
opacity: 1;
pointer-events: all;
transform: rotateY(0deg);
transition: .5s;
}


.g_nav_sp {
width: 100%;
height: 100vh;
background: rgba(255, 255, 255, .95);
}
.g_nav_sp li{
position: relative;
}
.g_nav_sp li a {
font-size: 14px;
display: block;
padding: 20px 0;
color: #000;
text-align: center;
transform: rotate(.028deg);
transition: .3s;
}
.g_nav_sp li a:hover { transition: .3s;}
.g_nav_sp li:not(:last-of-type) { border-bottom: 1px solid #ddd;}

/*リンククローズ（SP）*/
/* .g_nav_sp li:nth-of-type(4) a {
pointer-events: none;
opacity: .4;
} */

/* contents
----------------------*/
/* category_head */
.category_head {
  background: #f4f9f7;
  padding:30px 0;
}
.category_head h2 {
  font-size: 27px;
  line-height: 1.3;
  letter-spacing: 1px;
  font-weight: 600;
  color:#298e5b;
  text-align:center;
}

/* service_tab */
.service_tab {
  padding: 50px 0;
}
.service_tab h3 {
  font-size: 27px;
  line-height: 1.3;
  letter-spacing: 1px;
  font-weight: 600;
  color:#298e5b;
  text-align:center;
  margin-bottom: 40px;
}
.service_tab ul {
  justify-content:space-between;
}
.service_tab ul li {
  display: flex;
  align-items: stretch;
  width: calc((100% - 6%) / 4);
}
.service_tab ul li a {
  display: block;
  width: 100%;
  border: 3px solid #298e5b;
  border-radius: 10px;
  padding:15px 0;
  text-align: center;
  font-size: 18px;
  line-height: 1.2;
    font-feature-settings: "palt";
    letter-spacing: 0.12em;
  font-weight: 600;
  color:#298e5b;
  background: #dfefe7;
  transition: .3s;
  display: flex;
  justify-content: center;
  align-items: center;
}
.service_tab ul li a:hover,
.service_tab ul li.curr a {
  background: #298e5b;
  color:#FFF;
  transition: .3s;
}

/* service_guide_Box */
.service_guide_Box {
  padding: 50px 0;
}
.service_guide_Box h3 {
  font-size: 24px;
  line-height: 1.3;
  letter-spacing: 1px;
  font-weight: 600;
  color:#298e5b;
  text-align:center;
  margin-bottom: 30px;
}
.service_guide_Box p {
  font-size: 16px;
  line-height: 1.3;
  letter-spacing: 1px;
  font-weight: 600;
  text-align:center;
  margin-bottom: 30px;
}
.service_guide_Box ul {
  justify-content:space-between;
}
.service_guide_Box ul li {
  /* display: flex;
  align-items: stretch; */
  width: calc((100% - 5%) / 4);
  position: relative;
}
.service_guide_Box ul li a {
  display: block;
  width: 100%;
  height: 180px;
  border: 3px solid #298e5b;
  padding:10px 0;
  text-align: center;
  font-size: 16px;
  line-height: 1.2;
  letter-spacing: 1px;
  font-weight: 600;
  color:#298e5b;
  transform:scale(1.0,1.0);
  transition: .3s;
  display: flex;
  justify-content: center;
  align-items: center;
  overflow:hidden;
  position:relative;
}
.service_guide_Box ul li a span {
  position: absolute;
  bottom: 5px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  z-index: 15;
  width:90%;
}
.service_guide_Box ul li a:after {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -ms-background-size: cover;
  background-size: cover;
  -webkit-transition: all .3s ease-out;
  -moz-transition: all .3s ease-out;
  -ms-transition: all .3s ease-out;
  transition: all .3s ease-out;
  z-index: 5;
  opacity: 1;
}
.service_guide_Box ul li:nth-of-type(1) a:after { background: url(../../support/img/btnimg_01.jpg) 50% 50%; background-size: cover; }
.service_guide_Box ul li:nth-of-type(2) a:after { background: url(../../support/img/btnimg_02.jpg) center center;background-size: cover; }
.service_guide_Box ul li:nth-of-type(3) a:after { background: url(../../support/img/btnimg_03.jpg) center center;background-size: cover; }
.service_guide_Box ul li:nth-of-type(4) a:after { background: url(../../support/img/btnimg_04.jpg) center center;background-size: cover; }
.service_guide_Box ul li a:hover:after {
  position: absolute;
  top: 0;
  left: 0;
  opacity: .7;
  -moz-transform: scale(1.1);
  -webkit-transform: scale(1.1);
  -ms-transform: scale(1.1);
  transform: scale(1.1);
}




/* footer
----------------------*/
.contact_Box {
width: 94%;
max-width: 800px;
border: 4px solid #044a70;
margin: 80px auto;
}


.contact_area {
margin: 0 auto;
padding: 30px 0;
color: #fff;
text-align: center;
}
.contact_area .contact_btn {
display: block;
max-width: 280px;
margin: 0 auto 30px;

color: #fff;
background: #002750;
transform: skewX(-25deg);
transition: 0.3s;
cursor:pointer;
}
.contact_area .contact_btn:hover {
transform: skewX(0deg);
opacity: 0.7;
transition: 0.3s;
}
.contact_area .contact_btn a {
display: inline-block;
color: #fff;
width: 100%;
padding: 19px 0;
transform: skewX(25deg);
transition: 0.28s;
}
.contact_area .contact_btn:hover a {
transform: skewX(0deg);
transition: 0.28s;
}
.contact_tel {
width: 100%;
min-height: 1%;
margin:  0 auto;
transition: 0.3s;
}
.contact_tel span{
display: block;
max-width: 341px;
margin:  8px auto;
}
.contact_tel:hover {
opacity: 0.7;
transition: 0.3s;
}
/*-----SP以外電話リンク押せないように-----*/
@media only screen and (min-width: 767px) {
.contact_tel {
pointer-events: none;
}
}

.Resident-only {
    background: #044a70;
}
.Resident-only a{
display: block;
width: 94%;
max-width: 480px;
margin: 0 auto 0 11.5%;
padding: 30px 0;
}
/*スマホ以上は押せないように*/
@media only screen and (min-width: 767px) {
    .Resident-only a{
pointer-events: none;
    }
}


.ftr_nav {
width: 100%;
background: #31b372;
padding: 0
}
.ftr_nav ul {
width: 94%;
font-size: 14px;
font-weight: 600;
justify-content:center;
align-items: center;
margin: 0 auto;
}
.ftr_nav ul li {
position: relative;
padding: 15px 15px;
text-align: center;
transform: rotate(.028deg);
}
.ftr_nav ul li:nth-child(1)::after,
.ftr_nav ul li:nth-child(2)::after,
.ftr_nav ul li:nth-child(3)::after,
.ftr_nav ul li:nth-child(4)::after{
content: "";
position: absolute;
display: block;
top: 50%;
right: 0;
transform: translate(0,-50%);
width: 0;
height: 45%;
border-right: 1px solid #fff;
}
.ftr_nav ul li a { color: #FFF;}
.ftr_nav ul li a:hover { text-decoration: underline;}

.ftr_nav ul li.homebuilder {
}
.ftr_nav ul li.homebuilder a{
display: inline-block;
padding: 8px 20px;
border: 1px solid #fff;
text-decoration: none;
transition: 0.3s;
}

.ftr_nav ul li.homebuilder a:hover{
color: #31b372;
background: #fff;
transition: 0.3s;
}


footer {
width: 100%;
}
.company_area {
padding: 0 0 30px;
}
.company_area h4{
text-align: center;
font-size: 20px;
font-weight: 600;
padding: 40px 0;
}

.item_list {
width: 94%;
max-width: 300px;
margin: 0 auto 50px;
text-align: center;
}
.item_list h5{
font-size: 16px;
font-weight: 600;
margin-bottom: 10px;
padding-bottom: 10px;
border-bottom: 1px solid #31b372;
}
.item_list ul{
font-size: 18px;
font-weight: 600;
justify-content: space-between;
padding: 0 10px;
}
.item_list ul li{
position: relative;
}
.item_list ul li:nth-child(3),
.item_list ul li:nth-child(4){
display: none;
}
.item_list ul li::after {
    content: "";
    position: absolute;
    top: 46%;
    bottom: 0;
    right: 0;
    width: 8px;
    height: 8px;
    border-top: 1px solid #298e5b;
    border-right: 1px solid #298e5b;
    -webkit-transform: rotate(45deg) translate(0,-50%);
    transform: rotate(45deg) translate(0,-50%);
}
.item_list ul li a{
color: #298e5b;
padding-right: 0.5em;
transition: 0.3s;
}
.item_list ul li a:hover{
opacity: 0.7;
transition: 0.3s;
}
.company_list {
width: 94%;
max-width: calc(397px + 80px);
margin: 0 auto;
justify-content: space-between;
align-items: center;
}
.company_list li{
width: 100%;
}
.company_list li:nth-child(1){max-width: calc(204px * 1);}
.company_list li:nth-child(2){max-width: calc(193px * 1);}
.company_list li:nth-child(3){max-width: calc(130px * 1);display: none;}
.company_list li:nth-child(4){max-width: calc(200px * 1);display: none;}

.company_list li:not(:last-child){
margin-right: 5.102040816326531%;
}
.company_list li a {
transition: 0.3s;
}
.company_list li a:hover {
opacity: .5;
transition: 0.3s;
}

.ftr_contact {
padding: 30px 0;
border-top: 1px solid #31b372;
    background: #31b372;
}
.ftr_contact .inner_1200{
justify-content: space-between;
}
.ftr_contact .sub_list{
font-size: 14px;
font-weight: 600;
white-space: nowrap;
padding: 8px 0 0;
}
.ftr_contact .sub_list li{
position: relative;
}
.ftr_contact .sub_list li a{
color: #fff;
transition: 0.3s;
}
.ftr_contact .sub_list li a:hover{
opacity: 0.7;
transition: 0.3s;
}
.ftr_contact .sub_list li:not(:last-child){
margin-bottom: 16px;
}
.ftr_contact .sub_list li::after {
content: "";
position: absolute;
top: 49%;
bottom: 0;
left: -10%;
width: 6px;
height: 6px;
border-top: 1px solid #fff;
border-right: 1px solid #fff;
-webkit-transform: rotate(45deg) translate(0,-50%);
transform: rotate(45deg) translate(0,-50%);
}


.ftr_contact .division{
width: 94%;
max-width: 315px;
color: #31b372;
text-align: right;
    background: #31b372;
    padding: 8px 16px 16px;

}
.ftr_contact .division li{
display: block;
margin: 0 auto;
}
.ftr_contact .division li:not(:last-child){
margin-bottom: 14px;
}
.ftr_contact .division li a{
transition: 0.3s;
}
.ftr_contact .division li a:hover{
opacity: 0.5;
    transition: 0.3s;
}
.ftr_contact .ftr_address{
font-size: 13px;
color: #fff;
text-align: center;
line-height: 1.2;
margin-right: 20px;
font-weight: 600;
}
.ftr_contact .division .ftr_address span{
font-size: 13px;
}
.ftr_contact .division .ftr_tel{
text-align: right;
width: 70%;
max-width: 285px;
margin-bottom: 10px;
}
.ftr_contact .division .ftr_tel a{
display: inline-block;
margin-bottom: 8px;
}
@media only screen and (min-width: 767px) {
.ftr_contact .division .ftr_tel a{
pointer-events: none;
}
}

.ftr_contact .division .ftr_tel span{
font-size: 14px;
color: #000;
}
/*-------------------------------------*/

p.copy {
width: 100%;
color: #fff;
text-align: center;
font-size: 10px;
transform: rotate(.028deg);
}

/*トップへ戻るボタン*/
#pageTop {
display: none;
cursor: pointer;
font-size: 11px;
position: fixed;
right: 20px;
bottom: 30px;
padding: 13px 9px;
text-align: center;
background: #298e5b;
border: 1px solid #5cce94;
z-index: 100;
}
#pageTop a {color: #fff;}


.ftr_nav ul li:nth-child(2) br,
.ftr_nav ul li:nth-child(3) br{
display: none;
}
@media only screen and (max-width: 1149px) {
.g_nav_pc ul li a {
    padding: 10px 20px;
}
}
@media only screen and (max-width: 1067px) {
    .g_nav_pc ul li a {
    font-size: 14px;
        padding: 10px 16px;
    }
}
/*-----------------------------
tab
-----------------------------*/
@media only screen and (max-width: 1024px) {
    .g_nav_pc ul li a {
        padding: 10px 20px;
    }


    /* contents
    ----------------------*/
    /* category_head */
    .category_head {
      padding:20px 0;
    }
    .category_head h2 {
      font-size: 22px;
    }

    /* service_tab */
    .service_tab {
      padding: 30px 0;
    }
    .service_tab h3 {
      font-size: 22px;
      margin-bottom: 30px;
    }
    .service_tab ul li a {
      font-size: 15px;
      line-height: 1.3;
    }

    /* service_guide_Box */
    .service_guide_Box {
      padding: 50px 0;
    }
    .service_guide_Box h3 {
      font-size: 20px;
      line-height: 1.3;
      margin-bottom: 20px;
    }
    .service_guide_Box p {
      font-size: 13px;
      line-height: 1.3;
      margin-bottom: 20px;
    }

    .service_guide_Box ul li a {
      display: block;
      width: 100%;
      height: 120px;
      font-size: 13px;
      line-height: 1.2;
      display: flex;
    }
    .service_guide_Box ul li a:after {
      position: absolute;
      content: "";
      display: block;
      width: 70%;
      height: 70%;
      top: 8%;
    }

}

/*-----------------------------
tab
-----------------------------*/
@media only screen and (max-width: 1024px) and (min-width: 768px){
    body {
        padding-top: 75px;
    }
    .logo_Box {
        justify-content: space-between;
        width: 220px;
    }
    header h1 {
        width: 149px;
        padding: 0 0 0 0;
        margin-right: 3%;
    }




    .ftr_nav ul li:nth-child(2) br,
    .ftr_nav ul li:nth-child(3) br{
        display: block;
    }
}

@media only screen and (max-width: 976px) {
.sub_nav_pc {
padding: 0 15px 0 0;
}
.g_nav_pc ul li a {
padding: 10px 15px;
font-size: 13px;
}
}
@media only screen and (max-width: 872px) {
.sub_nav_pc {
padding: 0 10px 0 0;
}
.g_nav_pc ul li a {
padding: 10px 10px;
font-size: 12px;
}
}
@media only screen and (max-width: 835px) {
.sub_nav_pc {
padding: 0 15px 0 0;
}
.g_nav_pc ul li a {
padding: 10px 6px;
font-size: 12px;
}
.hdr_tel {
width: 194px;
height: 66px;
padding: 2px 6px;
}
.request {
width: 94px;
margin: auto 0 auto 27px;
}
}

/*-----------------------------
sp
-----------------------------*/
@media only screen and (max-width: 767px) {
body {
padding-top: 59px;
}
.pc { display: none;}
.sp { display: block;}


/*header*/
header {
padding: 0 0;
position: fixed;
}

.logo_Box {
width:60%;
}

header h1 {
width: calc(106px * 1.2);
padding: 4px;
}

.hdr {
padding: 0;
}
.scroll_bg {
background: rgba(255,255,255,1);
height:20%;
max-height: 59px;
}

/*グローバルメニュー*/

.contact_area {
font-size: 14px;
line-height: 1.6;
margin-bottom: 0;
padding: 20px 10px;
}
.contact_area .contact_btn {
padding: 14px 0;
max-width: 80%;
}
.contact_area .contact_btn a {
font-size: 16px;
}
.contact_tel {
max-width: calc(341px * 0.9);
}

.Resident-only a {
    display: block;
    width: 90%;
    max-width: 480px;
    margin: 0 auto;
    padding: 20px 0;
}


/* contents
----------------------*/

/* service_tab */
.service_tab ul {
  flex-wrap: wrap;
}
.service_tab ul li {
  width: 48.8%;
  margin-bottom: 10px;
}
/*
.service_tab ul li:last-of-type {
  width: 100%;
}
*/
.service_tab ul li a {
  display: block;
  width: 100%;
  border: 2px solid #298e5b;
  border-radius: 6px;
  padding:10px 0;
  font-size: 16px;
  line-height: 1.3;
}
    .service_tab ul li:nth-child(4) a {
        display: block;
        width: 100%;
        border: 2px solid #298e5b;
        border-radius: 6px;
        letter-spacing: 0;
        font-feature-settings: "palt";
        padding:20px 0;
        font-size: 16px;
        line-height: 1.3;
    }
/* service_guide_Box */
.service_guide_Box ul {
  flex-wrap: wrap;
}
.service_guide_Box ul li {
  width: 48.8%;
  margin-bottom: 10px;
}
.service_guide_Box ul li a {
  display: block;
  width: 100%;
  height: 120px;
  font-size: 12px;
  line-height: 1.2;
  display: flex;
}
.service_guide_Box ul li a:after {
  position: absolute;
  content: "";
  display: block;
  width: 100%;
  height: 80%;
  top: 8%;
}


footer {
}
.ftr_nav {
width: 100%;
background: #fff;
padding: 0;
}
.ftr_nav ul {
width: 100%;
flex-wrap: wrap;
font-size: 14px;
border-top: 1px solid #31b372;
}
.ftr_nav ul li {
width: 100%;
border-bottom: 1px solid #31b372;
transform: rotate(0);

}
.ftr_nav ul li a {
color: #31b372;
padding: 15px 0;
}
.ftr_nav ul li:nth-child(1)::after,
.ftr_nav ul li:nth-child(2)::after {
display: none;
}
.ftr_nav ul li.homebuilder {
background: #31b372;
}
.ftr_nav ul li.homebuilder a {
display: inline-block;
color: #fff;
padding: 0;
border: unset;
transition: 0.3s;
}
/*footer*/
footer {
width: 100%;
margin: 0 0 60px;
}
footer h3 {
width: 90%;
padding: 40px 0 0;
}
.company_area h4 {
padding: 40px 0 20px;
}
.item_list h5 {
font-size: 16px;
margin-bottom: 20px;
padding-bottom: 10px;
}
.item_list ul {
font-size: 15px;
justify-content: space-between;
flex-wrap: wrap;
}
.item_list ul li{
width: 100%;
}
.item_list ul li:not(:last-child){
margin-right: 0;
margin-bottom: 30px;
}
    .item_list ul li::after {
        content: "";
        position: absolute;
        top: 46%;
        bottom: 0;
        right: 6em;
        width: 8px;
        height: 8px;
        border-top: 1px solid #298e5b;
        border-right: 1px solid #298e5b;
        -webkit-transform: rotate(
            45deg
        ) translate(0,-50%);
        transform: rotate(
            45deg
        ) translate(0,-50%);
    }

.company_list {
flex-wrap: wrap;
justify-content: space-around;
align-items: flex-end;
}
.company_list li {
width: 49%;
max-width: unset;
}

.company_list li:nth-child(1){max-width: calc(204px * 0.8);}
.company_list li:nth-child(2){max-width: calc(193px * 0.8);}
    .company_list li:nth-child(3){max-width: calc(130px * 1);}
.company_list li:nth-child(4){max-width: calc(200px * 0.8);}

.company_list li:not(:last-child) {
margin-right: 0;
}
.company_list li:nth-child(-n+2) {
margin-bottom: 20px;
}


.ftr_contact .inner_1200 {
justify-content: flex-start;
flex-wrap: wrap;
}
.ftr_contact .sub_list {
margin-bottom: 20px;
width: 90%;
padding: 0;
margin: 0 auto 30px;
}
.ftr_contact .sub_list li::after {
left: -4%;
}
    .ftr_contact .sub_list li a {
        padding-left: 4%;
    }
.ftr_contact .division {
justify-content: center;
flex-wrap: wrap;
text-align: left;
    width: 100%;
    max-width: 441px;
    margin: 0 auto;
}
.ftr_contact .ftr_address {
margin-right: 0;
margin-bottom: 14px;
}

.ftr_contact .division .ftr_tel {
text-align: center;
}


/*SP下部固定ナビ*/
.ftr_fixed {
width: 100%;
position: fixed;
bottom: 0;
background: #333;
height: 60px;
font-size: 10px;
text-align: center;
border-top: 1px solid #000;
z-index: 101;
}
.ftr_fixed li {
position: relative;
width: calc((100% - 0.01%) / 2);
background: #fff;
}
.ftr_fixed li:not(:last-of-type) {
border-right: 1px solid #000;
}
.ftr_fixed li a {
display: block;
width: 100%;
height: 100%;
color: #000;
}
.ftr_fixed li.nav_request {
    background: #002750;
}
.ftr_fixed li.nav_request a{
color: #fff;
}
/*TEL・番号等非表示*/
.ftr_fixed .nav_tel{

}
.ftr_fixed li span {
width: 100%;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}
.ftr_fixed li span::before {
content: "";
display: block;
width: 22px;
height: 22px;
margin: 0 auto 7px;
}
.ftr_fixed .nav_tel span::before {
background: url(../img/icon_tel.png) no-repeat;
background-size: contain;
}
.ftr_fixed .nav_request span::before {
background: url(../img/icon_request.png) no-repeat;
background-size: contain;
}

p.copy {
font-size: 8px;
/* letter-spacing: 0; */
line-height: 1.1;
padding: 10px 0px;
}

/*トップへ戻るボタン*/
#pageTop {
right: 10px;
bottom: 70px;
padding: 17px 10px;
}

}
