@charset "utf-8";
/* -------------------------------------
     sp CSS
 (c) Copyright 2020 Sketches of Design
     version 2020-12-26
------------------------------------- */

/* 1280
--------------------------------------*/
@media screen and (max-width: 1280px) {
  #wrapper {
    padding: 93px 0 0 0;
  }
  body#recruit-idx #mov{
    padding: 60px 4%;
  }
}
/*  1024
--------------------------------------*/
@media screen and (max-width: 1024px) {

  #main-pic .inner{
    margin: 0 4%;
  }
  body.guide #main-pic .inner,
  #recruit-idx #main-pic .inner{
    margin: 0;
  }
  body#recruit-idx #content .inner{
    padding: 0 4%;
  }
  #main-pic .inner .lead{
    margin-bottom: 0.8em;
  }
  body.person main #main-pic{
    padding: 50px 0 0 0;
    height: 380px;
  }
  body#person-01 main #main-pic{
    background: url("../img/p-person-01-main-sp.webp") no-repeat right center;
  }
  body#person-02 main #main-pic{
    background: url("../img/p-person-02-main-sp.webp") no-repeat right center;
  }
  body.person main .private .inner{
    margin: 0 4%;
  }

}
/*  960
--------------------------------------*/
@media screen and (max-width: 960px) {

  /* font */
  body.guide #main-pic h1,
  body#recruit-about h1,
  body#recruit-idx #main-pic .lead,
  h1{
    font-size: 4.0rem;
  }
  body#recruit-idx #main-pic h1{
    font-size: 3.2rem;
  }
  main h2{
    margin: 0 0 20px 0;
    font-size: 3.0rem;
  }
  main h3{
    font-size: 2.0rem;
  }
  body#recruit-about .feature h2,
  body#recruit-about #lv02-01 .flow ul li{
    font-size: 1.6rem;
  }
  body#recruit-about #content table.calendar td,
  body#recruit-about #content table.allowance tbody,
  main p,
  main dl,
  main table,
  main ul,
  #hdmenu nav ul li{
    font-size: 1.3rem;
  }
  main #recruit-menu p#b-siteid{
    font-size: 1.6rem;
  }
  main #recruit-menu ul li{
    margin-left: 1em;
  }
  /**/
  body#recruit-idx #content .inner,
  body#recruit-idx #main-pic .inner,
  main #recruit-menu .inner{
    margin: 0;
  }
  main #recruit-menu .inner{
    padding: 10px 20px 14px 20px;
  }
  body#recruit-about .features{
    flex: 1;
    max-width: calc(100% - 20%);
  }
  body#recruit-about .feature{
    padding: 10px 16px 16px 16px;
  }
  body#recruit-about .feature::before{
    right: -20px;
    border-width: 10px 0 10px 20px;
  }
  body#recruit-about .feature h2{
    margin-bottom: 0.7em;
    line-height: 1.2;
  }
  body#recruit-about .feature p{
    font-weight: 400;
    line-height: 1.25;
  }
  body#recruit-about #main-pic .image{
    width: 20%;
  }
  body#recruit-about #lv02-02 .col2 > table{
    width: 100%;
  }
  body#recruit-about #content table.calendar td{
    padding: 8px;
  }
  body#recruit-idx #content .col2 > *{
    margin-bottom: 20px;
    width: 49%;
  }
  body#recruit-idx #content .menu-02,
  body#recruit-idx #content .col2 > * a{
    padding: 20px;
  }
  body#recruit-idx #content .menu-02 a{
    padding: 10px;
    font-size: 1.6rem;
  }
  body#recruit-idx #content .menu-01 a{
    display: flex;
    justify-content: center;
    flex-direction: column;
  }

}
/*  768
--------------------------------------*/
@media screen and (max-width: 768px) {

  img{
    max-width: 100%;
    height: auto;
    width /***/:auto;
  }
  #recruit-menu .inner{
    flex-direction: column;
    align-items: flex-start;
    padding: 12px 20px;
  }
  #recruit-menu p#b-siteid{
    font-size: 1.5rem;
    margin-bottom: 8px;
  }
  main #recruit-menu p#b-siteid{
    width: 100%;
    text-align: center;
  }
  #recruit-menu #recruit-nav{
    width: 100%;
  }
  #recruit-menu #recruit-nav ul{
    padding: 0;
    flex-wrap: wrap;
    gap: 0 20px;
    justify-content: center;
  }
  #recruit-menu li.has-submenu:hover .submenu{
    display: none;
  }
  #recruit-menu li.has-submenu.is-open .submenu-toggle::after{
    transform: translate(-50%, -20%) rotate(225deg);
  }
  #recruit-menu #recruit-nav .submenu{
    padding: 8px;
  }
  #recruit-menu li.has-submenu.is-open .submenu{
    display: flex;
  }
  #recruit-menu .submenu li a{
    padding: 8px;
    color: #6a6db0;
  }

  /**/
  br.pc{
    display: none;
  }
  br.sp{
    display: block;
  }
  body#recruit-idx #main-pic .lead span{
    display: none;
  }
  #main-pic h1,
  body.guide #main-pic h1, 
  body#recruit-about h1{
    font-size: 3.2rem;
  }
  body#recruit-about .features{
    max-width: calc(100% - 25%);
  }
  body#recruit-about #lv02-01 .flow{
    padding: 10px;
    width: 100%;
  }
  body#recruit-about #lv02-01 .flow ul li{
    padding: 10px;
    min-height: 50px;
  }
  body#recruit-about #lv02-01 .flow ul li img {
    width: 30px;
    height: 30px;
  }
  body#recruit-about #content ul.pic.col3 > li,
  body#recruit-about #lv02-03 ul.pic.col2 > li,
  body#recruit-about #content ul.pic.col4 > li{
    width: calc(50% - 10px);
  }
  body#recruit-about #content .tour{
    display: block;
    padding: 16px 16px 10px 16px;
  }
  body#recruit-about #content .tour h3{
    margin: 0 auto 10px auto;
  }
  #main-pic .inner .lead{
    font-size: 2.6rem;
    width: 80%;
  }
  body.person main #main-pic {
    padding: 30px 0 0 0;
    height: 320px;
  }
  body.person main #lv02-02 .text{
    padding: 0;
  }
  body#person-01 main .bg,
  body#person-02 main .bg{
    margin-top: 0;
    background-attachment: scroll !important;
    background-position: center -20px;
    height: 330px;
  }
  body#person-02 main .bg{
    background-position: center center;
  }
  body.person main .wrap p.image{
    width: 180px;
    height: 180px;
  }
  body.person main .wrap p.image img{
    height: 180px;
  }
  body.person main .private .inner{
    padding: 20px;
  }
  body#recruit-about #lv02-02 .lv03-02 ul li{
    width: 50%;
  }
  body#recruit-idx #main-pic .lead{
    width: 100%;
  }
  body#recruit-idx #content .menu-01,
  body#recruit-idx #content .menu-02{
    background-position: right bottom;
    background-size: 350px auto;
  }
  body#recruit-idx #content .menu-01 a,
  body#recruit-idx #content .menu-02{
    display: block;
  }
  body#recruit-idx #main-pic .link img{
    width: 50px;
  }

}
/*  667
--------------------------------------*/
@media screen and (max-width: 667px) {
  body#recruit-about #lv02-03 .pic{
    text-align: center;
  }
  body#recruit-about #lv02-03 p,
  body#recruit-about #lv02-04 p{
    text-align: left;
  }
  body#recruit-about .feature p br{
    display: none;
  }
  body#recruit-about h1,
  body#recruit-about .feature{
    margin-bottom: 10px;
  }
  body#recruit-about #main-pic .image {
    width: 30%;
  }
  body#recruit-about .features{
    padding: 20px 0;
  }
  body#recruit-about #main-pic{
    padding: 20px 0;
  }
  body.guide #main-pic{
    padding: 0;
  }
  body.guide #content table th {
    width: 100px;
  }
  body.person main #main-pic{
    padding:20px 0 0 0;
    height: 450px;
  }
  #main-pic .inner .lead {
    margin-bottom: 1.5em;
    width: 100%;
    font-size: 4.5vw;
  }
  body.person main .private h2{
    margin: 0 20px 0 0;
    width: 160px;
    height: 160px;
    font-size: 1.6rem;
  }
  body.person main .schedule dl::before{
    left: 100px;
  }
  body.person main .schedule dd{
    margin: 0 0 1em 120px;
  }
  body.person main .private {
    margin-top: 0;
  }
  body#recruit-idx #content .col2 > *{
    width: 100%;
    min-height: 150px;
  }


}
/*  480
--------------------------------------*/
@media screen and (max-width: 480px) {

  body#recruit-idx #main-pic .lead,
  h1{
    font-size: 3.2rem;
  }
  #main-pic h1,
  body.guide #main-pic h1, 
  body#recruit-about h1,
  body#recruit-idx #main-pic h1{
    font-size: 2.6rem;
  }
  body#recruit-about #content table.calendar th,
  body#recruit-about #content table.calendar td,
  body#recruit-about #content table.allowance tbody{
    font-size: 1.2rem;
  }
  body#recruit-about #content table.calendar td.recreation{
    font-size: 1.1rem;
  }
  main #recruit-menu .inner{
    display: block;
  }
  main #recruit-menu ul{
    margin-top: 1em;
    justify-content: left;
  }
  main #recruit-menu ul li{
    margin: 0 1em 0.5em 0;
  }
  body#recruit-about #lv02-03 ul.pic.col2 > li{
    width: 100%;
  }
  body#recruit-about #lv02-03 ul.pic.col2 > li img{
    max-width: 50%;
  }
  main #recruit-menu p#b-siteid{
    margin: 0 0 3px 0;
  }
  #recruit-menu #recruit-nav ul{
    gap: 0 10px;
    font-size: 1.2rem;
  }
  main #recruit-menu .inner{
    padding: 10px;
  }
  body#recruit-about #main-pic .image {
    width: 40%;
  }
  #main-pic .inner .lead {
    font-size: 5vw;
  }
  body.person main #main-pic{
    height: 350px;
  }
  body.person main .wrap{
    display: block;
  }
  body.person main .wrap p.image{
    margin: 0 auto 10px auto !important;
  }
  body#person-01 main .bg,
  body#person-02 main .bg{
    height: 200px;
  }
  body.person main .private h2{
    margin: 0 0 10px 0;
    padding: 5px 0;
    width: 100%;
    height: auto;
  }
  body.person main .private .lead{
    margin: 0 0 5px 0 !important;
  }
  body#recruit-idx #main-pic{
    padding: 0;
  }


}