@charset "UTF-8";


/* =======================================================
 *   ページ全体
 * ======================================================= */


body, nav, section, header, main, footer, h1, h2, p, ul, li, dl, dt, dd, div {
   margin: 0;
   padding: 0;
}


html {
  font-size: 16px;
}

body {
  background: #fff;
  color: #222;
  font-family: "Helvetica Neue",
    Arial,
    "Hiragino Kaku Gothic ProN",
    "Hiragino Sans",
    Meiryo,
    sans-serif;
}


img { border: 0; }

h2 {
  font-weight: 600;
  font-size: 1.1em;
  color: #123456;
  background-color: #f6faf6;
  margin-block-start: 1em;
  margin-block-end: 1em;
  margin-inline-start: 0px;
  margin-inline-end: 0px;
  padding: 3px 10px;
  border: 1px solid #123456;
  border-radius: 8px;
}


h3 {
  font-weight: 600;
  font-size: 1.0em;
  color: #123456;
  background:linear-gradient(transparent 0%, #bfff7f 100%);
  margin-block-start: 0em;
  margin-block-end: 0em;
  margin-inline-start: 0px;
  margin-inline-end: 0px;
  padding: 3px 0px;
  border: none;
  border-radius: 8px;
}


.mark_gr {
  background:linear-gradient(transparent 55%, #bfff7f 55%);
}

.mark_bl {
  background:linear-gradient(transparent 55%, #afeeee 55%);
}

.mark_or {
  background:linear-gradient(transparent 55%, #ffbf7f 55%);
}

.mark_pk {
  background:linear-gradient(transparent 55%, #ffc0cb 55%);
}


/* =======================================================
  *   ヘッダー
  * ======================================================= */


  header #logo {
    margin: 20px 0 30px;
    text-align: center;
  }
  
  header #logo img {
    vertical-align: bottom;
  }
  
  header nav li {
    display: block;
  }
  

  header nav li {
    margin: 0 0 2.0rem;
    text-align: center;
  }
  
  header nav li a {
    text-decoration: none;
    font-size: 1rem;
    color: #123456;
  }
  
  header nav li.menu a:hover {
    text-decoration:underline;
    color: #f60;
  }

  header nav li.current a {
    font-weight: bold;
    color: #f60;
  }
  


  #top_img {
    width: 100%;
    margin: 20px 0 1.5rem;
  }
 
  #page_name {
    margin: 20px 0 1.5rem;
    padding: 0.4rem 0;
    text-align: center;
    font-weight: 500;
    font-size: 1.5rem;
    color: white;
    background: #123456;
  }

  .lps {
    background-color: #f0f6ff;
    text-align: center;
    margin-top: 10px;
    margin-bottom: 10px;
  }



  /* =======================================================
   *   メイン
   * ======================================================= */
  
  main {
    margin: 0 25px;
  }
  
  main p,
  main dl {
    margin: 1rem 0;
  }
  
  /* ---ホーム｜お知らせ--- */

  #home main #news dl {
    font-size: 0.85em;
  }
  
  #home main #news dt {
    width: 8.5em
  } 

  #home main #news div {
    display: flex;
  }


  #home main #news a {
    text-decoration: underline;
    /*color: #568fcc;*/
  }
  

  /* ---事務所・代表者共通の表設定--- */
  #personal main table,
  #about main table {
    font-size:  0.85em;
    border-collapse: collapse;
    border: 1px solid #bbb;
    margin-top: 20px;
    width: 100%;
  }

  /* ---事務所概要--- */
  #about main th {
    text-align: center;
    background: #f8f8f8;
    padding: 0.5em;
    border: 1px solid #bbb;
  }
  #about main td {
    text-align: left;
    padding: 0.5em;
    border: 1px solid #bbb;
  }
  


  /* ---業務内容--- */

  
  #services main #consul_box ul {
    margin-top: 1em;
    padding: 0;
  
  }

  #services main #consul_box h3 {
    width: 20em;
  }
    
  #services main #consul_box ul {
    margin-left: 2em;
    width: 20em;
  }  

  #services main ul {
    margin-left: 2em;
  }


/*  詳細表示ボタン隠して常に詳細表示 コンサル*/
#services main #consul_box label {
  display: none;
}

#services main #consul_box .hidden_show {
  padding: 10px 0;
  height: auto;
  overflow: visible;
  opacity: 1;
}

#services main #consul_box dl {
  margin-top: 0;
  padding: 0;

}


/*  詳細表示ボタン隠して常に詳細表示 教育*/
#services main #educate_box label {
  display: none;
}

#services main #educate_box .edu_hidden_show {
  padding: 10px 0;
  height: auto;
  overflow: visible;
  opacity: 1;
}

#services main #educate_box dl {
  margin-top: 0;
  padding: 0;

}


  

  #services main table {
    font-size:  0.85em;
    border-collapse: collapse;
    border: 1px solid #bbb;
    margin-top: 20px;
    width: 100%;
    }
  
    #services main #price_tbl th {
    padding: 0.4em;
    border: 1px solid #bbb;
    width: 8em;
    text-align: center;
    background: #f8f8f8;
  }

  #services main #price_tbl td {
    padding: 0.5em;
    border: 1px solid #bbb;
  }



  /* ---代表者情報--- */
  #personal main #career th {
    padding: 0.4em;
    border: 1px solid #bbb;
    width: 4em;
    text-align: center;
    background: #f8f8f8;
  }

  #personal main #career td {
    padding: 0.5em;
    border: 1px solid #bbb;
  }

  #personal main #license th {
    padding: 0.5em;
    border: 1px solid #bbb;
    width: 12em;
    text-align: center;
    background: #f8f8f8;
  }

  #personal main #license td {
    padding: 0.5em;
    border: 1px solid #bbb;
  }


  #personal main #field ul {
    padding: 0 1.5em;
  }


  #personal main #link a {
    font-size: 1.2em;
  }
  


  /* ---お問い合わせボタン--- */

  #contact main #contact_pc {
    display: none;
  }

  #contact main #contact_tab {
    display: none;
  }

  #contact main #contact_sp {
    display: block;
  }

  .contact_btn {
    display: inline-block;
    padding: 0.5em 1em;
    text-decoration: none;
    background: #568fcc;/*ボタン色*/
    color: #FFF;
    border-bottom: solid 4px #627295;
    border-radius: 8px;
  }
  .contact_btn:active {
    /*ボタンを押したとき*/
    transform: translateY(4px);/*下に動く*/
    border-bottom: none;/*線を消す*/
  }


  /* =======================================================
   *   フッター
   * ======================================================= */
  
  footer {
    text-align: center;
  }
  
  footer p {
    margin: 20px 0;
  }
  
  footer #back2top {
    padding: 0.6rem 0;
    text-transform: uppercase;
    font-size: 1rem;
    color: white;
    background: #123456;
  }
  
  footer #back2top a {
    text-decoration: none;
    color: white;
  }
  footer #back2top, #pp a:hover {
    text-decoration: none;
    color: #f60;
  }
