@media screen and (max-width:768px) {
    #top article .wrap:first-child {
      margin-top: 40px;
      margin-bottom: 40px
    }
    .swiper-container {
      height: 350px
    }
    .slider_cover {
      display: none
    }
    .swiper-slide .txt {
      top: 50%;
      left: 50%;
      width: 75%;
      margin: 0 auto;
      font-size: 100%
    }
	.swiper-slide a img{width:80%;margin-top:20px;}
    .swiper-button-next, .swiper-button-prev {
      top: 50%!important
    }
    .swiper-container-horizontal>.swiper-pagination-bullets, .swiper-pagination-custom, .swiper-pagination-fraction {
      bottom: 10px!important
    }
    .slick-arrow, .slick-next, .slick-prev {
      display: none!important
    }
    .topfirst {
      position: static
    }
    .top3col li {
      width: 100%;
      margin-right: 0;
      margin-bottom: 10px
    }
    .top3col li dl span.icon {
      top: 15px;
      left: 15px;
      right: auto
    }
    .top3col li dt {
      display: none
    }
    .top3col li dd {
      padding: 20px 9px
    }
    .top3col li dd p {
      margin-left: 85px
    }
    .top3col li dd .top3col_btn {
      width: 50%;
      margin-left: 50%
    }
    .top2nd {
      margin-top: 0
    }
    .sub-menu_4col .menu4th img, .sub-menu_col .menu4th img {
      display: none
    }
    .sub-menu_4col .menu4th a span, .sub-menu_col .menu4th a span {
      color: #fff
    }
    #header {
      position: fixed
    }
    #header h1 {
      margin-top: 0;
      padding: 0 0 0 2%
    }
    h2 {
      font-size: 1.5rem;
      margin-bottom: 0
    }
    h2.news_topics span {
      font-size: 1rem
    }
    .slick-slide h3 {
      font-size: 60%!important
    }
    .news_list ul li dd {
      margin-left: 6em
    }
    footer #footer_name {
      height: auto
    }
    footer #footer_name h4 {
      font-weight: 400
    }
    .wrap {
      padding-top: 60px;
      margin: auto
    }
    article .wrap:first-child {
      padding-top: 0
    }
    .headcont-container {
      background: 0 0;
      height: auto
    }
    .cont_wrap {
      float: none;
      width: 100%;
      margin: 0
    }
    #right_navi {
      display: none
    }
    .cont_wrap h3 {
      height: auto;
      margin: 0 0 20px 0;
      padding: 0 0 0 12px;
      background: #55a6ff;
      border-bottom: #55a6ff 1px solid;
      color: #fff;
      font-size: 24px;
      line-height: 33px
    }
    .cont-inner {
      width: 100%
    }
    #breadcrumbs {
      display: none
    }
    .topfirst h2 {
      margin-top: 0
    }
    .zab_m {
      width: 100%;
      padding-left: 1.5%;
      padding-right: 1.5%
    }
    .zab_m dl {
      display: block;
      padding: 0
    }
    #philosophy .zab_m .name {
      text-align: left
    }
    .zab_m dd {
      margin-left: 0;
      padding: 0 0 0 8em
    }
    .pred {
        margin: auto !important;
        padding: 0 !important;
        text-align:center;
    }
    .pred img{
    }
    #origin .zab_m dd {
      margin-left: 0;
      padding: 0 0 0 1em
    }
    #origin .copy li dl {
      display: block
    }
    #business .zab_m dd {
      margin-left: 0;
      padding: 0
    }
    dl.onestop {
        margin-bottom: 30px
    }
    span.zab_btn {
      display: block;
      width: 97%;
      margin: 0 auto 20px auto
    }
    .office_rental li, .rental li, .share li {
      margin-right: 1%
    }
    .office_rental li:last-child, .rental li:last-child, .share li:last-child {
      margin-right: 0
    }
    #officer01 {
      margin-top: 500px
    }
    .officer_icon {
      display: block;
      position: relative;
      right: auto;
      margin-bottom: 0;
      margin-top: 10px
    }
    .officer_icon li {
      float: left;
      width: 25%
    }
    .officer_icon li a dd {
      padding: 0;
      height: auto;
      margin-bottom: 10px
    }
    .officer_icon li a dd span {
      font-size: 14px;
      font-weight: 700;
      letter-spacing: -.8px
    }
    .officer dd {
      padding: 10px 0 10px 0;
      float: right
    }
    .officer dt {
      float: none
    }
    .officer:nth-child(odd) dt {
      width: 75%;
      margin: 10px auto 20px auto
    }
    .officer:nth-child(odd) dd {
      margin-right: 0;
      width: 100%
    }
    #n01, #n02, #n03, #n04, #n05 {
      margin-top: -60px;
      padding-top: 60px
    }
    .profile_list tr td {
      word-break: break-all!important
    }
    .side_by_side dt {
      width: auto
    }
    .side_by_side dd {
      width: auto
    }
    .inquiry_list tr td:first-child {
      width: auto!important
    }
    .inquiry_list tr td:first-child {
      width: 100%!important
    }
    #business #inline1 h5, #business #inline2 h5 {
      line-height: 1.5em
    }
    #business #inline1 h5 span, #business #inline2 h5 span {
      display: block;
      font-weight: 700;
      font-size: 14px
    }
    #business #inline1, #business #inline2 {
      height: 100%;
      padding: 20px
    }
    #business #inline1 dl, #business #inline2 dl {
      display: block
    }
    #business #inline1 dl dt, #business #inline2 dl dt {
      margin-right: 0;
      margin-bottom: 10px
    }
    .csr dl {
      padding: 0
    }
    .project>ul {
      margin-top: 100px
    }
    .project li .read_txt {
      width: 80%;
      margin-left: 20%
    }
    .project li .photoimg {
      width: 97%;
      margin: 0 auto!important
    }
    .project li:nth-child(even) .photoimg, .project li:nth-child(odd) .photoimg {
      float: none
    }
    .project li:nth-child(even) .read_txt, .project li:nth-child(odd) .read_txt {
      margin: 0;
      padding: 0 2%;
      text-align: left
    }
    .project li:nth-child(even) .read_txt span, .project li:nth-child(odd) .read_txt span {
      margin: 0 auto;
      float: none
    }
    .project li .read_txt {
      width: 100%;
      padding-top: 10px!important;
      margin-left: 0
    }
    .project li .read_txt li {
      padding-bottom: 20px
    }
    .project li .read_txt p {
      padding: 0 0 20px 0
    }
    .project #n01, .project #n02, .project #n03, .project #n04, .project #n05 {
      margin-top: 0;
      padding-top: 0
    }
    .zab_m dt img {
      width: 100%;
      height: auto
    }
    #recruit .wrap {
      padding-top: 0;
      margin: auto
    }
    #recruit footer .wrap:first-child {
      padding-top: 40px
    }
    #recruit .nav-wrap {
      margin: 0 auto 0 auto
    }
    #recruit #businessA {
      margin-top: 0;
      padding-top: 60px
    }
    #recruit .top {
      padding-top: 0!important
    }
    #recruit .nav-wrap {
      padding-top: 60px
    }
    #recruit .item .btn_recruit li a {
      background-size: 55% auto;
      margin-top: 15px;
      margin-bottom: 35px
    }
    #recruit .item .btn_recruit li:last-child a {
      background-size: 38% auto
    }
    #recruit .item .btn_recruit li {
      margin-right: 5px
    }
    #recruit .item .btn_recruit li:last-child {
      flex: 1.5
    }
    #recruit .inner h2 {
      font-size: 18px
    }
    #recruit p.read {
      font-size: 14px
    }
    #recruit .left, #recruit .right {
      float: none;
      width: 100%
    }
    #recruit .left {
      padding: 0
    }
    #recruit .right {
      margin-top: 40px;
      margin-bottom: 40px;
      padding: 0
    }
    #recruit .right dl {
      padding: 10px
    }
    #recruit .right dt {
      width: 25%;
      margin-right: 10px
    }
    #recruit .right dd {
      width: 75%
    }
    #recruit .right dd, #recruit .right dt {
      font-size: 14px
    }
    #recruit .nagare ul {
      display: flex
    }
    #recruit .nagare li {
      flex: 1;
      font-size: 12px;
      height: auto;
      line-height: 1.3em;
      text-align: left;
      padding: 5px
    }
    #recruit .nagare li:after {
      top: 25%
    }
    #recruit .submit_content dl, .mailform dl {
      width: 100%
    }
    #recruit .submit_content dt, .mailform dt {
      display: block
    }
    #recruit .mailform dd textarea {
      width: 100%
    }
    #recruit .confirmation_btn {
      padding: 0;
      font-size: 18px
    }
    #recruit .submit_area {
      margin-top: 10px
    }
    #recruit #info {
      margin: 0;
      padding: 0
    }
    #recruit #info dl dt {
      float: none;
      padding-left: 0;
      font-weight: 700
    }
    #recruit #info dl dd {
      margin-left: 0
    }
    #recruit .mailinfo dd {
      padding: 0
    }
    .mailform dd input[type=text], .mailform dd select, dd textarea {
      width: 100%
    }
    .voice .leftCol {
      width: 100%;
      float: none
    }
    .voice .leftCol .inner {
      width: 100%
    }
    .voice .rightCol {
      float: none;
      width: 100%
    }
    .voice dl {
      width: 100%
    }
    .voice dd {
      width: auto
    }
    .voice .imageMain {
      height: auto;
      clear: both
    }
    #recruit .voice .mainTextRight1 h2, #recruit .voice .mainTextRight2 h2 {
      padding-bottom: 0;
      font-size: 16px
    }
    .voice .mainTextRight1 {
      top: 170px
    }
    .voice .mainTextRight2 {
      top: 155px
    }
    .voice .mainTextRight1, .voice .mainTextRight2 {
      width: auto;
      height: 100px;
      padding: 10px 0 10px 10px;
      right: 0
    }
    .voice .mainText3 {
      width: auto;
      padding: 10px 10px 10px 0;
      left: 0;
      top: 128px
    }
    .voice .leftCol .inner {
      margin: 80px auto 0 auto
    }
    #recruit .voice p.busyo {
      margin: 5px 0 0 0
    }
    #recruit .voice_item li a {
      font-size: 12px
    }
    #recruit .voice_item li a span {
      font-size: 14px
    }
    #recruit .voice_item ul {
      margin-bottom: 10px
    }
    #recruit .mailform dd {
      padding-left: .5em;
      padding-right: .5em
    }
    #training .zab_b>li {
      flex-direction: column
    }
    #training .zab_b>li .photoimg {
      order: 1;
      width: 100%
    }
    #training .zab_b>li .read_txt {
      order: 2;
      width: 100%
    }
    #training .zab_b>li .read_txt p {
      margin-bottom: 10px
    }
    #inquiry .mailform dd {
      padding-left: 0
    }
    #info_cont {
      height: auto
    }
    #info_cont dl dt {
      float: none;
      width: 100%
    }
    #info_cont dl dt select {
      width: 100%
    }
    #info_cont dl dt .select_wrap {
      display: block
    }
    #info_cont dl dd {
      float: none;
      border-left: none;
      padding-left: 0
    }
    .info_tab {
      display: flex
    }
    .info_tab li {
      flex: 1;
      margin-right: 5px
    }
    .info_item img {
      width: auto;
      height: auto
    }
    .info_box {
      padding: 0 1.5%
    }
    .catmenu li {
      float: none;
      width: 31%;
      height: 30px;
      margin: 0 2.4% 2% 0;
      font-size: 16px;
      line-height: 30px
    }
    .catmenu li:nth-child(3n) {
      margin-right: 0
    }
    .search_item.is-active {
      background-color: #fff
    }
    .is-hide {
      display: none
    }
    .itemlist li {
      min-height: 5em
    }
    .itemlist li dl {
      float: left
    }
    .itemlist li dl dt {
      float: none;
      width: 7.5em
    }
    .itemlist li dl dd {
      float: none;
      width: 8em
    }
    .itemlist li span {
      margin-left: 8em
    }
    .complain_consultation span {
      position: relative;
      left: 0;
      bottom: auto;
      display: inline-block;
      margin-top: 10px;
      padding: 4px 8px;
      background: 0 0;
      color: navy;
      z-index: 100
    }
    .priv dl {
      display: block!important
    }
    .priv dt {
      margin: 0 auto;
      text-align: center;
      left: -14px;
      padding: 3px 14px
    }
    .info_item {
      font-size: 14px;
      padding: 3px 7px
    }
    a.mlit_zab {
      width: 100%
    }
    .bnner_list>ul{
        display:block;
    }
    .bnner_list li,
    .bnner_list li:last-child{
        margin:0 10% 10px 10%;
    }
  }
  
  @media screen and (max-width:480px) {
    .top_menu li a {
      font-size: 16px
    }
  }