.box_sp1200, .box_sp { display: none; }

@media screen and (max-width: 768px) { p { margin-bottom: 15px; }
  #wrapper { min-width: 0; }
  .sp { display: block; }
  .pc { display: none; }
  #totop { width: 55px; right: 10px; bottom: 90px; }
  .image_l, .image_r { margin: 0 0px 25px 0; text-align: center; }
  .topic_path { display: none; }
  .table-wrapper { width: 100%; overflow: auto; }
  .table-wrapper table { width: 768px; }
  .tbl_wrap_text { font-size: 12px; display: block; margin: 0; margin-top: 5px; line-height: 18px; }
  table th, table td { padding: 10px 10px 7px; }
  .tbl_1col > tbody > tr > th, .tbl_1col > tbody > tr > td { display: block; box-sizing: border-box; width: 100% !important; }
  .tbl_1col > tbody > tr > td:not(:first-child) { border-top: none !important; }
  .tbl_1col > tbody > tr:not(:first-child) > th, .tbl_1col > tbody > tr:not(:first-child) > td { border-top: none; }
  table.tbl_style1 > tbody > tr > th:first-child, table.tbl_style1 > tbody > tr > td:first-child { border-left: none !important; }
  table.tbl_style1 > tbody > tr > th:last-child, table.tbl_style1 > tbody > tr > td:last-child { border-right: none !important; }
  /*==========================================================================*/
  /*                               Gnavi                                      */
  /*==========================================================================*/
  .btn_menu { margin: 0; position: fixed; top: 7px; right: 5px; z-index: 90; width: 36px; height: 36px; background: #019646; }
  .btn_menu a.icon { display: block; width: 20px; height: 26px; position: relative; top: 50%; transform: translateY(-50%); margin: 0 auto; color: transparent; }
  .btn_menu a.icon:before, .btn_menu a.icon span:before, .btn_menu a.icon span:after { content: ""; position: absolute; width: 100%; height: 1px; transition: all 0.15s ease; left: auto; right: 0; background: #fff; }
  .btn_menu a.icon:before { top: 50%; transform: translateY(-50%); }
  .btn_menu a.icon span:before { top: 5px; }
  .btn_menu a.icon span:after { bottom: 5px; }
  .btn_menu.active a.icon:before { width: 50%; }
  .btn_menu.active a.icon span:after { width: 75%; }
  ul.menu { padding-bottom: 80px; }
  ul.menu > li { border-bottom: solid 1px rgba(255, 255, 255, 0.1); }
  ul.menu > li > a, ul.menu > li > span { display: block; position: relative; padding: 15px 20px; color: #fff; }
  ul.menu > li > a br, ul.menu > li > span br { display: none; }
  ul.menu > li > span:before, ul.menu > li > span:after { content: ""; position: absolute; background: rgba(255, 255, 255, 0.4); top: 50%; }
  ul.menu > li > span:before { width: 11px; height: 1px; margin-top: 0px; right: 20px; }
  ul.menu > li > span:after { width: 1px; height: 11px; right: 25px; margin-top: -5px; transition: all 0.2s; opacity: 1; }
  ul.menu > li.active span:after { transform: rotate(90deg); opacity: 0; }
  ul.menu > li.active .sub { height: auto; opacity: 1; }
  ul.menu > li a:before { content: ""; position: absolute; padding: 3px; border-right: 1px solid #fff; border-bottom: solid 1px #fff; right: 23px; top: 50%; transform: rotate(-45deg) skew(-12deg, -12deg); margin-top: -3px; opacity: 0.7; }
  ul.menu .sub { position: relative; width: 100%; overflow: hidden; height: 0; background: rgba(0, 0, 0, 0.1); transition: all 0.3s; }
  ul.menu .sub li { border-top: solid 1px rgba(255, 255, 255, 0.1); }
  ul.menu .sub li a { padding: 12px 20px 12px 35px; box-sizing: border-box; font-size: 12px; color: rgba(255, 255, 255, 0.9); position: relative; }
  #gnavi { position: fixed; top: 50px; right: -100%; bottom: 0; width: 100%; z-index: 101; background: rgba(40, 123, 68, 0.98); transition: all 0.3s; }
  #gnavi .scroll { height: 100%; overflow: scroll; }
  #gnavi.open { right: 0; }
  /*==========================================================================*/
  /*                               Header                                     */
  /*==========================================================================*/
  header { padding-bottom: 0; height: 90px; }
  header .head_ct { padding: 5px 15px 10px; }
  header .head_r { display: none; }
  header .head_l h1 { line-height: 16px; }
  header .head_l #logo img { width: 180px; margin-right: 5px; }
  header .head_l #logo a { font-size: 18px; }
  header .head_r { padding-top: 20px; }
  header .head_r .map { width: 30px; }
  /*==========================================================================*/
  /*                               Footer                                     */
  /*==========================================================================*/
  /*==========================================================================*/
  /*                             Bottom Bar                                 	*/
  /*==========================================================================*/

  .bottom_bar {
    width: 100%;
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 8;
    transition: all ease 0.5s;
  }
  .bottom_bar ul {
    display: flex;
    height: 85px;
    background: #a3bd99;
  }
  .bottom_bar li {
    width: 33.3%;
    border-left: 1px #fff solid;
  }
  .bottom_bar li:first-child {
    border-left: none;
  }
  .bottom_bar li:last-child {
    width: 33.4%;
  }
  .bottom_bar li a {
    display: block;
    color: #fff;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.2;
    text-align: center;
    padding-top: 45px;
  }
  .bottom_bar li:nth-child(1) a {
    background: url(../images/ic_line.svg) no-repeat center 12px;
    background-size: 24px;
  }
  .bottom_bar li:nth-child(2) a {
    background: url(../images/ic_plane_w.png) no-repeat center 12px;
    background-size: 24px;
  }
  .bottom_bar li:nth-child(3) a {
    background: url(../images/ic_tel_w.svg) no-repeat center 14px;
    background-size: 20px;
  }
  
  
  /*==========================================================================*/
  /*                             Index                                     */
  /*==========================================================================*/
  .box00 { min-height: 370px; background-attachment: inherit; background-image: url(../images/main1-sp.jpg); background-position: center top; background-color: #000; background-size: 100% auto; height: calc(79vw + 150px); margin-top: 90px; }
  .box00 .box00_ct { padding-top: 2%; }
  .box00 .box00_txt { bottom: 40px; }
  .box00 .box00_txt .big { font-size: 30px; line-height: 45px; }
  .box00 .box00_txt .big .pc_only { display: none; }
  .box00 .box00_anchor { font-size: 24px; width: 50px; left: calc(50% - 25px); bottom: -50px; }
  .box00 .box00_anchor img { margin-left: 0px; }
  .box00 .box00_img { max-width: 280px; margin-bottom: 0px; }
  .box01 { padding: 70px 10px 15px; }
  .box01 .box01_ct .big.top { font-size: 15px; line-height: 22px; margin-bottom: 20px; }
  .box01 .box01_ct .big.bot { font-size: 30px; line-height: 45px; letter-spacing: 1px; }
  .box02 { padding: 30px 30px 67px; }
  .box02 h3 { font-size: 22px; margin-bottom: 50px; line-height: 30px; }
  .box02 .inner::before { width: 102px; height: 38px; top: -25px; left: calc(50% - 51px); }
  .box02 .box02_ct { padding: 37px 30px 35px; }
  .box02 .box02_ct::before { width: 60px; height: 87px; bottom: -20px; left: -18px; }
  .box02 .box02_ct::after { right: -18px; bottom: -20px; width: 54px; height: 77.3px; }
  .box02 .box02_ct ul li { font-size: 18px; letter-spacing: 0px; line-height: 25px; margin-bottom: 10px; }
  .box02 .box02_ct ul li .sub, .box02 .box02_ct ul li .sm { padding-left: 83px; }
　.box02 .box02_ct ul { column-count: 1; }
  .box02 .box02_wd p { font-size: 16px;  margin: 10px;}
  .box03 .box03_ct { flex-wrap: wrap; }
  .box04 { padding-left: 10px; padding-right: 10px; }
  .box04 .box_point { margin: 30px 0px; }
  .box04 .box04_ct { margin-bottom: 30px; }
  .box04 .box04_ct h3 { font-size: 27px; line-height: 40px; margin-bottom: 30px; }
  .box04 .box04_ct h3::before { width: 147px; height: 78px; margin-bottom: 20px; }
  .box04 .box2col { flex-wrap: wrap; }
  .box04 .box2col .col { width: 100%; }
  .box04 .box2col .col1 { padding-left: 0px; margin-bottom: 20px; }
  .box04 .box2col .col2 ul { width: 440px; margin: auto; }
  .box04 .box2col .col2 li { padding-left: 17px; font-size: 15px; line-height: 38px; }
  .box04 .box2col .col2 li::before { width: 13px; height: 13px; left: 0px; top: 13px; }
  .box05 .box05_ct { flex-wrap: wrap; }
  .box06 { padding: 29px 10px 27px; }
  .box06 h3 { font-size: 21px; margin-bottom: 16px; line-height: 32px; }
  .box07 { padding-left: 10px; padding-right: 10px; }
  .box07 .box07_ct1 { flex-wrap: wrap; padding: 10px; margin: 30px auto; }
  .box07 .box07_ct1 .content { margin-top: 20px; text-align: center; }
  .box07 .box07_ct1 .content .title { font-size: 21px; line-height: 32px; }
  .box07 .box07_ct1 .content .sub { font-size: 16px; line-height: 29px; margin-bottom: 9px; }
  .box08 { padding-left: 10px; padding-right: 10px; margin-bottom: 75px; }
  .box08 h3 { font-size: 24px; line-height: 32px; }
  .box08 .bnr01 { padding-left: 10px; padding-right: 10px; }
  .box08 .box08_ct1 { margin-bottom: 30px; }
  .box08 .box08_ct2 h3 { margin-bottom: 30px; }
  .box10 { margin-bottom: 60px; }
  .box10 .box10_ct { flex-wrap: wrap; }
  .box09 { padding: 30px 0 30px; }
  .box09 .inner { padding-left: 10px; padding-right: 10px; }
  .box09 .box09_ct { width: 100%; flex-direction: column; padding: 0; margin-bottom: 30px; }
  .box09 .box09_ct::before, .box09 .box09_ct::after { display: none; }
  .box09 .box09_map { height: 199px; }
  .box09 .ttl { padding: 0 0 15px; margin: 0 auto 15px; width: 150px; text-align: center; }
  .box09 .ttl::before, .box09 .ttl::after { position: absolute; top: 0; left: -52px; content: ''; width: 52px; height: 52px; background: url("../images/box09_ic_1.png") center no-repeat; background-size: cover; }
  .box09 .ttl::after { background: url("../images/box09_ic_2.png") center no-repeat; background-size: cover; left: inherit; right: -52px; }
  .box09 .ttl h3 { width: 100%; align-items: center; }
  .box09 .ttl h3::before { width: 50px; height: 1px; top: inherit; right: calc(50% - 25px); bottom: -15px; } }

@media screen and (max-width: 768px) and (max-width: 480px) { .box00 { height: calc(79vw + 120px); }
  .box00 .box00_img { max-width: 240px; }
  .box00 .box00_txt .big { font-size: 16px; line-height: 26px; }
  .box01 .box01_ct .big.top { font-size: 14px; }
  .box01 .box01_ct .big.bot { font-size: 20px; line-height: 30px; }
  .box02 { padding: 30px 20px 67px; }
  .box02 h3 { font-size: 18px; }
  .box02 .box02_ct { padding: 20px 20px 35px; }
  .box02 .box02_ct ul li { font-size: 16px; margin-bottom: 10px; }
  .box02 .box02_ct ul li .tt { display: block; }
  .box02 .box02_ct ul li .sm, .box02 .box02_ct ul li .sub { padding-left: 0px; }
  .box02 .box02_ct ul li .sm { font-size: 12px; }
  .box02 .box02_wd p .sm { font-size: 12px; }
  .box02 .box02_ct ul { column-count: 1; }
  .box04 .box2col .col2 li { font-size: 14px; line-height: 25px; margin-bottom: 5px; }
  .box04 .box2col .col2 li::before { top: 6px; }
  .box04 .box04_ct { margin-bottom: 30px; }
  .box04 .box04_ct h3 { font-size: 18px; line-height: 32px; letter-spacing: 0; }
  .box04 .box04_ct h3::before { width: 98px; height: 52px; }
  .box07 .box07_ct1 .content .title { font-size: 18px; }
  .box07 .box07_ct1 .content .sub { font-size: 14px; }
  .box08 h3 { font-size: 20px; }
  .box08 .box08_ct1 span { font-size: 16px; letter-spacing: 0px; }
  .box08 .box08_ct1 a { font-size: 28px; } }

@media screen and (max-width: 768px) { .wow { visibility: visible !important; -webkit-animation: none !important; -moz-animation: none !important; -o-animation: none !important; -ms-animation: none !important; animation: none !important; }
  /*==========================================================================*/
  /*                             under                                     */
  /*==========================================================================*/
  .under .mainvisual .inner { height: 200px; }
  .under .mainvisual h2 { font-size: 24px; line-height: 34px; padding: 0 10px; top: 50%; }
  .under section { padding: 30px 0; }
  .under section .inner { padding: 0 10px; }
  .under .box_h4 { margin-top: 30px; }
  .under .box_h5 { margin-top: 25px; }
  .under h3 { font-size: 22px; margin-bottom: 15px; line-height: 34px; padding-bottom: 10px; letter-spacing: 1px; }
  .under h3:before { width: 50px; }
  .under h4 { font-size: 20px; margin-bottom: 15px; line-height: 30px; }
  .under h5 { font-size: 18px; line-height: 26px; }
  .under h6 { font-size: 16px; line-height: 22px; padding: 10px 10px 8px; }
  .pickup { padding: 30px 0; }
  .pickup .lable_pickup { font-size: 28px; }
  .pickup .ttl_pickup { font-size: 24px; }
  .pickup p { margin-bottom: 15px; }
  .pickup p:last-child { margin-bottom: 0; }
  /*==========================================================================*/
  /*                             ON                                 	*/
  /*==========================================================================*/
  /*==========================================================================*/
  /*                             blog                                     	*/
  /*==========================================================================*/
  .category_list { margin: 0px auto 0; }
  .category_list li { width: 100%; margin-right: 0px; }
  .blog_items .item { margin-top: 30px; }
  .blog_items .item a { padding: 10px; }
  .blog_items .item .thumb { width: 100%; height: 40vw; max-height: 300px; margin-bottom: 10px; }
  .blog_items .item .thumb img { height: 40vw; max-height: 300px; }
  .blog_items .item .box_text { width: 100%; }
  .blog_items .item .title { font-size: 16px; line-height: 24px; margin-bottom: 5px; }
  .blog_img img { width: auto; max-width: 100%; max-height: 300px; }
  .blog_btn_bot { margin-top: 30px; }
  .blog_btn_bot a { width: 160px; height: 40px; font-size: 16px; }
  /*==========================================================================*/
  /*                             case                                     	*/
  /*==========================================================================*/
  #property .block_case { padding-top: 40px; }
  #property .block_case h4 { margin-bottom: 0; }
  #property .category_list li { width: calc(100% / 2 - 10px); margin-right: 20px; }
  #property .category_list li:nth-child(2n+0) { margin-right: 0; }
  #property .list_items { margin-bottom: 40px; }
  #property .list_items .item { width: calc(100% / 2 - 10px); margin-right: 20px; }
  #property .list_items .item:before { display: none; }
  #property .list_items .item:nth-child(2n+0) { margin-right: 0; }
  #property .list_items .item .thumb { max-height: 180px; height: 30vw; }
  #property .list_items .item .thumb img { height: auto; max-height: 100%; }
  #property #box_thumbs { margin-top: 30px; }
  #property #box_thumbs .thumb_show { width: 100%; height: auto; }
  #property .thumb_show ul { width: 100%; margin: 0 auto; background: none; height: auto; }
  #property .thumb_show .slick-slide { height: 70vw; }
  #property .thumb_list ul { padding: 0 25px 0 20px; }
  #property .thumb_list .slick-slide { height: 90px; margin: 0 5px; }
  #property .case_tbl { margin-top: 20px; }
  #property .case_tbl th { width: 120px; padding: 5px 10px 2px; }
  #property .case_tbl td { padding: 8px 10px 3px; }
  #property .box_map { margin-top: 20px; }
  #property .box_map iframe { margin-top: 20px; height: 50vw; }
  .btn_case_detail { padding-top: 20px; }
  .paging_detail a { padding: 5px 5px; font-size: 12px; width: 70px; } }

/*==========================================================================*/
/*                             index page                                  	*/
/*==========================================================================*/
.sp_480 { display: none; }

@media screen and (max-width: 480px) { .sp_480 { display: block; } }

@media screen and (max-width: 380px) { header .head_l #logo a { font-size: 4vw; } }

@media screen and (max-width: 320px) { .sp_320 { display: block; } }

/*# sourceMappingURL=responsive.css.map */
