@charset "UTF-8";

/*--------------------------------------------------------
解像度1245px以下
--------------------------------------------------------*/
@media
only screen and (max-width : 1245px){



  .inner,
  .inner2,
  .inner3,
  .inner4,
  .inner5,
  .main-image-in,
  .main-image-in-text,
  .main-body-in{
    width: 98%;
    margin: auto;
  }

  .site-header-in,
  .site-footer-in,
  .breadcrumb-in{
    width: 98%;
    margin: auto;
  }


  .area-logo{
    padding-left: 12px;
  }




}/*解像度1245px以下*/


/*--------------------------------------------------------
解像度1120px以下
--------------------------------------------------------*/
@media
only screen and (max-width : 1120px){




/* -------------------- ヘッダー -------------------- */



  .global-nav .menu-item a {
    font-size: 16px;
  }

  
}/*解像度1120px以下*/


/*--------------------------------------------------------
解像度1080px以上
--------------------------------------------------------*/
@media
only screen and (min-width : 1080px){

  #navbtn {
    display: none;
  }

  .global-nav {
    display: block !important;
  }

}/*解像度1080px以上*/

/*--------------------------------------------------------
解像度1080px以下
--------------------------------------------------------*/
@media
only screen and (max-width : 1080px){

  .global-nav ul{
    margin-bottom: 20px;
  }

  .global-nav .menu-item ul {
    display: none;
  }

  .main-body {
    padding: 0 0 60px;
  }


  .area-nav {
    float: none;
    width: 100%;
  }

  .site-header-in .clearfix {
    padding: 25px 0;
  }


  .logo a{
    display: inline-block;
  }


  #navbtn {
    display: block;
  }

  .global-nav {
    display: none;
  }



  .global-nav {
    display: none;
    width: 100%;
    border-top: solid 1px #ccc;
    background-color: rgba(255, 255, 255, 0.9);
    margin: 0;
  }

  .global-nav ul{
    display: block;
  }



  .global-nav .menu-item {
    float: none;
    width: 100%;
    margin: 0;
    border-bottom: solid 1px #ccc;
    box-sizing: border-box;
    justify-content: normal;
  }


  .global-nav .menu-item:not(:first-child) {
    border-left: none;
  }


  .global-nav .menu-item a {
    text-align: left;
    padding: 20px 4px 19px 25px;
  }


/*3カラムレイアウト*/
#main,
#side,
#side2,
.main-content{
  float: none;
  width: 100%;
}



#area-page01,
#area-page02,
#area-page03,
#area-strength01,
#area-strength02,
#area-strength03,
#area-strength04,
#area-flow01,
#area-flow02,
#area-service01,
#area-service02,
#area-service03,
#area-service04,
#area-service05,
#area-service06,
#area-fee01,
#area-fee02,
#area-qa01,
#area-company01,
#area-company02,
#area-blog01{
  padding: 60px 0 60px;
}

  .single #area-blog01{
    padding: 30px 0;
  }


  .pickup-list .thumb{
    float: left;
    width: 20%;
  }
  .pickup-list li p{
    float: right;
    width: 77%;
    font-size: 17px;
  }



  .content-catchC {
    font-size: 23px;
    line-height: 2.2;
    letter-spacing: 4px;
    margin: 0 0 30px;
  }

  .message{
    font-size: 20px;
    margin: -20px 0 40px;
  }


  .blog .main-body h2,
  .archive .main-body h2{
    font-size: 22px;
    margin-bottom: 55px;
  }



  .area-info {
    float: none;
    width: 100%;
    margin-bottom: 30px;
  }
  .area-map {
    float: none;
    width: 100%;
  }
  .ggmap2 {
    padding-bottom: 32%;
  }





  .big1{
    font-size: 20px;
  }

  .attention{
    padding: 20px 30px;
  }







}/*解像度1080px以下*/

/*--------------------------------------------------------
解像度850px以下
--------------------------------------------------------*/
@media
only screen and (max-width : 850px){

  .column2-inner {
    width: 95%;
    padding: 35px;
  }
  .main-body {
    padding: 0 0 50px;
  }


  .float-box1 .left-item{
    float: none;
    width: 100%;
    margin-bottom: 25px;
  }
  .float-box1 .right-item{
    float: none;
    width: 100%;

  }
  .float-box1 .left-item img{
    width: 30%;
  }

  .design-dl2 dt {
    float: none;
    width: 100%;
  }
  .design-dl2 dd {
    float: none;
    width: 100%;

  }
  .design-dl2 dd:not(:last-child){
    margin: 0 0 25px;
  }


  .image03 {
    margin: 25px 0;
  }



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


}/*解像度850px以下*/


/*--------------------------------------------------------
解像度775px以下
--------------------------------------------------------*/
@media
only screen and (max-width : 775px){

  .main-body {
    padding: 0 0 40px;
  }

  .column2-inner {
    width: 96%;
    padding: 25px;
  }



  .page-title{
    font-size: 22px;
  }


  .blog .main-body h2,
  .archive .main-body h2{
    font-size: 20px;
    margin-bottom: 50px;
  }


  .content-titleA {
    font-size: 22px;
  }
  .content-titleB{
    font-size: 22px;
  }
  .content-titleC{
    font-size: 22px;
    margin: 0 0 22px;
  }

  .content-catchA{
    font-size: 22px;
  }



  .bg-blue {
    padding: 45px 35px;
  }

  .bg-blue2 {
    border: solid 10px #F2F9FA;
    padding: 45px 35px;
  }

  .bg-blue3 {
    padding: 50px 35px;
  }

  .content-contact {
    margin-bottom: 25px;
  }
  .content-contact li a {
    font-size: 16px;
    padding: 16px 10px;
  }



  .footer-contents h2{
    font-size: 20px;
  }






  .float-box7 .left-item{
    float: none;
    width: 100%;
    margin: 0 0 25px;
  }
  .float-box7 .right-item{
    float: none;
    width: 100%;
  }
  .float-box7 .left-item img{
    width: 100%;
  }

  .float-box8 .left-item{
    float: none;
    width: 100%;
  }
  .float-box8 .right-item{
    float: none;
    width: 100%;
    margin: 0 0 25px;
  }
  .float-box8 .right-item img{
    width: 100%;
  }


  .pc2{
    display: none;
  }
  .sp2{
    display: block;
  }






  .article-box > div {
    padding: 0 15px;
  }







  .big1,
  .big2,
  .big3,
  .big4{
    font-size: 17px;
  }

  .big5{
    font-size: 19px;
  }



}/*解像度775px以下*/


/*--------------------------------------------------------
解像度767px以上
--------------------------------------------------------*/
@media
only screen and (min-width : 767px){


/* -------------------- レイアウト -------------------- */

  /* コンテンツとサイドバーを横に並べる設定 */
  .main-body::after {
    content: "";
    display: block;
    clear: both;
  }

  /* 中身の最大幅を指定する */
  #main {
    box-sizing: border-box;
  }





}/*解像度767px以上*/

/*--------------------------------------------------------
解像度767px以下
--------------------------------------------------------*/
@media
only screen and (max-width : 767px){

  .main-body {
    padding: 0;
  }

  .column2-inner {
    width: 100%;
    padding: 32px 25px;
  }



  .global-nav .menu-item a {
    font-size: 14px;
  }





/* -------------------- 見出しの大きさ -------------------- */
  .post-title{
    margin: 4px 0 12px;
    font-size: 19px;
  }

  .single h1 {
    font-size: 23px;
  }


  .content-catchC {
    font-size: 20px;
  }




.flow-list li{
  padding: 20px;
  margin-bottom: 20px;
}

.flow-list .flow-list_item span{
  padding: 3px 8px;
  margin: 0 9px 0 0;
}






  .area-access{
    float: none;
    width: 100%;
    margin-bottom: 40px;
  }

  .area-sns{
    float: none;
    width: 100%;
  }


  .footer-links_item{
    width: 100%;
    margin-bottom: 20px;
  }
  .footer-links_item:not(:first-child) {
    margin-left: 0;
  }




  .voice-list1 h3,
  .voice-list2 h3 {
    font-size: 18px;
  }


  .voice-list2 > li {
    margin: 0 0 25px;
    padding: 32px;
  }

  .voice-list2 .voice-img {
    float: none;
    width: 100%;
    margin: 0 0 20px;
  }
  .voice-list2 .voice-img::after {
    content: '';
    display: block;
    clear: both;
  }
  .voice-list2 .voice-img img {
    float: left;
    width: 170px;
    padding-right: 40px;
  }
  .voice-list2 .voice-img .profile {
    float: right;
    width: calc(100% - 170px);
  }


  .voice-list2 .voice-text {
    float: none;
    width: 100%;
  }

  .voice-list2 .profile p{
    margin: 0;
  }



  .banner-list li {
    width: 49%;
  }
  .banner-list li:not(:nth-child(3n)) {
    margin-right: 0;
  }
  .banner-list li:nth-child(even) {
    margin-left: 2%;
  }




  .design-frame1 .left-item {
    float: none;
    width: 100%;
    margin: 0 0 20px;
  }
  .design-frame1 .right-item {
    float: none;
    width: 100%;
  }






  .float-box6 .left-item {
    float: none;
    width: 100%;
    margin: 0 0 15px;
  }
  .float-box6 .right-item {
    float: none;
    width: 100%;
  }







.sns li {
  width: 32.66666%;
  margin: 0 0 1%;
}

.sns li:not(:last-child) {
  margin-right: 0%;
}

.sns li:not(:nth-child(3n)) {
  margin-right: 1%;
}



  .pickup-list .thumb{
    width: 25%;
  }
  .pickup-list li p{
    width: 72%;
  }

  .textalign-center-responsive{
    text-align: left;
  }

  .big1{
    font-size: 17px;
  }
  .big4 {
    font-size: 17px;
  }
  .big5{
    font-size: 17px;
  }
  .attention{
    padding: 20px 20px;
  }


  .max767-none{
    display: none;
  }


}/*解像度767px以下*/


/*--------------------------------------------------------
解像度650px以下
--------------------------------------------------------*/
@media
only screen and (max-width : 650px){

  .area-logo,
  .address {
    display: block;
    width: auto;
    text-align: center;
    margin: 0;
  }
  .area-nav {
    display: none;
  }

  .point-list1 li,
  .point-list2 li{
    padding: 20px 0;
  }
  .point-list1 li .no,
  .point-list2 li .no{
    top: 15px;
    left: 0px;
    width: 70px;
  }


  .point-list1 li h3,
  .point-list2 li h3{
    font-size: 18px;
    padding: 0 0 0 90px;
    margin-bottom: 17px;
  }
  .point-list1 li h3 span,
  .point-list2 li h3 span{
    font-size: 22px;
  }


  .article-box02 ul li {
    float: left;
    width: 49%;
    margin-bottom: 16px;
  }
  .article-box02 ul li:not(:nth-child(3n)) {
    margin-right: 0;
  }
  .article-box02 ul li:not(:nth-child(2n)) {
    margin-right: 2%;
  }



  .float-box3 .left-item{
    float: none;
    text-align: center;
    width: 100%;
  }

  .float-box3 .right-item{
    float: none;
    width: 100%;
  }

  .float-box3 .profile p {
    font-size: 17px;
    padding: 10px;
    margin: 0 0 14px;
    color: #fff;
    background-color: #FF7F59;
  }

  .float-box3 .profile ul {
    font-weight: bold;
    margin: 0 0 20px;
  }

  .float-box4 .left-item,
  .float-box4 .right-item,
  .float-box9 .left-item,
  .float-box9 .right-item{
    float: left;
    width: 48%;
  }

  .float-box5 .item1,
  .float-box5 .item2 {
    margin-right: 0;
    margin-bottom: 20px;
  }

  .float-box5 .item1,
  .float-box5 .item2,
  .float-box5 .item3 {
    float: none;
    width: 100%;
  }







  .table2 thead th,
  .table2 thead td {
    padding: 10px 10px;
  }
  .table2 tbody th,
  .table2 tbody td {
    padding: 12px 10px;
  }



  .logo2 {
    float: none;
    margin: 0 0 15px;
  }

  .info-list li{
    display: inline-block;
  }

  .bg01{
    padding: 30px 20px;
  }



}/*解像度650px以下*/

/*--------------------------------------------------------
解像度580px以下
--------------------------------------------------------*/
@media
only screen and (max-width : 580px){

  .column2-inner {
    padding: 30px 20px;
  }






  .page-title{
    font-size: 21px;
    padding: 20px 18px 18px 42px;
  }
  .page-title::after {
    width: 5px;
  }


  .content-titleA{
    font-size: 20px;
  }
  .content-titleB{
    font-size: 19px;
  }
  .content-titleC{
    font-size: 19px;
    margin: 0 0 16px;
  }

  .content-catchA{
    font-size: 19px;
    margin: 0 0 35px;
  }
  .content-catchA:after{
    width: 110px;
    height: 62px;
    top: 17px;
  }

  .content-catchC{
    font-size: 18px;
    line-height: 2;
    letter-spacing: 3px;
  }
  .content-catchC span {
    font-size: 27px;
  }

  .bg-blue3 .content-titleA {
    margin: 0 0 35px;
  }

  .service_item {
    padding: 25px 30px;
    border: solid 2px #ddd;
    margin-bottom: 15px;
  }
  .service .service_item h3 {
    font-size: 18px;
    padding-left: 55px;
    margin: 0 0 15px;
  }
  .service .service_item h3:before {
    font-size: 17px;
    top: -1px;
    left: 0;
    width: 40px;
    line-height: 30px;
  }






  .float-box4 .left-item {
    float: none;
    width: 100%;
    margin: 0 0 25px;
  }
  .float-box4 .right-item {
    float: none;
    width: 100%;
  }

  .float-box9 .left-item,
  .float-box9 .right-item {
    float: none;
    width: 100%;
  }



  .image03 .item1,
  .image03 .item2{
    width: 32%;
    margin-right: 2%;
  }
  .image03 .item3{
    width: 32%;
  }




  .bg-blue3 {
    padding: 40px 30px;
  }

  .big2 {
    font-size: 17px;
  }



  .service_img {
    float: none;
    width: 100%;
    border: solid 2px #FF7F59;
    margin: 0 0 16px;
  }
  .service_text {
    float: none;
    width: 100%;
  }


  .catch-area01 img{
    width: 90%;
    margin: 0 5% 30px;
  }
  .catch-area02 img {
    width: 90%;
    margin: 0 5%;
  }
  .catch-area03 img {
    width: 90%;
    margin: 0 8% 42px 2%;
  }


  .point-list1 li h3,
  .point-list2 li h3{
    font-size: 17px;
    padding: 0 0 0 80px;
  }
  .point-list1 li h3 span,
  .point-list2 li h3 span{
    font-size: 20px;
  }

  .point-list1 li .no,
  .point-list2 li .no{
    top: 16px;
    width: 64px;
  }



  p {
    font-size: 15px;
  }

  ol.normal-list1,
  ul.normal-list1{
    font-size: 15px;
    padding: 0 0 0 24px;
    margin: 20px 0;
  }

  .normal-list1 li{
    margin: 0 0 2px;
  }

  .check-list li {
    font-size: 15px;
  }


  .table1 th {
    width: 42%;
  }

  .table1 td {
    width: 58%;
  }


  .pickup-list .thumb{
    width: 30%;
  }
  .pickup-list li p{
    width: 67%;
    font-size: 16px;
  }


#area-page01,
#area-page02,
#area-page03,
#area-strength01,
#area-strength02,
#area-strength03,
#area-strength04,
#area-flow01,
#area-flow02,
#area-service01,
#area-service02,
#area-service03,
#area-service04,
#area-service05,
#area-service06,
#area-fee01,
#area-fee02,
#area-qa01,
#area-company01,
#area-company02,
#area-blog01{
  padding: 50px 0 50px;
}










  .message{
    font-size: 18px;
    margin: -12px 0 30px;
  }


  .area-pagetitle{
    padding: 40px 0;
  }
  .area-pagetitle h1,
  .area-pagetitle p{
    font-size: 18px;
  }


  .blog .main-body h2,
  .archive .main-body h2{
    margin-bottom: 42px;
  }


  .single h1 {
    font-size: 21px;
  }

  .single .main-content h2 {
    font-size: 21px;
    padding: 10px 17px;
    border-left: solid 5px #FF7F59;
  }

  .single .main-content h3 {
    font-size: 20px;
    padding: 7px 8px;
    border-bottom: solid 3px #FF7F59;
  }









  .flow-list .flow-list_item h3{
    font-size: 17px;
    margin: 0 0 10px;
  }
  .flow-list .flow-list_item span {
    font-size: 14px;
    padding: 4px 8px;
  }
  .flow-list li{
    margin-bottom: 10px;
  }


  .home .title_sub,
  .page .title_sub,
  .error404 .title_sub{
    font-size: 13px;
  }

  .post-title{
    margin: 4px 0 5px;
    font-size: 15px;
  }






  table {
    font-size: 14px;
  }





  .content-catchB p {
    font-size: 15px;
  }






  .float-box1 .left-item {
    float: none;
    width: 100%;
    margin: 0 0 12px;
  }
  .float-box1 .right-item {
    float: none;
    width: 100%;
  }






  .contact-btn input{
    font-size: 17px;
  }


  .design-btn a{
    font-size: 16px;
  }









  .ggmap2 {
    padding-bottom: 42%;
  }


  .bg01{
    padding: 30px 10px;
  }

  .big1{
    font-size: 18px;
  }

  .attention{
    padding: 20px 20px;
  }

}/*解像度580px以下*/

/*--------------------------------------------------------
解像度500px以下
--------------------------------------------------------*/
@media
only screen and (max-width : 500px){

  .logo img,
  .logo2 img {
    width: 260px;
  }

  .menu-trigger {
    width: 35px;
    height: 30px;
  }
  .menu-trigger span:nth-of-type(2) {
    top: 13.5px;
  }

  .menu-trigger.active span:nth-of-type(1) {
    -webkit-transform: translateY(13px) rotate(-45deg);
    transform: translateY(13px) rotate(-45deg);
  }
  .menu-trigger.active span:nth-of-type(3) {
    -webkit-transform: translateY(-13px) rotate(45deg);
    transform: translateY(-13px) rotate(45deg);
  }





  .single #area-blog01{
    padding: 20px 0;
  }





  .site-topbar h1,
  .site-topbar p {
    font-size: 13px !important;
  }








  .bg-blue {
    padding: 30px 20px;
  }

  .bg-blue2 {
    border: solid 6px #F2F9FA;
    padding: 30px 20px;
  }

  .bg-blue3 {
    padding: 35px 20px;
  }

  .bg01{
    padding: 20px 7px;
  }

  .service_item{
    width: 100%;
  }
  .service_item:not(:nth-child(2n)){
    margin-right: 0;
  }


  .check-list li .red{
    margin-left: 10px;
  }


  .voice-list1 li {
    padding: 25px 18px 25px 10px;
  }
  .voice-list1 .voice-img {
    width: 80px;
    padding-right: 16px;
  }
  .voice-list1 .voice-text {
    width: calc(100% - 80px);
  }


  .voice-list2 .voice-img img {
    width: 120px;
    padding-right: 20px;
  }
  .voice-list2 .voice-img .profile {
    width: calc(100% - 120px);
  }

  .catch-area01 img{
    width: 100%;
    margin: 0 0 30px;
  }
  .catch-area02 img {
    width: 100%;
    margin: 0;
  }
  .catch-area03 img {
    width: 100%;
    margin: 0 0 35px 0;
  }

  .point-list1 li h3,
  .point-list2 li h3{
    padding: 0 0 0 69px;
    margin-bottom: 14px;
  }
  .point-list1 li h3 span,
  .point-list2 li h3 span{
    font-size: 18px;
  }

  .point-list1 li .no,
  .point-list2 li .no{
    width: 55px;
  }


  .point-list1 li .thumb,
  .point-list2 li .thumb{
    float: none;
    width: 100%;
    margin: 0 0 15px;
  }
  .point-list1 li .text,
  .point-list2 li .text{
    width: 100%;
  }



  .article-box_title {
    font-size: 16px;
  }




  .voice-list1 h3{
    font-size: 16px;
  }



  .table1 th{
    padding: 10px 0;
  }
  .table1 td{
    padding: 10px 20px;
  }


  .footer-contact .inner2{
    width: 93%;
  }





  .table5 th {
    padding: 12px 5px;
    width: 28%;
  }
  .table5 td {
    padding: 12px 5px;
    width: 72%;
  }

  .design-frame1 {
    padding: 23px 14px 20px;
  }
  .design-dl1 dt{
    width: 100%;
    padding-left: 9px;
  }
  .design-dl1 dd{
    width: 100%;
    padding-left: 9px;
    border-bottom: solid 1px #9f7c52;
  }
  .design-dl1 dd:not(:last-child){
    padding-bottom: 2px;
    margin: 0 0 9px;
  }

  .catch-area04 img {
    width: 60%;
    margin: 0 20% 30px;
  }

}/*解像度500px以下*/


/*--------------------------------------------------------
解像度400px以下
--------------------------------------------------------*/
@media
only screen and (max-width : 400px){

  .menu-trigger{
    right: 18px;
  }

  .logo img,
  .logo2 img {
    width: 240px;
  }

  .column2-inner {
    padding: 30px 16px;
  }

  .logo img,
  .logo2 img {
    width: 265px;
  }

  .article-box_date,
  .article-box_title {
    font-size: 15px;
  }

  .voice-list1 h3, .voice-list2 h3 {
    font-size: 15px;
  }
  .voice-list2 .voice-img img {
    width: 110px;
  }
  .voice-list2 .voice-img .profile {
    width: calc(100% - 110px);
  }



  .table1 th {
    width: 48%;
  }

  .table1 td {
    width: 52%;
  }


  .table5 th{
    display: block;
    width: 100%;
    padding: 13px 0 0 3px;
  }
  .table5 td{
    display: block;
    width: 100%;
    padding: 0 0 12px 3px;
  }

  .image03 .item1,
  .image03 .item2{
    width: 32.5%;
    margin-right: 1.25%;
  }
  .image03 .item3{
    width: 32.5%;
  }

.sns li {
  width: 49%;
  margin: 0 0 2%;
}

.sns li:not(:nth-child(3n)) {
  margin-right: 0%;
}

.sns li:nth-child(odd) {
  margin-right: 2%;
}

  .ggmap2 {
    padding-bottom: 45%;
  }




}/*解像度400px以下*/




