@charset "UTF-8";
/*▽▽▽▽▽▽---------- タブレット ----------▽▽▽▽▽▽*/
@media only screen and (max-width: 1400px) {
  /*--------------------- .header ---------------------*/
  .header_inr { padding: 10px; }
  .header_logo {
    height: auto;
    padding: 0;
    width: auto;
  }
  .header_logo img { height: 60px; padding: 5px; width: auto; }
  .head_logo a { display: block; }
  
  /*--------------------- hambur ---------------------*/
  .gnav { display: none; }
  .gnav li { display: none; }
  .hambur { display: block; }
  .drawer-hamburger { padding: 18px 1.2rem 30px !important; width: 3rem !important; }
  .drawer-toggle.drawer-hamburger { top: 14px!important; }
  .drawer-open .drawer-hamburger-icon { background-color: transparent !important; }
  .drawer-hamburger-icon, .drawer-hamburger-icon::after, .drawer-hamburger-icon::before { background-color: #377c48 !important; }
  li.drawer_list {
    border-bottom: 1px solid #d3d3d3;
    font-size: 16px;
    position: relative;
    -webkit-transition: all 0.3s linear;
    -moz-transition: all 0.3s linear;
    -o-transition: all 0.3s linear;
    -ms-transition: all 0.3s linear;
    transition: all 0.3s linear;
  }
  li.drawer_list a {
    display: block;
    padding: 15px 20px;
    -webkit-transition: all 0.3s linear;
    -moz-transition: all 0.3s linear;
    -o-transition: all 0.3s linear;
    -ms-transition: all 0.3s linear;
    transition: all 0.3s linear;
  }
  li.drawer_list a::after {
    content: "\f054";
    color: #377c48;
    font-family: FontAwesome;
    font-size: 1.2rem;
    position: absolute;
    top: 50%;
    right: 15px;
    margin-top: -10px;
  }
  li.drawer_list:hover { background-color: #377c48; }
  li.drawer_list a:hover { color: #fff; opacity: 1 !important; }
  li.drawer_list a:hover::after { color: #fff; }
  li.drawer_list.c_btn { display: block; }
  
  li.drawer_list.in a::after{ content: "\f054"; }
  li.drawer_list.blank a::after{ content: "\f08e"; }
  li.drawer_list a { display: block; }
  
  /*--------------------- .gnav ---------------------*/
  .gnav_bnr { display: none; }
  .gnav_bnr_sp { display: block; overflow: hidden; padding: 20px; }
  .bnr_list01 { float: left; width: 25%; margin-right: 15px; }
  .bnr_list02 { float: left; width: 25%; }
  /*--------------------- .header_entry_btn ---------------------*/
  .header_btn a:hover { color: #377c48; }
  .header_entry_btn {
    border: 1px solid transparent;
    border-radius: 3px;
    padding: 10px;
    top: 15px;
    right: 80px;
    width: 200px;
    -webkit-transition: all 0.3s linear;
    -moz-transition: all 0.3s linear;
    -o-transition: all 0.3s linear;
    -ms-transition: all 0.3s linear;
    transition: all 0.3s linear;
  }
  .header_entry_btn::before {
    display: inline-block;
    height: 2rem;
    margin: 0 10px 2px 0;
    vertical-align: middle;
    width: 2rem;
  }
  .header_entry_btn:hover {
    background-color: #fff;
    border-color: #377c48;
  }
}
@media only screen and (max-width: 1300px) {
  /*--------------------- .section ---------------------*/
  .sec { padding: 0; }
  
  /*--------------------- .inr ---------------------*/
  .inr { padding: 60px 20px 60px; width: 100%; }
  
  
  /*--------------------- clm ---------------------*/
  .clm_box { margin: -10px 0; }
  .clm_box .clm2, .clm_box .clm3, .clm_box .clm4 {
    float: none;
    padding: 10px 0;
    width: 100%;
  }
  .clm_box.sp_clm2 {
    margin: 0 -10px 30px;
    overflow: hidden;
    padding: 20px 20px 0;
  }
  .clm_box.sp_clm2 .clm2, .clm_box.sp_clm2 .clm3, .clm_box.sp_clm2 .clm4 {
    float: left;
    padding: 0 5px;
    width: 50%;
  }
}

@media only screen and (max-width: 1300px) and (min-width: 768px) {
  .mv_ttl { top: 85px; left: 50%; width: 50%; }
  .mv_ttl img { width: 100%; }
}

@media only screen and (max-width: 1000px) {
  /*--------------------- .flex_box ---------------------*/
  .flex_box { flex-wrap: wrap; }
  
}

/*▽▽▽▽▽▽---------- SP ----------▽▽▽▽▽▽*/
@media only screen and (max-width: 767px) {
  .mv_slider { margin-top: 59px !important; }
  
  /*--------------------- .header ---------------------*/
  .header_inr { padding: 5px; }
  .header_logo img { height: 45px; width: auto; }
  
  .drawer-toggle.drawer-hamburger { top: 1px!important; }
  
  
  /*--------------------- .gnav ---------------------*/
  .gnav_bnr_sp {
    margin: 0 -15px;
    overflow: hidden;
    padding: 20px;
  }
  .gnav_bnr_sp li {
    float: left;
    line-height: 0;
    margin: 0;
    padding: 0 15px;
    width: 50%;
  }
  /*--------------------- .header_entry_btn ---------------------*/
  .header_entry_btn { display: none; }
  /*--------------------- .entry_btn_sp ---------------------*/
  .entry_btn_sp {
    background-color: #377c48;
    border: 1px solid transparent;
    display: block;
    -webkit-transition: all 0.3s linear;
    -moz-transition: all 0.3s linear;
    -o-transition: all 0.3s linear;
    -ms-transition: all 0.3s linear;
    transition: all 0.3s linear;
    position: fixed;
    bottom: 0;
    width: 100%;
  }
  .entry_btn_sp a {
    color: #fff;
    display: block;
    padding: 10px;
    text-align: center;
  }
  .entry_btn_sp a::before {
    background: url("/img/kaigo/fresh/cmn/cmn_img/entry_icon.png") no-repeat;
    background-size: contain;
    content: "";
    display: inline-block;
    height: 2rem;
    margin: 0 10px 2px 0;
    vertical-align: middle;
    width: 2rem;
  }
  .entry_btn_sp:hover { background-color: #fff; border-color: #377c48; }
  
  
  /*--------------------- .mv ---------------------*/
  .mv {
    /*background: url(/img/kaigo/fresh/cmn/cmn_img/sp_mv.jpg) top center no-repeat;
    background-size: cover;
    margin-top: 57px;
    padding-bottom: 138%;*/
  }
  .mv_ttl {
    top: 130px;
    width: 70%;
  }
  .mv_ttl img {
    width: 100%;
  }
  
  
  /*--------------------- .inr ---------------------*/
  .inr { padding: 40px 15px; width: 100%; }
  
  
  /*--------------------- clm ---------------------*/
  .clm_box.sp_clm2 { padding: 20px 10px 0; }
  
  
  /*--------------------- .flex_box ---------------------*/
  .flex_box .flex_txt, .flex_box .flex_img { width: 100%; }
  .flex_img img { width: 100%; }
  
  
  /*--------------------- .flex_clm ---------------------*/
  .flex_clmbox { flex-wrap: wrap; margin: 0; }
  .flex_clmlist { margin: 0; }
  
  
  /*--------------------- ttl ---------------------*/
  /*--------------------- .ttl01 ---------------------*/
  .ttl01, .ttl01_white { font-size: 22px; line-height: 1.4; }
  .ttl01 span, .ttl01_white span { font-size: 12px; letter-spacing: 0.1em; }
  /*--------------------- .ttl02 ---------------------*/
  .ttl02, .ttl02_white { font-size: 20px; }
  .ttl02 span, .ttl02_white span { font-size: 12px; margin-left: 10px; }
  /*--------------------- .ttl03 ---------------------*/
  .ttl03 { font-size: 20px; }
  /*--------------------- .ttl04 ---------------------*/
  .ttl04 { font-size: 18px; }
  
  
  /*--------------------- btn ---------------------*/
  .more_btn a { font-size: 16px; }
  .more_btn.long {
    display: block;
    margin: 0 15px 15px;
    max-width: 100%;
  }
  
  
  /*--------------------- .basic_table ---------------------*/
  .basic_table th, .basic_table td {
    display: block;
    font-size: 14px;
    margin: -1px 0;
    padding: 10px 15px;
    width: 100%;
  }
  
  
  /*--------------------- .sp_tel ---------------------*/
  a.sp_tel { pointer-events: auto; }
  
  
  /*--------------------- .txt ---------------------*/
  .center { text-align: left; }
  
  
  /*--------------------- .footer ---------------------*/
  .footer { padding: 20px 10px 80px; }
  .footer a:hover { text-decoration: underline; }
  .footer_inr { width: 100%; }
  .footer_gnav { padding-bottom: 0; }
  .footer_gnav .footer_gnav_list li {
    border-left: none;
    float: none;
    font-size: 14px;
    padding: 0 0 20px 10px;
    text-align: left;
  }
  .footer_gnav .footer_gnav_list, .footer_gnav .footer_gnav_list.list_none { width: 100%; }
  .footer_gnav .footer_gnav_list li:last-child { border-right: none; }
  .footer_logo {
    float: none;
    margin: 0 auto;
    width: 100%;
  }
  .footer_about { margin: 20px 10px; }
  .footer_about .about {
    float: none;
    font-size: 12px;
    margin: 10px 0 0 0;
  }
  .copy_txt { font-size: 10px; }
  a.tel_link { pointer-events: auto; }
  
  
  /*▽▽▽▽▽▽---------- .article ----------▽▽▽▽▽▽*/
  /*--------------------- .article_mv ---------------------*/
  .article_mv { height: 180px; margin-top: 59px; }
  
  
  
  .pc_br { display: none; }
  .sp_br { display: block; }
  
}

@media only screen and (max-width: 500px) {
  .mv_ttl {
    top: 80px;
    width: 60%;
  }
  .gnav_bnr_sp {
    margin: -10px 0;
    padding: 20px;
  }
  .gnav_bnr_sp li {
    float: none;
    line-height: 0;
    margin: 0;
    padding: 10px 0;
    width: 100%;
  }
}

/*--------------------- 2020/02 recruit_bnr ---------------------*/

@media only screen and (max-width: 582px) {

li.pre_entry_btn { margin-bottom: 10px!important; }
.bnr_list img { padding: 2px; }

}

@media only screen and (max-width: 767px) {
.bnr_pb20 { padding-bottom: 20px!important; }
}

