/* ##############################################################################

    DEFAULT

############################################################################## */
html {
  height: 100%;
  overflow-x: hidden;
  overflow-y: scroll;
}
body {
  height: 100%;
  font: 15px/1.231 YuGothic, '游ゴシック', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
  font-weight: 500;
  font-feature-settings: "palt";
  line-height: 1.8;
  letter-spacing: .08em;
  *font-size: small;
  *font: x-small;
  color: #000;
  -webkit-font-smoothing: antialiased;
}

@media all and (-ms-high-contrast:none) {
  body {
    font-family: "メイリオ", Meiryo, 'Lato', YuGothic, '游ゴシック', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'ＭＳ Ｐゴシック', sans-serif;
  }
}
*,
*:after,
*::before {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
ul,
ol { list-style: none; }
small { font-size: 86%; }
a {
  color: #333;
  text-decoration: none;
  -webkit-transition: all 0.4s ease-out;
  -moz-transition: all 0.4s ease-out;
  -o-transition: all 0.4s ease-out;
  transition: all 0.4s ease-out;
  -webkit-tap-highlight-color:rgba(0, 0, 0, 0);
  outline : none;
  transform: rotate(0.05deg);
}
a:hover {
  color: #c5ccd6;
  text-decoration: none;
}
img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
  -webkit-transition: all 0.4s ease-out;
  -moz-transition: all 0.4s ease-out;
  -o-transition: all 0.4s ease-out;
  transition: all 0.4s ease-out;
}
a img:hover {
  opacity: 0.5;
}
a {
  -webkit-transition: all 0.4s ease-out;
  -moz-transition: all 0.4s ease-out;
  -o-transition: all 0.4s ease-out;
  transition: all 0.4s ease-out;
}
a:hover {
  opacity: 0.5;
}
h1, h2, h3, h4, h5, h6 {
  font-weight: normal;
  color: #5D5D5D;
}
@media only screen and (min-width: 768px) {
  @-moz-document url-prefix() {
    * { font-feature-settings: "palt"; }
  }
  @media screen and (-webkit-min-device-pixel-ratio:0) {
    * { font-feature-settings: "palt"; }tt
  }
}
@media only screen and (max-width: 767px) {
  body {
    font-size: 14px;
    -webkit-text-size-adjust: none;
  }
  img {
    max-width: 100%;
    height: auto;
  }
}


/* ##############################################################################

  KEYFRAMES

############################################################################## */
@keyframes fadeIn {
  0% {
    bottom: -120px;
    opacity: 0;
  }
  100% {
    bottom: 45px;
    opacity: 1;
  }
}
@-webkit-keyframes fadeIn {
  0% {
    bottom: -120px;
    opacity: 0;
  }
  100% {
    bottom: 45px;
    opacity: 1;
  }
}
@keyframes fadeOut {
  0% {
    bottom: 45px;
    opacity: 1;
  }
  100% {
    bottom: -120px;
    opacity: 0;
  }
}
@-webkit-keyframes fadeOut {
  0% {
    bottom: 45px;
    opacity: 1;
  }
  100% {
    bottom: -120px;
    opacity: 0;
  }
}

/* ##############################################################################

  COMMON

############################################################################## */

/* layout
**************************************** */

/* --- inner --- */
.inner {
  width: 1080px;
  margin: 0 auto;
}
.inner-sm { width: 800px; }
.inner-lg { max-width: 1300px; margin: 0 auto;}

/* --- section_pdg --- */
.section_pdg {
  padding-top: 60px;
  padding-bottom: 0px;
  background-color: #EFEBDC;
}

/* --- float --- */
.flt-rgt { float: right; }
.flt-lft { float: left; }

/* --- flex --- */
.flex {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
}
.flex-inline {
  display: -webkit-inline-flex;
  display: -ms-inline-flex;
  display: inline-flex;
}
.flex-end {
  -webkit-justify-content: flex-end;
  -ms-justify-content: flex-end;
  justify-content: flex-end;
}
.flex-center {
  -webkit-justify-content: flex-center;
  -ms-justify-content: flex-center;
  justify-content: flex-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-wrap {
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.flex-wrap_reverse {
  -webkit-flex-wrap: wrap-reverse;
  -ms-flex-wrap: wrap-reverse;
  flex-wrap: wrap-reverse;
}

/* --- margin --- */
.mgn-btm8 { margin-bottom: 8px; }
.mgn-btm16 { margin-bottom: 16px; }
.mgn-btm24 { margin-bottom: 24px; }
.mgn-btm32 { margin-bottom: 32px; }
.mgn-btm40 { margin-bottom: 40px; }
.mgn-btm48 { margin-bottom: 48px; }
.mgn-btm56 { margin-bottom: 56px; }
.mgn-btm64 { margin-bottom: 64px; }
.mgn-btm72 { margin-bottom: 72px; }
.mgn-btm80 { margin-bottom: 80px; }

h2,h3,h4,h5,h6 {
  transform: rotate(0.1deg);
}

/* --- pc or sp --- */
.pc-none { display: none; }
.sp-none { display: block; }

@media only screen and (max-width: 1100px) {
  .inner {
    width: 95%;
  }
  .section_pdg {
    padding-top: 55px;
  }
}

@media only screen and (max-width: 767px) {
  .inner { width: 94%; }
  .mgn-btm16 { margin-bottom: 8px; }
  .mgn-btm24 { margin-bottom: 16px; }
  .mgn-btm32 { margin-bottom: 16px; }
  .mgn-btm40 { margin-bottom: 24px; }
  .mgn-btm48 { margin-bottom: 24px; }
  .mgn-btm56 { margin-bottom: 32px; }
  .mgn-btm64 { margin-bottom: 32px; }
  .mgn-btm72 { margin-bottom: 40px; }
  .mgn-btm80 { margin-bottom: 40px; }
  .sp-none { display: none; }
  .pc-none { display: block; }
  .section_pdg {
    padding-top: 20px;
  }
}

/* bg
**************************************** */


/* ttl
**************************************** */
.page_ttl {
  background: #eee;
  padding: 60px 0;
  text-align: center;
  background-image: url("../images/page_ttl_bg.jpg");
  background-repeat: no-repeat;
  background-position: right top;
  background-size: cover;
}
.page_ttl h1 {
  border-left: solid 4px #40933B;
  text-align: left ;
  padding: 5px 0px 5px 15px;
  font-size: 140%;
  font-family: "秀英丸ゴシック B", "Shuei MaruGo B";
  transform: rotate(0.3deg);
  color: #535353;

}
.page-housing .page_ttl h1 { border-left: solid 4px #1BA466; }
.page-general .page_ttl h1 { border-left: solid 4px #E24D38; }
.page-credit .page_ttl h1 { border-left: solid 4px #EFB727; }
.page-senior .page_ttl h1 { border-left: solid 4px #1C979C; }
.page-inheritance .page_ttl h1 { border-left: solid 4px #856453; }
.page-traffic_accident .page_ttl h1 { border-left: solid 4px #83B042; }
.page-child .page_ttl h1 { border-left: solid 4px #EE8E92; }
.page-violence .page_ttl h1 { border-left: solid 4px #063A62; }
.page-minbou .page_ttl h1 { border-left: solid 4px #A00D37; }
.page-business .page_ttl h1 { border-left: solid 4px #2F8ACE; }

.page_ttl span {
  display: block;
}

.page_ttl span.page_ttl-eng {
  font-size: 65%;
  margin: -2px 0 0 5px;
}
.section_ttl {
  font-size: 180%;
  font-weight: normal;
  line-height: 1.6;
  letter-spacing: .1em;

  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1.4;
  padding-bottom: 10px;
}
.section_ttl span:before {
  content: "\e911";
  display: inline-block;
  margin-right: 12px;
  font-size: 160%;
  color: #40933B;
  transform: translateY(6px);
  text-indent: -.8em;
  margin-left: -.8em;
}

.section_ttl span {
  margin-left: 2em;
  display: inline-block;
}



@media(max-width: 1100px) and (min-width: 768px) {

}
@media only screen and (max-width: 768px) {
  .page_ttl {
    position: relative;
    top: 23vw;
    padding: 12vw 0 25vw 0;
    margin-bottom: 23vw;
    background-size: auto 100%;
    background-image: url(../images/page_ttl_bg_sp.jpg);
  }
  .page_ttl h1 {
    background-color: #fff;
    display: inline-block;
    width: auto;
    position: relative;
    left: 0;
    padding: 10px 16px 10px 16px;
    position: absolute;
    left: 5%;
    font-size: 110%;
  }
}

/* txt
**************************************** */
.txt-ctr { text-align: center; }
.txt-rgt { text-align: right; }

/* font
**************************************** */

.Shuei_L {font-family: "秀英丸ゴシック L" , Shuei MaruGo L ;}
.Shuei_B {font-family: "秀英丸ゴシック B" , Shuei MaruGo B ;}

/* table & list
**************************************** */


/* display
**************************************** */
.display-block{
  display: block;
}

/* btn
**************************************** */
.content_box .more {
  color: #fff;
  display: table;
  padding-left: 40px;
  padding-right: 40px;
  margin: auto;
  font-size: 106%;
  letter-spacing: 0.2em;
  line-height: 46px;
  color: #fff;
  background-color: #FF8505;
  border: none;
  border-radius: 3px;
  text-align: center;
  border-radius: 6px;
  font-weight: normal;
}
.more:hover {
  opacity: .6;
}

[class^="icon-"]:before, [class*=" icon-"]:before {
    display: inline-block;
}

/* ##############################################################################

  HEADER

############################################################################## */
/* header
**************************************** */
.header {
  background-image: url("../images/head_bg.jpg");
  background-repeat: no-repeat;
  background-position: left 40% bottom 44%;
}
.header--logo {
  float: left;
  width: 322px;
  font-weight: normal;
  padding-top: 30px;
}
.header--sub_nav {
  float: right;
  font-size: 90%;
  padding-top: 10px;
  padding-bottom: 10px;
  max-width: 950px;
  min-width: 600px;
  color: #7a7a7a;
}
.header--sub_nav ul {
  float: right;
}
.header--sub_nav a {
  font-size: 90%;
  color: #7a7a7a;
  text-align: center;
  padding-left: 5px;
  padding-right: 5px;
  border-right: solid 1px #a4a7a9;
}
.header--sub_nav .flex >:first-child {
  border-left: solid 1px #a4a7a9;
}
.header--nav {
  display: block;
  width: 100%;
  background: #40933B;
  margin-top: 8px;
}
.header--nav_box {
  float: right;
}
/*_:-ms-fullscreen, :root .header--nav_box {
    margin-bottom: 20px;
}*/
.fontsize {
  background-color: #EFEBDC;
  padding: 8px 0px 8px 0px ;
  border-radius: 6px;
  margin-right: 10px;
}
.fontsize .default {
  background-color: #EB8D90;
}
.fontsize .zoom {
  background-color: #1C979C;
}
.font-fix {
  margin-left: auto;
  margin-right: auto;
  padding-left: 10px;
  padding-right: 10px;
}
.fontsize h3 {
  display: block;
  text-align: center;
  font-weight: normal;
  color: #535353;
  padding-top: 6px;
  padding-bottom: 10px;
}
.fontsize h3:before {
  color: #535353;
  font-size: 120%;
  margin-right: 5px;
  transform: translateY(3px);
}
.fontsize li {
  display: block;
  float: left;
  cursor: pointer;
  color: #fff;
  padding: 3px 16px 2px 16px ;
  border-radius: 6px;
  margin: 0px 4px;
  width: 60%;
  white-space: nowrap;
  -webkit-transition: all 0.4s ease-out;
  -moz-transition: all 0.4s ease-out;
  -o-transition: all 0.4s ease-out;
  transition: all 0.4s ease-out;
}
.fontsize li:hover {
  opacity: 0.5;
}

/* gnav
**************************************** */
.gnav {
  border-left: solid 1px #6EAC6A;
  border-right: solid 1px #6EAC6A;
}
.gnav li {
  float: left;
}
.gnav > li {
  border-left: solid 1px #388134;
  border-right: solid 1px #6EAC6A;
  width: 100%;
}
.gnav > li > a {
  text-align: center;
  padding: 20px 0px 18px 0px;
  font-size: 110%;
  line-height: 1.5;
  transform: rotate(0.05deg);
}
.gnav > li > a:before {
  display: none;
}
.gnav > li > a:hover {
  transform: translateY(-4px);
  opacity: 0.8;
}
.gnav > li a span {
  font-size: 80%;
  display: block;
  opacity: .6;
}
.gnav >:last-child {
  border-right: solid 1px #388134;
}
.gnav li a {
  text-align: center;
}
.gnav li li a {
  color: #40933B;
}
.gnav a {
  display: block;
  padding: 10px 0px;
  color: #fff;
}
.gnav li.reserve {
  background-color: #FF8505;
}
.gnav li.reserve:hover {
  border-left: solid 1px #40933B;
  border-right: solid 1px #40933B;
}
.gnav li.reserve:hover a {
  background-color: #40933B;
  opacity: 1;
  transform: translateY(0);
}
.gnav li ul {
  position: absolute;
  z-index: 100;
  visibility: hidden;
  opacity: 0;
  transition: .3s ease-in-out;
  transform: rotateX(-90deg) rotateY(0);
  transform-origin: 0 0;
  background-color: #fff;
  width: 220px;
  border-radius: 6px;
  padding-top: 10px;
  padding-bottom: 10px;
  padding-left: 6px;
  padding-right: 7px;
  line-height: 1.4;
}

@media all and (-ms-high-contrast:none) {
  .gnav li ul.sp_consul_menu {
    transition: 0s ease-in-out;
  }
}
.gnav li ul.sp_consul_menu li a br {
  display: none;
}
.gnav li ul.sp_consul_menu li a:before {
  display: none;
}
.gnav li ul.lg {
  width: 340px;
}
.gnav li ul:before {
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  border: 8px solid transparent;
  border-bottom: 8px solid #fff;
  margin-right: 4px;
  transform: rotate(0deg);
  position: absolute;
  top: -16px;
  left: 86px;
}
.gnav li ul li {
  width: 100%;
}
.gnav li ul li:nth-child(even) {
  background-color: #F6F4EB;
}
.gnav li ul li a {
  padding: 9px 15px 8px 15px ;
  color: #535353;
  text-align: left;
  transform: rotate(0.01deg);
}
.gnav li ul li a:hover {
  transform: translate(0);
}
.gnav li:hover ul {
  visibility: visible;
  opacity: 1;
  transform: rotateX(0deg) rotateY(0deg);
}
.gnav li a.hover {
  margin-left: 16px;
}
.gnav li li a.hover {
  margin-left: 0;
  transform: translate(4px);
}
.breadcrumbs{
  width: 100%;
  position: absolute;
  font-size: 90%;
}
.breadcrumbs .inner{
  padding-top: 20px;
  padding-left: 10px;
}
.breadcrumbs a{
  padding: 0;
  border: none;
}


@media only screen and (max-width: 1250px) and (min-width: 768px) {
  .header {
    /*background-image: none;*/
    background-position: left 20% bottom 40%;
  }
  .header--sub_nav　{
    width: 70%;
  }
  .gnav > li > a{
    font-size: 90%;
  }


}
@media only screen and (max-width: 950px) and (min-width: 768px) {
  .header {
    background-image: none;
  }
  .header--sub_nav{
    width: 55%;
  }
}

@media only screen and (max-width: 767px) {
  .header--logo {
    padding-top: 8px;
    padding-bottom: 8px;
    padding-left: 5px;
    padding-right: 35%;
    background-color: #fff;
    width: 100%;
    position: relative;
    z-index: 310;
    margin-bottom: 0;
  }
  header.active .header--logo {
    position: fixed;
    top: 0;
  }
  .gnav > li > a:hover{
    transform: translate(0 , 0);
    background-color: #40933B;
  }
  .header {
    background-image: none;
    padding: 0;
  }
  .header--nav{
    display: block;
  }
  .gnav {
    display: block;
    position: fixed;
    z-index: 300;
    top: 0;
    left: 0;
    opacity: 0;
    pointer-events: none;
    transition: .4s ease-out;
    transform: translateY(-100%);
    background-color: #40933B;
    height: 100%;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    margin: 0;
    padding-top: 100px;
  }
  .gnav li{
    display: block;
    position: relative;
  }
  .gnav li a{
    padding-left: 30px;
    text-align: left;
    font-family: "秀英丸ゴシック B" , Shuei MaruGo B ;
    transform:rotate(0.3deg);
    padding: 20px 0px 18px 20px;
  }
  .gnav li a.hover {
    margin-left: 0;
  }
  .gnav .sp-menu{
    display: inline-block;
    color: #fff;
    float: left;
    padding: 10px 0px 0px 10px;
  }
  .gnav li:hover ul{
    visibility: visible;
    opacity: 1;
  }
  .gnav li ul{
    position: relative;
    background: none;
    display: block;
    line-height: 0;
    opacity: 0;
    visibility: hidden;
    padding: 0;
    overflow: hidden;
    transition: .1s ease-in-out;
    transform: none;
    width: 100%;
  }
  .gnav li.active ul{
    line-height: 1.5;
    opacity: 1;
    visibility: visible;
    display: inline-block;
    border: solid 1px #ccc;
    margin: 0px;
  }
  .gnav li.active ul li{
    width: 50%;
  }
  .gnav li ul li a{
    padding: 0px 0px 0px 10px;
  }
  .gnav li a img{
    display: table;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
  }
  .gnav > li.sp_nav_contact {
    margin-bottom: 20px;
    border-bottom: none;
  }
  li.sp_nav_contact a{
    padding: 0;
    width: 100%;
    text-align: center;
    display: block;
  }
  .gnav > li.sp_nav_contact > a:before{
    content: "";
  }
  li.sp_nav_contact .himawari_bnr img{
    width: 55%;
    height: auto;
  }
  li.sp_nav_contact a img{
    width: 90%;
    display: table;
    margin-left: auto;
    margin-right: auto;
  }
  .gnav li ul:before{
    display: none;
  }
  .gnav li ul.sp_consul_menu{
    line-height: 1.6;
    opacity: 1;
    visibility: visible;
    padding: 5px 8px 10px 2.5vw ;
    overflow: visible;
    display: block;

    width: 100%;
    margin-right: auto;
    margin-left: auto;
    border-radius: 6px;
    display: flex;
    flex-wrap: wrap;
    border: none;
  }
  .gnav li ul.sp_consul_menu li{
    width: 30vw;
    margin-top: 1vw;
    margin-left: 1vw;
  }
  .gnav > li:first-child a{
    font-family: "秀英丸ゴシック B" , Shuei MaruGo B ;
    transform:rotate(0.3deg);
  }
  .gnav li ul li a{
    color: #535353;
    vertical-align: middle;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .gnav li ul li:nth-child(even){
    background-color: #fff;
    border-radius: 6px;
  }
  .gnav li ul.sp_consul_menu li a{
    border-radius: 6px;
    width: 100%;
    height: 100%;
    vertical-align: middle;
    padding: 10px 4px 10px 10px;
    line-height: 1.4;
    text-align: left;
  }
  .gnav > li a span{
    display: none;
  }
  .gnav > li {
    border-top: solid 1px #6EAC6A;
    border-bottom: solid 1px #388134;
    padding-left: 0;
  }
  .gnav > li > a {
    line-height: 1;
    display: block;
    padding: 12px 0 12px 20px;
  }
  .gnav > li > a::before {
    content: "\e91e";
    font-family: 'icomoon' !important;
    color: #fff;
    display: inline-block;
    margin-right: 10px;
  }
  .gnav > li.sp_nav_contact > a{
    padding: 8px 0 0 0;
  }
  .gnav li.reserve{
    display: none;
  }
  .gnav li ul li:nth-child(even) {
    background-color: transparent;
  }
  .gnav li ul.sp_consul_menu li a{
    background-color: rgba(0,0,0,0.1);
    color: #fff;
  }
  .gnav li ul.sp_consul_menu li a br{
    display: block;
  }
  .gnav li ul.sp_consul_menu li a::before{
    display: block;
    font-size: 220%;
    padding-top: 8px;
    text-align: center;
  }
  .gnav li .open_btn{
    color: #fff;
    float: right;
    padding: 8px 16px;
    transform: translate(-8px,1px);
    position: absolute;
    top: 0;
    right: 0;
  }
  .gnav li .open_btn::before {
    color: #fff;
    font-size: 180%;
    transition: .3s;
  }
  .gnav li li {
    opacity: 0;
    visibility: hidden;
    transition: .3s;
    display: inline-block;
    height: 0;
  }
  .gnav .active li {
    opacity: 1;
    visibility: visible;
    height: auto;
  }
  .gnav li ul.sp_consul_menu {
    height: 0;
    padding: 0 8px 0 2.5vw;
  }
  .gnav .active ul.sp_consul_menu {
    height: auto;
    padding: 0px 8px 16px 2.5vw;
  }
  .gnav .active .open_btn::before{
    transform: rotateZ(45deg);
  }


  .header.active .gnav {
    opacity: 1;
    pointer-events: all;
    transform: translateY(0);
  }
  .gnav_btn {
    position: fixed;
    top: 20px;
    right: 25px;
    z-index: 9999;
    display: block;
    width: 48px;
    height: 40px;
    background-color: #40933B;
  }
  .gnav_btn,
  .gnav_btn span {
    display: inline-block;
    transition: all .4s;
    box-sizing: border-box;
  }
  .gnav_btn span {
    position: absolute;
    left: 7px;
    width: 70%;
    height: 2px;
    background-color: #fff;
  }
  .gnav_btn span:nth-of-type(1) {
    top: 10px;
  }
  .gnav_btn span:nth-of-type(2) {
    top: 19px;
  }
  .gnav_btn span:nth-of-type(3) {
    bottom: 10px;
  }
  .header.active .gnav_btn span:nth-of-type(1) {
    -webkit-transform: translateY(9px) rotate(-35deg);
    transform: translateY(9px) rotate(-35deg);
  }
  .header.active .gnav_btn span:nth-of-type(2) {
    opacity: 0;
  }
  .header.active .gnav_btn span:nth-of-type(3) {
    -webkit-transform: translateY(-9px) rotate(35deg);
    transform: translateY(-9px) rotate(35deg);
  }
}

@media only screen and (max-width: 320px) {
  .gnav{
    width: 100%;
  }
  .gnav li ul.sp_consul_menu{
    width: 96%;
    margin-left: 1%;
    padding: 1% 1% 2% 1%;
  }
  .gnav li ul.sp_consul_menu li{
    width: 28vw;
    height: 28vw;
    margin-top: 1vw;
    margin-left: 1vw;
  }
  .gnav li ul.sp_consul_menu li a{
    padding: auto;
  }
}

/* ##############################################################################

  FOOTER

############################################################################## */
.footer {
  padding: 0px 0 150px 0;
  background-color: #EFEBDC;
  position: relative;
  top: 0px;
  z-index: 1;
  background: linear-gradient(to bottom, #EFEBDC 50%, #C6E1F4 80%);
}
.footer:after{
  content: "";
  display: block;
  width: 100%;
  height: 350px;
  position: absolute;
  z-index: 300;
  bottom: 0;
  background-image: url("../images/foot_bg.png");
  background-repeat: repeat-x;
  background-position: 45% bottom;
  pointer-events: none;
}
.foot_prefecture{
  background-image: url("../images/gifu_shape.png");
  background-repeat: no-repeat;
  background-position: center bottom;
  width: auto;
  display: table;
  margin-left: auto;
  margin-right: auto;
  padding-top: 70px;
  padding-bottom: 48px;
  text-align: center;
  position: relative;
  z-index: 0;
  background-color: #EFEBDC;
  width: 100%;
  display: block;
  margin-top: -50px;
  font-family: "秀英丸ゴシック B", "Shuei MaruGo B";
  transform: rotate(0.03deg);
  color: #686A67;
}
.home .foot_prefecture{
  margin-top: -70px;
}
.foot_prefecture p{
  font-size: 160%;
  margin-bottom: 10px;
}
.foot_prefecture--logo {
  margin-inline: auto;
  margin-bottom: 16px;
  width: 320px;
}
.footer nav > ul{
  width: 100%;
  position: relative;
  z-index: 100;
}
.footer ul{
  justify-content: space-around;
  font-size: 95%;
}
.footer ul li{
  background-color: #FFF;
  padding: 0px 0px;
  line-height: 1.6;
  border-radius: 6px;
  overflow: hidden;
}
.footer nav > ul{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
 }
.footer nav > ul > li{
    width: 49%;
    margin-top: 1%;
    margin-left: 1%;
 }
.footer nav > ul > li.wide{
    width: 20%;
 }
.footer ul li:nth-child(1) h2{
  background-color: #F4BF20;
}
.footer ul li:nth-child(2) h2{
  background-color: #40AFB0;
}
.footer ul li:nth-child(3) h2{
  background-color: #EB8D90;
}
.footer ul li:nth-child(4) h2{
  background-color: #83B042;
}
.footer ul li:nth-child(5) h2{
  background-color: #92425D;
}
.footer ul li:nth-child(6) h2{
  background-color: #40933B;
}
.footer ul li:nth-child(7) h2{
  background-color: #2F8ACE;
}
.footer ul li h2 a,
.footer ul li h2 span{
  color: #FFF;
  display: block;
  font-family: "秀英丸ゴシック B", "Shuei MaruGo B";
  transform: rotate(0.3deg);
  font-size: 110%;
  padding: 12px 0px 8px 18px;
  -webkit-transition: all 0.4s ease-out;
  -moz-transition: all 0.4s ease-out;
  -o-transition: all 0.4s ease-out;
  transition: all 0.4s ease-out;
}

.footer ul li h2 a:hover{
  opacity: 0.5;
}
.footer ul li ul{
  float: left;
  padding: 10px 8px 12px 8px;
}
.footer ul li li{
  float: left;
}
.footer ul li li a{
  border: none;
  padding: 8px 10px;
  float: left;
  font-size: 95%;
  font-family: 'icomoon' !important;
}
.footer ul li li a::before{
  content: "\e91e";
  color: #ccc;
  font-size: 90%;
  display: inline-block;
  transform: translate(-4px,0);
}
.pagetop {
  position: fixed;
  z-index: 150;
  right: 40px;
  text-align: center;
  font-weight: 600;
  bottom: -120px;
  opacity: 0;
}
.pagetop.fadeIn {
  animation-name: fadeIn;
  animation-timing-function: ease-in-out;
  animation-iteration-count: 1;
  animation-duration: 1s;
  -webkit-animation-name: fadeIn;
  -webkit-animation-timing-function: ease-in-out;
  -webkit-animation-iteration-count: 1;
  -webkit-animation-duration: 1s;
  bottom: 45px;
  opacity: 1;
}
.pagetop.fadeOut {
  animation-name: fadeOut;
  animation-timing-function: ease-in-out;
  animation-iteration-count: 1;
  animation-duration: 1s;
  -webkit-animation-name: fadeOut;
  -webkit-animation-timing-function: ease-in-out;
  -webkit-animation-iteration-count: 1;
  -webkit-animation-duration: 1s;
  bottom: -120px;
  position: fixed;
  opacity: 0;
}
.pagetop * {
  margin: 0 ;
}
.pagetop p {
  color: #333;
  position: relative;
  font-size: 85%;
  padding: 8px 0 0;
}
.pagetop p::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 20px;
  height: 1px;
  background: #333;
}
.footer--copyright {
  text-align: center;
  background-color: #40933B;
  color: #fff;
  padding-top: 10px;
  padding-bottom: 8px;
  line-height: 1.6;
}
.footer--copyright small{
  display: block;
}
.pbl a img{
  position: relative;
  top: -5px;
}
.pbl {
  display: block;
}
@media only screen and (max-width: 1100px) and (min-width: 768px) {
  .footer nav > ul{
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      width: 98%;
      margin-left: auto;
      margin-right: auto;
    }
    .footer nav > ul > li{
      width: 33%;
      margin-top: 1%;
    }
}
@media only screen and (max-width: 768px) {
  .footer:after{
    content: "";
    display: block;
    width: 100%;
    height: 350px;
    position: absolute;
    z-index: 10;
    bottom: 0;
    background-image: url("../images/foot_bg.png");
    background-repeat: no-repeat;
    background-position: right 25% bottom;
    background-size: 250% auto ;
  }
  .foot_prefecture{
    width: 100%;
    display: block;
  }
  .home .foot_prefecture{
    position: relative;
    left: 0;
    margin-top: 0px;
    padding-top: 50px;
    width: auto;
  }
  .home .footer {
    padding-top: 0px;
  }
  .footer nav > ul{
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      width: 94%;
      margin-left: auto;
      margin-right: auto;
   }
  .footer nav > ul > li{
      width: 49%;
      margin-top: 3%;
   }
  .footer ul li li{
    display: block;
    width: 100%;
   }
  .footer ul li li a{
    padding: 3px 0 3px 17px ;
    text-indent: -7px;
    display: block;
    width: 100%;
    border-bottom: dashed 1px #ccc;
  }
  .pagetop.fadeIn {
    animation-name: none;
    -webkit-animation-name: none;
    bottom: 10px;
    opacity: 1;
  }
  .pagetop {
    right: 10px;
  }
  .pbl {
    margin-left: auto;
    margin-right: auto;
    float: none;
  }

  .footer ul li h2 a {
    padding: 10px 0px 10px 10px;
  }
}
@media only screen and (max-width: 360px) {
  .footer ul li h2 a {
    font-size: 90%;
  }
}





/* ##############################################################################

  INDEX

############################################################################## */
.hero {
  float: none;
  text-align: center;
  margin-left: auto;
  margin-right: auto;
  background-image: url("../images/hero_bg_img.jpg");
  background-size: cover;
  width: 100%;
  overflow: hidden;
  padding-bottom: 80px ;
}
.hero img {
  padding: 40px 0px 40px 0px;
}
.slick-dots {
  position: absolute;
  bottom: 0px !important;
}
.top--legal_consult {
  margin: 0;
  padding: 0;
  transform: translate(10px,-14px);
  position: relative;
  z-index: 100;
}
.top--legal_consult > div{
  margin-top: -60px;
  margin-bottom: -60px;
}
.top--legal_consult .flex > div div{
  background-color: #fff;
  border-radius: 8px;
  margin-top: 0px;
}
.top--legal_consult .flex .block{
  width: 100%;
}

.top--legal_consult .flex > div{
  position: relative;
  z-index: 10;
}
.top--legal_consult .flex > div:after{
/*    content: "";
  background-color: #ccc;
  background-color: rgba(0,0,0,0.5);
  filter: blur(10px);
  -webkit-filter: blur(10px);
  border-radius: 80px;
  position: absolute;
  z-index: -10;
  left: 10%;
  width: 80%;
  height: 130px;
  bottom: 0px;
*/  }
@media all and (-ms-high-contrast:none) {
  .top--legal_consult .flex > div:after{
    display: none;
  }
}
.top--legal_consult div:nth-child(2){
  margin-left: 10px;
  margin-right: 10px;
}
.top--legal_consult .flex .block p{
  width: 70%;
}
.top--legal_consult .flex .block a{
  position: absolute;
  top: 0;
  right: 0;
  background-color: #fff;
  color: #fff;
  line-height: 1.6;
  border-radius: 6px;
  padding: 12px 15px 8px 180px;
  margin: 2em 9px 0 0;
  display: inline-block;
  font-size: 120%;
  width: 100%;
  font-family: "秀英丸ゴシック B" , Shuei MaruGo B ;
  transform:rotate(0.3deg);
}
.top--legal_consult .flex .block a::before{
  position: absolute;
  left: 30px;
  bottom: -7px;
}
.top--legal_consult .flex .block a:hover{
  opacity: 0.9;
  transform: translateY(-4px);
}
.top--legal_consult .flex .block:nth-child(1) a{
  background-color: #47C2F0;
  padding-left: 220px;
}
.top--legal_consult .flex .block:nth-child(1) a::before{
  content: url("../images/top_illust01.png");
}
.top--legal_consult .flex .block:nth-child(2) a{
  background-color: #FF98B5;
  padding-left: 220px;
}
.top--legal_consult .flex .block:nth-child(2) a::before{
  content: url("../images/top_illust02.png");
}
.top--legal_consult .flex .block:nth-child(3) a{
  background-color: #1C979C;
  padding-left: 120px;
}
.top--legal_consult .flex .block:nth-child(3) a::before{
  content: url("../images/top_illust03.png");
  left: 30px;
}
.top--legal_consult .flex div h3{
  border-top-left-radius: 8px;
  border-top-right-radius: 8px;
  padding: 8px 0px 14px 3em ;
  line-height: 1.4;
  text-indent: -1.1em;
  color: #fff;
  font-size: 140%;
  font-weight: normal;
}
.top--legal_consult .flex div:nth-child(n) div h3::before{
  margin-right: 12px;
  position: relative;
  bottom: -8px;
  font-size: 150%;
  display: inline-block;
  transform: translateY(12px);
}
.top--legal_consult .flex div:nth-child(1) div{
  background-position: right 10px bottom ;
}
.top--legal_consult .flex div:nth-child(2) div{
  background-position: right bottom ;
}
.top--legal_consult .flex div:nth-child(3) div{

  background-position: right 15px bottom ;
}
.top--legal_consult .flex div p{
  padding: 15px 20px 10px 20px;
}
.top--consult_box {
  background-color: #fff;
  border-radius: 6px;
  width: 100%;
  text-align: center;
  padding: 25px 20px 25px 20px;
  display: inline-block;
  border-top: solid 4px #40933B;
}
.top--consult_box h2{
  color: #40933B;
  font-size: 130%;
  transform: rotate(0.3deg);
}
.top--consult_box h2::before {
  font-size: 180%;
  display: block;
  padding-top: 10px;
  padding-bottom: 10px;
}
.top--consult_box ul {
  margin-top: 16px;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
}
.top--consult_box ul li {
  margin: 7px;
  border-radius: 6px;
  font-size: 125%;
  position: relative;
  border: solid 1px #fff;
  line-height: 1.4;
  width: 23%;
  height: 115px;
}
.top--consult_box ul li a {
  height: 100%;
  padding: auto;
  padding-top: ;
  padding-bottom: ;
  margin: auto;
  position: relative;
  padding-top: 50px;
  padding-bottom: 10px;
  vertical-align: bottom;
  font-family: "秀英丸ゴシック B", "Shuei MaruGo B";
  transform: rotate(0.3deg);
  display: flex;
  align-items: center;
  justify-content: center;
}
.top--consult_box ul li::before {
  position: absolute;
  top: 15px;
  color: #fff;
  left: 41%;
  display: block;
  text-align: center;
  margin-left: auto;
  margin-right: auto;
  font-size: 150%;
}
ul.consult_list li a.icon-business,
.top--consult_box ul li.icon-business{
  background-color: #2F8ACE;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #2F8ACE;
}
ul.consult_list li a.icon-gender,
.top--consult_box ul li.icon-gender{
  background-color: #E24D39;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #E24D39;
}
ul.consult_list li a.icon-inheritance,
.top--consult_box ul li.icon-inheritance{
  background-color: #856453;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #856453;
}
ul.consult_list li a.icon-credit,
.top--consult_box ul li.icon-credit{
  background-color: #EFB727;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #EFB727;
}
ul.consult_list li a.icon-senior,
.top--consult_box ul li.icon-senior{
  background-color: #1C979C;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #1C979C;
}
ul.consult_list li a.icon-accident,
.top--consult_box ul li.icon-accident{
  background-color: #83B042;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #83B042;
}
ul.consult_list li a.icon-child,
.top--consult_box ul li.icon-child{
  background-color: #EE8E92;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #EE8E92;
}
ul.consult_list li a.icon-violence,
.top--consult_box ul li.icon-violence{
  background-color: #063A62;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #063A62;
}
ul.consult_list li a.icon-minbou,
.top--consult_box ul li.icon-minbou{
  background-color: #A00D37;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #A00D37;
}
ul.consult_list li a.icon-housing,
.top--consult_box ul li.icon-housing{
  background-color: #ff8505;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #ff8505;
}
ul.consult_list li a.icon-labor,
.top--consult_box ul li.icon-labor{
  background-color: #BCAE7A;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #BCAE7A;
}
ul.consult_list li a.icon-neighborhood,
.top--consult_box ul li.icon-neighborhood{
  background-color: #c97fb4;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #c97fb4;
}
ul.consult_list li a.icon-leasehold,
.top--consult_box ul li.icon-leasehold{
  background-color: #1BA466;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #1BA466;
}
ul.consult_list li a.icon-consumer,
.top--consult_box ul li.icon-consumer {
  background-color: #bac81b;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #bac81b;
}
ul.consult_list li a.icon-criminal,
.top--consult_box ul li.icon-criminal {
  background-color: #898989;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #898989;
}
ul.consult_list li a.icon-other,
.top--consult_box ul li.icon-other {
  background-color: #72ced6;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #72ced6;
}
.top--consult_box ul li a{
  color: #fff;
}
.top_arrest {
  position: relative;
  padding-bottom: 0;
  transition: all 0.4s ease-out;
}
.top_arrest a {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
}
.top--content_box01 a:hover ,
.top_arrest:hover {
  opacity: 0.8;
  transform: translateY(-3px);
}
.top_arrest h2::before {
  font-size: 120%;
  display: inline-block;
  transform: translate(-8px,4px);
}
.top--content_box01 a {
  padding: 40px;
  width: 48%;
  text-align: center;
  background-color: #fff;
  display: block;
  justify-content: space-between;
  color: #40933B;
  font-size: 130%;
  transform: rotate(0.3deg);
  border-radius: 6px;
  border-top: solid 4px #40933B;
}
.top--content_box01 a span::before {
  display: inline-block;
  transform: translate(-8px,4px);
  font-size: 150%;
}
.top--news_box{
  background-color: #fff;
  border-radius: 6px;
  width: 100%;
  text-align: center;
  padding: 25px 20px 25px 20px;
  display: inline-block;
  border-top: solid 4px #40933B;
}
.top--news_box h2{
  color: #40933B;
  font-size: 130%;
}
.top--news_box h2::before{
  font-size: 180%;
  display: block;
  padding-top: 10px;
  padding-bottom: 10px;
}
.tab_box{
  display: block;
  position: relative;
}
.tab_box .btn{
  display: inline-block;
  background-color: #1C979C;
  color: #fff;
  padding: 12px 24px 12px 24px;
  border-radius: 6px;
  font-family: 'icomoon' !important;
}
.tab_box .btn::before{
  content: "\e91e";
  display: inline-block;
  transform: translateX(-6px);
}
.tab_box #panel-2 .btn{
  background-color: #FF98B5;
}
.tab_box #panel-3 .btn{
  background-color: #46C3F1;
}
.tab_box #panel-4 .btn{
  background-color: #FBB659;
}
.tab_box #panel-5 .btn{
  background-color: #82B043;
}
.home_news{
  margin-top: 20px;
  margin-bottom: 20px;
  text-align: left;
  width: 100%;
}
.home_news li{
  border-bottom: solid 1px #eee;
  padding-top: 10px;
  padding-bottom: 10px;
  padding-left: 20px;
  margin-bottom: 10px;
}
.home_news li a{
  padding: 0;
}
.home_news li .date {
  display: inline;
  padding-right: 15px;
}
@media only screen and (min-width: 767px) {
  .content_box table td:first-of-type{
    width: 25% !important;
  }
}
@media only screen and (max-width: 767px) {
  .hero{
    padding-bottom: 0px;
  }
  .top--legal_consult .flex {
    width: 100%;
    margin: 0;
    padding: 0;
  }
  .top--legal_consult .flex > div div{
    background-color: transparent;
    border-radius: 8px;
    width: 100%;
  }
  .top--legal_consult div:nth-child(2){
    margin: 0;
  }
  .top--legal_consult .flex div div h3{
    font-size: 120%;
    padding: 5px 0px 12px 20px;
  }
  .top--legal_consult{
    transform: translate(0,0);
  }
  .top--legal_consult > div{
    margin-top: 0px;
    margin-bottom: 0;
  }
  .top--legal_consult .flex .block{
    width: 32%;
    font-size: 80%;
  }
  .top--legal_consult .flex .block div{
    width: 100%;
    padding: 0;
    float: left;
  }
  .top--legal_consult .flex .block:nth-child(1) a,
  .top--legal_consult .flex .block:nth-child(2) a,
  .top--legal_consult .flex .block:nth-child(3) a{
    padding-left: 0;
    padding-right: 0;
    padding-top: 60px;
    padding-bottom: 8px;
    text-align: center;
  }
  .top--legal_consult .flex .block:nth-child(1) a::before{
    left: 0;
    bottom: 56px;
    float: left;
    display: inline-block;
    transform-origin: bottom left;
    -webkit-transform: scale(0.6);
    transform: scale(0.6);
  }
  .top--legal_consult .flex .block:nth-child(2) a::before{
    left: 0;
    bottom: 56px;
    display: inline-block;
    transform-origin: bottom left;
    -webkit-transform: scale(0.6);
    transform: scale(0.6);
  }
  .top--legal_consult .flex .block:nth-child(3) a::before{
    left: 25px;
    bottom: 56px;
    transform-origin: bottom left;
    -webkit-transform: scale(0.7);
    transform: scale(0.7);
  }
  .top--legal_consult .flex .block a{
    padding: 4px 10px 2px 10px;
    margin: 2em 10px 0 0;
    display: inline-block;
    font-size: 110%;
    position: relative;
  }
  .top--legal_consult{
    display: block;
  }
  .top--consult_box{
    padding: 25px 10px 25px 10px;
  }
  .top--consult_box ul{
    display: flex;
    width: 100%;
  }
  .top--consult_box ul li{
    width: 31%;
    height: 100px;
    margin: 0;
    margin-bottom: 3%;
    margin-left: 2%;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .top--consult_box ul li a{
    font-size: 80%;
  }
  .top--consult_box ul li:nth-child(even){
    margin-left: 1% ;
  }
  .top--consult_box ul li::before{
    display: block;
    transform: translate(0 , 0);
    margin-bottom: 8px;
   }
  .top_arrest {
    padding: 16px 0 8px 0 ;
  }
  .home_news li{
    padding-left: 0px;
  }
  .home_news li .date {
    display: inline;
    padding-right: 8px;
  }
  #panels .container{
    width: 100%;
  }
  .top--news_box{
    padding: 25px 0px 25px 0px;
  }
  .top_arrest:before{
    left: auto;
    bottom: -18px;
    right: -8px;
    float: right;
    -webkit-transform: scale(0.8);
    transform: scale(0.8);
  }
  .top--content_box01 a {
    padding: 12px 0 16px 60px;
    text-align: left;
    text-indent: -14px;
  }
  .top--content_box01 a span {
    line-height: 1.4;
  }


}


/* slick
**************************************** */
.slider {
  width: 100%;
  margin: 0px auto;
}
.slick-slide {
  margin: 0px 20px;
}
.slick-slide img {
  width: 100%;
}
.slick-prev::before,
.slick-next::before {
  color: black;
}
.slick-slide {
  transition: all ease-in-out .3s;
  opacity: .2;
}
.slick-slide a img:hover{
  opacity: .9;
}
.slick-active {
  opacity: .5;
}
.slick-current {
  opacity: 1;
}
@media all and (-ms-high-contrast:none) {
  .slick-slide li :hover,
  .slick-slide li a :hover{
    opacity: .9;
  }
}



/* ##############################################################################

  FAQ

############################################################################## */

.tab-list {
  width: 100%;
  transform: translateX(-12px);
  margin-left: 2%;
}
.tab-list li{
  width: 11.5%;
  margin: 0px 2px 12px 2px;
}
.tab-list li a{
  text-align: center;
  line-height: 1.6;
  margin-left: 4px;
  margin-right: 4px;
  border:solid 1px #fff;
  padding: 8px 12px 6px 12px;
  border-radius: 6px;
  background-color: #FFF;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #FF8505;
  color: #fff;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.tab-list li.divorce a:hover,
.tab-list li.divorce.selected a{
  background-color: #E24D38;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #E24D38;
}
.tab-list li.divorce a{
  color: #E24D38;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #E24D38;
}
.tab-list li.labor a:hover,
.tab-list li.labor.selected a{
  background-color: #BCAE7A;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #BCAE7A;
}
.tab-list li.labor a{
  color: #BCAE7A;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #BCAE7A;
}
.tab-list li.other a:hover,
.tab-list li.other.selected a{
  background-color: #72CED6;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #72CED6;
}
.tab-list li.other a{
  color: #72CED6;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #72CED6;
}
.tab-list li.criminal_case a:hover,
.tab-list li.criminal_case.selected a{
  background-color: #898989;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #898989;
}
.tab-list li.criminal_case a{
  color: #898989;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #898989;
}
.tab-list li.credit a:hover,
.tab-list li.credit.selected a{
  background-color: #EFB727;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #EFB727;
}
.tab-list li.credit a{
  color: #EFB727;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #EFB727;
}
.tab-list li.senior a:hover,
.tab-list li.senior.selected a{
  background-color: #1C979C;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #1C979C;
}
.tab-list li.senior a{
  color: #1C979C;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #1C979C;
}
.tab-list li.inheritance a:hover,
.tab-list li.inheritance.selected a{
  background-color: #856453;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #856453;
}
.tab-list li.inheritance a{
  color: #856453;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #856453;
}
.tab-list li.traffic_accident a:hover,
.tab-list li.traffic_accident.selected a{
  background-color: #83B042;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #83B042;
}
.tab-list li.traffic_accident a{
  color: #83B042;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #83B042;
}
.tab-list li.child a:hover,
.tab-list li.child.selected a{
  background-color: #EE8E92;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #EE8E92;
}
.tab-list li.child a{
  color: #EE8E92;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #EE8E92;
}
.tab-list li.violence a:hover,
.tab-list li.violence.selected a{
  background-color: #063A62;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #063A62;
}
.tab-list li.violence a{
  color: #063A62;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #063A62;
}
.tab-list li.business a:hover,
.tab-list li.business.selected a{
  background-color: #2F8ACE;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #2F8ACE;
}
.tab-list li.business a{
  color: #2F8ACE;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #2F8ACE;
}
.tab-list li.minbou a:hover,
.tab-list li.minbou.selected a{
  background-color: #A00D37;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #A00D37;
}
.tab-list li.minbou a{
  color: #A00D37;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #A00D37;
}
.tab-list li.request a:hover,
.tab-list li.request.selected a{
  background-color: #A00D37;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #A00D37;
}
.tab-list li.request a{
  color: #A00D37;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #A00D37;
}

.tab-list li.neighborhood a:hover,
.tab-list li.neighborhood.selected a{
  background-color: #A00D37;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #A00D37;
}
.tab-list li.neighborhood a{
  color: #A00D37;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #A00D37;
}

.tab-list li.leasehold a:hover,
.tab-list li.leasehold.selected a{
  background-color: #1BA466;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #1BA466;
}
.tab-list li.leasehold a{
  color: #1BA466;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #1BA466;
}
.tab-list li.consumer a:hover,
.tab-list li.consumer.selected a{
  background-color: #BAC81B;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #BAC81B;
}
.tab-list li.consumer a{
  color: #BAC81B;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #BAC81B;
}
.tab-list li.lowyer a:hover,
.tab-list li.lowyer.selected a{
  background-color: #FF8505;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #FF8505;
}
.tab-list li.lowyer a{
  color: #FF8505;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #FF8505;
}
.tab-list li.selected a{
  color: #fff;
}
.tab-list li a:hover{
  color: #fff
}
.faq_cat_btn input{
  display: inline;
  width: auto;
}
.faq_box{
  width: 98% !important;
  margin-left: 1%;
  padding: 0;
}
.content_box h2.faq_ttl{
  font-size: 120%;
}
.content_box .text_link a{
  background-color: #FF8505;
  color: #fff;
  padding: 10px 14px 12px 14px;
  border-radius: 6px;
  font-family: "秀英丸ゴシック B", "Shuei MaruGo B";
  transform: rotate(0.01deg);
}
.page-faq-list .content_box {
  padding-top: 40px;
}
.page-faq-list .content_box:first-child ul {
  padding-bottom: 20px;
}
.page-faq-list .content_box:first-child ul li{
  width: 16%;
  display: inline-block;
  padding-top: 0;
  padding-bottom: 0;
  padding-right: 0;
  padding-left: 0;
  text-indent: 0;
  border-bottom: none;
}
.page-faq-list .content_box:first-child ul li::before{
  content: "";
  display: none;
}
.page-faq-list ul.tab-list{
  margin-left: 2%;
}
.page-faq-list ul.tab-list a:hover{
  opacity: 1;
}


/**男女離婚カテゴリのカラー**/
.faq_box.divorce .answer p:first-of-type,
.faq_box.divorce .question span{
  color: #40933B;
}
.faq_box.divorce .question::before{
  border-left: 6px solid #40933B;
}
.faq_box.divorce .answer h4{
}
.faq_box.divorce .answer hr{
  border-bottom: dashed 1px #40933B;
}

/**労働カテゴリのカラー**/
.faq_box.labor .answer p:first-of-type,
.faq_box.labor .question span{
  color: #40933B;
}
.faq_box.labor .question::before{
  border-left: 6px solid #40933B;
}
.faq_box.labor .answer h4{
  border: solid 1px #40933B;
}
.faq_box.labor .answer hr{
  border-bottom: dashed 1px #40933B;
}

/**その他カテゴリのカラー**/
.faq_box.other .answer p:first-of-type,
.faq_box.other .question span{
  color: #40933B;
}
.faq_box.other .question::before{
  border-left: 6px solid #40933B;
}
.faq_box.other .answer h4{
  border: solid 1px #40933B;
}
.faq_box.other .answer hr{
  border-bottom: dashed 1px #40933B;
}

/**刑事事件カテゴリのカラー**/
.faq_box.criminal_case .answer p:first-of-type,
.faq_box.criminal_case .question span{
  color: #40933B;
}
.faq_box.criminal_case .question::before{
  border-left: 6px solid #40933B;
}
.faq_box.criminal_case .answer h4{
  border: solid 1px #40933B;
}
.faq_box.criminal_case .answer hr{
  border-bottom: dashed 1px #40933B;
}

/**高齢者カテゴリのカラー**/
.faq_box.credit .answer p:first-of-type,
.faq_box.credit .question span{
  color: #40933B;
}
.faq_box.credit .question::before{
  border-left: 6px solid #40933B;
}
.faq_box.credit .answer h4{
  border: solid 1px #40933B;
}
.faq_box.credit .answer hr{
  border-bottom: dashed 1px #40933B;
}

/**高齢者障がい者カテゴリのカラー**/
.faq_box.senior .answer p:first-of-type,
.faq_box.senior .question span{
  color: #40933B;
}
.faq_box.senior .question:before{
  border-left: 6px solid #40933B;
}
.faq_box.senior .answer h4{
  border: solid 1px #40933B;
}
.faq_box.senior .answer hr{
  border-bottom: dashed 1px #40933B;
}

/**相続遺産カテゴリのカラー**/
.faq_box.inheritance .answer p:first-of-type,
.faq_box.inheritance .question span{
  color: #40933B;
}
.faq_box.inheritance .question:before{
  border-left: 6px solid #40933B;
}
.faq_box.inheritance .answer h4{
  border: solid 1px #40933B;
}
.faq_box.inheritance .answer hr{
  border-bottom: dashed 1px #40933B;
}

/**交通事故カテゴリのカラー**/
.faq_box.traffic_accident .answer p:first-of-type,
.faq_box.traffic_accident .question span{
  color: #40933B;
}
.faq_box.traffic_accident .question:before{
  border-left: 6px solid #40933B;
}
.faq_box.traffic_accident .answer h4{
  border: solid 1px #40933B;
}
.faq_box.traffic_accident .answer hr{
  border-bottom: dashed 1px #40933B;
}

/**子どもカテゴリのカラー**/
.faq_box.child .answer p:first-of-type,
.faq_box.child .question span{
  color: #40933B;
}
.faq_box.child .question:before{
  border-left: 6px solid #40933B;
}
.faq_box.child .answer h4{
  border: solid 1px #40933B;
}
.faq_box.child .answer hr{
  border-bottom: dashed 1px #40933B;
}

/**DV犯罪カテゴリのカラー**/
.faq_box.violence .answer p:first-of-type,
.faq_box.violence .question span{
  color: #40933B;
}
.faq_box.violence .question:before{
  border-left: 6px solid #40933B;
}
.faq_box.violence .answer h4{
  border: solid 1px #40933B;
}
.faq_box.violence .answer hr{
  border-bottom: dashed 1px #40933B;
}

/**事業者カテゴリのカラー**/
.faq_box.business .answer p:first-of-type,
.faq_box.business .question span{
  color: #40933B;
}
.faq_box.business .question:before{
  border-left: 6px solid #40933B;
}
.faq_box.business .answer h4{
  border: solid 1px #40933B;
}
.faq_box.business .answer hr{
  border-bottom: dashed 1px #40933B;
}

/**近隣トラブルのカラー**/
.faq_box.neighborhood .answer p:first-of-type,
.faq_box.neighborhood .question span{
  color: #40933B;
}
.faq_box.neighborhood .question:before{
  border-left: 6px solid #40933B;
}
.faq_box.neighborhood .answer h4{
  border: solid 1px #40933B;
}
.faq_box.neighborhood .answer hr{
  border-bottom: dashed 1px #40933B;
}

/**民暴カテゴリのカラー**/
.faq_box.minbou .answer p:first-of-type,
.faq_box.minbou .question span{
  color: #40933B;
}
.faq_box.minbou .question:before{
  border-left: 6px solid #40933B;
}
.faq_box.minbou .answer h4{
  border: solid 1px #40933B;
}
.faq_box.minbou .answer hr{
  border-bottom: dashed 1px #40933B;
}
.question{
  padding: 6px 10px 8px 16px;
  background-color: #FAF8EE;
  border-left: solid 3px #40933B;
  margin: 0;
  font-size: 110%;
}
.question span{
  color: #40933B;
  font-size: 130%;
  padding-right: 8px;
  font-family: "秀英丸ゴシック B", "Shuei MaruGo B";
  transform: rotate(0.3deg);
}
.page-consult .question{
  cursor :pointer;
  transition-duration: .3s;
  padding-left: 55px;
  text-indent: -2.9em;
}
.page-consult .question:hover{
  opacity: 0.7;
  transform: translateY(-2px);
  background-color: #40933B;
  color: #fff;
}
.page-consult .question:hover span{
  color: #fff;
}
.page-consult .question:before{
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  border: 5px solid transparent;
  border-left: 6px solid #40933B;
  margin-right: 4px;
  transition-duration: .3s;
  transform: rotate(0deg);
}
.faq_box .answer{
  margin-left: 15px;
}
.faq_box .question p{
  display: inline;
  padding-left: 0;
}
.faq_box.active .answer {
  line-height: 2;
  opacity: 1;
  visibility: visible;
}
.faq_box.active .answer p{
  display: block;
}
.faq_box.active .answer hr{
  border: none;
  border-bottom: dashed 1px #FF8505;
  margin: 0;
  padding: 0;
}
.active .question:before{
  transform: rotate(90deg);
  transform-origin: 30% 50%;
}
.page-consult .faq_box .answer *{
  display: none;
}
 .page-consult .answer{
  display: inline-block;
  line-height: 0;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: 0.2s;
  transition: 0.2s;

  display: block;
  padding-bottom: 2px !important;
}
 .page-consult .active .answer{
  display: block;
  height: auto;
}
.page-consult .active .answer h4{
  display: inline-block;
  color: #fff;
  margin-bottom: 0;
  padding: 0 16px 0 8px;
  width: auto;
}
.page-consult  .active .answer h4:before{
  content: "";
}
.faq_box .answer h4{
  background-color: #40933B;
  color: #fff;
  border: solid 1px;
  border-radius: 6px;
  padding: 6px 12px 4px 12px;
  display: inline-block;
  font-size: 100%;
  width: auto;
  text-align: center;
}
.faq_box .answer h4:before{
  content: "";
}
.faq_box .answer{
  padding: 10px 0px 15px 0px;
}
.page-committee .faq_box.active .answer{
  padding-top: 20px;
}
.page-committee .faq_box.active .answer hr{
  margin-top: 10px;
  margin-bottom: 15px;
  display: block;
  width: 97%;
}
.faq_box .answer p:first-of-type{
  font-size: 115%;
  margin-bottom: 0;
  padding-bottom: 9px;
}
.page-committee .faq_box.active .answer p:first-of-type{
  font-size: 100%;
  padding-bottom: 0;
}
.question{
  padding-left:70px;
  text-indent:-2.5em;
}
.page-faq-list .question{
  padding-left: 60px;
  text-indent:-1.9em;
}
.question p{
  display: inline;
  padding-left: 0;
}
.question:before{
  border-left: 6px solid #666666;
}
.faq_box.active .answer hr{
  border-bottom: dashed 1px #666666;
}

.content_box.office_box h4{
  text-align: left;
}





@media only screen and (max-width: 1100px) and (min-width: 768px) {

}
@media only screen and (max-width: 767px) {
  .tab-list {
    width: 105%;
    margin-bottom: 15px;
    margin-left: 2%;
    transform: translateX(-12px);
  }
  .tab-list li a{
    text-align: center;
    line-height: 1.3;
    margin-left: 2px;
    margin-right: 2px;

    padding: 8px 2px 6px 2px;
    border-radius: 6px;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .question{
    line-height: 1.6;
    width: 100%;
    padding-left: 50px;
    text-indent: -2.5em;
  }
  .page-consult .question:before{
    transform: rotate(0deg);
  }
  .answer{
    margin-left: 15px;
    width: 100%;
    text-align: justify;
  }
  .page-consult .active .answer h4{
    padding: 7px 12px 5px 12px;
    text-align: center;
    margin-left: 8px;
    font-size: 90%;
  }
  .page-faq-list .tab-list{
    margin-left: 8px;
  }
  .page-faq-list .content_box:first-child ul li{
    width: 23.5%;
  }
  .page-faq-list .content_box:first-child ul li a{
    padding-top: 3px;
    padding-bottom: 5px;
  }
  .page-faq-list .question{
    padding-left: 45px;
    text-indent: -1.9em;
  }
  .faq_box{
    margin-left: 0;
  }
  .faq_box .answer{
    margin-left: 0;
  }
  .tab-list {
    margin-left: 4%;
  }
  .tab-list li{
    width: 22%;
  }
  .page-consult .active .question:before{
    border-left: 6px solid #fff;
  }
  .faq_box .answer h4{
    padding: 7px 12px 8px 20px;
    text-align: center;
    margin-bottom: 0;
    margin-left: 14px;
  }
  .content_box.office_box {
    width: 100%;
    overflow: hidden;
  }
}

/* ##############################################################################

  area

############################################################################## */

.area .tab-list li a{
  background-color: #FF8604;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #FF8604;
}
.area .tab-list li.selected a{
  background-color: #fff;
  color: #FF8604;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #FF8604;
}
.page-office .content_box:first-child ul {
  padding-bottom: 20px;
}
.page-office .content_box:first-child ul li{
  display: inline-block;
  padding-top: 0;
  padding-bottom: 0;
  padding-right: 0;
  padding-left: 0;
  text-indent: 0;
  border-bottom: none;
}
.page-office .content_box:first-child ul li:before{
  content: "";
  display: none;
}
.page-office .flow-link {
  display: none;
}
.content_box .schedule table{
  border: none;
}
.content_box .schedule table td{
  border: solid 1px #D5D0BE;
  text-align: left;
  padding: 8px 6px 8px 10px;
}

.content_box .schedule table th,
.content_box .schedule table td:first-of-type,
.content_box .schedule table tr:nth-child(even) td:first-of-type{
  border: solid 1px #D5D0BE;
  width: 12%;
  padding: 8px 6px;
  text-align: center;
  font-weight: normal;
  line-height: 1.4;
  background-color: #e9e4cf;
  vertical-align: middle;
}
.flow_box .schedule table td:first-of-type,
.flow_box .schedule table tr:nth-child(even) td:first-of-type{
  width: 12%;
}
#map-canvas{
  width: 97%;
  height: 450px;
  margin-bottom: 32px;
}
#map-canvas a.map_link{
  color: #fff;
  background-color: #FF8604;
  padding: 5px 12px;
  border-radius: 6px;
  display: inline-block;
  margin-top: 3px;
}
.gifu_map{
  width: 40%;
  height: auto;
  position: absolute;
  top: -118px;
  right: 0;
}
.map_box{
  align-items: flex-start;
  position: relative;
  padding: 0;
}
.map_box .tab-list {
  padding-left: 0;
}
.map_box .tab-list li {
  -webkit-transition: all 0.4s ease-out;
  -moz-transition: all 0.4s ease-out;
  -o-transition: all 0.4s ease-out;
  transition: all 0.4s ease-out;
}
.map_box .tab-list li a {
  line-height: 1.4;
  padding: 8px 2px;
  width: 95%
}

.map_box .tab-list li:hover {
  opacity: 0.5;
}

@media only screen and (max-width: 767px) {
  .gifu_map {
    width: 70%;
    position: relative;
    top: -10px;
    margin: 0 auto 10px auto;
  }
  .map_box {
    width: 105%;
    margin: 0 1% 0 1%;
  }
  .map_box .tab-list {
    width: 100%;
    margin-bottom: 0;
    padding-bottom: 10px;
  }
  .page-office .content_box:first-child ul {
    margin-left: 3%;
  }
  .page-office .content_box:first-child ul li {
    width: 22% ;
  }
  .content_box .schedule table td {
    width: auto;
  }
  .flow_box .schedule table td:first-of-type ,
  .flow_box .schedule table th:first-of-type {
    width: 100% !important;
  }



}

/* ##############################################################################

  lawyer

############################################################################## */

.faq_list{
  visibility: hidden;
  display: block;
  overflow: hidden;
  -webkit-transition: all 1s;
  -moz-transition: all 1s;
  -ms-transition: all 1s;
  -o-transition: all 1s;
  transition: all 1s;
  opacity: 0;
  height: 0;
  width: 0;
}
.lawyer_list{
  visibility: hidden;
  display: block;
  overflow: hidden;
  opacity: 0;
  height: 0;
  width: 0;
  padding-bottom: 16px;
}

.content_box .lawyer_list h3{
  padding: 12px 10px 7px 15px;
  margin-bottom: 8px;
}
.content_box .lawyer_list p{
  padding: 0 0 8px 4px;
}
.content_box .lawyer_list a.office{
  padding: 10px 16px 12px 16px;
}

.visible{
  visibility: visible;
  display: block;
  opacity: 1;
  height: auto;
  width: auto;
}
.none{
  display: none;
}
.lawyer_list.visible{
  display: block;
  border-bottom: dashed 1px #ccc;
  margin-bottom: 15px;
  padding-left: 10px;
  width: 48%;
  margin-left: 2%;
}
.lawyer_list.area_visible{
  display: block;
}
.lawyer_list_box input{
  padding: 4px 10px 2px 8px ;
  margin-bottom: 8px;
  text-align: center;
  border: none;
  border-radius: 6px;
  outline: none;
  background: none;
  font-size: 120%;
  border: solid 1px #40933B;
  color: #40933B;
  background-color: #fff;
  -webkit-transition: all .6s;
  -moz-transition: all .6s;
  -ms-transition: all .6s;
  -o-transition: all .6s;
  transition: all .6s;
}
.lawyer_list_box input:hover {
  cursor: pointer;
  background-color: #40933B;
  color: #fff;
}
.lawyer_list_box input[type="button"]:focus {
  background-color: #40933B;
  color: #fff;
}
.lawyer_list_box .block {
  display: block;
  width: 100%;
  float: left;
}

.lawyer_list_box02 {
  margin-left: -20px;
}
.about-lawyer-question {
  padding: 6px 10px 8px 16px;
  background-color: #FAF8EE;
  border-left: solid 3px #40933B;
  margin: 0;
  font-size: 110%;
}

.about-lawyer-question span {
  color: rgb(64, 147, 59);
  font-size: 130%;
  padding-right: 8px;
  font-family: "秀英丸ゴシック B", "Shuei MaruGo B";
  transform: rotate(0.3deg);
}
.content_box .about-lawyer-question p {
  display: inline;
  padding-left: 0;
}
.page-about-lawyer .content_box h4:before {
  display: none;
}


@media all and (-ms-high-contrast:none) {
  .lawyer_list_box input{
    padding: 4px 7px 6px 8px ;
  }
}
@media only screen and (max-width: 767px) {
  .lawyer_list_box{
    margin: 0;
    margin-bottom: 0px;
    padding: 0;
    width: 105%;
    display: block;
    float: left;
  }
  .lawyer_list.visible{
    width: 100%;
    padding: 0;
    margin: 0;
    padding-left: 10px;
    padding-top: 0;
    padding-bottom: 16px;
    line-height: 1.6;
  }
  .lawyer_list.visible p{
    padding-bottom: 4px;
  }
  .content_box .lawyer_list a.office{
    display: block;
    width: 98%;
    text-align: center;
  }

  .lawyer_list_box input,
  .lawyer_list_box input:hover{
    margin: 0 0 6px 6px;
    float: left;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    font-size: 90%;
    padding: 2px 8px 1px 8px;
    outline: none;
    background: none;
  }
  .lawyer_list_box input:hover{
    background: rgb(64,147,59);
    background: -moz-linear-gradient(left, rgba(64,147,59,1) 0%, rgba(64,147,59,1) 100%);
    background: -webkit-linear-gradient(left, rgba(64,147,59,1) 0%,rgba(64,147,59,1) 100%);
    background: linear-gradient(to right, rgba(64,147,59,1) 0%,rgba(64,147,59,1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#40933b', endColorstr='#40933b',GradientType=1 );
    }
    .lawyer_list_box02{
      float: left;
      display: block;
      width: 100%;
      margin-left: 0;
    }

}


/* ##############################################################################

  PAGE

############################################################################## */
.content_box{
  background-color: #fff;
  border-radius: 6px;
  width: 100%;
  text-align: left;
  padding: 24px 30px 24px 30px;
  margin-bottom: 24px;
  display: inline-block;
  border-top: solid 4px #40933B;
  position: relative;
  z-index: 10;
}
.content_box iframe{
  width: 100%;
}
.content_box p{
  width: 96%;
  padding-top: 8px;
  padding-bottom: 8px;
}
.content_box a {
  color: #FF8505;
  font-weight: bold;
  text-decoration: underline;
  word-wrap: break-word;
}
.page-links .content_box a{
  color: #666;
}
.content_box .font12px{font-size: 12px;}
.content_box .font16px{font-size: 16px;}
.content_box .font18px{font-size: 18px;}
.content_box .font22px{font-size: 22px;}
.content_box .font26px{font-size: 24px;}
.content_box .font30px{font-size: 30px;}

.content_box table{
  width: 100% !important;
  position: relative;
  border-top: solid 2px #d5d0be;
  border-bottom: solid 2px #d5d0be;
  margin-bottom: 16px;
}
_:-ms-fullscreen, :root .content_box table {
    margin-bottom: 10px;
    width: 100%;
}
_:-ms-fullscreen, :root .content_box iframe {
  float: left;
}
.content_box.flow_box table{
  width: 92% !important;
  margin-left: 3%;
}
.content_box.flow_box p{
  padding-left: 20px;
}
.content_box table th{
  border: solid 1px #D5D0BE;
  width: 12%;
  padding: 8px 6px;
  text-align: center;
  font-weight: normal;
  line-height: 1.4;
  background-color: #e9e4cf;
  vertical-align: middle;
}
.content_box table td a{
  background-color: #FF8505;
  color: #fff;
  padding: 6px 10px 4px 10px;
  border-radius: 6px;
  margin-top: 5px;
  display: inline-block;
}
.content_box table td a:before{
  content: "\e91e";
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  margin-right: 4px;
  font-size: 80% ;
}
.content_box table td a[href^="tel:"]{
  background-color: rgba(0,0,0,0);
  color: #535353;
}
.content_box table tr{
  background-color: #fffef8;
}
.content_box table tr:nth-child(even){
  background-color: #f9f6ea;
}
.content_box table tr:nth-child(even) td:first-of-type{
  border-right: solid 3px #fff;
}
.content_box table td:first-of-type{
  border-right: solid 3px #F9F6EA;
  width: 25%;
}
.content_box table td{
  padding: 15px 10px 15px 20px ;
  word-wrap: break-word;
}
.content_box table td p{
  padding: 0;
}
.content_box.flow_box table td p{
  padding-left: 0;
}
.td_text{
  display: block;
}
.content_box a.link{
  color: #fff;
  background-color: #FF8604;
  padding: 16px 18px;
  border-radius: 6px;
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  display: inline-block;
  margin-top: 5px;
  margin-bottom: 2px;
}
.content_box a.link:before{
  content: "\e91e";
  margin-right: 8px;
  display: inline-block;
  transform: translateY(2px);
}
.content_box:first-child ul {
  padding-bottom: 35px;
}
.content_box:first-child ul li{
  padding-top: 10px;
  padding-bottom: 12px;
  padding-right: 2em;
  padding-left: 4em;
  text-indent: -2.6em;
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1.8;
  border-bottom: dashed 1px #ccc
}
.content_box:first-child ul li:before{
  content: "\e921";
  color: #666;
  margin-left: 9px;
  margin-right: 12px;
  font-size: 120%;
  transform: translateY(3px);
}
.content_box:first-child ul li:nth-child(even){
  background-color: #F5F5F5;
}
.content_box ol {
  counter-reset: item;
}
.content_box ol li {
  text-indent: -1.8em;
  padding-left: 3.5em;
  padding-right: 1em;
  border-bottom: dashed 1px #ccc;
  padding-top: 12px;
  padding-bottom: 12px;
}
.content_box ol li:before {
  counter-increment: item;
  content: counter(item)'.';
  padding-right: .5em;
  font-size: 120%;
  font-weight: bold;
  color: #40933B;
}
.content_box ol li a {
  text-indent: 0;
  padding-left: 0;
}
.back_btn {
  background-color: #40933B;
  color: #fff;
  border: none;
  border-radius: 6px;
  padding: 8px 16px;
  transition: .6s;
  display: table;
  margin-left: auto;
  margin-right: auto;
}
.back_btn:hover {
  opacity: .6;
  cursor: pointer;
}
.page-links .content_box:first-child ul li:nth-child(even),
.page-sitemap .content_box:first-child ul li:nth-child(even){
  background-color: #fff;
}
.page-links .content_box:first-child li li:nth-child(even),
.page-sitemap .content_box:first-child li li:nth-child(even){
  background-color: #F5F5F5;
}
.page-consult .content_box:first-child ul {
  padding-bottom: 35px;
}
.page-consult .content_box:first-child ul li{
  padding-top: 10px;
  padding-bottom: 18px;
  padding-right: 2em;
  padding-left: 4em;
  text-indent: -2.6em;
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1.6;
}
.page-consult .content_box:first-child ul li:before{
  content: "\e921";
  color: #666;
  margin-left: 9px;
  margin-right: 12px;
  font-size: 120%;
  transform: translateY(3px);
}
.page-consult .content_box:first-child ul li:nth-child(even){
  background-color: #F5F5F5;
}
.content_box .reserve_btn{
  display: flex;
  width: auto;
  padding-left: auto;
  padding-right: auto;
  margin-left: 0;
  margin-bottom: 10px;
  padding-left: 0;
}
.content_box .reserve_btn span{
  display: inline-block;
}
.content_box .reserve_btn a{
  margin: 0 10px;
  display: inline-block;
  line-height: 2.5;
  text-align: center;
}
.content_box .reserve_btn .himawari{
  margin-top: 16px;
}
.content_box .flow_link{
  background-color: #1C979C;
  color: #fff;
  padding: 18px 16px;
  border-radius: 6px;
  display: block;
  text-align: center;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 16px;
}
.content_box .flow_link:before{
  transform:rotateZ(90deg) translate(2px,8px);
}
.content_box h2{
  text-align: center;
  font-size: 150%;
  border-bottom: dashed 1px #333;
  display: table;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 24px;
  padding-left: 20px;
  padding-right: 20px;
  padding-top: 20px;
  padding-bottom: 8px;
  position: relative;
  z-index: 10;
  font-family: "秀英丸ゴシック B", "Shuei MaruGo B";
  transform: rotate(0.3deg);
  color: #535353;
}
.content_box h2:before{
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  display: inline-block;
  margin-right: 15px;
  transform: translateY(5px);
}
.content_box h2 small{
  font-size: 70%;
  display: block;
  padding-top: 8px;
  padding-bottom: 8px;
  text-align: center;
}
.page-office .content_box h2{
  margin-bottom: 40px;
}
.content_box h4.faq_sub_ttl{
  font-size: 120%;
  text-align: left;
  padding-bottom: 7px;
  padding-left: 9px;
}
.content_box h4.faq_sub_ttl:before{
  content: "\e90b";
  color: #40933B;
  font-size: 160%;
  margin-right: 9px;
  transform: translateY(7px);
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  display: inline-block;
}
.page-office .content_box h4,
.page-consult .content_box h4{
  padding-top: 24px;
  font-size: 120%;
  border-bottom: none ;
  font-weight: normal;
  margin-bottom: 8px;
  margin-left: 0;
  padding-left: 0;
  text-align: center;
  display: block;
  width: 100%;
}
.page-office .content_box h4:before,
.page-consult .content_box h4:before{
  content: "\e947";
  color: #D5D0BE;
  margin-right: 9px;
  transform: translateY(4px);
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  display: inline-block;
}
.page-consult .content_box h4.faq_sub_ttl:before{
  color: #40933B;
}
.page-consult .consult_faq h4{
  text-align: left;
}
.page-consult .consult_faq h4.faq_sub_ttl:before{
  content: "\e90b";
}

.content_box h2.access{
  border-bottom: dashed 1px #40933B;
  padding-bottom: 14px;
}
.content_box h2.icon-access:before{
  color: #40933B;
}
.content_box h2.icon-flow:before{
  font-size: 170%;
  color: #40933B;
}
.content_box h2.icon-flow{
  border-bottom: dashed 1px #40933B;
  padding-bottom: 13px;
}
.page-consult .content_box:nth-of-type(1) h3:nth-of-type(1):after{
  content: url(../images/consult/Consult_illust01.png);
  position: absolute;
  right: 25px;
  bottom: -15px;
}
.page-consult .content_box:nth-of-type(1) h3:nth-of-type(2):after{
  content: url(../images/consult/Consult_illust02.png);
  position: absolute;
  right: 25px;
  bottom: -15px;
}
.page-consult .content_box:first-child h3:before{
  content: "\e91b";
  font-size: 140%;
  margin-right: 8px;
  transform: translateY(5px);
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  display: inline-block;
}
.page-consult .content_box:first-child h3{
  color: #fff;
  border-left: none;
  margin-left: 0;
}
.page-consult .content_box:first-child ul li{
  width: 100%;
  padding-top: 8px;
  padding-bottom: 12px;
  padding-right: 3em;
  padding-left: 4em;
  text-indent: -2.5em;
  transform: rotate(0.03deg);
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1.6;
  border-bottom: dashed 1px #ccc;
  font-size: 105%;
}
.page-housing .content_box:first-child h3{
  background-color: #1BA466;
  border-bottom: solid 4px #54BB8C;
}
.page-general .content_box:first-child h3{
  background-color: #E24D38;
  border-bottom: solid 4px #E97A6A;
}
.page-credit .content_box:first-child h3{
  background-color: #EFB727;
  border-bottom: solid 4px #F3C95D;
}
.page-senior .content_box:first-child h3{
  background-color: #1C979C;
  border-bottom: solid 4px #55B1B5;
}
.page-inheritance .content_box:first-child h3{
  background-color: #856453;
  border-bottom: solid 4px #A48B7E;
}
.page-traffic_accident .content_box:first-child h3{
  background-color: #83B042;
  border-bottom: solid 4px #A2C471;
}
.page-child .content_box:first-child h3{
  background-color: #EE8E92;
  border-bottom: solid 4px #F2AAAD;
}
.page-violence .content_box:first-child h3{
  background-color: #063A62;
  border-bottom: solid 4px #446B89;
}
.page-minbou .content_box:first-child h3{
  background-color: #A00D37;
  border-bottom: solid 4px #B84A69;
}
.page-business .content_box:first-child h3{
  background-color: #2F8ACE;
  border-bottom: solid 4px #63A7DA;
}
.page-divorce .content_box:first-child h3{
  background-color: #E24D39;
  border-bottom: solid 4px #E97A6A;
}
.page-debt .content_box:first-child h3{
  background-color: #EFB727;
  border-bottom: solid 4px #F3C95D;
}
.page-neighborhood .content_box:first-child h3{
  background-color: #B172BC;
  border-bottom: solid 4px #C97FB4;
}
.page-labor .content_box:first-child h3{
  background-color: #BCAE7A;
  border-bottom: solid 4px #CDC29B;
}
.page-leasehold .content_box:first-child h3{
  background-color: #1BA466;
  border-bottom: solid 4px #54BB8C;
}
.page-consumer .content_box:first-child h3{
  background-color: #BAC81B;
  border-bottom: solid 4px #D1DA65;
}
.page-criminal .content_box:first-child h3{
  background-color: #898989;
  border-bottom: solid 4px #A7A7A7;
}
.page-other .content_box:first-child h3{
  background-color: #72CED6;
  border-bottom: solid 4px #95DAE0;
}

@media only screen and (max-width: 767px) {
  .content_box.flow_box table{
    margin-bottom: 24px;
    float: left;
  }
  .content_box:first-child ul li {
    padding-left: 3em;
  }
  .content_box p {
    white-space: wrap;
    text-align: left !important;
  }



}


/* consult
**************************************** */
.page-consult .content_box:first-child ul.consult_list li:nth-child(even){
  background-color: transparent;
}
.page-consult .content_box:first-child ul.consult_list li{
  padding: 0;
  padding-bottom: 20px;
  text-indent: 0;
}
ul.consult_list{
  margin-left: -20px;
}
ul.consult_list li{
  text-indent: 0;
  border-bottom: dashed 1px #ccc;
  margin-bottom: 20px;
  display: inline-block;
  width: 100%;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
ul.consult_list li div{
  display: inline-block;
  vertical-align: middle;
}
ul.consult_list li div:first-child{
  width: 22%;
}
ul.consult_list li div:nth-child(2){
  width: 70%;
  padding-left: 15px;
}
ul.consult_list li a br{
  display: none;
}
.page-consult .content_box:first-child ul.consult_list li:before{
  content: "";
  padding: 0;
  margin: 0;
}
ul.consult_list li a{
  background-color: #E24D39;
  color: #fff;
  display: block;
  border-radius: 6px;
  text-align: center;
  padding-top: 20%;
  padding-bottom: 10%;
  font-size: 110%;
}

ul.consult_list li a:before{
  font-size: 220%;
  display: block;
  text-align: center;
  padding-bottom: 10px;
}
ul.consult_list li a span{
  display: table;
  margin-top: 25px;
  margin-left: auto;
  margin-right: auto;
  background-color: #fff;
  color: #666;
  padding: 8px 12px 10px 12px;
  border-radius: 6px;
  font-size: 80%;
}
ul.consult_list li a.icon-gender span{
  color: #E24D39;
}
ul.consult_list li a.icon-credit span{
  color: #EFB727;
}
ul.consult_list li a.icon-senior span{
  color: #1C979C;
}
ul.consult_list li a.icon-inheritance span{
  color: #856453;
}
ul.consult_list li a.icon-accident span{
  color: #83B042;
}
ul.consult_list li a.icon-child span{
  color: #EE8E92;
}
ul.consult_list li a.icon-violence span{
  color: #063A62;
}
ul.consult_list li a.icon-business span{
  color: #2F8ACE;
}
ul.consult_list li a.icon-minbou span{
  color: #A00D37;
}
ul.consult_list li a.icon-housing span{
  color: #1BA466;
}
.content_box.flow_box h3{
  border-bottom: none;
  background-color: #F7F6F6;
  color: #535353;
  overflow: hidden;
  padding: 10px 0 10px 0;
  font-size: 110%;
}
.flow_box.heading h3{
  padding: 12px 10px 10px 0;
}
.content_box.flow_box h4{
  font-family: "秀英丸ゴシック B", "Shuei MaruGo B";
  transform: rotate(0.3deg);
  padding-top: 8px;
  font-size: 130%;
}

.flow_box h3 span:before{
  margin-right: 10px;
  transform: translateY(2px);
}
.flow_box h3 span{
  background-color: #40933B;
  color: #fff;
  height: 100%;
  padding: 18px 12px ;
  margin-right: 12px;
  margin-left: 0;
}

@media only screen and (max-width: 767px) {
  ul.consult_list{
    margin-left: 10px;
  }
  ul.consult_list li{
    margin-bottom: 0;
  }
  ul.consult_list li a{
    padding-top: 6%;
    padding-bottom: 4%;
    margin-bottom: 6%;
  }
  ul.consult_list li a span{
    margin-top: 9px;
    margin-bottom: 0;
  }
  ul.consult_list li div:first-child{
    width: 100%;
    padding: 0;
    margin: 0;
  }
  ul.consult_list li div:nth-child(2){
    width: 100%;
    padding: 0;
    margin: 0;
  }
  .content_box h4{
    padding-left: 0;
    margin-left: 0;
  }
  .page-office .content_box h4,
  .page-consult .content_box h4{
    padding-left: 0;
    margin-left: 0;
    margin-top: 0;
    margin-bottom: 0;
    padding-top: 0;
  }
  .page-office .content_box:first-child ul{
    padding-bottom: 0;
    margin-bottom: 0;
  }
  .content_box:first-child ul{
    padding-bottom: 0;
    margin-bottom: 0;
  }
  .page-consult .content_box:first-child h3:before{
    content: "";
    display: none;
  }
  .page-consult .content_box:first-child h3{
    padding-right: 60px;
  }
  .page-consult .content_box:nth-of-type(1) h3:nth-of-type(1):after{
    content: url(../images/consult/Consult_illust01.png);
    position: absolute;
    right: 0;
    bottom: -10px;
  }
  .content_box .reserve_btn a{
    width: 100%;
    display: block;
  }
  .content_box .reserve_btn span{
    line-height: 1.4;
    text-align: center;
    padding-top: 8px;
    display: block;
    width: 100%;
  }
}

/* committee
**************************************** */
.page-committee .content_box h2{
  background-color: #40933B;
  border: none;
  border-bottom: solid 4px #4EA749;
  color: #fff;
  margin-top: 1em;
  font-size: 125%;
  padding: 14px 8px 8px 12px;
  width: 100%;
  text-align: left;
  font-family: "秀英丸ゴシック B" , Shuei MaruGo B ;
  transform:rotate(0.3deg);
}
.page-committee .content_box h2:before{
  content: "";
}
.page-committee .content_box h3{
  text-align: left;
  font-size: 120%;
  color: #535353;
  font-family: "秀英丸ゴシック B" , Shuei MaruGo B ;
  transform:rotate(0.3deg);
}
.page-committee .content_box:first-child h3:before{
}
.page-committee .content_box h4{
  color: #535353;
  background-color: #fff;
  font-size: 120%;
  color: #535353;
  font-family: "秀英丸ゴシック B" , Shuei MaruGo B ;
  transform:rotate(0.3deg);
  border-bottom: dashed 1px #40933B;
  padding: 10px 17px 10px 18px;
  margin-bottom: 13px;
  margin-left: 1%;
  width: 98%;
  display: block;
  font-weight: normal;
  line-height: 1.5;
  padding-left: 40px;
  text-indent:-0.7em;
}
.page-committee .content_box h4:before{
  content: "\e925";
  display: inline-block;
  transform: translate(-10px,3px);
  font-family: 'icomoon' !important;
  color: #40933B;
}
.page-committee .content_box h5{
  border-top: solid 1px #40933B ;
  border-bottom: solid 1px #40933B ;
  padding: 9px 0px 6px 10px;
  margin-top: 10px;
  margin-bottom: 10px;
}
.page-committee .content_box:first-child ul {
  padding-bottom: 35px;
}
.page-committee .content_box:first-child ul li{
  width: 95%;
  padding-top: 12px;
  padding-bottom: 12px;
  padding-left: 2em;
  text-indent: 0em;
  transform: rotate(0.03deg);
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1.6;
  border-bottom: dashed 1px #ccc;
  margin-left: 0em;
}
.page-committee .content_box:first-child ul li:before{
  content: "\e920";
  color: #222;
  margin-left: 16px;
  margin-right: 6px;
  font-size: 110%;
  transform: translateY(2px);
  display: none;
}
.page-committee .content_box:nth-of-type(1) h3:nth-of-type(1):after,
.page-committee .content_box:nth-of-type(1) h3:nth-of-type(2):after{
  content: "";
}
.page-committee .question:before {
  border-left: 6px solid #40933B;
}
.page-committee .content_box p{
  padding-left: 20px;
}
.page-committee .content_box:first-child .link_list ul li:before{
  content: "\e91e";
  color: #40933B;
  transition-duration: .3s;
  transform-origin: -15px 12px;
  transform: rotateZ(0deg);
}
.page-committee .content_box:first-child .link_list ul li:hover:before{
  transform: rotateZ(90deg);
}

.page-committee .content_box:first-child .link_list ul li a {
  font-family: "秀英丸ゴシック B" , Shuei MaruGo B ;
  transform:rotate(0.3deg);
  color: #535353;
  font-size: 110%;
}
@media only screen and (max-width: 767px) {
  .page-committee .content_box:first-child ul li {
    margin-left: 2%;
    width: 96%;
  }
  .page-committee .content_box h2 {
    padding-left: 24px;
  }
}

/* committeeトップ
**************************************** */
.committee_top ul.consult_list {
  margin-left: auto;
  margin-right: auto;
  padding-left: 4px;
}
.committee_top .content_box:first-child ul li {
  text-indent: 0;
  padding: 0 0 8px 0 ;
  margin: 0 0 4px 0 ;
  border-bottom: none;
  width: 25%;
}
.committee_top .content_box:first-child ul li:nth-child(even) {
  background-color: #FFF;
}
.committee_top ul.consult_list li div:first-child {
  width: 95%;
  height: 100%;
  padding-bottom: 0;
}
.committee_top .content_box:first-child ul li a {
  height: 100%;
  padding-left: 8px;
  padding-right: 8px;
  padding-bottom: 25px;
  text-decoration: none;
  font-weight: normal;
}
.committee_top .content_box:first-child ul li:before {
  content: "";
}
.page-committee ul.consult_list li a,
.page-committee .top--consult_box ul li {
  background-color: #40933B;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #40933B;
}
.page-committee ul.consult_list li a span {
  color: #40933B;
  padding: 5px 12px;
}
.page-committee .committee_link_btn {
  justify-content: space-between;
  margin-top: 24px;
}
.page-committee .committee_link_btn a {
  background-color: #FF8505;
  color: #fff;
  width: 49%;
  text-align: center;
  border-radius: 6px;
  padding: 24px;
  text-decoration: none;
  font-size: 120%;
  font-family: "秀英丸ゴシック B" , Shuei MaruGo B ;
}
.page-committee .committee_link_btn a span::before {
  font-size: 120%;
  margin-right: 6px;
  transform: translateY(3px);
}

@media only screen and (max-width: 767px) {
  .committee_top .content_box:first-child ul li{
    width: 33%;
  }
  ul.consult_list li a{
    margin-bottom: 0;
    padding-top: 0;
    padding-bottom: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: left;
  }
  .page-committee ul.consult_list li a span{
    font-size: 80%;
    padding-left: 8px;
    padding-right: 8px;
  }
  .committee_top .content_box:first-child ul li a {
    padding: 8px 8px 8px 8px;
    text-align: justify;
    letter-spacing: 0;
  }
  .page-committee .committee_link_btn a {
    display: flex;
    align-items: center;
    text-align: center;
    padding: 12px;
  }
  .page-committee .committee_link_btn a span {
    line-height: 1.5;
    text-align: center;
    display: block;
    width: 100%;
  }

}





/* memberトップ
**************************************** */
.page-member .content_box:first-child ul li{
  text-indent: 0;
  padding: 0 0 20px 0 ;
  margin: 10px 0 10px 0 ;
}
.page-member .content_box:first-child ul li:before{
  content: "";
}

.page-member ul.consult_list li a,
.page-member .top--consult_box ul li{
  background-color: #40933B;
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px #40933B;
}
.page-member ul.consult_list li a span{
  color: #40933B;
  padding: 5px 12px;
}






/* committee
**************************************** */
.page-lawyer-list .content_box h2{
  border-bottom: dashed 1px #40933B;
}
.page-lawyer-list .content_box h2:before{
  content: "\e924";
  display: inline-block;
  color: #40933B;
}

@media(max-width: 1100px) and (min-width: 768px) {
}



/* about-lawyer
**************************************** */
.page-about-lawyer .answer p{
  padding-left: 20px;
}
.page-about-lawyer .content_box .question p{
  padding-left: 0;
}




@media only screen and (max-width: 767px) {
  .page-about-lawyer .content_box .question {
    text-indent: -2em;
  }
  .page-about-lawyer .content_box .answer{
    margin-left: 0;
  }
  .page-about-lawyer .content_box .question{
    padding-left: 40px;
  }
  .page-about-lawyer .content_box:first-child ul li{
    padding-left: 3.5em;
    text-indent: -3.4em;
  }
  .page-about-lawyer .content_box:first-child ul{
    margin-bottom: 16px;
  }



}







/* sitemap
**************************************** */
.page-sitemap .content_box h2{
  text-align: left;
  padding-left: 0;
  padding-bottom: 10px;
  display: block;
  text-indent: 0;
  font-size: 110%;
}
.page-links .content_box:first-child ul li,
.page-sitemap .content_box:first-child ul li{
  padding: 0 0 0 24px;
  width: 49%;
}
.page-links .content_box:first-child ul li li,
.page-sitemap .content_box:first-child ul li li{
  width: 100%;
  font-size: 95%;
  padding-top: 8px;
  padding-bottom: 10px;
  padding-right: 2em;
  padding-left: 1em;
  text-indent: 0;
  text-align: left;
}
.page-sitemap .content_box:first-child ul li:before{
  content: ""
}

@media only screen and (max-width: 767px) {
  .page-sitemap .content_box h2{
    margin-bottom: 8px;
  }
  .page-sitemap .content_box:first-child ul li{
    padding: 0 0 0 8px;
    width: 98%;
    border: none;
  }
  .page-sitemap .content_box:first-child ul li li{
    padding: 8px 4px 8px 32px;
    text-indent: 0;
  }
  .page-sitemap .content_box:first-child ul li:before{
    display: none;
  }



}

/* privacy
**************************************** */
.page-privacy .content_box h2{
  width: 100%;
}






/* links
**************************************** */
.page-links .content_box h2{
  text-align: left;
  padding-left: 0;
  padding-bottom: 10px;
  display: block;
  text-indent: 0;
  font-size: 110%;
}
.page-links .content_box h3{
  padding-left: 10px;
  text-indent: 0;
  left: 0;
  margin: 0;
}
.page-links .content_box h4{
  padding-left: 10px;
  text-indent: 0;
  left: 0;
  margin: 0;
  margin-top: 10px;
  color: #535353;
}
.page-links .content_box:first-child > ul {
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding-bottom: 0;
}
.page-links .content_box:first-child ul ul {
  padding-bottom: 0;
}
.page-links .content_box:first-child > ul > li{
  width: 49%;
  border: none;
}
.page-links .content_box:first-child ul li{
  padding: 14px 10px 6px 10px;
  width: 49%;
}
.page-links .content_box:first-child ul li li{
  width: 100%;
  font-size: 95%;
}
.page-links .content_box:first-child ul li:before{
  display: none;


}
@media only screen and (max-width: 767px) {
  .page-links .content_box{
    padding-left: 20px;
  }
  .page-links .content_box:first-child ul ul {
    padding-bottom: 16px;
    margin-bottom: 16px;
  }
  .page-links .content_box:first-child ul li li,
  .page-sitemap .content_box:first-child ul li li {
    padding: 3px 0 3px 0;
  }
  .page-links .content_box:first-child ul li {
    width: 100%;
    padding: 14px 10px 6px 0px;
  }
  .page-links .content_box:first-child ul li a {
    padding-left: 10px;
    display: inline-block;
  }

  .page-links .content_box h2{
    margin-bottom: 0;
  }
  .page-links .content_box h3{
    padding-top: 6px;
  }
  .page-links .content_box h4{
    padding-top: 3px;
    margin-left: 0;
  }
  .page-links .content_box:first-child > ul > li{
    padding-top: 0;
  }

}



/* common
**************************************** */
.content_box h2{
  border-bottom: dashed 1px #40933B;
}
.content_box h2:before{
  content: "\e923";
  display: inline-block;
  transform: translateY(4px);
  color: #40933B;
  font-size: 130%;
}
.content_box h3{
  background-color: #F7F6F6;
  border: none;
  border-left: solid 4px #70AE6C;
  color: #535353;
  font-size: 120%;
  width: 98%;
  display: block;
  font-family: "秀英丸ゴシック B" , Shuei MaruGo B ;
  transform:rotate(0.3deg);
  color: #535353;
  font-size: 125%;
  padding: 12px 10px 10px 15px;
  margin-top: 1em;
  margin-bottom: 20px;
  position: relative;
}
.content_box h4{
  color: #535353;
  font-size: 120%;
  font-weight: bold;
  border-bottom: dashed 1px #40933B;
  padding: 7px 17px 4px 20px;
  margin-bottom: 13px;
  margin-left: 14px;
  width: 96%;
  display: block;
  font-family: "秀英丸ゴシック B", "Shuei MaruGo B";
  transform: rotate(0.03deg);
}

.content_box h4:before{
  content: "\e925";
  display: inline-block;
  transform: translate(-10px,3px);
  font-family: 'icomoon' !important;
  color: #40933B;
  font-size: 130%;
}

.content_box h5{
  border-top: solid 1px #40933B ;
  border-bottom: solid 1px #40933B ;
  padding: 9px 0px 8px 16px;
  margin-top: 10px;
  margin-bottom: 10px;
  margin-left: 10px;
  margin-right: 20px;
  font-family: "秀英丸ゴシック B", "Shuei MaruGo B";
  transform: rotate(0.03deg);
}
.content_box p{
  padding-left: 20px;
  text-align: justify;
}
.content_box .table_scroll table th,
.content_box .table_scroll table td{
  display: table-cell;
  text-align: center;
  width: 15% !important;
}

@media only screen and (max-width: 767px) {
  .content_box{
    padding: 10px 10px;
  }
  .content_box iframe{
    width: 100%;
    height: 300px;
  }
  .content_box table{
    width: 100% !important;
    display: block;
    margin-bottom: 10px;
    word-wrap: normal;
  }
  .content_box table td:first-of-type{
    width: 100%;
    border-right: none;
  }
  .content_box table tr:nth-child(even) td:first-of-type{
    border: none;
  }
  .content_box table th, .content_box table td{
    display: block;
    border: none;
    padding: 8px 10px 8px 20px ;
  }
  .content_box table th{
    padding: 0px 10px 16px 20px ;
    width: 100% !important;
  }
  .content_box table td{
    width: 100% !important;
  }
  .content_box .scroll {
    overflow-x: scroll;
  }
  .content_box .scroll table {
    white-space: nowrap;
  }

  .content_box table tr{
    float: left;
    width: 100% !important;
  }
  .content_box table tr:nth-child(n) td:first-of-type{
    padding: 9px 10px 6px 20px ;
    position: relative;
  }
  .content_box table tr:nth-child(n) td:first-of-type:after{
    content: "";
    display: table;
    height: 1px;
    width: 92%;
    position: absolute;
    left: 4%;
    margin-top: 6px;
    border-bottom: dashed 1px #ccc;
  }
  .content_box .table_scroll tr:nth-child(n) td:first-of-type:after{
    display: none;
  }
  .content_box .table_scroll {
    position: relative;
    margin-bottom: 24px;
    width: 100% !important;
    overflow-x: scroll;
  }
  .content_box .table_scroll table{
    margin-bottom: 0;
    width: 100% !important;
    white-space: nowrap;
    border: none;
  }
  .content_box .table_scroll table tr{
    float: none;
  }
  .content_box .table_scroll table th{
    border: solid 1px #D5D0BE;
    padding: 16px 10px 16px 20px;
  }
  .content_box table td:first-of-type {
    border-right: solid 3px #F9F6EA;
  }
  .content_box .table_scroll table tr:nth-child(even) td:first-of-type {
    border-right: solid 3px #fff;
  }
  .content_box .table_scroll::-webkit-scrollbar{
    height: 10px;
  }
  .content_box .table_scroll::-webkit-scrollbar-track{
    background: #EEE;
  }
  .content_box .table_scroll::-webkit-scrollbar-thumb {
    background: #999;
  }

  .content_box .table_scroll table tr:nth-child(n) td:first-of-type:after{
    display: none;
  }
  .page-adr .content_box .table_scroll table{
    width: 100% !important;
    border-left: solid 1px #D5D0BE !important;
  }
  .page-adr .content_box .table_scroll table th,
  .page-adr .content_box .table_scroll table td{
    width: 250px !important;
    vertical-align: middle;
    padding: 9px 10px 6px 20px;
    border-right: solid 1px #D5D0BE !important;
  }
  .content_box h3{
    margin-left: 0px;
    padding-right: 20px;
    line-height: 1.6;
  }
  .content_box:nth-of-type(1) h3:nth-of-type(1):after{
    right: 0px;
    bottom: -12px;
  }
  .content_box:nth-of-type(1) h3:nth-of-type(2){
    padding-right: 90px;
  }
  .content_box:nth-of-type(1) h3:nth-of-type(2):after{
    right: 0px;
    bottom: -12px;
  }
  .page-consult .content_box:first-child ul li{
    padding-left: 2.8em;
    padding-right: 0.5em;
    text-indent: -2.8em;
    width: 100%;
  }
  .content_box .reserve_btn{
    display: table;
    width: auto;
    padding-left: auto;
    padding-right: auto;
    margin-left: auto;
    margin-right: auto;
  }
  .content_box .reserve_btn a{
    margin: 0;
    padding: 0;
    line-height: 1.5;
  }
  .content_box .reserve_btn a img{
    width: 100%;
    display: table;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 0;
  }
  .content_box .reserve_btn a:nth-child(2) img{
    width: 60%;
  }
  .content_box.flow_box h3{
    font-size: 105%;
    width: 100%;
    border: none;
    border-left: none;
    float: left;
    display: inline-block;
    overflow: visible;
    line-height: 1.8;
    background-color: #F7F6F6;
    position: relative;
    margin-top: 30px;
    margin-bottom: 12px;
    padding: 20px 10px 10px 20px;
    padding-left: 1.5em;
    text-indent: 0em;
  }
  .flow_box.flow_box h3 span {
    text-indent: 0px;

    background-color: #40933B;
    color: #fff;
    position: absolute;
    top: -16px;
    left: 0;
    height: auto;
    margin: 0 0 8px 0;
    padding: 4px 10px;
    margin-right: 5px;
    display: inline-block;
    transform: translate(0px,-10px);
  }
  .flow_box h3 span:before {
    margin-right: 5px;
    transform: translateY(2px);
  }
  .flow_box.flow_box p {
    padding: 0 0 10px 10px;
  }
  .flow_box.flow_box a img {
    margin-bottom: 16px;
    display: table;
    margin-left: auto;
    margin-right: auto;
  }
  .content_box h2{
    font-size: 130%;
    margin-bottom: 24px;
    padding-right: 10px;
    padding-top: 24px;
    padding-bottom: 10px;
    text-align: left;
    padding-left: 1.7em;
    text-indent: -0.9em;
    line-height: 1.4;
  }
  .content_box h2:before{
    margin-right: 6px;
  }
  .content_box h4{
    margin-left: 0;
    padding: 7px 17px 10px 8px;
    padding-left: 2.5em;
    text-indent: -0.7em;
    line-height: 1.4;
  }
}

/* ##############################################################################

  ARCHIVE

############################################################################## */

/* main-column
**************************************** */
.main-column {
  float: left;
  width: 800px;
  position: relative;
  z-index: 50;
}

/* --- post --- */
.post {
  position: relative;
  margin-bottom: 30px;
  padding-bottom: 30px;
}
.category_list {
  overflow: hidden;
}
.category_list a {
  display: inline-block;
  vertical-align: middle;
  font-size: 79%;
  background: #56a0b9;
  color: #f6f6f6;
  line-height: 1;
  padding: 6px 16px;
  border-radius: 3px;
  float: left;
  margin: 0 4px 4px 0;
  white-space: nowrap;
}
.meta_date {
  display: block;
  width: 100%;
  float: left;
  padding-right: 48px;
  padding-bottom: 12px;
}
.archive .content_box:first-child ul ,
.single .content_box:first-child ul {
  display: block;
  width: 100%;
  padding-bottom: 0;
}
.meta_date ul{
  display: block;
  width: 100%;
}

.post .date,
.single .date
{
  float: right;
  text-align: right;
  padding-left: 20px;
}
.cat_link li a{
  color: #fff;
  font-size: 85%;
  padding: 3px 10px 2px 10px;
  border-radius: 6px;
  display: inline-block;
  float: right;
}
.cat_link.news li a{
  background-color: #1C979C;
}
.cat_link.event li a{
  background-color: #FF98B5;
}
.cat_link.statement li a{
  background-color: #46C3F1;
}
.cat_link.resolution li a{
  background-color: #FBB659;
}
.cat_link.greeting li a{
  background-color: #82B043;
}
.post .section_ttl{
  font-size: 120%;
  width: 96%;
  margin-left: 0;
  margin-top: 0;
  padding-top: 0;
  padding-left: 5px;
  text-align: left;
}
.post-txt{
  width: 98%;
}
.post .post-img {
  overflow: hidden;
  float: right;
  margin: 0 0 8px 16px;
  border-radius: 5px;
}
.archive .content_box h2:before,
.single .content_box h2:before{
  content: "";
}
.archive .content_box:first-child ul li,
.single .content_box:first-child ul li{
  border: none;
  margin: 0;
  padding: 0;
  text-indent: 0;
}
.archive .content_box:first-child ul li:before,
.single .content_box:first-child ul li:before{
  content: "";
}

@media only screen and (max-width: 1100px) and (min-width: 768px) {
  .main-column {
    width: 100%;
    float: none;
  }
}
@media only screen and (max-width: 767px) {
  .main-column {
    width: 100%;
    float: none;
  }
  .post-img {
    width: 110px;
  }
  .post .section_ttl{
  }
  .section_ttl span{
    margin-left: 3em;
  }
  .section_ttl span:before{
    text-indent: -1.1em;
    margin-left: 0;
    transform: translateY(9px);
  }
}

/* side-column
**************************************** */
.side-column {
  float: right;
  width: 250px;
  position: relative;
}
.side-content {
  width: 250px;
}
.side-section {
  margin-bottom: 56px;
}
.side-ttl {
  font-size: 100%;
  letter-spacing: 0.2em;
  padding: 8px 0px 15px 10px;
  background-color: #40933b;
  color: #fff;
  font-weight: normal;
  transform: rotate(0.05deg);

}
.side-ttl:before {
  font-size: 140%;
  margin-right: 8px;
  transform: translateY(4px);
}
.side-ttl a{
  color: #fff;
}
.side-ttl small {
  font-size: 62%;
  letter-spacing: 0.15em;
  display: block;
  line-height: 1;
  margin-top: 8px;
}
.side-link_list li {
  padding: 16px 0;
  border-bottom: 1px dashed #ccc;
}
.side-link_list a {
  display: block;
  line-height: 1.6;
}
.side-link_list a:hover {
  color: #ccc;
}
.side-thumbnail {
  float: left;
  margin: 0 16px 0 0;
  border-radius: 3px;
}
.side-box{
  background-color: #fff;
  margin-bottom: 24px;
  border-radius: 6px;
  overflow: hidden;
}
.side-box p{
  padding: 10px 10px 15px 15px;
}
.side-box ul {
  padding-top: 15px;
  padding-bottom: 15px;
}
.side-box ul li a{
  padding: 5px 0px 5px 15px;
  display: inline-block;
}
.side-box ul li a:hover{
  transform: translateX(4px);
}
.side-link_box{
  background-color: #40933B;
  color: #fff;
  display: block;
  border-radius: 6px;
  text-align: left;
  padding: 20px 16px;
  margin-bottom: 16px;
}
.side-link_box:before{
  transform: translate(-6px ,2px);
}
.side-box.links p{
  padding-top: 35px;
}
.side-section .himawari_net {
  display: block;
  margin-bottom: 16px;
}
.side-section .himawari_net {
  background-color: #FF8505;
  color: #fff;
  display: block;
  border-radius: 6px;
  text-align: center;
  padding: 20px 20px 24px 20px;
  margin-bottom: 16px;
}
.side-section .himawari_net:before{
  font-size: 170%;
  transform: translate(-8px,4px);
}


.side-box.himawari_net img{
  width: 85%;
  display: table;
  margin-left: auto;
  margin-right: auto;
  margin-top: 15px;
  margin-bottom: 15px;
}
.side-box.himawari_net p{
  background-color: #F5F5F5;
  margin: 0px 8px 8px 8px;
  padding-top: 15px;
  line-height: 1.6;
  font-size: 90%;
}
.side-box.links a img{
  margin: 0px auto 30px auto ;
  display: table;
}
.side-box.access a{
  background-color: #FF8604;
  color: #fff;
  padding: 6px 35px 4px 45px ;
  border-radius: 6px;
  margin-top: 12px;
  display: table;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}

.side-box.access a:before,
.side-box.access a:after{
  position: absolute;
  top: 2px;
  bottom: 0;
  left: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
}
.side-box.access a:before{
  left: 24px;
  width: 8px;
  height: 8px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.side-box.access p{
  padding-bottom: 130px;
  background-image: url("../images/side_access_bg.jpg");
  background-repeat: no-repeat;
  background-position: center bottom ;
}
.side_list li{
  font-size: 90%;
  margin-left: 6px;
  margin-right: 6px;
  padding-top: 0;
  padding-bottom: 0;
}
.side_list li:nth-child(odd){
  background-color: #F6F4EB;
}







/* --- catarea-bloc --- */
.catarea-bloc {
  position: relative;
  padding: 8px 0;
  border-top: 1px solid #888;
}
.catarea-bloc h3 {
  padding-right: 64px;
  line-height: 1.5;
}
.catarea-bloc h3 a {
  display: block;
}
.catarea-bloc h3 a:hover {
  color: #333
}
.catarea-bloc .tab {
  display: inline-block;
  position: absolute;
  background: #aaa;
  height: 20px;
  text-align: center;
  border-radius: 10px;
  line-height: 20px;
  color: #fff;
  top: 9px;
  right: 0;
  font-size: 80%;
  padding: 0 8px;
}
.catarea-bloc .tab:hover {
  background: #aaa;
}
.catarea-bloc .tab.open {
  background: #d3cfac;
}
.catarea-bloc .catarea-list {
  margin-top: 16px;
  display: block;
}
.catarea-bloc .catarea-list li a {
  background: #f6f6f6;
  display: block;
  padding: 4px 16px;
  margin-top: 4px;
  font-size: 93%;
  line-height: 1.4;
}
.catarea-bloc .catarea-list li a:hover {
  background: #ccc;
}
/* --- wp-calendar --- */
#wp-calendar {
  width: 100%;
  text-align: center;
}
#wp-calendar td {
  padding: 2px 0;
}
#wp-calendar tbody td a {
  background-color: #eee;
  display: inline-block;
  width: 25px;
  height: 25px;
  text-decoration: none;
  border-radius: 15px;
}
#wp-calendar #prev a,
#wp-calendar #next a {
  background: #56a0b9;
  border-radius: 2px;
  color: #fff;
  text-decoration: none;
  display: block;
  margin-top: 16px;
}

@media only screen and (max-width: 1100px) and (min-width: 768px) {
  .side-column {
    width: 100%;
    float: none;
    display: none;
  }
  .side-ttl {
    text-align: center;
  }
  .catarea-bloc {
    width: 23%;
    display: inline-block;
    margin: 1%;
  }
  .side-section {
    overflow: hidden;
    text-align: center;
  }
}

@media only screen and (max-width: 767px) {
  .side-column {
    width: 100%;
    float: none;
  }
  .side-column .side-section:last-child {
    margin-bottom: 0;
  }
  .catarea-bloc .catarea-list {
    overflow: hidden;
    margin: 8px 0 16px;
  }
  .catarea-bloc .catarea-list li {
    width: 49%;
    margin: 0 0 1% 1%;
    float: left;
  }
  .catarea-bloc .catarea-list li a {
    font-size: 100%;
  }
}


/* ##############################################################################

  SINGLE

############################################################################## */

.single .content_box:first-child h3:before{
  content: "";
}
.single .content_box h1,
.single .content_box h2,
.single .content_box h3,
.single .content_box h4,
.single .content_box h5,
.single .content_box h6
{
  line-height: 1.5;
  text-align: left;
}
.single .content_box .mceContentBody{
  margin-top: 70px;
}

.single .content_box .mceContentBody h1{
  background-color: #EAF3EA;
  padding: 17px 15px 15px 25px;
  font-size: 110%;
  position: relative;
  display: inline-block;
  width: 96%;
}
.single .content_box .mceContentBody h1:before{
  content: "";
  display: block;
  position: absolute;
  width: 4px;
  min-height: 85%;
  left: 9px;
  top: 5px;
  background-color: #40933B;
}
.single .content_box .mceContentBody h2{
  border: solid 1px #40933B;
  padding: 20px 15px 10px 25px;
  position: relative;
  margin-left: 0;
  margin-bottom: 1.5em;
  width: 96%;
  font-size: 115%;
}
.single .content_box .mceContentBody h2:before{
  content: "";
  border: solid 1px #40933B;
  display: block;
  position: absolute;
  top: 4px;
  left: 6px;
  width: 100%;
  min-height: 100%;
}
.single .content_box h3{
  background-color: #F7F6F6;
  border: none;
  border-left: solid 4px #B2B2B2;
  color: #535353;
  margin-top: 0em;
  margin-bottom: 1.5em;
  margin-left: 1%;
  padding-top: 17px;
  padding-bottom: 15px;
  font-size: 105%;
  width: 95%;
  display: inline-block;
}
.single .content_box h4{
  color: #fff;
  font-size: 100%;
  padding: 12px 15px 8px 18px;
  margin-left: 5px;

}
.single .content_box h5{
  border-top: solid 1px #40933B;
  border-bottom: solid 1px #40933B;
  padding-top: 14px;
  padding-bottom: 10px;
  width: 90%;
  margin-left: 2%;
}
.single .content_box h6{
  border-top: solid 1px #40933B;
  border-bottom: solid 1px #40933B;
  padding-top: 14px;
  padding-bottom: 10px;
  width: 90%;
  margin-left: 2%;
}
.single .content_box blockquote{

}
.single .content_box blockquote:before{

}

.wp-pagenavi {
  display: table;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 50px;
  text-align: center;
  position: relative;
  z-index: 100;
}
.wp-pagenavi .current {
  position: relative;
  max-width: 40%;
  display: inline-block;
  margin-left: 5px;
  margin-right: 5px;
  vertical-align: top;
  border: solid 1px #FF8505;
  color: #FF8505;
  line-height: 1.4;
  padding: 8px 16px;
  border-radius: 6px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.wp-pagenavi a {
  position: relative;
  max-width: 40%;
  display: inline-block;
  margin-left: 5px;
  margin-right: 5px;
  vertical-align: top;
  background: #FF8505;
  color: #fff;
  line-height: 1.4;
  padding: 8px 16px;
  border-radius: 6px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.wp-pagenavi .extend{
  position: relative;
  max-width: 40%;
  display: inline-block;
  margin-left: 5px;
  margin-right: 5px;
  vertical-align: top;
}

.wp-pagenavi .pages{
  margin-right: 10px;
  padding-top: 6px;
  display: inline-block;
}


@media only screen and (max-width: 767px) {
  .wp-pagenavi {
    margin-bottom: 40px;
    width: 100%;
    display: block;
    margin: 0;
    padding: 0;
  }
  .wp-pagenavi a {
    width: 100%;
    max-width: 100%;
    margin: 0;
    margin-bottom: 8px;
  }
}

/* ##############################################################################

  FORMY

############################################################################## */
#formy_form table { width:100%; }
#formy_form th,
#formy_form td {
  padding: 16px;
  vertical-align: middle;
  border-bottom: solid 1px #eee;
}
#formy_form th {
  font-weight:normal;
  white-space: nowrap;
  text-align:left;
  width:34%;
}
#formy_form table input[type="text"],
#formy_form table input[type="email"],
#formy_form table input[type="tel"],
#formy_form table input[type="date"],
#formy_form table input[type="password"],
#formy_form table textarea {
  width:100%;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  border-radius: 3px;
  vertical-align:bottom;
}
#formy_form table input[type="text"],
#formy_form table input[type="email"],
#formy_form table input[type="tel"],
#formy_form table input[type="date"],
#formy_form table input[type="password"],
#formy_form select,
#formy_form textarea {
  margin: 0;
  padding: 5px 15px;
  border: 1px solid #ccc;
  font: inherit;
  font-size:100%;
}
#formy_form textarea { height: 100px; }
#formy_form select { height: 40px; }
#formy_form ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
#formy_form input:hover { opacity:0.7; }
#formy_form textarea:hover { opacity:0.7; }
#formy_form input:focus {  background-color: #fff;}
#formy_form .parsley-validated {  background-color: #eee;}
#formy_form .parsley-error {  background-color: #fee;}
#formy_form .parsley-success {  background-color: #fff;}
.help_text {
  font-size: 85%;
  color: #999;
}
.hidden_help { display: none; }
.formy_privacy div {
  overflow-y: scroll;
  height: 140px;
  border: solid 1px #ccc;
  font-size: 85%;
  padding: 8px 16px;
}
.requiredIcon {
  background: #f55;
  color: #fff;
  margin: 0 0 0 1em;
  font-size: 70%;
  padding: 2px 5px;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  border-radius: 3px;
  float: right;
}
#formy_btn {
  padding-top: 32px;
  text-align:center;
}
#formy_btn input {
  font-size: inherit;
  border: none;
  cursor: pointer;
  color: #fff;
  border-radius: 3px;
  padding: 16px 32px;
  -webkit-appearance: none;
  appearance: none;
}
#formy_form ul li input[type="radio"],
#formy_form ul li input[type="checkbox"]{ display: none !important; }
#formy_form ul li label {
  height: 40px;
  line-height: 40px;
  display: inline-block;
  vertical-align: top;
  position: relative;
  padding: 0px 8px 0px 40px;
  cursor: pointer;
}
#formy_form ul li label:hover { opacity: 0.7; }
#formy_form ul li label::before{
  content: "";
  position: absolute;
  width: 16px;
  height: 16px;
  border: 2px solid #788b93;
  left: 16px;
  top: 12px;
}
#formy_form ul li input[type="radio"] + label::before { border-radius: 10px; }
#formy_form ul li input[type="radio"]:checked + label,
#formy_form ul li input[type="checkbox"]:checked + label {
  color:#e75f5f;
  font-weight: bold;
}
#formy_form ul li input[type="radio"]:checked + label::before,
#formy_form ul li input[type="checkbox"]:checked + label::before {
  border-color: #e75f5f;
}
#formy_form ul li input[type="radio"]:checked + label::after,
#formy_form ul li input[type="checkbox"]:checked + label::after {
  content: "";
  width: 10px;
  height: 18px;
  top: 4px;
  left: 20px;
  border-right: 2px solid #e75f5f;
  border-bottom: 2px solid #e75f5f;
  display: block;
  position: absolute;
  z-index: 10;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}
.formy_confirm { background-color: #4dbaff; }
.formy_submit_disabled { background-color: #ccc; }
#formy_btn .formy_submit_disabled:hover {
  opacity:1;
  cursor: default;
}
.autoConfirmBack { background-color: #aaa; }
.formy_send { background-color: #ff6600; }
#total_required {
  padding: 16px;
  color: #f55555;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  #formy_form { padding: 0 16px; }
  #formy_form th,
  #formy_form td {
    display: block;
    width: auto;
    padding-left: 0;
    padding-right: 0;
  }
  #formy_form th {
    border-bottom:none;
    padding-bottom: 0;
    white-space: normal;
    font-weight: bold;
  }
  #formy_form td { padding-top: 0; }
  #formy_btn { padding-top: 8px; }
  #formy_btn input {
    width: 100%;
    background-size: contain;
    background-position: center;
  }
}

@media print{
  body {
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;

    width: 1150px;
    max-width: 1150px;
    transform: scale(1);
    -moz-transform: scale(1);
    -webkit-transform: scale(1);
    transform-origin: 0 0;
  }
 .pc-none { display: none; }
  iframe{
    border: solid 1px !important;
  }
  iframe img {
    max-width: none !important;
  }
  .gm-style img {
    max-width: none !important;
  }
}
