@charset "UTF-8";

body {margin: 0;
      font-family: 'メイリオ','Hiragino Kaku Gothic Pro',,sans-serif;
      /*background: #fdfce9;*/
    }




/*************************** ボックス１ *******************************/



.wrap {
  overflow: hidden;
  position: relative;
  max-width:1024px; margin:0 auto;
}


.header {
position: relative;
}

.header_img {
width: 100%;
}



/* ナビゲーション */

.gnav__menu__item{
  display: none;
}

.header_menu {
position: absolute;
top: 25px;
right: 80px;
font-size: 16px;
z-index: 10;
}

.header_menu ul {margin: 0 auto;
         padding: 0;
         list-style: none;
         max-width: 1125px;
         width: 100%;
          display: flex;
          justify-content: flex-end;
      　　}

.header_menu li a {display: block;
           font-size: 90%;
           color: #FFF;
           text-decoration: none;
           text-align: right;
           font-weight: 300;
         }


 .header_menu li a:hover {
           color: #cf388e;
           text-decoration: none;
 }

.header_menu li {
         width: 95px;
         }



.rogo_top {
width: 100%;
max-width: 200px;
position: absolute;
top: 20px;
left: 120px;
}


/*************************** ボックス２ *******************************/

.space_top {
position: relative;
padding-top: 100px;
}

.main_img{
}

.btn_img {
position: absolute;
bottom: 100px;
right: 40px;
top: 420px;
width: 200px;
}



.about_group {
    display: flex;
    justify-content: space-between;
    margin-top: -18px;
}

.about_txt {
/*    display: flex;*/
    width: 80%;
    flex-wrap: wrap;
}

img.about_title {
    width: 100%;
/*    max-width: 109px;*/
    padding-left: 30px;
}


.more_btn {
    padding-right: 30px;
    margin-top: 120px;
}

.more_btn img{
  max-width:160px;
}

.box4 .more_btn{
  padding-right:30px;
  margin-top:40px;
  text-align:right;
}

.txt01 {
    font-size: 15px;
    letter-spacing: 0.01em;
    width: 100%;
    padding-left: 30px;
    padding-top: 15px;
    line-height: 1.5em;
}

.txt001{
  display: none;
}


/*************************** ボックス３ *******************************/

.box3 {
}

.space {
position: relative;
padding-top: 150px;
}

.services_group {
    display: flex;
    justify-content: space-between;
    margin-top: -19px;
}

.services_txt {
    /*display: flex;*/
    width: 75%;
    flex-wrap: wrap;
}

.services {
    width: 100%;
    max-width: 142px;
    padding-left: 30px;
}


.txt02 {
    font-size: 30px;
    width: 100%;
    padding-left: 41px;
    line-height: 1.4em;
}

.services_btn {
    width: 30%;
    max-width: 200px;
    padding-right: 30px;
    margin-top: -12px;
}


/*************************** ボックス４ *******************************/

.content4{
display: flex;
justify-content: space-around;
padding-top: 50px;
width: 100%;
}

.group1{
  width: 34%;
}

.group2{
  width: 34%;
}

.group3{
  width: 24%;
}

.group4{
  width: 24%;
}


.content_img{
box-shadow: -3px 3px 8px #AAA;
}

.content_title{
padding-top: 15px;
letter-spacing: -0.1em;
font-weight: 600;
}


/*************************** ボックス５ *******************************/

.space_bottom{
padding-top: 125px;
}

.recruit_space {
    display: flex;
    justify-content: space-between;
    margin-top: -18px;
}

.recruit_txt {
    width: 75%;
    flex-wrap: wrap;
}


.recruit_img {
    width: 100%;
    margin: auto;
    /*max-width: 800px;*/
    display: block;
}

.recruit_btn {
  width: 30%;
  max-width: 160px;
  padding-right: 30px;
  margin-top: 40px;
}

.RECRUIT {
    width: 100%;
    max-width: 130px;
    padding-left: 97px;
}


.txt03 {
    font-size: 12px;
    letter-spacing: inherit;
    width: 100%;
    padding-left: 98px;
    padding-top: 10px;
    line-height: 1.4em;
}



/*************************** ボックス6 *******************************/


.rogo_space {
    padding-top: 120px;
    text-align:center;
}


.rogo_img {
    width: 100%;
    max-width: 250px;
    margin-left: -45px;
}

/*************************** フッター *******************************/

.box7{
  text-align:center;
}

.footer {
    /*display: flex;*/
    display:block;
    justify-content: stretch;
    padding-top: 20px;
    padding-bottom: 40px;
}


.footer_menu {
font-size: 16px;
display: inline-block;
width: 50%;
}

.footer_menu ul {margin: 0 auto;
         padding: 0;
         list-style: none;
         max-width: 1125px;
         width: 100%;
        display: flex;
        justify-content: center;
        margin-bottom:20px;
      　　}

.footer_menu li a {display: block;
           font-size: 100%;
           color: #333;
           text-decoration: none;
           text-align: center;
           font-weight: 300;
         }


.footer_menu li {
        width: 100%;
        max-width: 90px;
 }

.menu01{
border-right: solid 2px #AAA;
margin-left: -15px;
}

.menu02{
border-right: solid 2px #AAA;
}

.copyright {
  /*  width: 50%;*/
    text-align: center;
}











/* ########### 480以下 ########### */
@media (max-width: 480px){



}


/* ########### 768px以下 ############ */
@media (max-width:768px) {

  .box4 .more_btn{
    text-align:center;
    margin-top:10px;
  }

  /*menu*/
  .menu{
      height: 20px;
      position: absolute;
      right: 20px;
      top: 20px;
      width: 30px;
      z-index: 99;
  }
  .menu__line{
      background: #fff;
      display: block;
      height: 2px;
      position: absolute;
      transition:transform .3s;
      width: 100%;
  }
  .menu__line--center{
      top: 9px;
  }
  .menu__line--bottom{
      bottom: 0;
  }
  .menu__line--top.active{
      top: 8px;
      transform: rotate(45deg);
  }
  .menu__line--center.active{
      transform:scaleX(0);
  }
  .menu__line--bottom.active{
      bottom: 10px;
      transform: rotate(135deg);
  }

  /*gnav*/
  .gnav{
      background: rgba(0,0,0,0.8);
      display: none;
      height: 100%;
      position: fixed;
      width: 100%;
      z-index: 98;
  }
  .gnav__wrap{
      align-items:center;
      display: flex;
      height: 100%;
      justify-content: center;
      position: absolute;
      width: 100%;
  }
  .gnav__menu__item{
      margin: 40px 0;
      display: block;
      text-align: center;
  }
  .gnav__menu__item a{
      color: #fff;
      font-size: 2em;
      font-weight: inherit;
      padding: 40px;
      text-decoration: none;
      transition: .5s;
  }
  .gnav__menu__item a:hover{
      color: #666;
  }


.header_menu {
  display: none;
}



.rogo_top {
    width: 100%;
    max-width: 100px;
    position: absolute;
    top: 5%;
    left: 5%;
}

.space_top {
  position: relative;
  padding-top: 80px;
}


.about_group {
    display: flex;
    justify-content: center;
    margin-top: -22px;
    flex-wrap: wrap;
}

.about_txt {
    /*display: flex;*/
    width: 100%;
    flex-wrap: wrap;
}

img.about_title {
    width: 100%;
    /*max-width: 109px;*/
    padding-left: 15px;
    display:none;
}

.btn_img {
    position: absolute;
    top: 133%;
    width: 100%;
    right: 5%;
    align-items: center;
    max-width: 200px;
}

.txt01{
  display: none;
}

.txt001 {
    display: block;
    padding-left: 15px;
    font-size: 95%;
    padding-top: 10px;
    width: 95%;
    line-height: 1.2em;
}


.more_btn {
    width: 100%;
      /*max-width: 200px;*/
    margin-top: 0px;
    display: inline-block;
    padding-right: 0;
    padding-top: 15px;
    text-align:center;
}



.space {
    padding-top: 80px;
}

.services_group {
    justify-content: center;
    flex-wrap: wrap;
}

.services {
    padding-left: 20px;
}


.txt02 {
    display: block;
    padding-left: 30px;
    width: 95%;
}

.services_txt {
    width: 100%;
}


.content4 {
    display: flex;
    justify-content: space-around;
    padding-top: 80px;
    width: 90%;
    flex-wrap: wrap;
    margin: 0 auto;
}

.group1 {
    width: 48%;
}

.group2 {
    width: 48%;
}

.group3 {
    width: 48%;
    padding-top: 20px;
}

.group4 {
    width: 48%;
    padding-top: 20px;
}

.space_bottom {
    padding-top: 50px;
}

.recruit_space {
    justify-content: center;
    flex-wrap: wrap;
}

.recruit_txt {
    width: 100%;
}


.RECRUIT {
    padding-left: 20px;
}

.recruit_btn {
    width: 100%;
    max-width: 160px;
    margin-top: 0px;
    display: inline-block;
    padding-right: 0;
    padding-top: 15px;
}

.txt03 {
    font-size: 85%;
    display: block;
    padding-left: 24px;
    width: 95%;
}


.rogo_img {
    width: 100%;
    max-width: 200px;
    margin-left: -20px;
    margin-bottom: -15px;
}

.footer_menu {
    font-size: 16px;
    display: inline-block;
    width: 100%;
    padding-left: 15px;
}

.footer {
    display: flex;
    justify-content: center;
    padding-top: 20px;
    padding-bottom: 40px;
    flex-wrap: wrap;
}

.copyright {
    width: 100%;
    text-align: center;
    padding-top: 25px;
    font-size: 13px;
}

.rogo_space {
    padding-top: 30px;
}


}


/* ########### 769px以上1023px以下 ########### */
@media (min-width: 769px) and (max-width:1100px){
  /* 全体の横幅を固定 */
  .box1,.boxA,.copyright,{
                         margin-left: auto;
                         margin-right: auto;
                         }

  .box2,.box3,.box4,.box5,.boxC,.boxB,.boxD,.ggmap
                                  {
                                  width: 650px;
                                  margin-left: auto;
                                  margin-right: auto;
                      }

  .box6,.box7{
    width: 700px;
    margin-left: auto;
    margin-right: auto;
  }





.about_group {
    display: flex;
    margin-top: -22px;
}

.about_txt {
  /*  display: flex;*/
    width: 70%;
    flex-wrap: wrap;
}

img.about_title {
    /*max-width: 109px;*/
    width: 100%;
    padding-left: 15px;
}


.txt01{
  display: none;
}

.txt001 {
  width: 100%;
  display: block;
  padding-top: 5px;
  padding-left: 22px;
}

.btn_img {
    position: absolute;
    bottom: 100px;
    right: 15px;
    top: 293px;
    width: 200px;
}

.more_btn {
    width: 35%;
    max-width: 200px;
    padding-right: 15px;
}



.txt02 {
    font-size: 28px;
    padding-left: 28px;
}

.btn_img02 {
    position: absolute;
    bottom: 100px;
    right: 15px;
    top: 353px;
    width: 200px;
}

.services_txt {
    width: 70%;
}

.services {
    padding-left: 15px;
}


.content4 {
    display: flex;
    justify-content: space-between;
    padding-top: 150px;
    width: 100%;
    flex-wrap: wrap;
}

.group1 {
    width: 48%;
}

.group2 {
    width: 48%;
}

.group3 {
    width: 48%;
    padding-top: 30px;
}

.group4 {
    width: 48%;
    padding-top: 30px;
}



.space_bottom {
    position: relative;
    padding-top: 100px;
}

.recruit_img {
    width: 100%;
    margin: auto;
    max-width: 598px;
    display: block;
}

.recruit_btn {
    max-width: 200px;
    padding-right: 5px;
    margin-top: -12px;
    width: 35%;
}

.recruit_txt {
    width: 70%;
}

.RECRUIT {
    padding-left: 15px;
}


.txt03 {
    font-size: 85%;
    padding-top: 5px;
    padding-left: 22px;
}

}







/* ########### 1024px 以上 ########### */
@media (min-width: 1100px) {

    /* 全体の横幅を固定 */
    .box1,.boxA,.copyright,{
                           margin-left: auto;
                           margin-right: auto;
                           }

    .box2,.box3,.box4,.box5,.box6,.box7,.boxC,.boxB,.boxD,.ggmap
                                    {
                                    width: 1024px;
                                    margin-left: auto;
                                    margin-right: auto;
                                    }



}
