@charset "utf-8";
/* ============= 独自のスタイル ================= */

/* PCのみ */
@media screen and ( min-width:1440px ){
  .sp_hidden{
    display: none;
  }
}

/* NPC */
@media screen and ( max-width:1440px ){
}
/* タブレット想定 */
@media screen and ( max-width:960px ){
  .company_area{
    padding: 70px 0;
  }
  .company_area img{
    max-width: 400px;
  }
  .company_area h2{
    font-size: 160%;
    margin: 40px auto 20px;
  }
  .company_area p{
    font-size: 100%;
  }
  .company_area .wrap{
    margin-top: 60px;
    padding: 60px;
  }
  .company_area table{
    font-size: 100%;
  }
  .company_area th,.company_area td{
    padding: 20px;
  }
  .company_area th{
    width: 140px;
  }
  .company_area table span{
    display: none;
  }
  #news_list li span{
    width: 140px;
    text-align:center;
  }
  #news_list li span small{
    display: block;
    margin: 0 auto 6px;
  }
  #news_list li div{
    width: calc(100% - 170px);
  }
  #media_list.wrap{
    width: calc(100% - 40px);
    max-width: 800px;
  }
  #media_list li{
    width: calc(50% - 20px);
    padding: 30px;
    margin-bottom: 30px;
  }
  #media_list li,#media_list li:nth-child(3n+3){
    margin-right: 20px;
  }
  #media_list li:nth-child(2n+2){
    margin-right: 0;
  }
  #media_list li img{
    height: 23vw;
  }
  #media_list li span{
    margin: 20px 0 10px;
  }

  /* メールフォーム */
  #mailform_area{
    padding: 30px;
    margin: 20px auto 80px;
  }
  #mailform_area li{
    padding: 20px 0;
  }
  #mailform_area li .labelbox,#mailform_area li .inputbox{
    width: 100%;
  }
  #mailform_area li .labelbox{
    padding-bottom: 0;
  }
  #mailform_area li .radio_box input[type="radio"] + label{
    margin: 5px 30px 5px 0;
  }

  .sto_body_con{
    width: 100%;
    padding: 30px 0;
  }
  #sto_rot_image{
    order: 4;
  }
  #sto_rot_info{
    order: 3;
  }
  #sto_rot_info strong{
    font-size: 170%;
  }

}
/* SPのみ */
@media screen and ( max-width:520px ) {
  .pc_hidden{
    display: none;
  }
  .company_area .wrap{
    margin-top: 40px;
    padding: 30px;
  }
  .company_area th,.company_area td{
    display: block;
    text-align:left;
    width: 100%;
  }
  .company_area table{
    margin-bottom: 40px;
  }

  .company_area th{
    padding: 20px 0 0;
    border:none;
    font-size: 100%;
    font-weight: bold;
  }
  .company_area td{
    padding: 0 0 20px;
  }
  .company_area img{
    max-width: 280px;
  }
  .company_area .gmap{
    padding-bottom: 140%;
  }


  #news_list,#media_list{
    margin-top: 30px;
  }
  #news_list li{
    padding: 30px 0 20px;
  }

  #news_list li span{
    width: 100%;
    text-align:left;
  }
  #news_list li spa small{
    display: inline-block;
    margin-right: 20px;
  }
  #news_list li div{
    display: block;
    width: 100%;
    margin-bottom: 10px;
  }

  #media_list.wrap{
    width: calc(100% - 20px);
  }

  #media_list li{
    width: 95%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 20px;
    margin: 0 auto 25px;
  }
  #media_list li:nth-child(2n+2){
    margin-right: auto;
  }
  #media_list li:nth-child(3n+3){
    margin-right: auto;
  }
  #media_list li img{
    width: 35%;
    display: block;
  }
  #media_list li div{
    width: calc(65% - 20px);
  }
  #media_list li span{
    margin: 5px 0 7px;
  }

  /* プライバシーポリシー */
  #prapory_area .pop_box{
    padding: 30px;
  }
  #prapory_area .pop_box h2{
    font-size: 6vw;
    word-break: keep-all;
  }


  #news_cm_area .bt_area a{
    width: calc(100% - 20px);
    max-width: 300px;
    margin: 10px auto;
  }

  /* STO */
  #sto_head_info{
    font-size: 130%;
  }
  #sto_head_info div{
    width: 70%;
  }
  #sto_head{
    height: 60vh;
  }

  #sto_head_backimg,#sto_head_back{
    height: 50vh;
  }

}
