﻿@charset "utf-8";
/* --------------------------------------------------
  ボタン類
-------------------------------------------------- */
.btn01 a {
  background: #cc9a56;
  color: #fff;
  font-family: 'Noto Serif JP', "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  display: inline-block;
  position: relative;
}
.btn01 a::before, .btn01 a > span::before {
  width: 80px;
  height: 8px;
  content: '';
  background: url("../images/common/btn_arrow_blue.png") no-repeat center / cover;
  display: block;
  position: absolute;
  top: -3px;
  bottom: 0;
  right: -40px;
  margin: auto;
  transition: 0.3s;
}
.btn01 a::after {
  content: '';
  margin: 5px;
  border: #fff 1px solid;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  transition: 0.3s;
}
.btn01 a > span {
  display: block;
  padding: 15px 45px;
  position: relative;
  overflow: hidden;
}
.btn01 a > span::before {
  background-image: url("../images/common/btn_arrow_white.png");
}
.btn01 a:hover {
  background: #d7af7a;
  text-decoration: none !important;
}
.btn01 a:hover::before, .btn01 a:hover > span::before {
  -webkit-transform: translateX(10px);
  transform: translateX(10px);
}
@media screen and (max-width:640px) {
  .btn01 a {
    margin-right: 30px;
  }
  .btn01 a::before, .btn01 a > span::before {
    width: 60px;
    background-position: right center;
    right: -30px;
  }
  .btn01 a > span {
    padding: 15px 40px 15px 20px;
  }
}
/* --------------------------------------------------
  アニメーション共通
-------------------------------------------------- */
.animated, .animated *, .animated::before, .animated::after, .animated *::before, .animated *::after {
  -webkit-transform: translate(0, 0) !important;
  transform: translate(0, 0) !important;
  opacity: 1 !important;
}
.slideUp {
  -webkit-transform: translateY(50px);
  transform: translateY(50px);
  transition: 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
  opacity: 0;
}
.slideLeft {
  -webkit-transform: translateX(-50px);
  transform: translateX(-50px);
  transition: 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
  opacity: 0;
}
.slideRight {
  -webkit-transform: translateX(50px);
  transform: translateX(50px);
  transition: 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
  opacity: 0;
}
/* --------------------------------------------------
  Tableレイアウト
-------------------------------------------------- */
table {
  width: 100%;
}
th, td {
  padding: 10px;
  border: #ccc 1px solid;
}
th {
  background: #eee;
}
thead th {
  background: #e5e5e5;
}
.table01 th {
  width: 30%;
  text-align: center;
}
@media screen and (max-width:640px) {
  .table01 {
    margin: 0 auto;
  }
  .table01 th, .table01 td {
    width: auto;
    display: block;
    border-top: none;
  }
  .table01 tr:first-child th {
    border-top: #ccc 1px solid;
  }
  .table02 {
    display: block;
    position: relative;
  }
  .table02 th, .table02 td {
    width: 100% !important;
    display: block;
  }
  .table02 thead {
    display: block;
    float: left;
    overflow-x: scroll;
  }
  .table02 thead th {
    width: auto;
    display: block;
  }
  .table02 tbody {
    width: auto;
    display: block;
    overflow-x: auto;
    white-space: nowrap;
  }
  .table02 tbody tr {
    display: inline-block;
    margin: 0 -2px;
  }
  .table02 tbody td {
    display: block;
  } /* table横スクロール */ .scroll {
    font-size: 14px;
    overflow: auto;
    white-space: nowrap;
  }
  .scroll::-webkit-scrollbar {
    height: 8px;
  }
  .scroll::-webkit-scrollbar-track {
    background: #fff;
  }
  .scroll::-webkit-scrollbar-thumb {
    background: #222;
  }
}
/* --------------------------------------------------
  【注意書き】
-------------------------------------------------- */
.notes > li {
  text-indent: -1em;
  padding-left: 1em;
}
.notes > li:before {
  content: '※';
}
/* --------------------------------------------------
  【リストデザイン】
-------------------------------------------------- */
.disc > li {
  list-style: disc;
  margin-left: 1.5em;
}
li .disc > li {
  text-indent: 0;
}
.decimal > li {
  list-style: decimal;
  margin-left: 1.5em;
}
li .decimal > li {
  text-indent: 0;
} /* 括弧付数字 */ .paren {
  counter-reset: cnt;
}
.paren > li {
  padding-left: 1.6em;
  position: relative;
}
.paren > li::before {
  counter-increment: cnt;
  content: '('counter(cnt) ') ';
  position: absolute;
  top: 0;
  left: 0;
} /* 丸数字 */ .bracket {
  counter-reset: cnt;
}
.bracket > li {
  padding-left: 1.5em;
  position: relative;
}
li .bracket > li {
  text-indent: 0;
}
.bracket > li::before {
  width: 1.2em;
  height: 1.2em;
  counter-increment: cnt;
  content: counter(cnt);
  font-size: 80%;
  display: block;
  text-align: center;
  line-height: 1em;
  border: 1px solid;
  border-radius: 50%;
  position: absolute;
  top: 0.5em;
  left: 0;
}
/* アイウエオ */
.kana > li {
  padding-left: 1.5em;
  position: relative;
}
li .kana > li {
  text-indent: 0;
}
.kana > li::before {
  content: 'ア.';
  position: absolute;
  top: 0;
  left: 0;
}
.kana > li:nth-child(2)::before {
  content: 'イ.';
}
.kana > li:nth-child(3)::before {
  content: 'ウ.';
}
.kana > li:nth-child(4)::before {
  content: 'エ.';
}
.kana > li:nth-child(5)::before {
  content: 'オ.';
}
/* --------------------------------------------
  【Flexbox】
-------------------------------------------- */
.flex {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
}
.flex-inline {
  display: -webkit-inline-flex;
  display: -ms-inline-flex;
  display: inline-flex;
}
.flex-column {
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
}
.flex-reverse {
  -webkit-flex-direction: row-reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}
.flex-wrap {
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.flex-end {
  -webkit-justify-content: flex-end;
  -ms-justify-content: flex-end;
  justify-content: flex-end;
}
.flex-center {
  -webkit-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
}
.flex-between {
  -webkit-justify-content: space-between;
  -ms-justify-content: space-between;
  justify-content: space-between;
}
.flex-around {
  -webkit-justify-content: space-around;
  -ms-justify-content: space-around;
  justify-content: space-around;
}
.flex-evenly {
  -webkit-justify-content: space-evenly;
  -ms-justify-content: space-evenly;
  justify-content: space-evenly;
}
.align-start {
  align-items: flex-start;
}
.align-end {
  align-items: flex-end;
}
.align-center {
  align-items: center;
}
.flex .flex-col2 {
  width: 50%;
  -ms-flex-preferred-size: 50%;
  flex-basis: 50%;
}
.flex .flex-col3 {
  width: 33.33333333%;
  -ms-flex-preferred-size: 33.33333333%;
  flex-basis: 33.33333333%;
}
.flex .flex-col4 {
  width: 25%;
  -ms-flex-preferred-size: 25%;
  flex-basis: 25%;
}
.flex img:not([data-src]), .flex img.lazy-loaded {
  height: auto;
}
/* --------------------------------------------------
  【横並びリスト】
-------------------------------------------------- */
.col > li {
  display: inline-block;
  vertical-align: top;
}
.col2 > li {
  width: 580px;
  margin: 40px 40px 0 0;
}
.col2 > li:nth-child(2n) {
  margin-right: 0;
}
.col3 > li {
  width: 380px;
  margin: 30px 30px 0 0;
}
.col3 > li:nth-child(3n) {
  margin-right: 0;
}
.col4 > li {
  width: 285px;
  margin: 20px 20px 0 0;
}
.col4 > li:nth-child(4n) {
  margin-right: 0;
}
.col2 > li:nth-child(-n+2), .col3 > li:nth-child(-n+3), .col4 > li:nth-child(-n+4) {
  margin-top: 0;
}
@media screen and (max-width: 640px) {
  .sp_col > li {
    width: auto !important;
    display: block;
    margin: 0 auto 20px !important;
  }
  .sp_col > li:last-child {
    margin-bottom: 0 !important;
  }
  .sp_col2 > li {
    width: 48% !important;
    margin: 4% 4% 0 0 !important;
  }
  .sp_col2 > li:nth-child(-n+2) {
    margin-top: 0 !important;
  }
  .sp_col2 > li:nth-child(2n) {
    margin-right: 0 !important;
  }
}
/* --------------------------------------------------
  【画像フロート】
-------------------------------------------------- */
.imgBoxL::after, .imgBoxR::after {
  content: '';
  display: block;
  clear: both;
}
.imgBoxL .txt, .imgBoxR .img {
  float: right;
}
.imgBoxR .txt, .imgBoxL .img {
  float: left;
}
.imgBoxL img, .imgBoxR img {
  max-width: 100%;
  height: auto;
}
@media screen and (max-width: 640px) {
  .imgBoxL .txt, .imgBoxR .txt, .imgBoxL .img, .imgBoxR .img {
    width: auto !important;
    float: none;
  }
  .imgBoxL img, .imgBoxR img {
    display: block;
    margin: 0 auto;
  }
}
/* --------------------------------------------------
  【PostLink】
-------------------------------------------------- */
.post-link {
  margin-top: 40px;
}
.post-link .prev, .post-link .next {
  width: 200px;
}
.post-link a {
  background: #fff;
  color: #222;
  display: block;
  text-align: center;
  padding: 10px 0;
  border: #ccc 1px solid;
  position: relative;
}
.post-link a::before {
  width: 10px;
  height: 10px;
  content: '';
  display: block;
  border-top: #222 1px solid;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  transition: 0.3s;
}
.post-link .prev a::before {
  border-left: #222 1px solid;
  left: 20px;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.post-link .next a::before {
  border-right: #222 1px solid;
  right: 20px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.post-link a:hover {
  text-decoration: none !important;
}
.post-link .prev a:hover::before {
  left: 15px;
}
.post-link .next a:hover::before {
  right: 15px;
}
@media screen and (max-width: 640px) {
  .post-link .prev, .post-link .next {
    width: 40%;
    font-size: 14px;
  }
  .post-link .prev a {
    padding-left: 15px;
  }
  .post-link .next a {
    padding-right: 15px;
  }
  .post-link a::before {
    width: 8px;
    height: 8px;
  }
}
/* --------------------------------------------------
  【PageNavi】
-------------------------------------------------- */
.wp-pagenavi {
  text-align: center;
  margin-top: 60px;
  position: relative
}
.wp-pagenavi a, .wp-pagenavi span {
  display: inline-block;
  padding: 8px 16px;
  border: #222 1px solid;
  border-radius: 3px
}
.wp-pagenavi a:hover, .wp-pagenavi span.current {
  background: #222;
  color: #fff;
  font-weight: normal;
  text-decoration: none !important;
}
.wp-pagenavi .pages {
  font-size: 14px;
  border: none;
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  margin: auto
}
.wp-pagenavi .pages:after {
  content: 'ページ目'
}
.wp-pagenavi .first, .wp-pagenavi .previouspostslink, .wp-pagenavi .nextpostslink, .wp-pagenavi .last {
  font-size: 0;
}
.wp-pagenavi .first::before, .wp-pagenavi .previouspostslink::before, .wp-pagenavi .nextpostslink::before, .wp-pagenavi .last::before {
  font-size: 16px;
}
.wp-pagenavi .first::before {
  content: '« 先頭';
}
.wp-pagenavi .previouspostslink::before {
  content: '‹ 前へ';
}
.wp-pagenavi .nextpostslink::before {
  content: '次へ ›';
}
.wp-pagenavi .last::before {
  content: '最後 »';
}
@media screen and (max-width: 640px) {
  .wp-pagenavi a, .wp-pagenavi span {
    display: none
  }
  .wp-pagenavi .first, .wp-pagenavi .previouspostslink, .wp-pagenavi .nextpostslink, .wp-pagenavi .last {
    display: inline-block
  }
  .wp-pagenavi .first::before, .wp-pagenavi .previouspostslink::before, .wp-pagenavi .nextpostslink::before, .wp-pagenavi .last::before {
    font-size: 14px;
  }
  .wp-pagenavi .pages {
    font-size: 12px;
    display: block;
    padding: 0
  }
}
/* --------------------------------------------------
  【メールフォーム送信ボタン】
-------------------------------------------------- */
.mfp_element_submit, .mfp_element_reset, .mfp_element_button {
  background: #222;
  font-size: inherit;
  font-family: inherit;
}
#mfp_button_cancel {
  background: #aaa;
}
/* --------------------------------------------------
  ぱんくず
-------------------------------------------------- */
#breadcrumb {
  width: 1200px;
  font-size: 11px;
  text-align: right;
  padding: 10px 0;
  margin: 0 auto;
}
@media screen and (max-width: 640px) {
  #breadcrumb {
    display: none;
  }
}
/* --------------------------------------------------
  PC・スマホ切り替え
-------------------------------------------------- */
.mb {
  display: none !important;
}
.pcBlock {
  display: block;
}
@media screen and (max-width: 640px) {
  .pc {
    display: none !important;
  }
  .mb {
    display: initial !important;
  }
  .pcBlock {
    display: initial !important;
  }
  .mbBlock {
    display: block !important;
  }
}
/* --------------------------------------------------
  【ビジュアルエディタ対応】
-------------------------------------------------- */
/* 基本 */
strong {
  font-weight: bold;
}
em {
  font-style: italic;
  font-family: "ＭＳ Ｐゴシック", "sans-serif";
}
blockquote {
  background: #f5f5f5;
  padding: 1.5em;
  margin: 1.5em;
  border: #ccc 1px solid;
  border-radius: 10px;
  position: relative;
}
blockquote::before, blockquote::after {
  font-size: 4em;
  font-family: "ＭＳ Ｐゴシック", sans-serif;
  opacity: 0.2;
  position: absolute;
}
blockquote::before {
  top: -1.2rem;
  left: 0.2rem;
  content: '“';
}
blockquote::after {
  bottom: -3.8rem;
  right: 0.2rem;
  content: '”';
}
blockquote cite {
  font-size: 0.8em;
  opacity: 0.5;
}
hr {
  margin: 1.5em 0;
}
#post p {
  margin-bottom: 1.5em;
}
#post ul {
  list-style: disc;
  margin-left: 1.5em;
}
#post ol {
  list-style: decimal;
  margin-left: 1.5em;
}
#post .txtWp {
  width: 800px;
  margin: 0 auto;
}
#post .marker {
  background: linear-gradient(transparent 75%, #FFD700 75%);
  font-weight: bold;
}
/* エディタ対応ページ表示 */
.wp-block-gallery {
  margin: 0 !important;
}
.wp-block-table {
  margin: 1.5em 0;
}
@media screen and (max-width: 640px) {
  /* 基本 */
  .alignleft, .alignright {
    float: none !important;
    margin: 0 auto !important;
  }
  #post .txtWp {
    width: auto;
  }
}
/* --------------------------------------------------
  サイドバー
-------------------------------------------------- */
#category.column,
#post.column {
  display: flex;
  justify-content: space-between;
}
.columnWrap {
 flex: 0 0 880px;
 padding-right: 40px;
}
#sidebar {
  flex: 0 0 320px;
  padding: 40px;
  background: #f5f5f5;
}
#sidebar ul {
  list-style: none;
  margin-left: 0;
}
#sidebar ul li {
  margin-top: 0.5em;
}
#sidebar .sideMenu > li:first-child {
  margin-top: 0;
}
#sidebar .child {
  padding-left: 1em;
}
#sidebar .child > li {
  position: relative;
  padding-left: 1em;
}
#sidebar .child > li::before {
  content: '-';
  color: #cc9a56;
  font-weight: bold;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  margin: auto;
}
@media screen and (max-width: 640px) {
  #category.column,
  #post.column {
    display: block;
  }
  .columnWrap {
    padding: 0 0 40px;
  }
  #sidebar {
    font-size: 14px;
    padding: 20px;
  }
}
/* --------------------------------------------------
  見出し    ※editor-style.cssにもコピペ必須
-------------------------------------------------- */
/* h2 */
h2.h2, #post h1.h1 {
  padding: 20px;
  font-size: 36px;
  text-align: center;
  margin: 60px 0;
  border-bottom: 1px solid #cc9a56;
}
h2.h2:first-of-type, #post h1.h1:first-of-type {
  margin-top: 0;
}
/* h3 */
h3.h3, #post h2 {
  font-size: 24px;
  background: #00204b;
  color: #fff;
  padding: 5px 5px 5px 30px;
  position: relative;
  margin: 30px 0;
}
h3.h3::before, #post h2::before {
  width: 20px;
  height: 1px;
  content: '';
  background: #fff;
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}
h3.bubble {
  font-size: 24px;
  color: #00204b;
  position: relative;
  padding: 1.5rem 2rem;
  border-bottom: 3px solid #00204b;
  border-left: 3px solid #00204b;
  border-radius: 0 0 0 20px;
  margin: 30px 0;
}
h3.bubble::before {
  position: absolute;
  right: 50px;
  bottom: -21px;
  width: 0;
  height: 0;
  content: '';
  border-width: 21px 21px 0 0;
  border-style: solid;
  border-color: #00204b transparent transparent transparent;
}
h3.bubble::after {
  position: absolute;
  right: 54px;
  bottom: -14px;
  width: 0;
  height: 0;
  content: '';
  border-width: 14px 14px 0 0;
  border-style: solid;
  border-color: #fff transparent transparent transparent;
}
/* h4 */
h4.h4, #post h3 {
  font-size: 20px;
  font-weight: bold;
  padding: 0 0 5px 20px;
  margin: 30px 0;
  border-bottom: #00204b 1px solid;
  position: relative;
}
h4.h4::before, #post h3::before {
  width: 0;
  height: 0;
  content: '';
  border: transparent 8px solid;
  border-left: #cc9a56 10px solid;
  position: absolute;
  top: 8px;
  left: 0;
  margin: auto;
}
h4.h4:first-of-type, #post h3:first-of-type {
/*  margin-top: 0 !important;*/
}
h5.h5, #post h4 {
  font-weight: bold;
  color: #cc9a56;
}
@media screen and (max-width: 640px) {
  h2.h2, #post h1.h1 {
    font-size: 24px;
    margin: 40px 0;
    padding: 10px;
  }
  h2.h2:first-of-type, #post h1.h1:first-of-type {
    margin-top: 0;
  }
  h3.h3, #post h2 {
    font-size: 20px;
  }
  h3.bubble {
    font-size: 20px;
  }
  h4.h4, #post h3 {
    font-size: 16px;
  }
}
/* --------------------------------------------------
  【新着情報カテゴリー用見出し】
-------------------------------------------------- */
#post.news {
  counter-reset: h2;
}
#post.news h2 {
  background: none;
  color: #222;
  font-size: 36px;
  text-align: center;
  padding: 20px;
  margin: 60px 0;
}
#post.news h2:not(.no_num)::before {
  counter-increment: h2;
  content: "第"counter(h2) "　";
  background: none;
  display: inline;
  position: static;
}
#post.news h2::after {
  width: 100%;
  height: 1px;
  content: '';
  background: #cc9a56;
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}
#post.news h3 {
  background: #00204b;
  color: #fff;
  font-size: 24px;
  padding: 5px 5px 5px 30px;
  margin: 80px 0 30px;
  position: relative;
}
#post.news h3:first-of-type {
  margin-top: 0;
}
#post.news h3::before {
  width: 20px;
  height: 1px;
  background: #fff;
  border: none;
  top: 0;
  bottom: 0;
}
#post.news h3 > span {
  display: inline-block;
  padding-left: 40px;
  position: relative;
}
#post.news h3 > span::before {
  width: 30px;
  height: 30px;
  counter-increment: num;
  content: counter(num);
  background: #cc9a56;
  color: #fff;
  font-size: 0.8em;
  display: block;
  text-align: center;
  line-height: 30px;
  border-radius: 50%;
  position: absolute;
  top: 7px;
  left: 0;
}
@media screen and (max-width: 640px) {
  #post.news h3 {
    font-size: 20px;
  }
  #post.news h3 > span::before {
    top: 0;
  }
}
/* --------------------------------------------------
  【下層タイトル・下層共通】
-------------------------------------------------- */
#mainTitle {
  font-family: 'Noto Serif JP', "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  background: url(../images/inner/title_bg.jpg) no-repeat center bottom;
  background-size: cover;
  text-align: center;
  font-size: 36px;
  padding: 50px 0;
  color: #00204b;
}
.bgBox {
  padding: 100px 0 0 300px;
}
.bgBox .txt {
  background: rgba(255, 255, 255, 0.8);
  padding: 90px;
  position: relative;
  z-index: 1;
}
.bgBox .txt::before {
  content: '';
  margin: 20px;
  border: #cc9a56 1px solid;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: -1;
}
.imgBoxR.general .txt {
  width: 650px;
}
.imgBoxR.general .img {
  position: relative;
  margin-right: 20px;
}
.imgBoxR.general .img::before {
  content: '';
  position: absolute;
  left: 20px;
  top: 20px;
  width: 100%;
  height: 100%;
  border: solid 1px #00204b;
  z-index: -1;
}
.general + .general {
  margin-top: 60px;
}
.borderbox {
  margin: 40px 10px;
  padding: 40px 20px;
  border-top: double 5px #00204b;
  border-bottom: double 5px #00204b;
}
.pointList li {
  background: linear-gradient(135deg, #d4a96f 30%, #cc9a56 30%);
  text-align: center;
  padding: 45px 20px;
  flex: 0 0 31%;
  margin: 10px 0;
  position: relative;
  z-index: 1;
}
.pointList li::before {
  content: '';
  margin: 10px;
  border: #fff 1px solid;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: -1;
}
.pointList li .img {
  padding: 30px;
  margin-bottom: 30px;
  display: inline-block;
  width: 180px;
  background: #00204b;
}
.pointList li .txt {
  color: #FFF;
}
.pointList li .txt h3 {
  font-size: 20px;
  border-bottom: solid 1px #FFF;
  margin-bottom: 20px;
  padding-bottom: 10px;
}
.pointList li .txt h3 span {
  margin-right: 10px;
  background: #FFF;
  border-radius: 50%;
  color: #cc9a56;
  padding: 0 10px;
}
.pointList li .txt p {
  text-align: left;
}
.priceList li {
  flex: 0 0 370px;
  margin: 0 45px 30px 0;
  padding: 0;
  border: #00204b 1px solid;
}
.priceList li:nth-child(3n) {
  margin-right: 0;
}
.priceList li dt {
  background: #00204b;
  color: #fff;
  font-size: 26px;
  text-align: center;
  padding: 30px 0;
}
.priceList li dd {
  padding: 20px;
  text-align: center;
}
.priceList li .box {
  background: #f5f5f5;
  padding: 20px;
  text-align: left;
  margin: 20px 0 10px;
}
.catchCopy {
  font-size: 24px;
  text-align: center;
  margin-bottom: 20px;
}
/* 個人情報保護方針に同意する */
.consent p {
  padding: 0 5px 0 20px;
  position: relative;
}
.consent label {
  padding: 0 !important;
}
.consent input[type=checkbox] {
  margin: 9px 3px 0;
  position: absolute;
  top: 0;
  left: 0;
}
/*目次*/
#toc_container {
  margin: 0 auto 1em !important;
}
#toc_container .toc_list {
  counter-reset: num_h2 0;
}
#toc_container .toc_list > li {
  counter-reset: num_h3 0;
}
#toc_container .toc_list > li:before {
  counter-increment: num_h2 1;
  content: "第"counter(num_h2) "　";
}
#toc_container .toc_list > li > ul > li {
  position: relative;
  padding-left: 1.5em;
}
#toc_container .toc_list > li > ul > li:before {
  counter-increment: num_h3 1;
  content: counter(num_h3);
  display: inline-block;
  font-size: 12px;
  line-height: 1.2;
  text-align: center;
  width: 1.4em;
  height: 1.4em;
  border: 1px solid #222;
  border-radius: 50%;
  position: absolute;
  top: 6px;
  left: 0;
}
#toc_container ul ul ul {
    margin-left: 1em;
}
#toc_container .toc_list > li > ul > li > ul > li:before {
  content: '・';
  display: inline-block;
  padding-right: 0.5em;
}
@media screen and (max-width: 640px) {
  #mainTitle {
    background-position: left bottom;
    font-size: 30px;
    padding: 20px 0;
  }
  .bgBox {
    padding: 50px 10px 0 10px;
    background-size: 100% auto !important;
  }
  .bgBox .txt {
    padding: 4.6vw;
  }
  .bgBox .txt::before {
    margin: 1.56vw;
  }
  .imgBoxR.general .img {
    margin-right: 0;
  }
  .imgBoxR.general .img::before {
    content: none;
  }
  .general + .general {
    margin-top: 30px;
  }
  .borderbox {
    margin: 30px 5px 10px;
    padding: 30px 10px;
  }
  .pointList li {
    padding: 30px;
  }
  .pointList li::before {
    margin: 5px;
  }
  .priceList li {
    margin: 0 0 20px;
  }
  .priceList li dt {
    font-size: 20px;
    padding: 10px 0;
  }
  .priceList li dd {
    padding: 10px;
  }
  .priceList li .box {
    padding: 10px;
    margin: 10px 0 5px;
  }
  .catchCopy {
    font-size: 20px;
  }
}
/* --------------------------------------------------
  【顧問業務 取扱分野】
-------------------------------------------------- */
#about .contentList li {
  flex: 0 0 28%;
  margin: 20px 0;
  text-align: center;
}
#about .contentList .btn01 a {
  display: block;
}
#about .contentList .btn01 br {
  display: none;
}
#about .industryList {
  padding: 60px 12px;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}
#about .industryList::before {
  width: 78.125%;
  content: '';
  background: url("../images/top/topIndustry_listBg.jpg") no-repeat center / cover;
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  z-index: -1;
}
#about .industryList li {
  background: linear-gradient(135deg, #d4a96f 30%, #cc9a56 30%);
  text-align: center;
  padding: 45px 20px;
  flex: 0 0 32.487%;
  margin: 10px 0;
  position: relative;
  z-index: 1;
  -webkit-transition: all .5s linear;
  transition: all .5s linear;
}
#about .industryList li:hover {
  background: linear-gradient(135deg, #cc9a56 30%, #d4a96f 30%);
  cursor: pointer;
}
#about .industryList li::before {
  content: '';
  margin: 10px;
  border: #fff 1px solid;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: -1;
}
#about .industryList li::after {
  width: 0;
  height: 0;
  content: '';
  border-top: transparent 25px solid;
  border-right: #00204b 25px solid;
  position: absolute;
  bottom: 0;
  right: 0;
}
#about .industryList h3 {
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  display: inline-block;
  padding-left: 80px;
  position: relative;
}
#about .industryList h3::before {
  width: 60px;
  height: 60px;
  content: '';
  background: url("../images/top/topIndustry_icon01.jpg") no-repeat center / cover;
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}
#about .industryList li:nth-child(2) h3::before {
  background-image: url("../images/top/topIndustry_icon02.jpg");
}
#about .industryList li:nth-child(3) h3::before {
  background-image: url("../images/top/topIndustry_icon03.jpg");
}
#about .industryList li:nth-child(4) h3::before {
  background-image: url("../images/top/topIndustry_icon04.jpg");
}
#about .industryList li:nth-child(5) h3::before {
  background-image: url("../images/top/topIndustry_icon05.jpg");
}
#about .industryList li:nth-child(6) h3::before {
  background-image: url("../images/top/topIndustry_icon06.jpg");
}
#about .industryList li:nth-child(7) h3::before {
  background-image: url("../images/top/topIndustry_icon07.jpg");
}
#about .industryList li:nth-child(8) h3::before {
  background-image: url("../images/top/topIndustry_icon08.jpg");
}
#about .industryList li:nth-child(9) h3::before {
  background-image: url("../images/top/topIndustry_icon09.jpg");
}
@media screen and (max-width: 640px) {
  #about .contentList {
    padding: 0 4vw;
  }
  #about .contentList .btn01 br {
    display: block;
  }
  #about .industryList {
    max-width: 300px;
    padding: 20px 0;
  }
  #about .industryList::before {
    width: 90%;
  }
  #about .industryList li {
    text-align: left;
    padding: 30px;
  }
  #about .industryList li::before {
    margin: 5px;
  }
  #about .industryList li::after {
    border-width: 20px;
  }
  #about .industryList h3 {
    padding-left: 60px;
  }
  #about .industryList h3::before {
    width: 50px;
    height: 50px;
  }
}
/* --------------------------------------------------
  【業種別ページ】
-------------------------------------------------- */
/* 解決実績 */
.industry_case > li {
  flex: 0 0 285px;
  margin-right: 20px;
}
.industry_case > li:nth-child(4n) {
  margin-right: 0;
}
.industry_case > li:nth-child(n+5) {
  margin-top: 30px;
}
.industry_case .img {
  position: relative;
  overflow: hidden;
}
.industry_case .area, .industry_case .field {
  font-size: 14px;
  display: inline-block;
  padding: 0 10px;
  position: absolute;
  top: 0;
  z-index: 1;
}
.industry_case .area {
  background: #fff;
  color: #00204b;
  border: #00204b 1px solid;
  left: 0;
}
.industry_case .field {
  background: #cc9a56;
  color: #fff;
  right: 0;
}
.industry_case .thumbnail {
  background-size: cover;
  background-repeat: no-repeat;
  background-potison: center center;
  padding-top: 66.66%;
  transition: all 0.3s;
}
.industry_case a:hover .thumbnail {
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}
.industry_case .category {
  text-align: center;
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  transform: translateY(-50%);
  z-index: 1;
}
.field_case .industry_case .category {
/*  display: none;*/
}
.industry_case .category span {
  background: #00204b;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  display: inline-block;
  padding: 5px 40px;
}
.industry_case .icon.other{
  display: none;
}

/* コラム */
.field_column{
  position: relative;
}
.field_column .com{
  position: absolute;
  width: 789px;
  height: 100%;
  top: 25px;
  right: 0;
  text-align: center;
  content: "";
}
.industry_column li:first-child{
  width: 380px;
  margin-right: 38px;
}
.industry_column li:not(:first-child){
  padding-top: 89px;
  width: 250px;
}
.industry_column li:not(:first-child):not(:last-child){
  margin-right: 19px;
}
.industry_column .img {
  position: relative;
  overflow: hidden;
}
.industry_column .thumbnail {
  background-size: cover;
  background-repeat: no-repeat;
  background-potison: center center;
  padding-top: 66.66%;
  transition: all 0.3s;
}
.industry_column a:hover .thumbnail {
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}
.industry_column .ttl{
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  margin-top: 15px;
}
@media screen and (max-width: 640px) {
  .industry_case > li {
    max-width: 300px;
    margin: 40px auto 0 !important;
  }
  /* コラム */
  .industry_column li:first-child{
    width: 100%;
    max-width: 300px;
    margin: 0 auto 20px;
  }
  .industry_column li:not(:first-child){
    padding-top: 0;
    width: 100%;
    max-width: 300px;
    margin: 0 auto 20px;
  }
  .industry_column li:not(:first-child):not(:last-child){
    margin: 0 auto 20px;
  }
  .field_column{
    position: static;
  }
  .field_column .com{
    position:static;
    width: 100%;
    height: auto;
    text-align: left;
    margin-bottom: 20px;
  }
}
/* --------------------------------------------------
  【契約書・議事録】
-------------------------------------------------- */
#keiyakusho .midashi{
  padding: 20px;
  font-size: 36px;
  text-align: center;
  margin: 0 0 60px;
  position: relative;
}
#keiyakusho .midashi::before {
  width: 40px;
  height: 1px;
  content: '';
  background: #cc9a56;
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}
#keiyakusho .merit01 {
  background: url(../images/inner/contract02.jpg) no-repeat left top;
  background-size: 80% auto;
}
#keiyakusho .merit02 {
  background: url(../images/inner/contract03.jpg) no-repeat left top;
  background-size: 80% auto;
}
#keiyakusho .merit03 {
  background: url(../images/inner/contract04.jpg) no-repeat left top;
  background-size: 80% auto;
}
#keiyakusho .merit04 {
  background: url(../images/inner/contract05.jpg) no-repeat left top;
  background-size: 80% auto;
}
#keiyakusho .contract01 {
  background: url(../images/inner/contract08.jpg) no-repeat left top / 80% auto;
}
#keiyakusho .contract02 {
  background: url(../images/inner/contract04.jpg) no-repeat left top / 80% auto;
}
#keiyakusho .contract03 .txt {
  width: 650px;
}
#keiyakusho .contract04 {
  background: url(../images/inner/contract09.jpg) no-repeat left top / 80% auto;
}
#keiyakusho .contract_wrap01 {
  width: 580px;
  border: #00204b 1px solid;
}
#keiyakusho .contract_wrap02 {
  width: 380px;
  border: #00204b 1px solid;
}
#keiyakusho .contract_wrap01 h3.h3, #keiyakusho .contract_wrap02 h3.h3 {
  margin-top: 0;
}
#keiyakusho .contract_wrap01 .txt, #keiyakusho .contract_wrap02 .txt {
  padding: 20px;
  padding-top: 0;
}
#keiyakusho .contract_wrap03 {
  width: 100%;
  border: #00204b 1px solid;
}
#keiyakusho .contract_wrap03:not(:last-child) {
  margin-bottom: 40px;
}
#keiyakusho .contract_wrap03 h3.h3 {
  margin-top: 0;
}
#keiyakusho .contract_wrap03 .txt {
  padding: 20px;
  padding-top: 0;
}
@media screen and (max-width: 640px) {
  #keiyakusho .midashi{
      font-size: 24px;
      margin: 40px 0;
      padding: 10px;
  }
  #keiyakusho .contract03 .txt {
    width: 100%;
  }
  #keiyakusho .contract_wrap01, #keiyakusho .contract_wrap02 {
    width: 100%;
    margin-bottom: 20px;
  }
  #keiyakusho .contract_wrap01:last-of-type, #keiyakusho .contract_wrap02:last-of-type {
    margin-bottom: 0;
  }
  #keiyakusho .contract_wrap03:not(:first-child) {
    margin-bottom: 20px;
  }
}
/* --------------------------------------------------
  【裁判対応】
-------------------------------------------------- */
#soshou .merit01 {
  background: url(../images/inner/trial03.jpg) no-repeat left top;
  background-size: 80% auto;
}
#soshou .merit02 {
  background: url(../images/inner/trial04.jpg) no-repeat left top;
  background-size: 80% auto;
}
#soshou .merit03 {
  background: url(../images/inner/trial05.jpg) no-repeat left top;
  background-size: 80% auto;
}
/* --------------------------------------------------
  【事業承継・M＆A】
-------------------------------------------------- */
#shokei .merit01 {
  background: url(../images/inner/business02.jpg) no-repeat left top;
  background-size: 80% auto;
}
#shokei .merit02 {
  background: url(../images/inner/business03.jpg) no-repeat left top;
  background-size: 80% auto;
}
/* --------------------------------------------------
  【債権回収・売掛金回収】
-------------------------------------------------- */
#saiken .midashi {
  padding: 20px;
  font-size: 36px;
  text-align: center;
  margin: 0 0 60px;
  position: relative;
}
#saiken .midashi::before {
  width: 40px;
  height: 1px;
  content: '';
  background: #cc9a56;
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}
#saiken .flowList li {
  display: flex;
  -webkit-justify-content: space-between;
  -ms-justify-content: space-between;
  justify-content: space-between;
  padding-bottom: 30px;
  position: relative;
  z-index: 1;
}
#saiken .flowList li:last-of-type {
  padding-bottom: 0;
}
#saiken .flowList li::before, #saiken .flowList li::after {
  width: 2px;
  height: 100%;
  content: '';
  background: #cc9a56;
  display: block;
  position: absolute;
  top: 0;
  left: 49px;
  z-index: -1;
}
#saiken .flowList li::after {
  width: 0;
  height: 0;
  background: none;
  border: transparent 12px solid;
  border-top: #cc9a56 20px solid;
  top: auto;
  bottom: -12px;
  left: 38px;
}
#saiken .flowList li:last-child::before, #saiken .flowList li:last-child::after {
  content: none;
}
#saiken .flowList li .step {
  width: 100px;
  height: 100px;
  background: #fff;
  color: #cc9a56;
  font-weight: bold;
  flex: 0 0 100px;
  line-height: 1;
  border: #cc9a56 2px solid;
}
#saiken .flowList li .step span {
  font-size: 30px;
}
#saiken .flowList li figure {
  flex: 0 0 250px;
}
#saiken .flowList li .txtWrap {
  flex: 0 0 760px;
}
#saiken .flowList li .title {
  font-size: 22px;
  font-weight: bold;
  display: block;
  padding: 10px 0;
  color: #cc9a56;
  margin-top: 30px;
  border-bottom: #cc9a56 2px solid;
}
#saiken .saiken_wrap {
  width: 100%;
  border: #00204b 1px solid;
}
#saiken .saiken_wrap:not(:last-child) {
  margin-bottom: 40px;
}
#saiken .saiken_wrap h3.h3 {
  margin-top: 0;
}
#saiken .saiken_wrap .txt {
  padding: 0 20px 20px;
}
#saiken .saiken01 {
  margin-bottom: 40px;
}
#saiken .saiken01 li {
  background: linear-gradient(135deg, #d4a96f 30%, #cc9a56 30%);
  text-align: center;
  padding: 45px 20px;
  flex: 0 0 24%;
  margin: 10px 0;
  position: relative;
  z-index: 1;
}
#saiken .saiken01 li::before {
  content: '';
  margin: 10px;
  border: #fff 1px solid;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: -1;
}
#saiken .saiken01 .img {
  padding: 30px;
  margin-bottom: 30px;
  display: inline-block;
  width: 180px;
  background: #00204b;
}
#saiken .saiken01 .txt {
  color: #FFF;
  font-size: 20px;
}
#saiken .saiken01 a:hover {
  text-decoration: none;
  opacity: .6;
}
#saiken .saiken02 dt{
  padding: 5px 5px 5px 20px;
  margin: 20px 0;
  border-bottom: #222 1px solid;
  position: relative;
  font-weight: bold;
}
#saiken .saiken02 dt::before{
  width: 0;
  height: 0;
  content: '';
  border: transparent 5px solid;
  border-left: #222 10px solid;
  position: absolute;
  top: 15px;
  left: 0;
}
@media screen and (max-width: 640px) {
  #keiyakusho .midashi {
    font-size: 24px;
    margin: 40px 0;
    padding: 10px;
  }
  #saiken .flowList li {
    flex-wrap: wrap;
    justify-content: flex-start;
  }
  #saiken .flowList li::before {
    left: 29px;
  }
  #saiken .flowList li::after {
    left: 18px;
  }
  #saiken .flowList li .step {
    height: 60px;
    font-size: 12px;
    flex: 0 0 60px;
  }
  #saiken .flowList li .step span {
    font-size: 24px;
  }
  #saiken .flowList li figure {
    flex: 0 0 180px;
    margin-left: 30px;
  }
  #saiken .flowList li .txtWrap {
    flex: 0 1 100%;
    padding-left: 60px;
  }
  #saiken .flowList li .title {
    margin-top: 0;
  }
  #saiken .saiken01 li {
    padding: 30px;
  }
  #saiken .saiken01 li .img {
    display: none;
  }
  #saiken .saiken01 li::before {
    margin: 5px;
  }
}

/* --------------------------------------------------
  【株主総会・取締役会】
-------------------------------------------------- */
#soukai .shareholders01 {
  background: url(../images/inner/shareholders02.jpg) no-repeat left top / 80% auto;
}
#soukai .shareholders02 {
  background: url(../images/inner/shareholders03.jpg) no-repeat left top / 80% auto;
}
#soukai {
  counter-reset: h2;
}
#soukai h2 {
  padding: 20px;
  font-size: 36px;
  text-align: center;
  margin: 60px 0;
  position: relative;
}
#soukai h2:not(.no_num)::before {
  counter-increment: h2;
  content: "第"counter(h2) "　";
}
#soukai h2::after {
  width: 40px;
  height: 1px;
  content: '';
  background: #cc9a56;
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}
#soukai h2:first-of-type {
  margin-top: 0;
}
/* --------------------------------------------------
  【創業支援・法人化】
-------------------------------------------------- */
#sougyou .pointList li .txt h3 {
  font-size: 18px;
}
@media screen and (max-width: 640px) {
  #sougyou .pointList li .txt h3 {
    font-size: 14px;
  }
}
/* --------------------------------------------------
  【労働トラブル】
-------------------------------------------------- */
#roudou .fieldList li {
  flex: 0 0 23%;
}
#roudou .fieldList li a {
  background: linear-gradient(135deg, #fff 50%, #f5f5f5 50%);
  text-align: center;
  padding: 40px 20px;
  margin: 70px 0 30px;
  position: relative;
  display: block;
  min-height: 170px;
  z-index: 1;
}
#roudou .fieldList li a::before {
  content: '';
  margin: 10px;
  border: #cc9a56 1px solid;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: -1;
}
#roudou .fieldList li a::after {
  width: 0;
  height: 0;
  content: '';
  border-top: transparent 25px solid;
  border-right: #cc9a56 25px solid;
  position: absolute;
  bottom: 0;
  right: 0;
}
#roudou .fieldList h3 {
  font-size: 18px;
  font-weight: bold;
  position: relative;
}
#roudou .fieldList li a:hover {
  opacity: 0.6;
  text-decoration: none !important;
}
#roudou .fieldList li a:hover p, #roudou .fieldList li a:hover h3 {
  color: #cc9a56;
}
#roudou .fieldList .img {
  width: 100px;
  height: 100px;
  display: block;
  position: absolute;
  text-align: center;
  top: -70px;
  left: 0;
  right: 0;
  margin: auto;
  background: #cc9a53;
}
#roudou .flowList li {
  display: flex;
  -webkit-justify-content: space-between;
  -ms-justify-content: space-between;
  justify-content: space-between;
  padding-bottom: 30px;
  position: relative;
  z-index: 1;
}
#roudou .flowList li:last-of-type {
  padding-bottom: 0;
}
#roudou .flowList li::before, #roudou .flowList li::after {
  width: 2px;
  height: 100%;
  content: '';
  background: #cc9a56;
  display: block;
  position: absolute;
  top: 0;
  left: 49px;
  z-index: -1;
}
#roudou .flowList li::after {
  width: 0;
  height: 0;
  background: none;
  border: transparent 12px solid;
  border-top: #cc9a56 20px solid;
  top: auto;
  bottom: -12px;
  left: 38px;
}
#roudou .flowList li:last-child::before, #roudou .flowList li:last-child::after {
  content: none;
}
#roudou .flowList li .step {
  width: 100px;
  height: 100px;
  background: #fff;
  color: #cc9a56;
  font-weight: bold;
  flex: 0 0 100px;
  line-height: 1;
  border: #cc9a56 2px solid;
}
#roudou .flowList li .step span {
  font-size: 30px;
}
#roudou .flowList li figure {
  flex: 0 0 250px;
}
#roudou .flowList li .txtWrap {
  flex: 0 0 760px;
}
#roudou .flowList li h3 {
  font-size: 22px;
  font-weight: bold;
  display: block;
  padding: 10px 0;
  color: #cc9a56;
  margin-bottom: 20px;
  border-bottom: #cc9a56 2px solid;
}
#roudou .flowList li h3 span {
  color: #222;
  font-size: 20px;
  font-weight: normal;
}
#roudou .faqList dl dt {
  display: flex;
  align-items: center;
  line-height: 1.4;
}
#roudou .faqList dl dd {
  border-bottom: #00204b 1px solid;
}
/* 労働トラブル相談メニュー 下層用 */
#roudou_underlayer p {
  text-indent: 1em;
  margin-top: 20px;
}
#roudou_underlayer p.noindent {
  text-indent: 0;
}
#roudou_underlayer h3.h3 {
  margin-top: 80px;
}
#roudou_underlayer h3.h3:first-of-type, #roudou_underlayer p:first-of-type {
  margin-top: 0;
}
#roudou_underlayer .underlayer_wrap {
  counter-reset: num;
}
#roudou_underlayer .underlayer_wrap h3.h3 > span {
  position: relative;
  text-align: center;
  padding: 0 0 0 40px;
}
#roudou_underlayer .underlayer_wrap h3.h3 > span::before {
  position: absolute;
  counter-increment: num;
  content: counter(num);
  background: #cc9a56;
  border-radius: 50%;
  color: #fff;
  width: 30px;
  height: 30px;
  top: 3px;
  left: 0;
  line-height: 30px;
  font-size: 0.8em;
}
#roudou_underlayer .underlayer_wrap p a {
  color: #cc9a56;
}
#roudou_underlayer .underlayer_box {
  background: #f5ebdd;
  padding: 25px;
  position: relative;
}
#roudou_underlayer .underlayer_box::before {
  position: absolute;
  border: #fff 1px solid;
  content: "";
  display: block;
  top: 0px;
  bottom: 0px;
  left: 0px;
  right: 0px;
  margin: 5px;
  z-index: 1;
}
#roudou_underlayer .underlayer_h4 {
  counter-reset: numh4;
}
#roudou_underlayer .underlayer_h4 h4.h4 span {
  position: relative;
  padding: 0 0 0 1em;
}
#roudou_underlayer .underlayer_h4 h4.h4 > span::before {
  position: absolute;
  counter-increment: numh4;
  content: counter(numh4);
  top: -7px;
  left: 0;
  font-size: 1.2em;
}
#roudou_underlayer .underlayer_check > li {
  position: relative;
  padding: 0 0 0 25px;
}
#roudou_underlayer .underlayer_check > li::before {
  position: absolute;
  content: '';
  top: 8px;
  left: 0;
  width: 15px;
  height: 10px;
  border-left: #cc9a56 2px solid;
  border-bottom: #cc9a56 2px solid;
  transform: rotate(-45deg);
}
/* 採用・雇用契約 */
#labor-saiyo #roudou_underlayer .bracket:nth-of-type(2) {
  counter-reset: cnt 6;
}
@media screen and (max-width: 640px) {
  #roudou .imgBoxR .txt {
    margin-top: 20px;
  }
  #roudou .fieldList li a {
    text-align: left;
    padding: 25px 10px 25px 75px;
    margin: 10px 0;
    min-height: auto;
  }
  #roudou .fieldList li a::before {
    margin: 5px;
  }
  #roudou .fieldList li a::after {
    border-width: 20px;
  }
  #roudou .fieldList .img {
    width: 70px;
    height: 70px;
    top: 0;
    bottom: 0;
    left: -10px;
    right: auto;
  }
  #roudou .flowList li {
    flex-wrap: wrap;
    justify-content: flex-start;
  }
  #roudou .flowList li::before {
    left: 29px;
  }
  #roudou .flowList li::after {
    left: 18px;
  }
  #roudou .flowList li .step {
    height: 60px;
    font-size: 12px;
    flex: 0 0 60px;
  }
  #roudou .flowList li .step span {
    font-size: 24px;
  }
  #roudou .flowList li figure {
    flex: 0 0 180px;
    margin-left: 30px;
  }
  #roudou .flowList li .txtWrap {
    flex: 0 1 100%;
    padding-left: 60px;
  }
  #roudou .flowList li h3 {
    font-size: 18px;
  }
  #roudou .flowList li h3 span {
    font-size: 14px;
  }
  /* 労働トラブル相談メニュー 下層用 */
  #roudou_underlayer .underlayer_wrap h3.h3 > span::before {
    top: 0;
  }
  #roudou_underlayer .underlayer_h4 h4.h4 > span::before {
    top: 0;
    font-size: 1em;
  }
}
@media screen and (max-width: 320px) {
  #roudou .pointList li .txt h3 {
    font-size: 16px;
  }
}
/* --------------------------------------------------
  【事業再生・倒産処理】
-------------------------------------------------- */
/*見出し*/
#haigyou {
  counter-reset: h2;
}
#haigyou h2:not(.no_num)::before {
  counter-increment: h2;
  content: "第"counter(h2) "　";
  display: inline;
  background: none;
  position: static;
}
#haigyou h2.h2::after {
  width: 40px;
  height: 1px;
  content: '';
  background: #cc9a56;
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}
#haigyou h3.h3 {
  margin-top: 60px;
}
#haigyou h3.h3:first-of-type, #haigyou p:first-of-type {
  margin-top: 0;
}
#haigyou h2.h2 {
  counter-reset: num;
}
#haigyou h3.h3 > span {
  position: relative;
  text-align: center;
  padding: 0 0 0 40px;
}
#haigyou h3.h3 > span::before {
  position: absolute;
  counter-increment: num;
  content: counter(num);
  background: #cc9a56;
  border-radius: 50%;
  color: #fff;
  width: 30px;
  height: 30px;
  top: 3px;
  left: 0;
  line-height: 30px;
  font-size: 0.8em;
}
#haigyou .case {
  font-size: 20px;
  font-weight: bold;
  padding: 0 0 5px 20px;
  margin: 30px 0;
  border-bottom: #00204b 1px solid;
  position: relative;
}
#haigyou .case::before {
  width: 0;
  height: 0;
  content: '';
  border: transparent 8px solid;
  border-left: #cc9a56 10px solid;
  position: absolute;
  top: 8px;
  left: 0;
  margin: auto;
}
@media screen and (max-width: 640px) {
  #haigyou .case {
    font-size: 16px;
  }
}
/* --------------------------------------------------
  【知的財産】
-------------------------------------------------- */
/*見出し*/
#chizai {
  counter-reset: h2;
}
#chizai h2 {
  padding: 20px;
  font-size: 36px;
  text-align: center;
  margin: 60px 0;
  position: relative;
}
#chizai h2:not(.no_num)::before {
  counter-increment: h2;
  content: "第"counter(h2) "　";
}
#chizai h2::after {
  width: 40px;
  height: 1px;
  content: '';
  background: #cc9a56;
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}
#chizai h3.h3 {
  margin-top: 80px;
}
#chizai h3.h3:first-of-type, #chizai p:first-of-type {
  margin-top: 0;
}
#chizai .ip_wrap {
  counter-reset: num;
}
#chizai .ip_wrap h3.h3 > span {
  position: relative;
  text-align: center;
  padding: 0 0 0 40px;
}
#chizai .ip_wrap h3.h3 > span::before {
  position: absolute;
  counter-increment: num;
  content: counter(num);
  background: #cc9a56;
  border-radius: 50%;
  color: #fff;
  width: 30px;
  height: 30px;
  top: 3px;
  left: 0;
  line-height: 30px;
  font-size: 0.8em;
}
#chizai .txt p:not(:last-child), #chizai .example p:not(:last-child) {
  margin-bottom: 20px;
}
#chizai .box {
  padding: 20px 40px;
  margin: 30px 0;
  border: 1px solid #cc9a56;
}
#chizai .example dt {
  position: relative;
}
#chizai .example dt p {
  font-size: 18px;
  color: #fff;
  background: linear-gradient(135deg, #d4a96f 30%, #cc9a56 30%);
  padding: 50px 30px 50px 40px;
  margin: 0 0 20px 130px;
  position: relative;
  z-index: 1;
  width: 88%;
  border-radius: 15px;
}
/* 吹き出し */
#chizai .example dt p::before {
  position: absolute;
  z-index: 99;
  top: 42%;
  display: inline-block;
  width: 0;
  height: 0;
  content: '';
  border-style: solid;
  left: -1em;
  border-width: 10px 13px 10px 5px;
  border-color: transparent #d4a96f transparent transparent;
}
/* アイコン */
#chizai .example dt::after {
  content: '';
  width: 80px;
  height: 80px;
  background: url(../images/inner/icon_example01.png)no-repeat center / 80px 80px;
  position: absolute;
  top: 50%;
  left: 20px;
  transform: translate(0, -50%);
  z-index: 100;
}
@media screen and (max-width: 640px) {
  #chizai .ip_wrap h3.h3 > span::before {
    top: 0;
  }
  #chizai .example dt p {
    font-size: 16px;
    padding: 15px;
    margin: 0 0 20px 75px;
    width: 80%;
  }
  /* アイコン */
  #chizai .example dt::after {
    width: 40px;
    height: 40px;
    background: url(../images/inner/icon_example01.png)no-repeat center / 40px 40px;
    top: 50%;
    left: 20px;
  }
}
@media screen and (max-width: 480px) {
  #chizai .example dt p {
    font-size: 16px;
    padding: 15px;
    margin: 0 0 20px 75px;
    width: 70%;
  }
  /* アイコン */
  #chizai .example dt::after {
    width: 40px;
    height: 40px;
    background: url(../images/inner/icon_example01.png)no-repeat center / 40px 40px;
    top: 50%;
    left: 20px;
  }
}
/* --------------------------------------------------
  業種別詳細ページ
-------------------------------------------------- */
#about_industry .industry_main {
  height: 480px;
  background-color: #00204b;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  display: flex;
  align-items: center;
}
#realestate_demo #realestate #about_industry .industry_main{
  background-image: url("../images/inner/realestate_mainttl_bg.jpg");
}
#about_industry .industry_main .copy {
  color: #fff;
  padding: 60px;
}
#about_industry .industry_main .title {
  font-size: 36px;
  font-weight: 600;
  line-height: 1.5;
  margin-bottom: 20px;
}
#about_industry .industry_main .title span {
  font-size: 48px;
  font-weight: bold;
  display: block;
}
#about_industry .industry_main .sub span {
  display: inline-block;
  padding: 0 60px;
  position: relative;
}
#about_industry .industry_main .sub span::before, #about_industry .industry_main .sub span::after {
  width: 40px;
  height: 1px;
  content: "";
  background: #fff;
  display: block;
  margin: auto;
  position: absolute;
  top: 0;
  bottom: 0;
}
#about_industry .industry_main .sub span::before {
  left: 0;
}
#about_industry .industry_main .sub span::after {
  right: 0;
}
#about_industry .industry_contact {
  color: #fff;
  padding: 40px 0;
  margin: 60px 0;
  position: relative;
  z-index: 1;
}
#about_industry .industry_contact::before {
  width: 100vw;
  height: 100%;
  content: "";
  background: #00204b;
  position: absolute;
  top: 0;
  left: 50%;
  z-index: -1;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
#about_industry .industry_contact .phone {
  font-size: 24px;
  text-align: center;
  line-height: 1.5;
}
#about_industry .industry_contact .tel {
  font-size: 48px;
  font-weight: 600;
}
#about_industry .industry_contact .hours {
  font-size: 16px;
}
#about_industry .industry_contact .contact_btn {
  margin-left: 40px;
}
#about_industry .industry_contact .contact_btn a {
  background: #cc9a56;
  color: #fff;
  font-size: 22px;
  display: block;
  padding: 20px 40px;
  position: relative;
  z-index: 1;
}
#about_industry .industry_contact .contact_btn a:hover {
  background: #d7af7a;
}
#about_industry .industry_contact .contact_btn a::before {
  content: "";
  margin: 5px;
  border: #fff 1px solid;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: -1;
}
#about_industry .industry_contact .contact_btn a span {
  display: inline-block;
  padding: 0 80px 0 35px;
  position: relative;
}
#about_industry .industry_contact .contact_btn a span::before, #about_industry .industry_contact .contact_btn a span::after {
  content: "";
  display: block;
  margin: auto;
  position: absolute;
  top: 0;
  bottom: 0;
}
#about_industry .industry_contact .contact_btn a span::before {
  width: 25px;
  height: 18px;
  background: url("../images/common/icon_mail.png") no-repeat center / cover;
  left: 0;
}
#about_industry .industry_contact .contact_btn a span::after {
  width: 60px;
  height: 8px;
  background: url("../images/common/arrow_white.png") no-repeat center / cover;
  right: 0;
  transition: 0.3s;
}
#about_industry .industry_contact .contact_btn a:hover span::after {
  -webkit-transform: translateX(5px);
  transform: translateX(5px);
}
#about_industry .trable_list {
  background: #f5f5f5;
  font-size: 18px;
  padding: 40px 80px;
  margin-bottom: 60px;
  border: #ddd 8px solid;
  position: relative;
}
#about_industry .trable_list.education_list {
  padding: 40px 30px;
}
#about_industry .trable_list::after {
  width: 0;
  height: 0;
  content: "";
  margin: auto;
  border: transparent 160px solid;
  border-top: #00204b 60px solid;
  position: absolute;
  bottom: -220px;
  left: 0;
  right: 0;
  z-index: -1;
}
#about_industry .trable_list li {
  flex: 0 0 48%;
  padding-left: 1.5em;
  position: relative;
}
#about_industry .trable_list li:nth-child(n+3) {
  margin-top: 10px;
}
#about_industry .trable_list li::before, #about_industry .trable_list li::after {
  content: "";
  display: block;
  position: absolute;
}
#about_industry .trable_list li::before {
  width: 1.2em;
  height: 1.2em;
  background: #fff;
  border: #ccc 0.15em solid;
  top: 0.3em;
  left: 0;
}
#about_industry .trable_list li::after {
  width: 1em;
  height: 0.6em;
  border-bottom: #c00 0.2em solid;
  border-left: #c00 0.2em solid;
  top: 0.3em;
  left: 0.3em;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
#about_industry .trable_list li:nth-child(odd) {
  margin-right: 4%;
}
#about_industry .trable_contents {
  padding: 40px;
  border: #00204b 8px solid;
}
#about_industry .trable_contents .marker {
  background: linear-gradient(transparent 60%, #ffff00 60%);
}
#about_industry .industry_service > li {
  flex: 0 0 380px;
  margin-right: 30px;
}
#about_industry .industry_service > li:nth-child(3n) {
  margin-right: 0;
}
#about_industry .industry_service > li:nth-child(n+4) {
  margin-top: 40px;
}
#about_industry .industry_service h3 {
  background: #00204b;
  color: #fff;
  font-size: 20px;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  padding: 10px;
}
#about_industry .industry_service.constructionlist h3{
  min-height: calc(2.5em * 1.5 + 20px);
}

#about_industry .industry_service figure {
  margin-bottom: 10px;
}
#about_industry .reason_box {
  flex: 0 0 580px;
  margin-right: 40px;
  border: #00204b 1px solid;
}
#about_industry .reason_box:nth-of-type(2n) {
  margin-right: 0;
}
#about_industry .reason_box:nth-of-type(n+3) {
  margin-top: 40px;
}
#about_industry .reason_box:last-of-type {
  display: flex;
  flex: auto;
  margin-right: 0;
}
#about_industry .reason_box:last-of-type figure {
  flex: 0 0 580px;
}
#about_industry .reason_box figure img {
  width: 100%;
}
#about_industry .reason_box .txt {
  padding: 30px;
}
#about_industry .reason_box h3 {
  font-size: 20px;
  text-align: center;
  margin-bottom: 15px;
}
#about_industry .reason_box h3 span {
  border-bottom: #222 1px solid;
}
#about_industry .reason_box dl dt {
  text-align: center;
  margin: 10px 0;
  position: relative;
  z-index: 1;
}
#about_industry .reason_box dl dt::before {
  width: 100%;
  height: 1px;
  content: '';
  background: #222;
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  z-index: -1;
}
#about_industry .reason_box dl dt span {
  background: #fff;
  display: inline-block;
  padding: 0 20px;
}
#about_industry .reason_box dl dd ol {
  counter-reset: cnt;
}
#about_industry .reason_box dl dd ol li {
  font-size: 14px;
  padding-left: 30px;
  position: relative;
}
#about_industry .reason_box dl dd ol li::before {
  width: 20px;
  height: 20px;
  counter-increment: cnt;
  content: counter(cnt);
  background: #00204b;
  color: #fff;
  display: block;
  text-align: center;
  line-height: 20px;
  position: absolute;
  top: 2px;
  left: 0;
}
#about_industry .faqList dl dt {
  display: flex;
  align-items: center;
}
#about_industry .faqList dl dd {
  border-bottom: #00204b 1px solid;
}
#about_industry .industry_staff li {
  flex: 0 0 30%;
  margin: 0 5% 40px 0;
}
#about_industry .industry_staff li:nth-child(3n), #about_industry .industry_staff li:last-child {
  margin-right: 0;
}
#about_industry .industry_staff li:nth-child(n+4) {
  margin-top: 40px;
}
#about_industry .industry_staff li a:hover{
	opacity: .7;
	text-decoration: none;
}
#about_industry .industry_staff figure {
  margin-bottom: 20px;
  box-shadow: -10px 10px #f5f5f5;
}
#about_industry .industry_staff img {
  width: 100%;
}
#about_industry .industry_staff .info {
  line-height: 1;
  padding-bottom: 10px;
  position: relative;
}
#about_industry .industry_staff .info::before {
  width: 40px;
  height: 2px;
  content: "";
  background: #00204b;
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
}
#about_industry .industry_staff .en {
  font-size: 12px;
  margin-bottom: 5px;
}
#about_industry .industry_staff h3 {
  font-size: 22px;
  margin-right: 10px;
}
#about_industry .industry_staff .post {
  color: #00204b;
  font-size: 12px;
  display: inline-block;
  padding: 2px 5px;
  border: #00204b 1px solid;
}
@media screen and (max-width: 640px) {
  #about_industry .industry_main {
    height: auto;
    background-position: right top;
    margin: 0 -5vw;
  }
  #about_industry .industry_main .copy {
    padding: 40px 5%;
  }
  #about_industry .industry_main .title {
    font-size: 20px;
  }
  #about_industry .industry_main .title span {
    font-size: 30px;
  }
  #about_industry .industry_main .sub {
    font-size: 14px;
    line-height: 1.5;
    padding-top: 10px;
    border-top: #fff 1px solid;
  }
  #about_industry .industry_main .sub span {
    padding: 0;
  }
  #about_industry .industry_main .sub span::before, #about_industry .industry_main .sub span::after {
    content: none;
  }
  #about_industry .industry_contact {
    flex-direction: column;
    padding: 5% 0;
    margin: 40px 0;
  }
  #about_industry .industry_main + .industry_contact {
    margin-top: 0;
  }
  #about_industry .industry_contact .phone {
    font-size: 16px;
  }
  #about_industry .industry_contact .tel {
    font-size: 30px;
  }
  #about_industry .industry_contact .tel a {
    color: #fff;
  }
  #about_industry .industry_contact .hours {
    font-size: 14px;
  }
  #about_industry .industry_contact .contact_btn {
    width: 100%;
    max-width: 300px;
    text-align: center;
    margin: 20px auto 0;
  }
  #about_industry .industry_contact .contact_btn a {
    font-size: 18px;
    line-height: 1.5;
    padding: 15px;
  }
  #about_industry .trable_list {
    font-size: 16px;
    padding: 20px !important;
    margin-bottom: 40px;
    border-width: 6px;
    position: relative;
  }
  #about_industry .trable_list.education_list{
    padding:20px;
  }
  #about_industry .trable_list::after {
    border-width: 100px;
    border-top-width: 40px;
    bottom: -140px;
  }
  #about_industry .trable_list li:nth-child(odd) {
    margin-right: 0 !important;
  }
  #about_industry .trable_contents {
    padding: 20px;
    border-width: 4px;
  }
  #about_industry .industry_service > li {
    max-width: 320px;
    margin: 40px auto 0 !important;
  }
  #about_industry .reason_box {
    margin: 40px auto 0 !important;
  }
  #about_industry .reason_box:last-of-type {
    display: block;
  }
  #about_industry .reason_box .txt {
    padding: 20px;
  }
  #about_industry .reason_box dl dt span {
    padding: 0 10px;
  }
  #about_industry .reason_box dl dd ol li {
    line-height: 1.5;
  }
  #about_industry .reason_box dl dd ol li + li {
    margin-top: 0.5em;
  }
  #about_industry .industry_staff li {
    max-width: 280px;
    margin: 30px auto 0 !important;
  }
  #about_industry .industry_staff .en {
    font-size: 14px;
  }
  #about_industry .industry_staff h3 {
    font-size: 24px;
  }
  #about_industry .industry_staff .post {
    font-size: 14px;
    padding: 5px 10px;
  }
}
/* --------------------------------------------------
  顧問業務 取扱分野：小売店・卸売業
-------------------------------------------------- */
#wholesaler .industry_service li:nth-child(7) h3, #wholesaler .industry_service li:nth-child(9) h3 {
  padding: 28px 10px;
}
@media screen and (max-width: 640px) {
  #wholesaler .industry_service li:nth-child(7) h3, #wholesaler .industry_service li:nth-child(9) h3 {
    padding: 10px;
  }
}
/* --------------------------------------------------
  顧問業務 取扱分野：金融業・保険業
-------------------------------------------------- */
#finance_demo #about_industry .trable_list {
  padding: 40px 20px;
}
#finance_demo #about_industry .trable_list li {
  flex: 0 0 49.6%;
}
#about_industry .trable_list li:nth-child(odd) {
  margin-right: .8%;
}
#finance_demo .industry_service li:nth-child(5) h3 {
  padding: 28px 10px;
}
@media screen and (max-width: 640px) {
  #finance_demo .industry_service li:nth-child(5) h3 {
    padding: 10px;
  }
}
/* --------------------------------------------------
  【顧問料金】
-------------------------------------------------- */
/*プラン表*/
#price .priceWrap{
	margin-bottom: 60px;
}
#price .priceWrap table {
  border-collapse: collapse;
  margin: 0 auto;
  padding: 0;
  width: 100%;
  table-layout: fixed;
}
#price .priceWrap thead th{
  padding: 1em .8em;
  border-right: #fff 3px solid !important;
  background: #fff;
}
#price .priceWrap table tr {
  background-color: #fff;
}
#price .priceWrap table td {
  text-align: center;
  border-bottom: #ccc 1px solid;
  border-top:none;
  border-left:none;
  border-right: none;
	padding: 20px 0;
}
#price .priceWrap table th {
  background: #fff;
  border-bottom: #ccc 1px solid;
  border-top:none;
  border-left:none;
  border-right: none;
	padding: 5px 0;
}
#price .priceWrap table th.none {
  border:none;
}
#price .priceWrap .plan{
  color: #fff;
  font-size: 1.4em;
}
#price .priceWrap .plan1{
  background: linear-gradient(90deg, #4D99FF, #1176FF);
}
#price .priceWrap .plan2{
  background: linear-gradient(90deg, #1176FF, #0053C3);
  position: relative;
}
#price .priceWrap .plan3{
  background: linear-gradient(90deg, #0053C3, #00367E);
  position: relative;
}
#price .priceWrap .plan4{
  background: linear-gradient(90deg, #00367E, #00204b);
  position: relative;
}
#price .priceWrap .plan2 span,
#price .priceWrap .plan3 span,
#price .priceWrap .plan4 span{
  position: absolute;
  content: '';
  top: -24px;
  right: 0px;
  margin: auto;
  background: #cc9a56;
  font-size: .6em;
  padding: 0 20px;
}
#price .priceWrap .price span {
    font-size: .8em;
}

#price {
  background: url("../images/top/topPrice_bg.png") no-repeat center bottom / contain;
}
#price ul.flex {
  margin-bottom: 30px;
}
#price .flex li {
  border: #00204b 1px solid;
  margin: 20px 0;
  flex: 0 0 580px;
}
#price .flex li:first-child {
  margin-right: 40px;
}
#price .flex li:last-child {
  flex: 0 0 100%;
}
#price h2 {
  margin-bottom: 30px;
}
#price .plan dt {
  background: #00204b;
  color: #fff;
  font-size: 26px;
  text-align: center;
  padding: 30px 0;
}
#price .plan dt .monthly {
  background: #cc9a56;
  font-size: 18px;
  padding: 0 20px;
  margin-right: 20px;
}
#price .plan dd {
  padding: 20px;
  font-size: 18px;
  font-weight: bold;
  color: #b51616;
}
#price .plan dd ul li {
  border: none;
  margin: 0;
}
#price .plan.premium dd {
  padding: 40px 120px;
}
#price .plan dd span {
  margin-right: 15px;
}
#price .plan .box {
  background: #f5f5f5;
  color: #222;
  padding: 5px 10px;
  font-weight: normal;
  display: inline-block;
}
#price .price01 dt {
  font-weight: bold;
  padding: 0 0 5px 20px;
  margin-bottom: 20px;
  border-bottom: #00204b 1px solid;
  position: relative;
}
#price .price01 dt::before {
  width: 0;
  height: 0;
  content: '';
  border: transparent 8px solid;
  border-left: #cc9a56 10px solid;
  position: absolute;
  top: 8px;
  left: 0;
  margin: auto;
}
@media screen and (max-width: 640px) {
  /*プラン表*/
  #price .priceWrap{
    padding-top: 40px;
    overflow-x: scroll;
  }
  #price .priceWrap table{
    width:1000px;
  }
  #price .priceWrap table td {
	padding:0;
  }

  #price .priceWrap .plan{
    font-size: 1em;
  }
  #price .priceWrap .plan2 span,
  #price .priceWrap .plan3 span,
  #topPrice .priceWrap .plan3 span,
  #topPrice .priceWrap .plan4 span{
    top:-18px;
  }

  #price {
    background-size: 150% auto;
    background-position: right bottom;
  }
  #price ul.mbBlock {
    margin-bottom: 20px;
  }
  #price .flex li {
    margin: 20px 0 10px;
  }
  #price .flex li:first-child {
    margin-right: 0;
  }
  #price .plan dt {
    font-size: 20px;
    line-height: 1.5;
    padding: 10px 0;
  }
  #price .plan dt .monthly {
    font-size: 14px;
    padding: 0 10px;
    margin-right: 10px;
  }
  #price .plan dd {
    padding: 10px !important;
    font-size: 16px !important;
  }
  #price .plan dd li.mbBlock {
    text-align: right;
  }
  #price .plan .box {
    font-size: 14px;
  }
}
/* --------------------------------------------------
  【公益通報窓口設置】
-------------------------------------------------- */
#report .report01, #report .report02, #report .report03 {
  counter-reset: cnt;
}
#report .report01 li, #report .report02 li {
  margin: 40px 0 0 0;
}
#report .report01 li h3, #report .report02 li h3, #report .report03 li dt {
  position: relative;
  padding: 0 0 0 40px;
  color: #00204b;
  font-size: 20px;
  margin: 0 0 20px;
}
#report .report01 li h3::before, #report .report02 li h3::before, #report .report03 li dt::before {
  position: absolute;
  counter-increment: cnt;
  content: counter(cnt);
  color: #fff;
  text-align: center;
  background: #00204b;
  width: 30px;
  height: 30px;
  line-height: 30px;
  font-size: 16px;
  border-radius: 50%;
  top: 0;
  left: 0;
  bottom: 0;
  margin: auto;
}
#report .report01 li p, #report .report02 li p {
  padding: 0 0 0 40px;
}
#report .report03 li {
  width: 280px;
  border: #cc9a56 2px solid;
  padding: 20px;
}
#report .report03 li dt {
  padding: 40px 0 0 0;
  border-bottom: #00204b 1px solid;
  height: 160px;
}
#report .report03 li dt::before {
  left: 0;
  bottom: auto;
  right: 0;
}
#report .report04 li {
  display: flex;
  -webkit-justify-content: space-between;
  -ms-justify-content: space-between;
  justify-content: space-between;
  padding-bottom: 30px;
  position: relative;
  z-index: 1;
}
#report .report04 li:last-of-type {
  padding-bottom: 0;
}
#report .report04 li::before, #report .report04 li::after {
  width: 2px;
  height: 100%;
  content: '';
  background: #cc9a56;
  display: block;
  position: absolute;
  top: 0;
  left: 49px;
  z-index: -1;
}
#report .report04 li::after {
  width: 0;
  height: 0;
  background: none;
  border: transparent 12px solid;
  border-top: #cc9a56 20px solid;
  top: auto;
  bottom: -12px;
  left: 38px;
}
#report .report04 li:last-child::before, #report .report04 li:last-child::after {
  content: none;
}
#report .report04 li .step {
  width: 100px;
  height: 100px;
  background: #fff;
  color: #cc9a56;
  font-weight: bold;
  flex: 0 0 100px;
  line-height: 1;
  border: #cc9a56 2px solid;
}
#report .report04 li .step span {
  font-size: 30px;
}
#report .report04 li figure {
  flex: 0 0 250px;
}
#report .report04 li .txtWrap {
  flex: 0 0 760px;
}
#report .report04 li h3 {
  font-size: 22px;
  font-weight: bold;
  display: block;
  padding: 10px 0;
  color: #cc9a56;
  margin-bottom: 20px;
  border-bottom: #cc9a56 2px solid;
}
#report th {
  width: 33%;
  background: #cc9a56;
  color: #fff;
}
#report .report05 th {
  width: 25% !important;
}
#report td {
  text-align: center;
  color: #cc9a56;
  font-weight: bold;
}
#report th.sub {
  background: #f5ebdd;
  color: #222;
}
#report .point {
  padding: 40px;
  background: #f2f4f6;
  margin: 20px 0 0 0;
}
#report .faqList dl dt {
  display: flex;
  align-items: center;
  line-height: 1.4;
}
#report .faqList dl dd {
  border-bottom: #00204b 1px solid;
}
@media screen and (max-width: 640px) {
  #report .report03 li {
    width: 100%;
    margin: 0 0 20px;
  }
  #report .report03 li:last-child {
    margin-bottom: 0;
  }
  #report .report03 li dt {
    padding-bottom: 20px;
    height: auto;
  }
  #report .report04 li {
    flex-wrap: wrap;
    justify-content: flex-start;
  }
  #report .report04 li::before {
    left: 29px;
  }
  #report .report04 li::after {
    left: 18px;
  }
  #report .report04 li .step {
    height: 60px;
    font-size: 12px;
    flex: 0 0 60px;
  }
  #report .report04 li .step span {
    font-size: 24px;
  }
  #report .report04 li figure {
    flex: 0 0 180px;
    margin-left: 30px;
  }
  #report .report04 li .txtWrap {
    flex: 0 1 100%;
    padding-left: 60px;
  }
  #report .report04 li h3 {
    font-size: 18px;
  }
  #report th {
    width: auto;
  }
  #report .report05 th {
    width: auto !important;
  }
}
/* --------------------------------------------------
  【導入事例】
-------------------------------------------------- */
#case .caseList .caseBox a:hover {
  text-decoration: none;
}
/* 詳細 */
#post.case .tag {
  list-style: none;
  margin: 0 0 20px;
}
#post.case .tag li {
  margin: 0 5px 5px 0;
}
#post.case .tag .area {
  color: #00204b;
  font-size: 14px;
  padding: 0 10px;
  border: #00204b 1px solid;
}
#post.case .tag .cat a {
  background: #cc9a56;
  color: #fff;
  font-size: 14px;
  display: block;
  padding: 0 10px;
  border: #cc9a56 1px solid;
}
#post.case .tag .cat.industry a {
  background: #fff;
  color: #cc9a56;
}
#post.case h1.h1 {
  font-size: 24px;
  text-align: left;
  padding: 0 0 10px;
  border-bottom: #cc9a56 1px solid;
}
#post.case h1.h1::before {
  content: none;
}
#post.case h2 {
  font-size: 20px;
  margin-bottom: 10px;
}
@media screen and (max-width: 640px) {
  /* 詳細 */
  #post.case h1.h1 {
    font-size: 22px;
  }
  #post.case .tag .date {
    width: 100%;
  }
  #post.case .tag .area, #post.case .tag .cat a {
    font-size: 12px;
    padding: 0 5px;
  }
}
/* --------------------------------------------------
  【よくあるご質問】
-------------------------------------------------- */
#faq .faqList dl dt {
  display: flex;
  align-items: center;
  line-height: 1.4;
}
#faq .faqList dl dd {
  border-bottom: #00204b 1px solid;
}
/* --------------------------------------------------
  【弁護士紹介】
-------------------------------------------------- */
#staff .stafflist {
  margin: 40px 0;
}
#staff .stafflist > li {
  flex: 0 0 30%;
  margin: 0 5% 40px 0;
}
#staff .stafflist > li:nth-child(3n), #staff .stafflist > li:last-child {
  margin-right: 0;
}
#staff .stafflist a {
  display: block;
}
#staff .stafflist a:hover {
  text-decoration: none;
  opacity: 0.8;
}
#staff .stafflist > li .img {
  position: relative;
  z-index: 1;
}
#staff .stafflist > li .img::before {
  content: '';
  width: 100%;
  height: 100%;
  position: absolute;
  background: #f5f5f5;
  left: -20px;
  top: 20px;
  z-index: -1;
}
#staff .stafflist > li .txt {
  font-family: 'Noto Serif JP', "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  margin: 40px 0 0;
}
#staff .stafflist > li .txt .en {
  font-size: 14px;
  font-family: Arial, Helvetica, sans-serif;
  color: #00204b;
}
#staff .stafflist > li .txt h3 {
  font-weight: 500;
  font-size: 30px;
  line-height: 1;
  position: relative;
}
#staff .stafflist > li .txt h3::before {
  content: '';
  position: absolute;
  height: 2px;
  width: 1.5em;
  background: #00204b;
  left: 0;
  bottom: -15px;
}
#staff .stafflist > li .txt h3 span {
  font-size: 14px;
  margin-left: 20px;
  font-weight: normal;
  color: #00204b;
  vertical-align: middle;
  padding: 3px 10px;
  border: solid 1px #00204b;
}
#staff .btn01 br {
  display: none;
}
#staff .staff01 > .txt{
  flex: 0 0 65%;
  padding: 100px 0 0;
}
#staff .staff01 > .txt .f24{
  border-bottom: #19365d 2px solid;
  padding: 0 0 10px;
  margin: 0 0 10px;
}
#staff .staff01 > .stafflist > li{
  flex: 0 0 100%;
}
@media screen and (max-width: 640px) {
  #staff .stafflist {
    margin: 20px 0;
  }
  #staff .stafflist > li {
    padding-left: 15px;
    margin-bottom: 30px;
  }
  #staff .stafflist > li:last-child {
    margin-left: 0;
  }
  #staff .stafflist > li .img::before {
    left: -15px;
    top: 15px;
  }
  #staff .stafflist > li .txt .en {
    font-size: 12px;
  }
  #staff .stafflist > li .txt {
    margin: 30px 0 0;
  }
  #staff .stafflist > li .txt h3 {
    font-size: 24px;
  }
  #staff .stafflist > li .txt h3::before {
    bottom: -10px;
  }
  #staff .stafflist > li .txt h3 span {
    line-height: 24px;
  }
  #staff .btn01 br {
    display: block;
  }
}
/* --------------------------------------------------
  【事務所紹介】
-------------------------------------------------- */
#office dl {
  background: url(../images/inner/office01.jpg) no-repeat right bottom;
  background-size: auto 600px;
  padding-bottom: 100px;
}
#office dl dt {
  flex: 0 0 300px;
  padding: 15px;
  border-bottom: 1px dotted #cc9a56;
}
#office dl dd {
  flex: 0 0 900px;
  padding: 15px;
  border-bottom: 1px dotted #cc9a56;
}
/* 私たちの想い */
#office .thought {
  background: url(../images/inner/thought01.jpg) no-repeat left bottom;
  background-size: auto 600px;
  padding-top:60px;
  position: relative;
  z-index: 1;
}
#office .thought h2 {
  text-align: left;
  padding-left: 80px;
  margin: 20px 0;
  position: relative;
  font-size: 32px;
}
#office .thought h2::before {
  width: 60px;
  height: 1px;
  content: '';
  background: #222;
  display: block;
  position: absolute;
  top: 30px;
  left: 0;
}
#office .thought .flex-col2:nth-child(2) {
  flex-grow: 1;
  margin: 0 -360px 0 96px;
}
#office .thought img {
  width: 100%;
}

@media screen and (max-width: 640px) {
  #office {
    background-size: 100% auto;
    padding-bottom: 40px;
  }
  #office dl dt {
    padding: 10px;
    border-bottom: none;
  }
  #office dl dd {
    padding: 10px;
  }
  /* 私たちの想い */
  #office .thought .flex-col2 {
    width: auto;
  }
  #office .thought h2 {
    padding-left: 50px;
    margin-top: 0;
	font-size:28px;
  }
  #office .thought h2::before {
    width: 40px;
    top: 24px;
  }
  #office .thought .flex-col2:nth-child(2) {
    margin: 20px 5vw 0 -20vw;
  }

}
/* --------------------------------------------------
  【アクセス】
-------------------------------------------------- */
@media screen and (max-width: 640px) {
  #access .mb40 {
    margin-bottom: 20px !important;
  }
}
/* --------------------------------------------------
  【プライバシーポリシー】
-------------------------------------------------- */
#privacy .borderbox {
  margin: 40px 200px 20px;
  padding: 60px;
  font-size: 24px;
}
#privacy .borderbox dd {
  margin-left: 50px;
}
@media screen and (max-width: 640px) {
  #privacy .borderbox {
    font-size: 18px;
    margin: 30px 10px 10px;
    padding: 30px 10px;
  }
  #privacy .borderbox dd {
    margin-left: 20px;
  }
}
/* --------------------------------------------------
  【お問い合わせ】
-------------------------------------------------- */
#inquiry .mv {
  font-family: 'Noto Serif JP', "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  background: url(../images/inner/inquiry_mainBg.jpg) no-repeat center center / cover;
  padding-bottom: 36px;
}
#inquiry .mv h2 {
  margin-bottom: 30px;
}
#inquiry .mv h2::before {
  content: none;
}
#inquiry .mv .inquiryList li {
  width: 180px;
  height: 180px;
  border-radius: 50%;
  color: #fff;
  text-align: center;
  background: #cc9957;
  position: relative;
}
#inquiry .mv .inquiryList li:not(:first-child) {
  margin-left: 25px;
}
#inquiry .mv .inquiryList li::before {
  content: '';
  margin: 10px;
  border-radius: 50%;
  border: #fff 2px solid;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}
#inquiry .mv .inquiryList li > span {
  font-size: 22px;
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
#inquiry .mv .inquiryList span.time {
  display: block;
  font-size: 24px;
}
#inquiry .mv .inquiryList span.week {
  display: block;
  font-size: 14px;
}
#inquiry .timelist li {
  margin-bottom: 10px;
}
#inquiry .timelist li:last-child {
  margin-bottom: 0;
}
#inquiry .flex dd {
  margin-left: 20px;
}
@media screen and (max-width: 640px) {
  #inquiry .mv {
    background-position: center right;
    padding: 15px 0 30px;
  }
  #inquiry .mv h2 {
    margin-bottom: 20px;
  }
  #inquiry .mv .inquiryList li {
    width: 110px;
    height: 110px;
  }
  #inquiry .mv .inquiryList li:not(:first-child) {
    margin-left: 3px;
  }
  #inquiry .mv .inquiryList li::before {
    margin: 5px;
  }
  #inquiry .mv .inquiryList li > span {
    font-size: 14px;
  }
  #inquiry .mv .inquiryList span.time {
    font-size: 16px;
  }
  #inquiry .mv .inquiryList span.week {
    font-size: 10px;
  }
  #inquiry .flex dd {
    margin-left: 0;
  }
}
/* --------------------------------------------------
  【サイトマップ】
-------------------------------------------------- */
#sitemap ul {
  flex: 0 0 30%;
  padding-left: 20px;
}
#sitemap .child > li {
  position: relative;
  padding-left: 1em;
}
#sitemap .child > li::before {
  content: '-';
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  margin: auto;
}
#sitemap div > ul:not(:last-child) {
  border-right: #aaa 1px solid;
}
#sitemap a:hover {
  color: #aaa;
}
@media screen and (max-width: 640px) {
  #sitemap ul:not(:last-child) {
    border-right: none;
  }
}
/* --------------------------------------------------
  【top】
-------------------------------------------------- */
/* 共通 */
section[id^="top"] {
  padding: 80px 0;
}
section[id^="top"] h2 {
  font-size: 32px;
  text-align: center;
  margin-bottom: 60px;
}
section[id^="top"] .btn01 a {
  width: 415px;
}
/* メインビジュアル */
#mainVisual {
  height: 750px;
  background: url("../images/top/mainVisual_bg.jpg") no-repeat center / cover;
  margin-top: -64px;
  position: relative;
}
#mainVisual .img {
  -webkit-transform: translate(-18.75vw, 150px) !important;
  transform: translate(-18.75vw, 150px) !important;
  transition: 0.5s;
  opacity: 0;
}
#mainVisual .label {
  display: none;
  position: absolute;
  bottom: 40px;
  right: 18.75vw;
  transition: 0.5s;
  opacity: 0;
}
#mainVisual .case_results {
  background: rgba(255,255,255,0.8);
  font-size: 14px;
  text-align: center;
  padding: 15px;
  border: #fff 2px solid;
  position: absolute;
  bottom: 60px;
  right: calc(50% - 30vw);
  z-index: 1;
  -webkit-transform: translate(50%, 0) !important;
  transform: translate(50%, 0) !important;
  transition: 0.5s;
  opacity: 0;
}
#mainVisual .case_results .title {
  font-size: 16px;
  font-weight: 500;
  margin-bottom: 10px;
}
#mainVisual .case_results .title span {
  background: #00204b;
  color: #fff;
  display: inline-block;
  padding: 0 20px;
  border-radius: 20px;
}
#mainVisual .case_results .title + p {
  font-size: 20px;
  font-weight: bold;
}
#mainVisual .case_results .title + p span {
  color: #b51616;
  font-size: 36px;
  line-height: 1;
}
#mainVisual .case_results .result {
  color: #00204b;
  font-size: 14px;
  font-weight: bold;
}
#mainVisual .case_results .result span {
  color: #b51616;
  font-size: 24px;
  line-height: 1;
}
/* スライドバナー */
#topSlide {
  background: #f5f5f5;
  padding: 60px 0 50px;
}
#topSlide .ms-view {
  overflow: visible !important;
}
#topSlide img {
  margin: 0 !important;
}
#topSlide .ms-bullets.ms-dir-h {
  width: auto;
  padding-top: 20px;
  margin: 0 auto;
  position: static;
}
#topSlide .ms-bullets.ms-dir-h .ms-bullets-count {
  position: static;
}
#topSlide .ms-bullets-count .ms-bullet {
  width: 10px;
  height: 10px;
  background: #ccc;
  border-radius: 50%;
}
#topSlide .ms-bullets-count .ms-bullet.ms-bullet-selected {
  background: #cc9a56;
}
/* 更新情報 */
#topUpdate .update_tab {
  margin-bottom: 20px;
}
#topUpdate .update_tab li {
  flex: 0 0 270px;
  text-align: center;
  padding: 5px 10px;
  border: #ccc 1px solid;
  cursor: pointer;
  -webkit-tap-highlight-color:rgba(0,0,0,0);
}
#topUpdate .update_tab li  + li {
  margin-left: 2px;
}
#topUpdate .update_tab li.active {
  background: #f0e5c2;
}
#topUpdate .update_tab_content {
  display: none;
  position: relative;
}
#topUpdate .update_tab_content.active {
  display: block;
}
#topUpdate .update_list {
  height: 200px;
  overflow: auto;
}
#topUpdate .update_list::-webkit-scrollbar {
  width: 8px;
}
#topUpdate .update_list::-webkit-scrollbar-track {
  background: #eee;
  border-radius: 20px;
}
#topUpdate .update_list::-webkit-scrollbar-thumb {
  background: #222;
  border-radius: 20px;
}
#topUpdate .update_list li {
  border-bottom: #ccc 1px solid;
}
#topUpdate .update_list a {
  display: block;
  padding: 10px;
  cursor: pointer;
  -webkit-tap-highlight-color:rgba(0,0,0,0);
}
#topUpdate .update_tab_contents .update_list a:hover {
  color: #cc9a56;
}
#topUpdate .update_list dl dt {
  margin-right: 20px;
}
#topUpdate .update_list dl dd {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}
#topUpdate .update_list .cat {
  width: 110px;
  color: #888;
  font-size: 14px;
  text-align: center;
  margin-left: 10px;
  border: #ddd 1px solid;
}
#topUpdate .update_tab_contents .update_list a:hover .cat {
  color: #cc9a56;
  border-color: #cc9a56;
}
#topUpdate .update_tab_content .more {
  position: absolute;
  top: -50px;
  right: 0;
}
#topUpdate .update_tab_content .more a {
  font-size: 14px;
  display: inline-block;
  vertical-align: middle;
  padding: 0 30px;
  line-height: 25px;
  border: #ccc 1px solid;
  cursor: pointer;
  -webkit-tap-highlight-color:rgba(0,0,0,0);
}
#topUpdate .update_tab_content .more a:hover {
  color: #cc9a56;
  border-color: #cc9a56;
}
/* 導入事例 */
#topCase {
  background: #f5f5f5;
}
#topCase .caseList {
  background: #fff url("../images/common/bg_grid_small.png") left top / 30px auto;
  padding: 20px 40px;
}
.caseList .caseBox {
  padding: 20px 0;
}
.caseList .caseBox:not(:last-child) {
  border-bottom: #ccc 1px solid;
}
.caseList .caseBox li:not(:last-child) {
  margin-right: 10px;
}
.caseList .caseBox .area {
  color: #00204b;
  font-size: 14px;
  padding: 0 10px;
  border: #00204b 1px solid;
}
.caseList .caseBox .cat {
  background: #cc9a56;
  color: #fff;
  font-size: 14px;
  padding: 0 10px;
  border: #cc9a56 1px solid;
}
.caseList .caseBox .cat.industry {
  background: #fff;
}
.caseList .caseBox .cat a {
  color: #fff;
}
.caseList .caseBox .cat.industry a {
  color: #cc9a56;
}
.caseList .caseBox h3 a {
  color: #00204b;
  display: block;
}
.caseList .caseBox .cat a:hover, .caseList .caseBox h3 a:hover {
  opacity: 0.7;
}
/* 労働問題はいかり法律事務所の得意分野です */
#topIssue {
  position: relative;
  z-index: 1;
}
#topIssue h2 {
  text-align: left;
  line-height: 1.5;
  padding-left: 80px;
  margin: 20px 0;
  position: relative;
}
#topIssue h2::before {
  width: 60px;
  height: 1px;
  content: '';
  background: #222;
  display: block;
  position: absolute;
  top: 30px;
  left: 0;
}
#topIssue .flex-col2:nth-child(2) {
  flex-grow: 1;
  margin: 0 96px 0 -360px;
}
#topIssue img {
  width: 100%;
}
/* 事業再生・倒産処理 */
#topRevital {
  position: relative;
  z-index: 1;
}
#topRevital h2 {
  text-align: left;
  padding-left: 80px;
  margin: 20px 0;
  position: relative;
}
#topRevital h2::before {
  width: 60px;
  height: 1px;
  content: '';
  background: #222;
  display: block;
  position: absolute;
  top: 30px;
  left: 0;
}
#topRevital .flex-col2:nth-child(2) {
  flex-grow: 1;
  margin: 0 -360px 0 96px;
  position: relative;
}
#topRevital img {
  width: 100%;
}
#topRevital .tool dt span {
  display: inline-block;
  padding: 8px 20px;
  color: #fff;
  background: #222;
}
#topRevital .tool dd {
  border: 1px solid #222;
  padding: 20px;
}

/* 私たちの想い */
#topThought {
  position: relative;
  z-index: 1;
}
#topThought h2 {
  text-align: left;
  padding-left: 80px;
  margin: 20px 0;
  position: relative;
}
#topThought h2::before {
  width: 60px;
  height: 1px;
  content: '';
  background: #222;
  display: block;
  position: absolute;
  top: 30px;
  left: 0;
}
#topThought .flex-col2:nth-child(2) {
  flex-grow: 1;
  margin: 0 -360px 0 96px;
}
#topThought img {
  width: 100%;
}
/* オンライン対応 */
#topOnline {
  padding: 0 0 140px;
  position: relative;
  z-index: 1;
}
#topOnline::after {
  content: "";
  display: inline-block;
  width: 100%;
  height: 174px;
  background: #f0e5c2;
  position: absolute;
  bottom: 140px;
  left: 0;
  z-index: -10;
}
#topOnline .check span {
  display: inline-block;
  padding: 8px 40px;
  color: #fff;
  background: #b51616;
  position: relative;
}
#topOnline .check span::after {
  content: "";
  width: 0;
  height: 0;
  border-top: 10px solid #b51616;
  border-left: 7.5px solid transparent;
  border-right: 7.5px solid transparent;
  display: block;
  position: absolute;
  bottom: -10px;
  left: 50%;
  transform: translate(-50%, 0) !important;
}
#topOnline h2 {
  text-align: left;
  padding-left: 80px;
  margin: 20px 0;
  position: relative;
}
#topOnline h2::before {
  width: 60px;
  height: 1px;
  content: '';
  background: #222;
  display: block;
  position: absolute;
  top: 30px;
  left: 0;
}
#topOnline .flex-col2:nth-child(2) {
  flex-grow: 1;
  margin: 0 96px 0 -360px;
  position: relative;
}
#topOnline img {
  width: 100%;
}
#topOnline .tool dt span {
  display: inline-block;
  padding: 8px 20px;
  color: #fff;
  background: #222;
}
#topOnline .tool dd {
  border: 1px solid #222;
  padding: 20px;
}
/*顧問料を掛け捨てにさせない*/
#topKomon {
  padding: 0 0 140px;
  z-index: 1;
}
#topKomon .check span {
  display: inline-block;
  padding: 8px 40px;
  color: #fff;
  background: #b51616;
  position: relative;
}
#topKomon .check span::after {
  content: "";
  width: 0;
  height: 0;
  border-top: 10px solid #b51616;
  border-left: 7.5px solid transparent;
  border-right: 7.5px solid transparent;
  display: block;
  position: absolute;
  bottom: -10px;
  left: 50%;
  transform: translate(-50%, 0) !important;
}
#topKomon h2 {
  text-align: left;
  padding-left: 80px;
  margin: 20px 0;
  position: relative;
}
#topKomon h2::before {
  width: 60px;
  height: 1px;
  content: '';
  background: #222;
  display: block;
  position: absolute;
  top: 30px;
  left: 0;
}
#topKomon .flex-col2:nth-child(2) {
  flex-grow: 1;
  margin: 0 96px 0 -360px;
  position: relative;
}
#topKomon img {
  width: 100%;
}
#topKomon .tool dt span {
  display: inline-block;
  padding: 8px 20px;
  color: #fff;
  background: #222;
}
#topKomon .tool dd {
  border: 1px solid #222;
  padding: 20px;
}

/* メリット */
#topMerit {
  background: url("../images/top/topMerit_bg.jpg") no-repeat center / cover;
  padding: 230px 0;
  margin: -150px 0;
  position: relative;
}
#topMerit::before, #topMerit::after {
  width: 100%;
  height: 300px;
  content: '';
  background: #fff;
  position: absolute;
  top: -150px;
  left: 0;
  -webkit-transform: skewY(-4deg);
  transform: skewY(-4deg);
}
#topMerit::after {
  top: auto;
  bottom: -150px;
}
.topdemo #topMerit{
  padding: 80px 0;
  margin: 0;
}
.topdemo #topMerit::before,
.topdemo #topMerit::after{
  display: none;
}
#topMerit h2 {
  color: #fff;
}
#topMerit h2 span {
  font-size: 20px;
  display: block;
  line-height: 1;
}
#topMerit .meritList {
  max-width: 1920px;
  margin: auto;
}
#topMerit .meritBox {
  background: #fff;
  flex: 0 0 28.3333%;
  margin: 0 24px;
}
#topMerit .meritList:nth-of-type(1) .meritBox {
  margin-bottom: 40px;
}
#topMerit h3 {
  font-size: 20px;
  text-align: center;
  margin-bottom: 10px;
}
#topMerit h3 span {
  border-bottom: #222 1px solid;
}
#topMerit .txtWrap {
  padding: 30px;
}
#topMerit .txtWrap dl dt {
  text-align: center;
  margin: 10px 0;
  position: relative;
  z-index: 1;
}
#topMerit .txtWrap dl dt::before {
  width: 100%;
  height: 1px;
  content: '';
  background: #222;
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  z-index: -1;
}
#topMerit .txtWrap dl dt span {
  background: #fff;
  display: inline-block;
  padding: 0 20px;
}
#topMerit .txtWrap dl dd ol {
  counter-reset: cnt;
}
#topMerit .txtWrap dl dd ol li {
  font-size: 14px;
  padding-left: 30px;
  position: relative;
}
#topMerit .txtWrap dl dd ol li::before {
  width: 20px;
  height: 20px;
  counter-increment: cnt;
  content: counter(cnt);
  background: #00204b;
  color: #fff;
  display: block;
  text-align: center;
  line-height: 20px;
  position: absolute;
  top: 2px;
  left: 0;
}
/* 顧問契約 */
#topContract h2 {
  text-align: left;
  padding-left: 80px;
  margin: 20px 0;
  position: relative;
}
#topContract h2::before {
  width: 60px;
  height: 1px;
  content: '';
  background: #222;
  display: block;
  position: absolute;
  top: 30px;
  left: 0;
}
#topContract .flex-col2:nth-child(2) {
  flex-grow: 1;
  margin: 0 -360px 0 96px;
}
#topContract img {
  width: 100%;
}
/* 対応可能な相談 */
#topConsult {
  background: #f5f5f5 url("../images/common/bg_grid.png") left top / 101px auto;
}
#topConsult .consultWrap {
  max-width: 1920px;
  margin: 20px auto 0;
  position: relative;
  z-index: 1;
}
#topConsult .consultWrap:nth-child(odd) figure {
  text-align: right;
}
#topConsult .consultWrap .txt {
  width: 880px;
  background: #fff;
  padding: 90px;
  margin: -255px 80px 0 auto;
  position: relative;
  z-index: 1;
}
#topConsult .consultWrap:nth-child(odd) .txt {
  margin-left: 80px;
  margin-right: auto;
}
#topConsult .consultWrap .txt::before {
  content: '';
  margin: 20px;
  border: #cc9a56 1px solid;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: -1;
}
#topConsult .consultWrap h3 {
  font-size: 32px;
  text-align: center;
  padding-bottom: 15px;
  margin-bottom: 20px;
  position: relative;
}
#topConsult .consultWrap h3::before {
  width: 35px;
  height: 1px;
  content: '';
  background: #00204b;
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}
#topConsult .consultWrap h3 > span {
  font-size: 16px;
  margin-left: 10px;
}
#topConsult .consultWrap .ex dt {
  text-align: center;
  margin: 15px 0 10px;
  position: relative;
  z-index: 1;
}
#topConsult .consultWrap .ex dt::before {
  width: 100%;
  height: 1px;
  content: '';
  background: #222;
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  z-index: -1;
}
#topConsult .consultWrap .ex dt span {
  background: #fff;
  display: inline-block;
  padding: 0 20px;
}
#topConsult .consultWrap .ex dd {
  font-size: 14px;
}
/* 取扱分野 */
#topField {
  background: url("../images/top/topField_bg.jpg") no-repeat center / cover;
  padding: 230px 0;
  margin: -150px 0;
  position: relative;
}
.topdemo #topField{
  padding: 80px 0;
  margin: 0;
}
#topField::before, #topField::after {
  width: 100%;
  height: 300px;
  content: '';
  background: linear-gradient(176deg, rgba(255, 255, 255, 0), #f5f5f5 50%);
  position: absolute;
  top: -150px;
  left: 0;
  -webkit-transform: skewY(4deg);
  transform: skewY(4deg);
}
#topField::after {
  background: #f5f5f5;
  top: auto;
  bottom: -150px;
}
.topdemo #topField::before, .topdemo #topField::after{
  display: none;
}
#topField h2 {
  color: #fff;
  margin-bottom: 30px;
}
#topField .fieldList {
  max-width: 1560px;
  padding: 40px 12px;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}
#topField .fieldList::before {
  width: 78.125%;
  content: '';
  background: rgba(0, 32, 75, 0.75);
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  z-index: -1;
}
#topField .fieldList li {
  flex: 0 0 24%;
}
#topField .fieldList li a {
  background: linear-gradient(135deg, #fff 50%, #f5f5f5 50%);
  text-align: center;
  padding: 40px 20px;
  margin: 20px 0;
  position: relative;
  display: block;
  min-height: 150px;
  width: 100%;
  z-index: 1;
}
#topField .fieldList li a::before {
  content: '';
  margin: 10px;
  border: #cc9a56 1px solid;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: -1;
}
#topField .fieldList li a::after {
  width: 0;
  height: 0;
  content: '';
  border-top: transparent 25px solid;
  border-right: #cc9a56 25px solid;
  position: absolute;
  bottom: 0;
  right: 0;
}
#topField .fieldList li a:hover {
  opacity: 0.6;
  text-decoration: none !important;
}
#topField .fieldList li a:hover p, #topField .fieldList li a:hover h3 {
  color: #cc9a56;
}
#topField .fieldList h3 {
  font-size: 18px;
  font-weight: bold;
  position: relative;
}
#topField .fieldList h3::before {
  width: 60px;
  height: 60px;
  content: '';
  background: url("../images/top/topField_icon01.jpg") no-repeat center / cover;
  display: block;
  position: absolute;
  top: -70px;
  left: 0;
  right: 0;
  margin: auto;
}
#topField .fieldList li:nth-child(2) h3::before {
  background-image: url("../images/top/topField_icon02.jpg");
}
#topField .fieldList li:nth-child(3) h3::before {
  background-image: url("../images/top/topField_icon03.jpg");
}
#topField .fieldList li:nth-child(4) h3::before {
  background-image: url("../images/top/topField_icon04.jpg");
}
#topField .fieldList li:nth-child(5) h3::before {
  background-image: url("../images/top/topField_icon05.jpg");
}
#topField .fieldList li:nth-child(6) h3::before {
  background-image: url("../images/top/topField_icon06.jpg");
}
#topField .fieldList li:nth-child(7) h3::before {
  background-image: url("../images/top/topField_icon07.jpg");
}
#topField .fieldList li:nth-child(8) h3::before {
  background-image: url("../images/top/topField_icon08.jpg");
}
#topField .fieldList li:nth-child(9) h3::before {
  background-image: url("../images/top/topField_icon09.jpg");
}
#topField .fieldList li:nth-child(10) h3::before {
  background-image: url("../images/top/topField_icon10.jpg");
}
#topField .fieldList li:nth-child(11) h3::before {
  background-image: url("../images/top/topField_icon11.jpg");
}
#topField .fieldList li:nth-child(12) h3::before {
  background-image: url("../images/top/topField_icon12.jpg");
}
#topField .fieldList li:nth-child(13) h3::before {
  background-image: url("../images/top/topField_icon13.jpg");
}
#topField .fieldList li:nth-child(14) h3::before {
  background-image: url("../images/top/topField_icon14.jpg");
}
#topField .fieldList li:nth-child(15) h3::before {
  background-image: url("../images/top/topField_icon15.jpg");
}
#topField .btn01 a::before {
  background-image: url("../images/common/btn_arrow_white.png");
}
/* 業種別 */
#topIndustry {
  background: #f5f5f5;
  padding: 0 0 230px;
  margin-top: 80px;
  position: relative;
}
.topdemo #topIndustry{
  background: #f2f2f2;
  padding: 80px 0;
  margin-top: 0;
}
#topIndustry::after {
  width: 100%;
  height: 300px;
  content: '';
  background: #fff;
  position: absolute;
  bottom: -150px;
  left: 0;
  -webkit-transform: skewY(4deg);
  transform: skewY(4deg);
}
.topdemo #topIndustry::after{
  display: none;
}
#topIndustry h2 {
  margin-bottom: 30px;
}
#topIndustry .industryList {
  max-width: 1560px;
  padding: 60px 12px;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}
#topIndustry .industryList::before {
  width: 78.125%;
  content: '';
  background: url("../images/top/topIndustry_listBg.jpg") no-repeat center / cover;
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  z-index: -1;
}
#topIndustry .industryList li {
  flex: 0 0 32.487%;
  text-align: center;
  margin: 10px 0;
  position: relative;
  z-index: 1;
  -webkit-transition: all .5s linear;
  transition: all .5s linear;
}
#topIndustry .industryList li a {
  background: linear-gradient(135deg, #d4a96f 15%, #cc9a56 15%, #cc9a56 60%, #d4a96f 60%);
  background-size: 200%;
  display: block;
  padding: 45px 20px;
  position: relative;
  transition: 0.3s;
}
#topIndustry .industryList li a:hover {
  background-position: -100% 0;
}
#topIndustry .industryList li a::before {
  content: '';
  margin: 10px;
  border: #fff 1px solid;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: -1;
}
#topIndustry .industryList li a::after {
  width: 0;
  height: 0;
  content: '';
  border-top: transparent 25px solid;
  border-right: #00204b 25px solid;
  position: absolute;
  bottom: 0;
  right: 0;
}
#topIndustry .industryList h3 {
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  display: inline-block;
  padding-left: 80px;
  position: relative;
}
#topIndustry .industryList h3::before {
  width: 60px;
  height: 60px;
  content: '';
  background: url("../images/top/topIndustry_icon01.jpg") no-repeat center / cover;
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}
#topIndustry .industryList li:nth-child(2) h3::before {
  background-image: url("../images/top/topIndustry_icon02.jpg");
}
#topIndustry .industryList li:nth-child(3) h3::before {
  background-image: url("../images/top/topIndustry_icon03.jpg");
}
#topIndustry .industryList li:nth-child(4) h3::before {
  background-image: url("../images/top/topIndustry_icon04.jpg");
}
#topIndustry .industryList li:nth-child(5) h3::before {
  background-image: url("../images/top/topIndustry_icon05.jpg");
}
#topIndustry .industryList li:nth-child(6) h3::before {
  background-image: url("../images/top/topIndustry_icon06.jpg");
}
#topIndustry .industryList li:nth-child(7) h3::before {
  background-image: url("../images/top/topIndustry_icon07.jpg");
}
#topIndustry .industryList li:nth-child(8) h3::before {
  background-image: url("../images/top/topIndustry_icon08.jpg");
}
#topIndustry .industryList li:nth-child(9) h3::before {
  background-image: url("../images/top/topIndustry_icon09.jpg");
}
/* 顧問料金 */
#topPrice {
  background: url("../images/top/topPrice_bg.png") no-repeat center bottom / contain;
  padding-top: 40px;
}
/*プラン表*/
#topPrice .priceWrap{
	margin-bottom: 60px;
}
#topPrice .priceWrap table {
  border-collapse: collapse;
  margin: 0 auto;
  padding: 0;
  width: 100%;
  table-layout: fixed;
}
#topPrice .priceWrap thead th{
  padding: 1em .8em;
  border-right: #fff 3px solid !important;
  background: #fff;
}
#topPrice .priceWrap table tr {
  background-color: #fff;
}
#topPrice .priceWrap table td {
  text-align: center;
  border-bottom: #ccc 1px solid;
  border-top:none;
  border-left:none;
  border-right: none;
	padding: 20px 0;
}
#topPrice .priceWrap table th {
  background: #fff;
  border-bottom: #ccc 1px solid;
  border-top:none;
  border-left:none;
  border-right: none;
	padding: 5px 0;
}
#topPrice .priceWrap table th.none {
  border:none;
}
#topPrice .priceWrap .plan{
  color: #fff;
  font-size: 1.4em;
}
#topPrice .priceWrap .plan1{
  background: linear-gradient(90deg, #4D99FF, #1176FF);
}
#topPrice .priceWrap .plan2{
  background: linear-gradient(90deg, #1176FF, #0053C3);
  position: relative;
}
#topPrice .priceWrap .plan3{
  background: linear-gradient(90deg, #0053C3, #00367E);
  position: relative;
}
#topPrice .priceWrap .plan4{
  background: linear-gradient(90deg, #00367E, #00204b);
  position: relative;
}
#topPrice .priceWrap .plan2 span,
#topPrice .priceWrap .plan3 span,
#topPrice .priceWrap .plan4 span{
  position: absolute;
  content: '';
  top: -24px;
  right: 0px;
  margin: auto;
  background: #cc9a56;
  font-size: .6em;
  padding: 0 20px;
}
#topPrice .priceWrap .price span {
    font-size: .8em;
}

#topPrice ul.flex {
  margin-bottom: 30px;
}
#topPrice .flex li {
  border: #00204b 1px solid;
  margin: 20px 0;
  flex: 0 0 580px;
}
#topPrice .flex li:first-child {
  margin-right: 40px;
}
#topPrice .flex li:last-child {
  flex: 0 0 100%;
}
#topPrice h2 {
  margin-bottom: 30px;
}
#topPrice .plan dt {
  background: #00204b;
  color: #fff;
  font-size: 26px;
  text-align: center;
  padding: 30px 0;
}
#topPrice .plan dt .monthly {
  background: #cc9a56;
  font-size: 18px;
  padding: 0 20px;
  margin-right: 20px;
}
#topPrice .plan dd {
  padding: 20px;
  font-size: 18px;
  font-weight: bold;
  color: #b51616;
}
#topPrice .plan dd ul li {
  border: none;
  margin: 0;
}
#topPrice .plan.premium dd {
  padding: 40px 120px;
}
#topPrice .plan dd span {
  margin-right: 15px;
}
#topPrice .plan .box {
  background: #f5f5f5;
  color: #222;
  padding: 5px 10px;
  font-weight: normal;
  display: inline-block;
}
#topPrice .price01 dt {
  font-weight: bold;
  padding: 0 0 5px 20px;
  margin-bottom: 20px;
  border-bottom: #00204b 1px solid;
  position: relative;
}
#topPrice .price01 dt::before {
  width: 0;
  height: 0;
  content: '';
  border: transparent 8px solid;
  border-left: #cc9a56 10px solid;
  position: absolute;
  top: 8px;
  left: 0;
  margin: auto;
}
/* よくあるご質問 */
#topFaq {
  background: #f5f5f5;
}
#topFaq h2 {
  margin-bottom: 30px;
}
.faqList li {
  flex: 0 0 580px;
  margin: 60px 40px 0 0;
}
.faqList li:nth-child(-n+2) {
  margin-top: 0;
}
.faqList li:nth-child(2n) {
  margin-right: 0;
}
.faqList dl dt {
  min-height: 58px;
  padding-left: 65px;
  margin-bottom: 20px;
  position: relative;
}
.faqList dl dt::before, .faqList dl dd::before {
  width: 45px;
  height: 45px;
  content: 'Q';
  background: #00204b;
  color: #fff;
  font-family: 'Noto Serif JP', "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  display: block;
  text-align: center;
  line-height: 45px;
  position: absolute;
  top: 6px;
  left: 0;
}
.faqList dl dd {
  background: #fff;
  padding: 30px 30px 30px 75px;
  border-top: #00204b 1px solid;
  position: relative;
}
.faqList dl dd::before {
  background: #cc9a56;
  height: auto;
  content: 'A';
  display: flex;
  justify-content: center;
  align-items: center;
  top: 0;
  bottom: 0;
}
/* 新着情報 */
#topNews h2 {
  margin-bottom: 40px;
}
.newslist li {
  border-bottom: #aaa 1px solid;
}
.newslist a {
  width: 100%;
  display: block;
  padding: 10px 0;
}
.newslist a:hover {
  color: #888;
}
.newslist dl dt {
  float: left;
  padding: 0 20px;
  margin-right: 20px;
  border-right: #00204b 1px solid;
}
.newslist dl dd {
  padding-right: 80px;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
  position: relative;
}
.newslist dl dd::before {
  width: 60px;
  height: 8px;
  content: '';
  background: url("../images/common/arrow_gold.png") no-repeat center / cover;
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  right: 0;
  transition: 0.3s;
}
.newslist a:hover dl dd::before {
  -webkit-transform: translateX(-10px);
  transform: translateX(-10px);
}
@media screen and (max-width: 1600px) {
  #topOnline .flex-col2:nth-child(2) {
    flex-grow: 1;
    margin: 0 96px 0 0;
    position: relative;
  }
  #topThought .flex-col2:nth-child(2),
  #topIssue .flex-col2:nth-child(2),
  #topRevital .flex-col2:nth-child(2){
    flex-grow: 1;
    margin: 0 0 0 96px;
  }
}
/* コラム デモ制作*/
#topColumn .columnlist {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  column-gap: 20px;
}
#topColumn .columnlist li{
  border: 1px solid #aaa;
}
#topColumn .columnlist .column_image{
  position: relative;
  padding-top:48.0833%;
  overflow: hidden;
}
#topColumn .columnlist .column_image img{
  position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    object-fit: cover;
}
#topColumn .columnlist li dl{
  padding: 10px 20px;
}
@media screen and (max-width: 640px) {
  #topColumn .columnlist {
    grid-template-columns: 1fr;
    row-gap: 10px;
  }
  #topColumn .columnlist li dl{
    padding: 8px 15px;
  }
}
@media screen and (max-width: 1200px) {
  /* topデモ */
  #mainVisual .case_results {
    right: 30px;
    -webkit-transform: translate(0, 0) !important;
    transform: translate(0, 0) !important;
  }
}
@media screen and (max-width: 640px) {
  /* 共通 */
  section[id^="top"] {
    padding: 60px 0;
  }
  section[id^="top"] h2 {
    font-size: 28px;
  }
  section[id^="top"] .btn01 a {
    width: auto;
    min-width: 250px;
  }
  /* メインビジュアル */
  #mainVisual {
    height: auto;
    background: url("../images/top/mainVisual_bg_sp.jpg") no-repeat;
    background-size: cover;
    background-position: left center;
    padding: 40px 5%;
    margin-top: 0;
  }
  #mainVisual .img {
    width: 100%;
    max-width: 320px;
    -webkit-transform: translateX(0) !important;
    transform: translateX(0) !important;
  }
  #mainVisual .label {
    width: 20vw;
    top: -10vw;
    bottom: auto;
    right: 2%;
  }
  #mainVisual .case_results {
    width: 100%;
    max-width: 320px;
    padding: 10px;
    margin: 20px auto 0;
    position: static;
    -webkit-transform: translate(0, 0) !important;
    transform: translate(0, 0) !important;
  }
  #mainVisual .case_results .title + p {
  font-size: 18px;
  }
  /* スライドバナー */
  #topSlide {
    padding: 30px 5%;
  }
  #topSlide .ms-bullets.ms-dir-h {
    padding-top: 10px;
  }
  /* 更新情報 */
  #topUpdate .update_tab {
    margin-bottom: 10px;
  }
  #topUpdate .update_tab li {
    font-size: 14px;
    flex: 0 0 49% !important;
    margin: 0 0.5% 1% !important;
  }
  /* #topUpdate .update_tab li:first-child {
    flex: 0 0 99%;
  } */
  #topUpdate .update_list {
    height: 65vw;
    min-height: 240px;
  }
  #topUpdate .update_list dl {
    display: block;
  }
  #topUpdate .update_tab_content .more {
    position: static;
  }
  #topUpdate .update_tab_content .more a {
    font-size: 16px;
    display: block;
    text-align: center;
    line-height: 40px;
  }
  /* 導入事例 */
  #topCase .caseList {
    padding: 10px 15px;
  }
  .caseList .caseBox {
    padding: 15px 0;
  }
  .caseList .caseBox .date {
    width: 100%;
  }
  .caseList .caseBox ul li:not(.date) {
    font-size: 12px;
    padding: 0 5px;
    margin-right: 5px;
  }
/* 労働問題はいかり法律事務所の得意分野です */
  #topIssue .flex-col2 {
    width: auto;
  }
  #topIssue h2 {
    padding-left: 50px;
    margin-top: 0;
  }
  #topIssue h2::before {
    width: 40px;
    top: 24px;
  }
  #topIssue .flex-col2:nth-child(2) {
    margin: 20px 5vw 0 -20vw;
  }
  /* 事業再生・倒産処理 */
  #topRevital {
    padding:0;
  }
  #topRevital::after {
    height: 120px;
    bottom: 80px;
  }
  #topRevital .flex-col2 {
    width: auto;
  }
  #topRevital .check span {
    padding: 5px 20px;
  }
  #topRevital h2 {
    padding-left: 50px;
    margin-top: 10px;
  }
  #topRevital h2::before {
    width: 40px;
    top: 24px;
  }
  #topRevital .flex-col2:nth-child(2) {
    margin: 20px -5vw 0 5vw;
  }
  /* 私たちの想い */
  #topThought .flex-col2 {
    width: auto;
  }
  #topThought h2 {
    padding-left: 50px;
    margin-top: 0;
  }
  #topThought h2::before {
    width: 40px;
    top: 24px;
  }
  #topThought .flex-col2:nth-child(2) {
    margin: 20px 5vw 0 -20vw;
  }
  /* 顧問料を掛け捨てにさせない */
  #topKomon {
    padding: 0 0 80px;
  }
  #topKomon .flex-col2 {
    width: auto;
  }
  #topKomon .check span {
    padding: 5px 20px;
  }
  #topKomon h2 {
    padding-left: 50px;
    margin-top: 10px;
  }
  #topKomon h2::before {
    width: 40px;
    top: 24px;
  }
  #topKomon .flex-col2:nth-child(2) {
    margin: 20px -5vw 0 5vw;
  }
  /* メリット */
  #topMerit {
    padding: 100px 5%;
    margin: -40px 0;
  }
  .topdemo #topMerit{
    padding: 60px 5%;
    margin: 0;
  }
  #topMerit::before, #topMerit::after {
    height: 60px;
    top: -30px;
  }
  #topMerit::after {
    top: auto;
    bottom: -30px;
  }
  #topMerit h2 span {
    font-size: 16px;
    line-height: inherit;
  }
  #topMerit .meritBox {
    margin: 40px auto 0 !important;
  }
  #topMerit h3 {
    margin-bottom: 20px;
  }
  #topMerit .txtWrap {
    padding: 15px;
  }
  #topMerit .txtWrap dl dt span {
    padding: 0 10px;
  }
  /* 顧問契約 */
  #topContract .flex-col2 {
    width: auto;
  }
  #topContract h2 {
    padding-left: 50px;
  }
  #topContract h2::before {
    width: 40px;
    top: 24px;
  }
  #topContract .flex-col2:nth-child(2) {
    flex-grow: 1;
    margin: 20px -20vw 0 5vw;
  }
  /* 対応可能な相談 */
  #topConsult {
    background-size: 50px auto;
    padding-left: 5%;
    padding-right: 5%;
  }
  #topConsult .consultWrap figure {
    padding-top: 56.25%;
    margin-left: -5vw;
    position: relative;
    overflow: hidden;
  }
  #topConsult .consultWrap:nth-child(odd) figure {
    margin: 0 -5vw 0 0;
  }
  #topConsult .consultWrap figure img {
    width: auto;
    max-width: initial;
    height: 100%;
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%) !important;
    transform: translateX(-50%) !important;
  }
  #topConsult .consultWrap .txt {
    width: auto;
    padding: 20px;
    margin: -20px 5vw 0 auto;
  }
  #topConsult .consultWrap:nth-child(odd) .txt {
    margin-left: 5vw;
    margin-right: auto;
  }
  #topConsult .consultWrap .txt::before {
    margin: 5px;
  }
  #topConsult .consultWrap h3 {
    font-size: 24px;
  }
  #topConsult .consultWrap h3 > span {
    font-size: 12px;
    display: block;
    margin: 0;
  }
  #topConsult .consultWrap .ex dt span {
    padding: 0 10px;
  }
  /* 取扱分野 */
  #topField {
    padding: 60px 5%;
    margin: -40px 0 -60px;
  }
  .topdemo #topField{
    margin: 0;
    padding: 60px 0;
  }
  #topField::before, #topField::after {
    height: 60px;
    top: -30px;
  }
  #topField::after {
    top: auto;
    bottom: -30px;
  }
  #topField .fieldList {
    max-width: 300px;
    padding: 20px 0;
  }
  #topField .fieldList::before {
    width: 90%;
  }
  #topField .fieldList li {
    display: block;
    text-align: left;
    padding: 20px 10px 20px 45px;
    margin: 10px 0;
  }
  #topField .fieldList li::before {
    margin: 5px;
  }
  #topField .fieldList li::after {
    border-width: 20px;
  }
  #topField .fieldList h3::before {
    width: 50px;
    height: 50px;
    top: 0;
    left: -60px;
    right: auto;
  }
  #topField .fieldList p {
    font-size: 14px;
  }
  /* 業種別 */
  #topIndustry {
    padding: 20px 5% 60px;
    margin-top: 60px;
  }
  .topdemo #topIndustry{
    padding: 60px 5%;
    margin-top: 0;
  }
  #topIndustry::after {
    height: 60px;
    bottom: -30px;
  }
  #topIndustry .industryList {
    max-width: 300px;
    padding: 20px 0;
  }
  #topIndustry .industryList::before {
    width: 90%;
  }
  #topIndustry .industryList li {
    text-align: left;
  }
  #topIndustry .industryList li a {
    padding: 30px;
  }
  #topIndustry .industryList li a::before {
    margin: 5px;
  }
  #topIndustry .industryList li a::after {
    border-width: 20px;
  }
  #topIndustry .industryList h3 {
    padding-left: 60px;
  }
  #topIndustry .industryList h3::before {
    width: 50px;
    height: 50px;
  }
  /* 顧問料金 */
  #topPrice {
    background-size: 150% auto;
    background-position: right bottom;
    padding-top: 30px;
  }
  /*プラン表*/
  #topPrice .priceWrap{
    padding-top: 40px;
    overflow-x: scroll;
  }
  #topPrice .priceWrap table{
    width:1000px;
  }
  #topPrice .priceWrap table td {
	padding:0;
  }

  #topPrice .priceWrap .plan{
    font-size: 1em;
  }
  #topPrice .priceWrap .plan2 span,
  #topPrice .priceWrap .plan3 span,
  #topPrice .priceWrap .plan4 span{
    top:-18px;
  }

  #topPrice ul.mbBlock {
    margin-bottom: 20px;
  }
  #topPrice .flex li {
    margin: 20px 0 10px;
  }
  #topPrice .flex li:first-child {
    margin-right: 0;
  }
  #topPrice .plan dt {
    font-size: 20px;
    line-height: 1.5;
    padding: 10px 0;
  }
  #topPrice .plan dt .monthly {
    font-size: 14px;
    padding: 0 10px;
    margin-right: 10px;
  }
  #topPrice .plan dd {
    padding: 10px !important;
    font-size: 16px !important;
  }
  #topPrice .plan dd li.mbBlock {
    text-align: right;
  }
  #topPrice .plan .box {
    font-size: 14px;
  }
  /* よくあるご質問 */
  .faqList li {
    margin: 0 auto 40px !important;
  }
  .faqList li:last-child {
    margin-bottom: 0 !important;
  }
  .faqList dl dt {
    min-height: 48px;
    padding-left: 45px;
    margin-bottom: 10px;
  }
  .faqList dl dt::before, .faqList dl dd::before {
    width: 35px;
    height: 35px;
    line-height: 35px;
  }
  .faqList dl dd {
    padding: 10px 10px 10px 45px;
  }
  .faqList dl dd::before {
    height: auto;
  }
  /* 新着情報 */
  .newslist dl dt {
    float: none;
    padding: 0;
    margin-right: 0;
    border-right: none;
  }
  .newslist dl dd {
    padding-right: 50px;
  }
  .newslist dl dd::before {
    width: 40px;
    background-position: right center;
  }
}
@media screen and (max-width: 320px) {
  #mainVisual .case_results {
    font-size: 12px;
  }
}
/* --------------------------------------------------
  顧問弁護士
-------------------------------------------------- */
/* 顧問契約 */
#advisor #topContract {
  padding-bottom: 0;
}
#advisor #topContract .flex-col2:nth-child(2) {
  flex-grow: 1;
  margin: 0 96px 0 -360px;
}
/* 私たちの想い */
#advisor #topThought {
  padding-bottom: 140px;
}
/* メリット */
#adMerit {
  background: url("../images/top/topMerit_bg.jpg") no-repeat center / cover;
  padding: 230px 0;
  margin: -150px 0;
  position: relative;
}
#adMerit::before, #adMerit::after {
  width: 100%;
  height: 300px;
  content: '';
  background: #fff;
  position: absolute;
  top: -150px;
  left: 0;
  -webkit-transform: skewY(-4deg);
  transform: skewY(-4deg);
}
#adMerit::after {
  top: auto;
  bottom: -150px;
}
#adMerit h2 {
  color: #fff;
  font-size: 32px;
  text-align: center;
  margin-bottom: 60px;
}
#adMerit h2 span {
  font-size: 20px;
  display: block;
  line-height: 1;
}
#adMerit .meritList .meritBox {
  display: flex;
  align-items: flex-start;
}
#adMerit .meritList .meritBox:nth-child(even) {
  flex-direction: row-reverse;
}
#adMerit .meritList .meritBox + .meritBox {
  margin-top: 60px;
}
#adMerit .meritBox figure {
  flex: 0 0 540px;
  position: relative;
  z-index: 2;
}
#adMerit .meritBox figure::before {
  content: '';
  width: 100%;
  height: 100%;
  border: 1px solid #fff;
  position: absolute;
  top: 20px;
  left: 20px;
  z-index: 0;
}
#adMerit .meritBox figure img {
  aspect-ratio: 2 / 1;
  object-fit: cover;
}
#adMerit .meritBox .txtWrap {
  padding: 60px;
  background: #fff;
}
#adMerit .meritList .meritBox:nth-child(odd) .txtWrap {
  padding-left: 120px;
  margin: 60px 0 0 -60px;
}
#adMerit .meritList .meritBox:nth-child(even) .txtWrap {
  padding-right: 120px;
  margin: 60px -60px 0 0;
}
#adMerit h3 {
  font-size: 20px;
  text-align: center;
  margin-bottom: 10px;
}
#adMerit h3 span {
  border-bottom: #222 1px solid;
}
#adMerit .txtWrap dl dt {
  text-align: center;
  margin: 10px 0;
  position: relative;
  z-index: 1;
}
#adMerit .txtWrap dl dt::before {
  width: 100%;
  height: 1px;
  content: '';
  background: #222;
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  z-index: -1;
}
#adMerit .txtWrap dl dt span {
  background: #fff;
  display: inline-block;
  padding: 0 20px;
}
#adMerit .txtWrap dl dd ol {
  counter-reset: cnt;
}
#adMerit .txtWrap dl dd ol li {
  font-size: 14px;
  padding-left: 30px;
  position: relative;
}
#adMerit .txtWrap dl dd ol li::before {
  width: 20px;
  height: 20px;
  counter-increment: cnt;
  content: counter(cnt);
  background: #00204b;
  color: #fff;
  display: block;
  text-align: center;
  line-height: 20px;
  position: absolute;
  top: 2px;
  left: 0;
}
/* オンライン対応 */
#advisor #topOnline {
  padding: 140px 0 80px;
}
#advisor #topOnline::after {
  bottom: 80px;
}
#advisor #topOnline h2 {
  line-height: 1.5;
}
@media screen and (max-width: 1600px) {
  #advisor #topOnline .flex-col2:nth-child(2) {
    margin: 0 96px 0 0;
  }
  #advisor #topThought .flex-col2:nth-child(2){
    margin: 0 -360px 0 96px;
  }
}
@media screen and (max-width: 640px) {
  /* 顧問契約 */
  #advisor #topContract {
    padding-top: 40px;
  }
  #advisor #topContract .flex-col2:nth-child(2) {
    margin: 20px -5vw 0 5vw;
  }
  /* 私たちの想い */
  #advisor #topThought {
    padding-bottom: 80px;
  }
  #advisor #topThought .flex-col2:nth-child(2) {
    margin: 20px 5vw 0 -20vw;
  }
  /* メリット */
  #adMerit {
    padding: 100px 0;
    margin: -40px 0;
  }
  #adMerit::before, #adMerit::after {
    height: 60px;
    top: -30px;
  }
  #adMerit::after {
    top: auto;
    bottom: -30px;
  }
  #adMerit h2 {
    font-size: 28px;
  }
  #adMerit h2 span {
    font-size: 16px;
    line-height: inherit;
  }
  #adMerit .meritList .meritBox {
    display: block;
  }
  #adMerit .meritList .meritBox figure {
    margin-right: -5vw;
  }
  #adMerit .meritBox figure::before {
    top: -10px;
    left: auto;
    right: 10px;
  }
  #adMerit .meritBox .txtWrap {
    padding: 60px 15px 15px !important;
    margin: -45px 0 0 -5vw !important;
  }
  #adMerit .txtWrap dl dt span {
    padding: 0 10px;
  }
  /* オンライン対応 */
  #advisor #topOnline {
    padding-top: 80px;
  }
  #advisor #topOnline .flex-col2:nth-child(2) {
    margin: 20px -5vw 0 5vw;
  }
}
/* --------------------------------------------------
  【不動産トラブル】
-------------------------------------------------- */
#fudousan .h2 {
  margin-top: 60px;
}
#fudousan .flowList li {
  /*  padding-bottom: 30px;*/
  flex: 0 0 270px;
}
#fudousan .flowList li:last-of-type {
  /*  padding-bottom: 0;*/
}
#fudousan .flowList li::after {
  /*
  width: 0;
  height: 0;
  background: none;
  border:  transparent 12px solid;
  border-top: #cc9a56 20px solid;
  top: auto;
  bottom: -12px;
  left: 38px;
  */
}
#fudousan .flowList li:last-child::before, #fudousan .flowList li:last-child::after {
  /*  content: none;*/
}
#fudousan .flowList li .step {
  background: #fff;
  color: #cc9a56;
  font-weight: bold;
  line-height: 1;
  border: #cc9a56 2px solid;
  padding: 10px;
  margin-right: 10px;
}
#fudousan .flowList li .step span {
  font-size: 30px;
}
#fudousan .flowList li figure {
  flex: 0 0 250px;
}
#fudousan .flowList li h3 {
  font-size: 22px;
  font-weight: bold;
  display: block;
  padding: 15px 0;
  color: #cc9a56;
}
@media screen and (max-width: 640px) {
  #fudousan .h2 {
    margin-top: 40px;
  }
  #fudousan .flowList li {
    padding-bottom: 30px;
    margin: 0 auto;
  }
  #fudousan .flowList li:last-of-type {
    padding-bottom: 0;
  }
  #fudousan .flowList li .step {
    height: 60px;
    font-size: 12px;
    flex: 0 0 60px;
  }
  #fudousan .flowList li .step span {
    font-size: 24px;
  }
  #fudousan .flowList li figure {
    flex: 0 0 180px;
    margin-left: 30px;
  }
  #fudousan .flowList li h3 {
    font-size: 18px;
  }
}
/* --------------------------------------------------
  【研修サービス】
-------------------------------------------------- */
#kensyu .meritList li {
  flex: 0 0 23%;
  margin: 10px 0;
}
#kensyu .meritList li a {
  display: block;
  color: #fff;
  text-decoration: none;
  background: linear-gradient(135deg, #d4a96f 30%, #cc9a56 30%);
  text-align: center;
  padding: 45px 20px;
  position: relative;
  z-index: 1;
}
#kensyu .meritList li a::before {
  content: '';
  margin: 10px;
  border: #fff 1px solid;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: -1;
}
#kensyu .meritList li a:hover {
  background: linear-gradient(135deg, #c28c4f 30%, #b77b39 30%);
}
#kensyu .meritList li h3 {
  font-size: 20px;
  color: #fff;
}
#kensyu table th.sub {
  background: #f5f5f5;
  width: 13%;
}
#kensyu tbody td {
  width: 29%;
}
#kensyu table td {
  text-align: center;
}
#kensyu .btn01 a {
  width: 415px;
}
.seminarList > li {
  width: 380px;
  margin: 30px 30px 0 0;
  border: #ccc 1px solid;
}
.seminarList > li:nth-child(-n+3) {
  margin-top: 0;
}
.seminarList > li:nth-child(3n) {
  margin-right: 0;
}
.seminarList > li .seminarList_box {
  padding: 20px;
}
.seminarList > li a:hover {
  text-decoration: none !important;
  color: #aaa;
}
.seminarList .seminarList_img {
  margin-bottom: 10px;
  overflow: hidden;
}
.seminarList .seminarList_img .thumbnail {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  padding-top: 45%;
  transition: 0.3s;
}
.seminarList a:hover .seminarList_img .thumbnail {
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}
.seminarList .text {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}
@media screen and (max-width: 640px) {
  #kensyu .meritList li {
    flex: 0 0 100%;
  }
  #kensyu .btn01 a {
    width: auto;
    min-width: 250px;
  }
  .seminarList {
    width: 280px;
    margin: 0 auto;
  }
  .seminarList > li {
    width: 100%;
    margin-right: 0;
  }
  .seminarList > li:nth-child(-n+3) {
    margin-top: 20px;
  }
  .seminarList > li:first-child {
    margin-top: 0;
  }
}
/* --------------------------------------------------
  地域別顧問弁護士比較表
-------------------------------------------------- */
@media screen and (max-width: 640px) {
  .pcbr {
    display: none;
  }
}
