@charset "UTF-8";
@media screen and (min-width : 601px){

  /* -------------------------------------------------------------------------------------------
  *
  * info
  *
  * ----------------------------------------------------------------------------------------- */

  .topInfo{
    background-color: #DDDDDD;
    text-align: center;
  }
  .topInfo p{
    font-size: 0.875rem;
    line-height: 1;
    padding: 12px 0;
  }


  /* -------------------------------------------------------------------------------------------
  *
  * MV
  *
  * ----------------------------------------------------------------------------------------- */

  h2.mainImg{
    overflow: hidden;
  }


  .slide_text{
    position: absolute;
    top: -3rem; right: 0; bottom: 0; left: 0;
    margin: auto;
    width: 28.125rem;
  }


  /* -------------------------------------------------------------------------------------------
  *
  * 検索パネル
  *
  * ----------------------------------------------------------------------------------------- */

  #searchIndex{
    background-color: #ffffff;
  }
  #searchIndex .inner{
    position: relative;
    margin: 0 auto -42px auto;
  }

  #searchIndex div.searchPanel{
    background-color: #ffffff;
    padding: 26px 31px 26px 31px;
    margin: -76px 0 0 0;
    box-sizing: border-box;
    border: 1px solid #3C3C43;
    border-radius: 10px;
    width: 100%;
    z-index: 1;
    -webkit-box-shadow: 3px 3px 6px rgba(0,0,0,0.15);
    box-shadow: 3px 3px 6px rgba(0,0,0,0.15);
  }

  #searchIndex div.searchPanel h3{
    margin: 0 0 20px 0;
  }

  #searchIndex div.searchPanel h3 i{
    display: inline-block;
    vertical-align: middle;
    width: 2.0625rem;
    height: 1.8125rem;
    background-image: url("../../images/top/icon_search_ttl.svg");
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-position: top center;
    margin: 0 0.75rem 0 0;
  }

  #searchIndex div.searchPanel h3 p{
    display: inline-block;
    vertical-align: middle;
    font-size: 1.5rem;
    font-weight: 700;
  }

  #searchIndex div.searchPanel p.resetBtn{
    position: absolute;
    top: 26px; right: 31px;
    box-sizing: border-box;
    border: 1px solid #dddddd;
    border-radius: 1.25rem;
    background-color: #dddddd;
    color: #ffffff;
    cursor: pointer;
    font-size: 0.875rem;
    font-weight: 700;
    padding: 8px 14px;
    -webkit-transition: opacity .5s ease;
    transition: opacity .5s ease;
    pointer-events: none;
    cursor: default;
    }
    #searchIndex div.searchPanel p.resetBtn.active{
      border: 1px solid #c0c0c0;
      background-color: #ffffff;
      color: #707070;
      pointer-events: auto;
      cursor: pointer;
    }
    #searchIndex div.searchPanel p.resetBtn:hover{
      opacity: 0.8;
    }

  #searchIndex div.searchPanel ul{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    }
    #searchIndex div.searchPanel ul:nth-of-type(n+2){
      margin: 16px 0 0 0;
    }
    .js_isIe #searchIndex div.searchPanel ul{
      overflow: hidden;
      padding: 1px;
    }

  #searchIndex div.searchPanel ul li{
    box-sizing: border-box;
    border-radius: 1.5rem;
    background-color: #ffffff;
    -webkit-box-shadow: 0 0 0 1px #c0c0c0;
    box-shadow: 0 0 0 1px #c0c0c0;
    color: #707070;
    cursor: pointer;
    font-size: 1rem;
    font-weight: 700;
    line-height: 0;
    padding: 10px 21px 10px 16px;
    -webkit-transition: opacity .5s ease;
    transition: opacity .5s ease;
    }
    .js_isNotWin #searchIndex div.searchPanel ul li{
      padding: 10px 19px 10px 14px;
    }
    #searchIndex div.searchPanel ul li.active{
      -webkit-box-shadow: 0 0 0 2px #af8f68;
      box-shadow: 0 0 0 2px #af8f68;
      color: #af8f68;
    }
    #searchIndex div.searchPanel ul li.disabled{
      background-color: #dddddd;
      -webkit-box-shadow: 0 0 0 2px #dddddd;
      box-shadow: 0 0 0 2px #dddddd;
      color: #ffffff;
      cursor: default;
      pointer-events: none;
    }
    #searchIndex div.searchPanel ul li:nth-of-type(n+2){
      margin: 0 0 0 10px;
    }
    #searchIndex div.searchPanel ul li:hover{
      opacity: 0.8;
    }
    #searchIndex div.searchPanel ul.searchAge li{
      padding-left: 22px;
    }
    #searchIndex div.searchPanel ul.searchSub li{
      padding-left: 24px;
    }
    #searchIndex div.searchPanel ul.searchAge li,
    #searchIndex div.searchPanel ul.searchSub li{
      width: 121px;
    }
    #searchIndex div.searchPanel ul.searchAge li:nth-of-type(n+3),
    #searchIndex div.searchPanel ul.searchSub li:nth-of-type(n+3){
      width: 153px;
    }
    html.fzL #searchIndex div.searchPanel ul.searchAge li,
    html.fzL #searchIndex div.searchPanel ul.searchSub li{
      width: unset;
    }
    html.fzL #searchIndex div.searchPanel ul.searchAge li:nth-of-type(n+3),
    html.fzL #searchIndex div.searchPanel ul.searchSub li:nth-of-type(n+3){
      width: unset;
    }

  #searchIndex div.searchPanel ul{
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  #searchIndex div.searchPanel ul:nth-of-type(n+2){
    margin: 0 !important;
  }

  #searchIndex div.searchPanel ul li{
    margin: 0 10px 16px 0 !important;
  }
  #searchIndex div.searchPanel ul li:last-child{
    margin-right: 0 !important;
  }



  #searchIndex div.searchPanel ul li svg{
    display: inline-block;
    vertical-align: middle;
    }
    #searchIndex div.searchPanel ul li.active svg{
      fill: #af8f68 !important;
    }
    #searchIndex div.searchPanel ul li.disabled svg{
      fill: #ffffff !important;
    }
    #searchIndex div.searchPanel ul.searchCat li svg{
      width: 1.25rem;
      height: 1.25rem;
    }
    #searchIndex div.searchPanel ul.searchAge li svg{
      width: 1rem;
      height: 1.125rem;
    }
    #searchIndex div.searchPanel ul li svg.pc_tb{
      display: none;
    }

  #searchIndex div.searchPanel ul li i{
    display: inline-block;
    vertical-align: middle;
    border-radius: 50%;
    width: 0.75rem;
    height: 0.75rem;
    }
    #searchIndex div.searchPanel ul li i.rika{
      background-color: #45b036;
    }
    #searchIndex div.searchPanel ul li i.seikatsu{
      background-color: #ee791d;
    }
    #searchIndex div.searchPanel ul li i.sansu{
      background-color: #0078b9;
    }
    #searchIndex div.searchPanel ul li i.taiiku{
      background-color: #7d4798;
    }

  #searchIndex div.searchPanel ul li p{
    display: inline-block;
    vertical-align: middle;
    font-size: 1rem;
    font-weight: 700;
    margin: 0 0 0 9px;
    line-height: 1;
    }
    #searchIndex div.searchPanel ul.searchCat li p{
      letter-spacing: 0.02rem;
    }
    #searchIndex div.searchPanel ul.searchAge li p{
      margin: 0 0 0 11px;
    }
    #searchIndex div.searchPanel ul.searchSub li p{
      margin: 0 0 0 13px;
    }




  /* -------------------------------------------------------------------------------------------
  *
  * 検索結果
  *
  * ----------------------------------------------------------------------------------------- */

  #searchResult{
    background-color: #efece5;
    padding: 72px 0 54px 0;
  }

  #searchResult ul{
    width: 100%;
    margin: 0 auto;
    position: relative;
  }


  #searchResult ul{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  #searchResult ul::after{
    content: '';
    display: block;
    width: 24%;
  }
  #searchResult ul.space-2::after{
    width: 49.3%;
  }
  #searchResult ul.space-3::after{
    width: 74.6%;
  }


  #searchResult ul li{
    background-color: #ffffff;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    border-radius: 10px;
    margin: 0 0 16px 0;
    width: 24%;
    /*width: 268px;*/
  }
  #searchResult ul li.is-hidden{
    display: none;
  }

  #searchResult ul li.clm-1{
    width: 24%;
    /*width: 268px;*/
  }
  #searchResult ul li.clm-2{
    width: 49.3%;
    /*width: 552px;*/
  }
  #searchResult ul li.clm-4{
    width: 100%;
    /*width: 1120px;*/
  }
  #searchResult.noFourClm ul li{
    /*max-height: 32vw;*/
    max-height: 298px;
  }

  #searchResult ul li a{
    display: inline-block;
    vertical-align: top;

    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;

    box-sizing: border-box;
    border-radius: 10px 10px;
    overflow: hidden;
    -webkit-box-shadow: 3px 3px 6px rgba(0,0,0,0.15);
    box-shadow: 3px 3px 6px rgba(0,0,0,0.15);
    width: 100%;
    position: relative;
  }

  #searchResult ul li.new a::before{
    content: '';
    display: block;
    width: 2.6875rem;
    height: 2.6875rem;
    background-image: url("../../images/top/icon_new.svg");
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-position: top center;
    position: absolute;
    top: 0.3125rem; left:  0.3125rem;
    z-index: 1;
    -webkit-transform: translate3d(0,0,1px);
    transform: translate3d(0,0,1px);
  }
  #searchResult ul li.revision a::before{
    content: '';
    display: block;
    width: 2.5rem;
    height: 2.5rem;
    background-image: url("../images/icon_revision.svg");
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-position: top center;
    position: absolute;
    top: 0.3125rem; left:  0.3125rem;
    z-index: 1;
    -webkit-transform: translate3d(0,0,1px);
    transform: translate3d(0,0,1px);
  }

  #searchResult ul li a div.thumb{
    background-color: #E0DBCF;
    box-sizing: border-box;
    border-radius: 10px 10px 0 0;
    width: -webkit-calc(100% + 1px);
    width: calc(100% + 1px);
    overflow: hidden;
    -webkit-transform: translate3d(0,0,1px);
    transform: translate3d(0,0,1px);
  }
  #searchResult ul li.clm-1 a div.thumb,
  #searchResult ul li.clm-2 a div.thumb{
    height: 17.4vw;
    max-height: 208px;
  }
  #searchResult ul li.clm-4 a div.thumb{
    border-radius: 10px 10px;
  }
  #searchResult ul li.clm-2.no_caption a div.thumb{
    border-radius: 10px 10px;
    height: 100% !important;
    max-height: unset !important;
  }

  #searchResult ul li a div.thumb.center{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }

  #searchResult ul li a div.thumb img{
    width: 100%;
  }

  #searchResult ul li a div.thumb.center img{
    max-width: 90%;
    max-height: 90%;
    width: auto;
    }
    #searchResult ul li.clm-2 a div.thumb.center img{
      max-width: 96%;
    }

  #searchResult ul li a div.caption{
    box-sizing: border-box;
    margin: 0;
    /*padding: 1rem 0.875rem;*/
    padding: 0.75rem;
    width: 100%;
    /*height: 100px;*/
    background-color: #ffffff;
    }
    /*.js_isFirefox #searchResult ul li a div.caption,*/
    .js_isIe #searchResult ul li a div.caption{
      padding: 1rem 0.75rem;
    }

  #searchResult ul li a div.caption p{
    font-size: 0.9375rem;
    font-weight: 700;
    letter-spacing: 0.125rem;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    word-break: break-all;
    letter-spacing: 0;
    /*text-align: justify;*/
 
    /*IE対策*/
    line-height: 1.5;
    max-height: 4.2rem;
    position: relative;
    }
    .js_isFirefox #searchResult ul li a div.caption p,
    .js_isIe #searchResult ul li a div.caption p{
      letter-spacing: 0;
    }
/*
    .js_isWin #searchResult ul li a div.caption p{
      text-align: justify;
    }
*/
  .js_isIe #searchResult ul li a div.caption p::before{
    content: '...';
    display: block;
    position: absolute;
    top: 2.625rem;
    right: 0.375rem;
    background-color: #ffffff;
  }
  .js_isIe #searchResult ul li a div.caption p::after{
    content: '';
    height: 100%;
    width: 100%;
    position: absolute;
    background-color: #ffffff;
  }


  #searchResult div.viewMore{
    margin: 14px 0 0 0;
    text-align: center;
  }
  #searchResult div.viewMore div.viewMoreBtn{
    display: inline-block;
    background-color: #ffffff;
    border: 1px solid #c0c0c0;
    border-radius: 4.25rem;
    box-sizing: border-box;
    line-height: 0;
    padding: 0.75rem 1.375rem 0.75rem 1.875rem;
    cursor: pointer;
    -webkit-transition: opacity .5s ease;
    transition: opacity .5s ease;
  }
  #searchResult div.viewMore div.viewMoreBtn:hover{
    opacity: 0.8;
  }
  #searchResult div.viewMore div.viewMoreBtn p{
    display: inline-block;
    vertical-align: middle;
    font-size: 1rem;
    font-weight: 700;
    line-height: 1;
  }
  #searchResult div.viewMore div.viewMoreBtn svg{
    display: inline-block;
    vertical-align: middle;
    width: 0.625rem;
    height: 0.625rem;
    margin: 0 0 0 0.75rem;
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
  }





  /* -------------------------------------------------------------------------------------------
  *
  * news
  *
  * ----------------------------------------------------------------------------------------- */

  .news_area{
    background-color: #ffffff;
    padding: 48px 0 33px 0;
  }

  #news #news_e,
  #news #news_jh,
  #news #news_college{
    display: none;
  }





}@media screen and (max-width : 600px){


  /* -------------------------------------------------------------------------------------------
  *
  * info
  *
  * ----------------------------------------------------------------------------------------- */

  .topInfo{
    background-color: #DDDDDD;
    text-align: left;
  }
  .topInfo p{
    font-size: 0.75rem;
    font-weight: 500;
    line-height: 1.5;
    letter-spacing: 0.075rem;
    padding: 0.4375rem 0.875rem;
  }




  /* -------------------------------------------------------------------------------------------
  *
  * MV
  *
  * ----------------------------------------------------------------------------------------- */

  h2.mainImg{
    overflow: hidden;
    font-size: 0;
  }

  .slide_text{
    position: absolute;
    top: 0; right: -11rem; bottom: 0; left: 0;
    margin: auto;
    width: 6.75rem;
  }


  /* -------------------------------------------------------------------------------------------
  *
  * 検索ボタン
  *
  * ----------------------------------------------------------------------------------------- */


  #searchBnr {
    position: fixed;
    bottom: 1.25rem;
    right: 1.25rem;
    z-index: 1;
    -webkit-transition: opacity .5s ease;
    transition: opacity .5s ease;
    opacity: 1;
    visibility: visible;
  }
  #searchBnr.hidden{
    opacity: 0;
    visibility: hidden;
  }
  #searchBnr a {
    display: inline-block;
    vertical-align: top;
  }
  #searchBnr a img{
    width: 4.625rem;
    height: 4.625rem;
  }




  /* -------------------------------------------------------------------------------------------
  *
  * 検索パネル
  *
  * ----------------------------------------------------------------------------------------- */

  #searchIndex{
    position: fixed;
    background-color: rgba(255,255,255,0.95);
    width: 100%;
    left: 0;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    border-bottom: 1px solid #c0c0c0;
    z-index: 99;
    -webkit-transition: opacity .5s ease;
    transition: opacity .5s ease;
    }
    #searchIndex.active{
      opacity: 1;
      visibility: visible;
      pointer-events: auto;
    }

  #searchIndex .inner{
    width: 100%;
  }

  #searchIndex div.searchPanel{
    padding: 2rem 0.875rem;
    box-sizing: border-box;
    width: 100%;
    margin: 0 auto;
    /*-webkit-box-shadow: 3px 3px 6px rgba(0,0,0,0.15);*/
    /*box-shadow: 3px 3px 6px rgba(0,0,0,0.15);*/
  }

  #searchIndex div.searchPanel h3{
    margin: 0 0 20px 0;
  }

  #searchIndex div.searchPanel h3 i{
    display: inline-block;
    vertical-align: middle;
    width: 1.5rem;
    height: 1.3125rem;
    background-image: url("../../images/top/icon_search_ttl.svg");
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-position: top center;
    margin: 0.125rem 0.75rem 0 0;
  }

  #searchIndex div.searchPanel h3 p{
    display: inline-block;
    vertical-align: middle;
    font-size: 1.25rem;
    font-weight: 700;
  }

  #searchIndex div.searchPanel p.closeBtn{
    position: absolute;
    top: 2rem; right: 0.875rem;
    line-height: 0;
    width: 1.5625rem;
    height: 1.5625rem;
    /*z-index: 1;*/
  }

  #searchIndex div.searchPanel p.closeBtn img{
    width: 100%;
    height: auto;
  }


  #searchIndex div.searchPanel p.resetBtn{
    position: absolute;
    bottom: 1.25rem; right: 0.875rem;
    box-sizing: border-box;
    border: 1px solid #dddddd;
    border-radius: 1.25rem;
    background-color: #dddddd;
    color: #ffffff;
    cursor: pointer;
    font-size: 0.75rem;
    font-weight: 700;
    padding: 8px 14px;
    pointer-events: none;
    -webkit-transition: opacity .5s ease;
    transition: opacity .5s ease;
    }
    #searchIndex div.searchPanel p.resetBtn.active{
      border: 1px solid #c0c0c0;
      background-color: #ffffff;
      color: #707070;
      pointer-events: auto;
    }
    #searchIndex div.searchPanel p.resetBtn:hover{
      opacity: 0.8;
    }

  #searchIndex div.searchPanel ul{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    }
    #searchIndex div.searchPanel ul.searchCat{
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
    }
    #searchIndex div.searchPanel ul:nth-of-type(n+2){
      margin: 1rem 0 0 0;
      padding: 1rem 0 0 0;
      border-top: 1px dotted #c0c0c0;
    }

  #searchIndex div.searchPanel ul.searchAge li,
  #searchIndex div.searchPanel ul.searchSub li{
    box-sizing: border-box;
    border-radius: 1.5rem;
    background-color: #ffffff;
    -webkit-box-shadow: 0 0 0 1px #c0c0c0;
    box-shadow: 0 0 0 1px #c0c0c0;
    color: #707070;
    cursor: pointer;
    font-size: 1rem;
    font-weight: 700;
    line-height: 0;
    padding: 0.625rem 0.75rem;
    /*margin: 0 0.625rem 1rem 0;*/
    margin: 0 0 1rem 0;
    -webkit-transition: opacity .5s ease;
    transition: opacity .5s ease;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    text-align: center;
    }
    #searchIndex div.searchPanel ul.searchCat li.active{
      color: #af8f68;
    }
    #searchIndex div.searchPanel ul.searchAge li.active,
    #searchIndex div.searchPanel ul.searchSub li.active{
      -webkit-box-shadow: 0 0 0 2px #af8f68;
      box-shadow: 0 0 0 2px #af8f68;
      color: #af8f68;
    }
    #searchIndex div.searchPanel ul.searchCat li.disabled{
      color: #dddddd;
      cursor: default;
      pointer-events: none;
    }
    #searchIndex div.searchPanel ul.searchAge li.disabled,
    #searchIndex div.searchPanel ul.searchSub li.disabled{
      background-color: #dddddd;
      -webkit-box-shadow: 0 0 0 2px #dddddd;
      box-shadow: 0 0 0 2px #dddddd;
      color: #ffffff;
      cursor: default;
      pointer-events: none;
    }
    #searchIndex div.searchPanel ul.searchCat li:nth-of-type(n+2){
      margin: 0 0 1rem 0;
    }
    #searchIndex div.searchPanel ul.searchCat li:nth-of-type(4){
      margin-left: 0;
    }
    #searchIndex div.searchPanel ul li:last-child{
      margin-right: 0 !important;
    }
    #searchIndex div.searchPanel ul li:hover{
      opacity: 0.8;
    }
    #searchIndex div.searchPanel ul.searchAge li{
      padding: 0.625rem 0.75rem 0.625rem 1rem;
    }
    #searchIndex div.searchPanel ul.searchSub li{
      padding: 0.625rem 0.75rem 0.625rem 1.125rem;
    }
    #searchIndex div.searchPanel ul.searchAge li,
    #searchIndex div.searchPanel ul.searchSub li{
      flex-basis: 28%;
    }
    #searchIndex div.searchPanel ul.searchAge li:nth-of-type(2),
    #searchIndex div.searchPanel ul.searchSub li:nth-of-type(2){
      margin: 0 3.5% 1rem 3.5%;
    }
    #searchIndex div.searchPanel ul.searchAge li:nth-of-type(n+3),
    #searchIndex div.searchPanel ul.searchSub li:nth-of-type(n+3){
      flex-basis: 36.3%;
    }


  #searchIndex div.searchPanel ul{
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  #searchIndex div.searchPanel ul:nth-of-type(n+2){
    margin: 0 !important;
  }


  #searchIndex div.searchPanel ul.searchCat li{
    width: 33.3%;
    text-align: center;
  }

  #searchIndex div.searchPanel ul li svg{
    display: inline-block;
    vertical-align: middle;
    }
    #searchIndex div.searchPanel ul li svg.pc_tb{
      display: none;
    }
    #searchIndex div.searchPanel ul li.active svg{
      fill: #af8f68 !important;
    }
    #searchIndex div.searchPanel ul li.disabled svg{
      fill: #ffffff !important;
    }
    #searchIndex div.searchPanel ul.searchCat li.cat_01 svg{
      width: 1.9375rem;
      height: 2.5rem;
    }
    #searchIndex div.searchPanel ul.searchCat li.cat_02 svg{
      width: 2.5rem;
      height: 2.3125rem;
      margin: 0.375rem 0 0 0.25rem;
    }
    #searchIndex div.searchPanel ul.searchCat li.cat_03 svg{
      width: 2.1875rem;
      height: 1.75rem;
    }
    #searchIndex div.searchPanel ul.searchCat li.cat_04 svg{
      width: 2.5rem;
      height: 1.75rem;
    }
    #searchIndex div.searchPanel ul.searchCat li.cat_05 svg{
      width: 2.6875rem;
      height: 2.0625rem;
      margin: 0.25rem 0 0 0.25rem;
    }
    #searchIndex div.searchPanel ul.searchCat li.cat_06 svg{
      width: 2.125rem;
      height: 2.1875rem;
      margin: 0.25rem 0 0 0.375rem;
    }
    #searchIndex div.searchPanel ul.searchAge li svg{
      width: 1rem;
      height: 1.125rem;
    }



  #searchIndex div.searchPanel ul.searchCat li div.sp{
    width: 4.375rem;
    height: 4.375rem;
    border-radius: 50%;
    -webkit-box-shadow: 0 0 0 1px #c0c0c0;
    box-shadow: 0 0 0 1px #c0c0c0;
    box-sizing: border-box;
    margin: auto;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    }
    #searchIndex div.searchPanel ul.searchCat li.active div.sp{
      -webkit-box-shadow: 0 0 0 2px #af8f68;
      box-shadow: 0 0 0 2px #af8f68;
    }
    #searchIndex div.searchPanel ul.searchCat li.disabled div.sp{
      -webkit-box-shadow: 0 0 0 2px #dddddd;
      box-shadow: 0 0 0 2px #dddddd;
      background-color: #dddddd;
    }



  #searchIndex div.searchPanel ul li i{
    display: inline-block;
    vertical-align: middle;
    border-radius: 50%;
    width: 0.75rem;
    height: 0.75rem;
    }
    #searchIndex div.searchPanel ul li i.rika{
      background-color: #45b036;
    }
    #searchIndex div.searchPanel ul li i.seikatsu{
      background-color: #ee791d;
    }
    #searchIndex div.searchPanel ul li i.sansu{
      background-color: #0078b9;
    }
    #searchIndex div.searchPanel ul li i.taiiku{
      background-color: #7d4798;
    }

  #searchIndex div.searchPanel ul li p{
    display: inline-block;
    vertical-align: middle;
    font-size: 0.875rem;
    font-weight: 700;
    margin: 0 0 0 0.5625rem;
    line-height: 1;
  }
  #searchIndex div.searchPanel ul.searchCat li p{
    font-size: 0.8125rem;
    margin: 0.625rem 0 0 0;
  }
  #searchIndex div.searchPanel ul.searchCat li.cat_03 p{
    font-size: 0.6875rem;
    margin: 0.625rem 0 0 0;
  }
  #searchIndex div.searchPanel ul.searchSub li p{
    margin: 0 0 0 0.75rem;
  }




  /* -------------------------------------------------------------------------------------------
  *
  * 検索結果
  *
  * ----------------------------------------------------------------------------------------- */

  #searchResult{
    background-color: #efece5;
    padding: 1.5rem 0;
    /*margin: -0.25rem 0 0 0;*/
  }

  #searchResult ul{
    width: 100%;
    margin: 0 auto;
    position: relative;
  }


  #searchResult ul{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  #searchResult ul::after{
    content: '';
    display: block;
    width: 24%;
  }
  #searchResult ul.space-2::after{
    width: 49.3%;
  }
  #searchResult ul.space-3::after{
    width: 74.6%;
  }


  #searchResult ul li{
    background-color: #ffffff;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    border-radius: 0.625rem;
    margin: 0 0 0.875rem 0;
    width: 24%;
    /*width: 268px;*/
  }
  #searchResult ul li.is-hidden{
    display: none;
  }

  #searchResult ul li.clm-1{
    width: 48%;
    /*width: 268px;*/
  }
  #searchResult ul li.clm-2{
    width: 100%;
    /*width: 552px;*/
  }
  #searchResult ul li.clm-4{
    width: 100%;
    /*width: 1120px;*/
  }

  #searchResult ul li a{
    display: inline-block;
    vertical-align: top;

    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;

    box-sizing: border-box;
    border-radius: 0.625rem 0.625rem;
    overflow: hidden;
    -webkit-box-shadow: 3px 3px 6px rgba(0,0,0,0.15);
    box-shadow: 3px 3px 6px rgba(0,0,0,0.15);
    width: 100%;
    position: relative;
  }

  #searchResult ul li.new a::before{
    content: '';
    display: block;
    width: 2.6875rem;
    height: 2.6875rem;
    background-image: url("../../images/top/icon_new.svg");
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-position: top center;
    position: absolute;
    top: 0.3125rem; left:  0.3125rem;
  }
  #searchResult ul li.revision a::before{
    content: '';
    display: block;
    width: 2.5rem;
    height: 2.5rem;
    background-image: url("../images/icon_revision.svg");
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-position: top center;
    position: absolute;
    top: 0.3125rem; left:  0.3125rem;
  }

  #searchResult ul li a div.thumb{
    background-color: #E0DBCF;
    box-sizing: border-box;
    width: 100%;
    overflow: hidden;
  }
  #searchResult ul li.clm-1 a div.thumb,
  #searchResult ul li.clm-2 a div.thumb{
    /*height: 17.4vw;*/
    /*max-height: 8.4375rem;*/
    max-height: 35vw;
  }
  #searchResult ul li.clm-2.no_caption a div.thumb{
    max-height: unset;
  }

  #searchResult ul li a div.thumb.center{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 0.375rem;
    box-sizing: border-box;
    }
    .js_isIe #searchResult ul li a div.thumb.center{
      padding: 0.5vw;
    }

  #searchResult ul li a div.thumb img{
    width: 100%;
  }

  #searchResult ul li a div.thumb.center img{
    display: inline-block;
    max-width: 90%;
    max-height: 90%;
    width: auto;
    height: 32vw;
    object-fit: contain;
    }
    #searchResult ul li.clm-2 a div.thumb.center img{
      max-width: 96%;
    }

  #searchResult ul li a div.caption{
    box-sizing: border-box;
    margin: 0;
    /*padding: 0.5rem;*/
    /*padding: 0.5rem 0.4375rem 0.5rem 0.5rem;*/
    padding: 2vw;
    width: 100%;
    /*height: 100px;*/
  }

  #searchResult ul li a div.caption p{
    /*font-size: 0.9375rem;*/
    /*font-size: 0.875rem;*/
    font-size: 3.74vw;
    font-weight: 700;
    letter-spacing: 0.125rem;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    word-break: break-all;
    /*letter-spacing: 0.0375rem;*/
    letter-spacing: 0;
    position: relative;
    line-height: 1.5;
    max-height: 12vw;
  }

  .js_isIe #searchResult ul li a div.caption p::before{
    content: '...';
    display: block;
    position: absolute;
    /*top: 2.625rem;*/
    top: 6vw;
    right: 0.5vw;
    width: 4.65vw;
    background-color: #ffffff;
  }
  .js_isIe #searchResult ul li a div.caption p::after{
    content: '';
    height: 100%;
    width: 100%;
    position: absolute;
    background-color: #ffffff;
  }


  #searchResult div.viewMore{
    margin: 14px 0 0 0;
    text-align: center;
  }
  #searchResult div.viewMore div.viewMoreBtn{
    display: inline-block;
    background-color: #ffffff;
    border: 1px solid #c0c0c0;
    border-radius: 4.25rem;
    box-sizing: border-box;
    line-height: 0;
    padding: 0.75rem 1.375rem 0.75rem 1.875rem;
    cursor: pointer;
    -webkit-transition: opacity .5s ease;
    transition: opacity .5s ease;
  }
  #searchResult div.viewMore div.viewMoreBtn:hover{
    opacity: 0.8;
  }
  #searchResult div.viewMore div.viewMoreBtn p{
    display: inline-block;
    vertical-align: middle;
    font-size: 0.875rem;
    font-weight: 700;
    line-height: 1;
  }
  #searchResult div.viewMore div.viewMoreBtn svg{
    display: inline-block;
    vertical-align: middle;
    width: 0.625rem;
    height: 0.625rem;
    margin: 0 0 0 0.75rem;
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
  }


  /* -------------------------------------------------------------------------------------------
  *
  * news
  *
  * ----------------------------------------------------------------------------------------- */

  .news_area{
    background-color: #ffffff;
    padding: 2.5rem 0 0 0;
  }

  #news #news_e,
  #news #news_jh,
  #news #news_college{
    display: none;
  }


}

/* 検索結果文字数調整 */
@media screen and (min-width: 601px) and (max-width: 1199px){
  #searchResult ul li a div.caption p{
    font-size: 1.225vw;
  }
  #searchResult.noFourClm ul li{
    max-height: 25vw;
  }

}


/* タブレット調整部分 */
@media screen and (min-width: 601px) and (max-width: 1024px){
  #searchResult ul{
    padding: 0 10.125vw 0 0;
  }
  #searchResult.noFourClm ul li{
    max-height: 32vw;
  }
}
@media screen and (min-width: 601px) and (max-width: 1000px){
  #searchResult ul{
    padding: 0 10vw 0 0;
  }
}
@media screen and (min-width: 601px) and (max-width: 960px){
  #searchResult ul{
    padding: 0 9.75vw 0 0;
  }
}
@media screen and (min-width: 601px) and (max-width: 920px){
  #searchResult ul{
    padding: 0 9.5vw 0 0;
  }
}
@media screen and (min-width: 601px) and (max-width: 880px){
  #searchResult ul{
    padding: 0 9.25vw 0 0;
  }
}
@media screen and (min-width: 601px) and (max-width: 840px){
  #searchResult ul{
    padding: 0 9vw 0 0;
  }
}
@media screen and (min-width: 601px) and (max-width: 800px){
  #searchResult ul{
    padding: 0 8.75vw 0 0;
  }
}
@media screen and (min-width: 601px) and (max-width: 780px){
  #searchResult ul{
    padding: 0 8.5vw 0 0;
  }
}
@media screen and (min-width: 601px) and (max-width: 740px){
  #searchResult ul{
    padding: 0 8vw 0 0;
  }
}
@media screen and (min-width: 601px) and (max-width: 700px){
  #searchResult ul{
    padding: 0 7.75vw 0 0;
  }
}
@media screen and (min-width: 601px) and (max-width: 660px){
  #searchResult ul{
    padding: 0 7.5vw 0 0;
  }
}
@media screen and (min-width: 601px) and (max-width: 640px){
  #searchResult ul{
    padding: 0 7.25vw 0 0;
  }
}
@media screen and (min-width: 601px) and (max-width: 620px){
  #searchResult ul{
    padding: 0 7.75vw 0 0;
  }
}


/* タブレット調整部分 */
@media screen and (min-width: 601px) and (max-width: 1024px){

  /* -------------------------------------------------------------------------------------------
  *
  * info
  *
  * ----------------------------------------------------------------------------------------- */

  .topInfo{
    background-color: #DDDDDD;
    text-align: left;
  }
  .topInfo p{
    font-size: 0.875rem;
    line-height: 1.57;
    padding: 0.75rem 0.875rem;
  }


  /* -------------------------------------------------------------------------------------------
  *
  * MV
  *
  * ----------------------------------------------------------------------------------------- */

  .slide_text{
    top: 0;
  }




  /* -------------------------------------------------------------------------------------------
  *
  * 検索パネル
  *
  * ----------------------------------------------------------------------------------------- */

  #searchIndex div.searchPanel{
    margin: -20px 0 0 0;
  }

  #searchIndex div.searchPanel ul{
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  #searchIndex div.searchPanel ul:nth-of-type(n+2){
    margin: 0 !important;
  }


  #searchIndex div.searchPanel ul li{
    margin: 0 10px 16px 0 !important;
  }



  /* -------------------------------------------------------------------------------------------
  *
  * 検索結果
  *
  * ----------------------------------------------------------------------------------------- */

  #searchResult{
    padding: 5rem 0 3rem 0;
  }


  #searchResult ul{
    display: block;
    width: 100% !important;
    font-size: 0;
    /*padding: 0 8% 0 0;*/
    /*margin: 0 0 0 0.5%;*/
    }
    #searchResult.noFourClm ul{
      display:-webkit-box;
      display:-ms-flexbox;
      display:flex;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      padding: 0;
      margin: 0;
    }


  #searchResult ul.tab_space-1::after{
    width: 32%;
  }

  #searchResult ul li{
    margin: 0 0 1.8vw 0;
  }

/*
  #searchResult ul li.clm-1{
    width: 32%;
    height: 30.78vw;
  }
  #searchResult ul li.clm-2{
    width: 66%;
    height: 30.78vw;
  }
  #searchResult ul li.clm-4{
    width: 66%;
  }
*/
  #searchResult ul li.clm-1{
    /*width: 29%;*/
    width: 28.75%;
    height: 30.175vw;
    }
    .js_isWin #searchResult ul li.clm-1{
      /*height: 30.1vw;*/
      /*height: 30.155vw;*/
      height: 30.175vw;
    }
    .js_isWin.iPad #searchResult ul li.clm-1{
      height: 30.175vw;
    }
    #searchResult.noFourClm ul li.clm-1{
      width: 32%;
      height: unset !important;
    }


  #searchResult ul li.clm-2{
    /*width: 60%;*/
    width: 59.6%;
    height: 30.175vw;
    }
    .js_isWin #searchResult ul li.clm-2{
      /*height: 30.1vw;*/
      height: 30.155vw;
    }
    .js_isWin.iPad #searchResult ul li.clm-2{
      height: 30.75vw;
    }
    #searchResult.noFourClm ul li.clm-2{
      width: 66%;
      height: unset !important;
    }

  #searchResult ul li.clm-4{
    /*width: 60%;*/
    width: 59.6%;
    /*max-height: 61vw;*/
    /*height: 62.125vw;*/
    height: 62vw;
  }
  .js_isIe #searchResult ul li.clm-1,
  .js_isIe #searchResult ul li.clm-2{
    height: 30.175vw;
  }



  #searchResult ul li.clm-1 a div.thumb,
  #searchResult ul li.clm-2 a div.thumb{
    height: 22vw;
    overflow: hidden;
  }
  #searchResult ul li.clm-4 a div.thumb{
    overflow: hidden;
    }
    #searchResult.noFourClm ul li.clm-1 a div.thumb,
    #searchResult.noFourClm ul li.clm-2 a div.thumb{
      height: 23vw !important;
      max-height: 214px;
    }
    #searchResult.noFourClm ul li.clm-2.no_caption a div.thumb{
      height: 100% !important;
      max-height: unset !important;
    }



  #searchResult ul li a div.caption{
    /*height: 38%;*/
    padding: 0.5rem 0.625rem 0.5rem 0.625rem;
    margin: 0.3125rem 0 0 0;
  }
  .js_isFirefox #searchResult ul li a div.caption,
  .js_isIe #searchResult ul li a div.caption{
    padding: 0.5rem 0.625rem 0.5rem 0.625rem;
    }
    #searchResult.noFourClm ul li a div.caption{
      padding: 0.5rem 0.625rem 0.75rem 0.625rem;
    }



  #searchResult ul li a div.caption p{
    /*font-size: 1.5vw;*/
    /*font-size: 0.9375rem;*/
    font-size: 1.75vw;
    -webkit-line-clamp: 2;
    /*max-height: 3rem;*/
    max-height: 5.5vw;
  }

  .js_isIe #searchResult ul li a div.caption p{
  }
  .js_isIe #searchResult ul li a div.caption p::before{
    top: 2.625rem;
    right: 0.375rem;
  }

}


@media screen and (min-width: 601px) and (max-width: 1000px){
    .js_isWin #searchResult ul li.clm-1{
      /*height: 30.14vw;*/
      height: 30.175vw;
    }
    .js_isWin #searchResult ul li.clm-2{
      /*height: 30.14vw;*/
      height: 30.175vw;
    }
}

@media screen and (min-width: 601px) and (max-width: 900px){
  #searchResult ul li.clm-2{
    width: 59.7%;
  }
  #searchResult ul li.clm-4{
    width: 59.7%;
  }
}


@media screen and (min-width: 601px) and (max-width: 840px){

  /* -------------------------------------------------------------------------------------------
  *
  * 検索結果
  *
  * ----------------------------------------------------------------------------------------- */
  #searchResult ul li.clm-1{
    }
    .js_isWin #searchResult ul li.clm-1{
      /*height: 30.04vw;*/
      /*height: 30.1vw;*/
      height: 30.175vw;
    }
  #searchResult ul li.clm-2{
    width: 59.9%;
    }
    .js_isWin #searchResult ul li.clm-2{
      /*height: 30.04vw;*/
      /*height: 30.1vw;*/
      height: 30.175vw;
    }
  #searchResult ul li.clm-4{
    width: 59.9%;
  }

}

@media screen and (min-width: 601px) and (max-width: 740px){

  /* -------------------------------------------------------------------------------------------
  *
  * 検索結果
  *
  * ----------------------------------------------------------------------------------------- */
  #searchResult ul li.clm-1{
    }
    .js_isWin #searchResult ul li.clm-1{
      /*height: 30.02vw;*/
      height: 30.175vw;
    }
  #searchResult ul li.clm-2{
    width: 60.2%;
    }
    .js_isWin #searchResult ul li.clm-2{
      /*height: 30.02vw;*/
      height: 30.175vw;
    }
  #searchResult ul li.clm-4{
    width: 60.2%;
  }

}

@media screen and (min-width: 601px) and (max-width: 640px){

  /* -------------------------------------------------------------------------------------------
  *
  * 検索結果
  *
  * ----------------------------------------------------------------------------------------- */
/*
  #searchResult ul li.clm-1{
    }
    .js_isWin #searchResult ul li.clm-1{
      height: 29.85vw;
    }
  #searchResult ul li.clm-2{
    }
    .js_isWin #searchResult ul li.clm-2{
      height: 29.85vw;
    }
*/
}


@media screen and (min-width: 601px) and (max-width: 620px){

  #searchResult ul{
    width: 102% !important;
  }
  #searchResult.noFourClm ul{
    width: 100% !important;
  }

  #searchResult ul li.clm-1{
    width: 28%;
    }
    .js_isWin #searchResult ul li.clm-1{
      /*height: 29.4vw;*/
      height: 30.175vw;
    }

  #searchResult ul li.clm-2{
    width: 59%;
    }
    .js_isWin #searchResult ul li.clm-2{
      /*height: 29.4vw;*/
      height: 30.175vw;
    }

  #searchResult ul li.clm-4{
    width: 59%;
  }

}



/* 旧SE等調整部分 */
@media screen and (max-width: 374px){
 
  #searchIndex div.searchPanel{
    max-height: 78vh;
    overflow: auto;
  }
 
  #searchIndex div.searchPanel ul.searchCat li p{
    font-size: 0.75rem;
  }
  #searchIndex div.searchPanel ul.searchCat li.cat_03 p{
    font-size: 0.625rem;
    white-space: nowrap;
  }

  #searchIndex div.searchPanel ul.searchAge li{
    padding: 0.625rem 0.625rem 0.625rem 0.75rem;
  }
  #searchIndex div.searchPanel ul.searchAge li svg{
    width: 0.875rem;
    height: 0.875rem;
  }
  
  #searchIndex div.searchPanel ul li p{
    font-size: 0.75rem;
  }

  #searchIndex div.searchPanel ul.searchSub li{
    padding: 0.625rem 0.625rem 0.625rem 0.875rem;
  }
  #searchIndex div.searchPanel ul.searchSub li p{
    margin: 0 0 0 0.5rem;
  }

}
