@charset "UTF-8";
/*@import url(https://fonts.googleapis.com/earlyaccess/notosansjapanese.css);
*/
@import url(/wp-content/themes/atombengo/css/fonts/notosan/notosansjapanese.css);

@font-face {
  font-family: "Font Awesome 5 Free";
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url("//use.fontawesome.com/releases/v5.0.6/webfonts/fa-solid-900.eot");
  src: url("//use.fontawesome.com/releases/v5.0.6/webfonts/fa-solid-900.eot?#iefix") format("embedded-opentype"),
    url("//use.fontawesome.com/releases/v5.0.6/webfonts/fa-solid-900.woff2") format("woff2"),
    url("//use.fontawesome.com/releases/v5.0.6/webfonts/fa-solid-900.woff") format("woff"),
    url("//use.fontawesome.com/releases/v5.0.6/webfonts/fa-solid-900.ttf") format("truetype"),
    url("//use.fontawesome.com/releases/v5.0.6/webfonts/fa-solid-900.svg#fontawesome") format("svg")
}

.admin-bar .header {
  top: 32px;
}

/* --------------------------------
 * base
 * -------------------------------- */
html {
  font-size: 62.5%;
  scroll-behavior: smooth;
}

@media screen and (min-width: 900px) {
  html {
    font-size: 68.5%;
  }
}

body {
  color: #444;
  font-size: 1.6rem;
  font-family: 'Hiragino Kaku Gothic ProN', 'Noto Sans Japanese', meiryo, 'Yu Gothic', YuGothic, sans-serif;
  background: #e6edf8;
  overflow-x: hidden;
  -webkit-transition: all .3s;
  transition: all .3s;
  padding-top: 60px;
}


*::selection {
  background: #eee;
}

*::-moz-selection {
  background: #eee;
}

*,
*::before,
*::after {
  box-sizing: border-box;
  /*word-break: break-all;*/
}

a {
  color: #444;
  text-decoration: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
a.textlink{
  color: #218df2;
  text-decoration: underline;
}

img {
  max-width: 100%;
  height: auto;
  width: auto;
}

p {
  line-height: 1.55;
  font-size: 1.64rem;
}

.y_line {
  background: #fffbb7;
}

.small {
  font-size: 90%;
}

@media screen and (min-width: 900px) {
	body{
		padding-top: 0;
	}
  p {
    line-height: 1.70;
  }
}

/* --------------------------------
 * temp
 * -------------------------------- */
.side {
  display: none;
}

@media screen and (min-width: 900px) {
  .frame {
    display: -webkit-flex;
    /* Safari */
    display: flex;
    -webkit-justify-content: space-between;
    /* Safari */
    justify-content: space-between;
    -webkit-align-items: stretch;
    /* Safari */
    align-items: stretch;
    max-width: 1050px;
    width: 94%;
    margin: 180px auto;
  }

  .main {
    flex: 1;
    margin-right: 25px;
    padding-top: 0;
    position: relative;
    width: 100%;
    margin-top: 42px;
  }

  .frame.toppage main {
    margin-top: 0 !important;
  }

  .side {
    display: block;
    width: 30%;
    max-width: 300px;
    position: relative;
    margin-top: 42px !important;
  }

  .side>.sideinner {
    position: -webkit-sticky;
    position: sticky;
    top: 93px;
  }

  iframe {
    height: 400px;
    margin-top: 15px;
  }
}

/*sidebar*/
.cat_list li a {
  white-space: nowrap;
}

.side .cat_list:not(.lay2) li:first-child a {
  font-size: 1.25rem;
  letter-spacing: -0.5px;
}

.side_pc_block {
  width: 100%;
  background: #0f4b89;
  padding: 0 5px 5px 5px;
  text-align: center;
  margin-bottom: 18px;
}

.side_pc_block .ttl {
  font-size: 1.6rem;
  color: #fff;
  line-height: 32px;
  font-weight: bold;
  letter-spacing: 0.7px;
}

.side_pc_block .inner {
  background: #fff;
}

.side_pc_block img {
  width: 100%;
  height: auto;
}

.side_pc_block .txt {
  font-size: 1.4rem;
  line-height: 1.4;
  padding-top: 10px;
}


.side_pc_block.tel img {
  width: 265px;
}

.side_pc_block.tel .inner {
  padding: 15px 0;
}

.side_pc_block.mail {
  background: #5590d7;
}

.side_pc_block.mail a {
  display: block;
}

.side_pc_block.mail .inner {
  padding: 14px 12px;
}

.side_pc_block .mail_ttl {
  text-align: left;
  font-size: 1.4rem;
  font-weight: bold;
  border-left: 3px #5590d7 solid;
  padding-left: 4px;
  line-height: 1.4;
}

.side_pc_block.line {
  background: #53ab03;
}

.side_pc_block.line img {
  width: 288px;
}

.knowtop_keylist .link {
  display: block;
}

.knowtop_keylist .key_list li {
  margin-right: 6px;
}

.knowtop_keylist.category {
  padding: 8px 4% 10px;
  background-color: #ccdef3;
}

.knowtop_keylist.category.foot {
  padding: 10px 4% 14px;
  background-color: #e6edf8;
}

.knowtop_keylist.category .key_list {
  padding: 7px 0px 0;
}

.knowtop_keylist.category .key_list li a {
  font-size: 1.25rem;
}

.more_search {
  font-size: 70%;
  padding-right: 17px;
  color: #5590d7;
}

@media screen and (min-width: 900px) {
  .more_search {
    float: left;
    line-height: 42px;
  }

  .frame {
    margin: 10px auto 80px;
  }

  .bace_frame:not(.atom_foot) {
    background: #fff;
  }

  .atom_foot .telbtn {
    display: none;
  }

  .knowtop_keylist.category.foot {
    padding: 4px 0.8% 14px;
  }
}

.atom_foot .mainttl span,
.atom_foot .txt span.y_line {
  background: none;
}

.atom_foot .txt {
  color: #fff;
  font-size: 1.55rem;
  margin-bottom: 10px;
}



/* --------------------------------
 * header
 * -------------------------------- */
 .header {
	width: 100%;
	height: 60px;
	background: #001e3e;
	position: fixed;
	top: 0;
	z-index: 2010;
}
.header_inner.pc{
	display: none;
}

.header_inner{
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	height: 60px;
	margin: 0 auto;
	padding: 0 10px;
}
.header_home_btn{
	width: 39px;
	height: auto;
	display: inline-block;
}
.header_logo{
	display: inline-block;
	margin-left: 10px;
	margin-right: auto;
}
.header_logo img {
  width: auto;
  height: 30px;
}
.header_menu_btn {
	width: 39px;
	height: 38.5px;
	background: url(/wp-content/uploads/head_menubtn.png) no-repeat;
	background-size: contain;
}
.open .header_menu_btn{
	background-image: url(/wp-content/uploads/head_menubtn_close.png);
}
.header_menu{
	z-index: 2000;
	transition: all .2s ease-out;
	height: 0;
	overflow: hidden;
	background: #5892D4;
}
@media screen and (max-width: 959px) {
	.open .header_menu{
		width: 100vw;
		height: 100vh;
		overflow-y: scroll;
		padding-bottom: 140px;
	}
}
.gnavi_contents{
	padding: 30px 20px 20px;
	max-width: 540px;
	margin: 0 auto;
}
.gnavi_contents__title{
	font-size: 20px;
  color: #fff;
    line-height: 1;
    position: relative;
    padding-left: 10px;
    margin: 32px auto 13px;
}
.gnavi_contents__title:before{
	position: absolute;
    content: '';
    left: 0;
    top: 0;
    width: 4px;
    height: 100%;
	background:#fff;
	border-radius: 10px;
}
.gnavi_contents__title span{
	font-size: 13px;
    display: inline-block;
    margin-left: 2px;
}
.btn_list.gnavi_unit a.btn{
	color: #011E3E!important;
	font-weight: 700;
	line-height: 58px;
	border-radius: 4px;
	box-shadow: none;
	background: #B5CDEC;
	border: none;
	width: 100%;
	display: flex;
	align-items: center;
	max-width: none;
	padding: 0 0 0 14px;
	margin: 0 auto 5px;
	position: relative;
}
.btn_list.gnavi_unit a.btn::after{
	font-family: "dashicons";
	content: "\f345";
	font-size: 12px;
	color: #011E3E;
	position: absolute;
	right: 8px;
	top: 50%;
	transform: translateY(-50%);
}
.btn_list.gnavi_unit .btn span{
	font-size: 17px;
	display: block;
}
.arr.gnavi_unit a.btn:before{
	content: "";
    display: block;
    position: absolute;
    top: 50%;
    margin-top: -4px;
	width: 8px;
    height: 12px;
    right: 0.7em;
}
.gnavi_contents_pc {
	display: none;
}
@media screen and (min-width: 960px) {
	.header {
    height: 130px;
		position: static;
		background: #fff;
	}
	.header_inner.mob{
		display: none;
	}
  .header_inner.pc {
    display: block;
    border-top-width: 4px;
    padding: 0;
  }
  .header .width {
    width: 98%;
    max-width: 1050px;
		display: flex;
    align-items: center;
    padding: 0;
    margin: 0 auto;
    height: 83px;
	}
	.header_logo_pc{
		height: 52px;
		width: auto;
    margin-top: -10px;
		margin-right: 10px;
	}
  .header_logo_pc img {
    height: 54px;
		width: auto;
    max-width: none;
	}
  .header_inner_right {
    margin-left: auto;
  }
  .header_contact {
    margin-left: auto;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    margin-bottom: 10px;
  }
  .header_contact_text {
    border: 1px solid #000;
    display: inline-block;
    height: 35px;
    border-radius: 3px;
    margin-left: 9px;
    padding: 3px 5px;
  }
  .header_contact_text div b {
    font-size: 14px;
    font-weight: 600;
  }
  .header_contact_text div {
    font-size: 11px;
    font-weight: 400;
    line-height: 1.1;
  }
  .header_contact img {
		width: 230px;
		height: auto;
    margin-top: 3px;
	}
  .header_contact a {
		display: block;
	}
  .sub_gnav {
		text-align: right;
		font-size: 0;
	}
	.sub_gnav li{
		display: inline-block;
	}
  .sub_gnav li+li {
    padding-left: 15px;
    margin-left: 15px;
		border-left: 1px solid #DDDDDD;
	}
	.sub_gnav a{
		font-size: 1.2rem;
		line-height: 1;
		font-weight: 400;
		color: #444!important;
	}
	.sub_gnav a:hover{
		color: #218df2!important;
	}
	.gnavi_contents_pc {
		height: 54px;
		display: block;
	}
	.header_inner{
		height: 87px;
		border-bottom: 1px solid #F5F5F5;
	}
	.gnavi_contents_pc .gnavi{
		text-align: center;
	}
	.gnavi_contents_pc .gnavi li {
		display: inline-block;
	}
	.gnavi_contents_pc .gnavi li + li{
		margin-left: 43px;
	}
	.gnavi_contents_pc .gnavi a {
		color: #444;
		line-height: 42px;
		font-size: 15px;
		font-weight: 400;
		transition: 0.1s;
    display: block;
	}
	.gnavi_contents_pc .gnavi a:hover{
		color: #218df2;
	}
}
@media screen and (min-width: 1040px) {
  .sub_gnav li+li {
    padding-left: 15px;
    margin-left: 15px;
	}
}
@media screen and (min-width: 960px) {
	#header.fix .header_inner.pc{
		position: fixed;
    height: 84px;
		animation: DownAnime 0.5s forwards;
		z-index: 2000;
		background: rgba(255,255,255, 0.95);
    box-shadow: 0 1px 5px rgba(0, 0, 0, 0.1);
	}
	@keyframes DownAnime{
		from {
			opacity: 0;
				transform: translateY(-170px);
		}
		to {
			opacity: 1;
				transform: translateY(0);
		}
	}
}
.mnav-icon{
	width: 25px;
    height: 25px;
    border-radius: 6px;
    margin: 0 6px 0 0;
    background-color: #011E3E;
    display: block;
    position: relative;
}
.mnav-icon:before{
	height: 100%;
    left: 0;
    right: 0;
    margin: auto;
    position: absolute;
    content: '';
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    display: block;
}
/*アイコン*/
.mnav-free .mnav-icon:before {
	width: 12px;
	background-image: url("/wp-content/uploads/free-icon.svg");
}
.mnav-police .mnav-icon:before {
	width: 16px;
	background-image: url("/wp-content/uploads/police-icon.svg");
}
.mnav-profile .mnav-icon:before {
	width: 17px;
	background-image: url("/wp-content/uploads/profile-icon.svg");
}
.mnav-fee .mnav-icon:before {
	width: 13px;
	background-image: url("/wp-content/uploads/fee-icon.svg");
}
.mnav-access .mnav-icon:before {
	width: 12px;
	background-image: url("/wp-content/uploads/access-icon.svg");
}
.mnav-jisseki .mnav-icon:before {
	width: 12px;
	background-image: url("/wp-content/uploads/jisseki-icon.svg");
}
.mnav-voice .mnav-icon:before {
	width: 12px;
	background-image: url("/wp-content/uploads/voice-icon.svg");
}
.mnav-comment .mnav-icon:before {
	width: 13px;
	background-image: url("/wp-content/uploads/comment-icon.svg");
}
.mnav-know .mnav-icon:before {
	width: 13px;
	background-image: url("/wp-content/uploads/article-icon.svg");
}
/*/アイコン*/

@media screen and (min-width: 900px) {
  .single-post .side>.sideinner,
  .single-report .side>.sideinner {
    top: 23px;
  }
}

.search_btn {
  position: absolute;
  top: 7px;
  right: 8px;
  width: 80px;
  height: 30px;
  background: #ada8a1;
  border-radius: 3px;
}

.search_btn:before {
  content: "";
  height: 66%;
  top: 17%;
  left: 6px;
  background: #625d55;
  width: 1px;
  display: block;
  position: absolute;
}

.search_btn img {
  height: 15px;
  width: auto;
  position: absolute;
  top: 8px;
  right: 5px;
}



/* --------------------------------
 * gnav
 * -------------------------------- */


#nav-drawer {
  position: relative;
}

.nav-unshown {
  display: none;
}

@media screen and (min-width: 900px) {
  #nav-drawer {
    display: none !important;
  }
}

/* ボタン */
#nav-open {
  position: absolute;
  height: 47px;
  width: 47px;
  line-height: 55px;
  border-radius: 50%;
  background: rgba(85, 144, 215, 0.7);
  top: 10px;
  right: 2.5%;
  text-align: center;
  box-shadow: 0 4px 6px -2px rgba(0, 0, 0, 0.2);
  z-index: 8;
  cursor: pointer;
}

#nav-open.fixed {
  position: fixed;
  top: 10px;
  right: 2.5%;
  -webkit-transition: all .3s;
  transition: all .3s;
}

#nav-open span {
  left: 13px;
  top: 15px;
}

#nav-open span,
#nav-open span:before,
#nav-open span:after {
  position: absolute;
  height: 2px;
  /*線の太さ*/
  width: 21px;
  /*長さ*/
  border-radius: 3px;
  background: #fff;
  display: block;
  content: '';
  cursor: pointer;
}

#nav-open span:before {
  bottom: -8px;
}

#nav-open span:after {
  bottom: -16px;
}

/* 背景 */
#nav-close {
  display: none;
  /*はじめは隠しておく*/
  position: fixed;
  z-index: 9;
  top: 0;
  /*全体に広がるように*/
  left: 0;
  width: 100%;
  height: 100%;
  background: black;
  opacity: 0;
  transition: .3s ease-in-out;
}

/* 中身 */
#nav-content {
  overflow: auto;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10;
  /*最前面に*/
  width: 90%;
  /*右側に隙間を作る*/
  max-width: 330px;
  /*最大幅*/
  height: 100%;
  background: #fff;
  /*背景色*/
  transition: .3s ease-in-out;
  /*滑らかに表示*/
  -webkit-transform: translateX(-105%);
  transform: translateX(-105%);
  /*左に隠しておく*/
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
}

/* クリック時 */
#nav-input:checked~#nav-close {
  display: block;
  opacity: .5;
}

#nav-input:checked~#nav-content {
  -webkit-transform: translateX(0%);
  transform: translateX(0%);
  box-shadow: 6px 0 25px rgba(0, 0, 0, .15);
}








.list_title {
  display: block;
  padding: 28px 2px 11px;
  font-size: 13px;
  font-weight: bold;
  color: #ffffff8c;
}

.gnav_area {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
}

@media screen and (min-width: 900px) {
  .gnav_toggle {
    display: none;
  }

  .gnav_area {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    text-align: right;
  }

  .gnav_area ul {
    padding-right: 60px;
  }

  .gnav_area li {
    display: inline-block;
    border-left: 1px solid #7b766b;
  }

  .gnav_area li:last-child {
    border-right: 1px solid #7b766b;
  }

  .gnav_area a {
    font-size: 1.2rem;
    color: #fff;
    display: block;
    line-height: 66px;
    padding: 0 20px;
  }
}

/* pc gnav*/
@media screen and (min-width: 900px) {
  .pc_gnav {
    border-top: solid #ededed 2px;
  }

  .gnav_inner {
    max-width: 1050px;
    margin: 0 auto;
  }

  .gnav_inner ul {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    justify-content: space-between;
  }

  .gnav_inner li a {
    line-height: 70px;
    font-size: 15px;
    display: block;
    /*font-family: ;*/
    position: relative;
  }

  .gnav_inner li a:before {
    content: "";
    position: inherit;
    border-left: solid #e3e3e3 1px;
    left: -12px;
    top: 0px;
  }

  .gnav_inner li.home a:before,
  .gnav_inner li.Knowimg a:before {
    display: none;
  }

  .gnav_inner li a:hover {
    color: #5590d7;
  }

  .gnav_inner li a.current {
    color: #5590d7;
    border-top: 2px solid;
    top: -2px;
    position: relative;
  }

  .home i {
    background-image: url(../img/icon_home.png);
    background-size: cover;
    height: 15px;
    width: 15px;
    display: block;
    top: 26px;
    position: relative;
    margin-left: 10px;
    margin-right: 10px;
  }

  .home .current i {
    background-image: url(../img/icon_home2.png);
  }

  li.Knowimg {
    position: relative;
    top: -12px;
    margin-bottom: -12px;
  }

  li.Knowimg a {
    line-height: 0;
  }

  li.Knowimg img {
    height: 73px;
  }
}


/* --------------------------------
 * breadcrumbs
 * -------------------------------- */
.rank-math-breadcrumb {
  background: #ecedee;
  display: block;
  font-size: 1rem;
  padding: 0 2.5%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  width: 100%;
  color: #0f4b89;
  font-family: 'Hiragino Kaku Gothic ProN', 'Yu Gothic', YuGothic, meiryo, sans-serif;
}

.rank-math-breadcrumb a {
  color: #0f4b89;
  padding: 0 6px 0 0;
  text-decoration: underline;
}

.rank-math-breadcrumb p {
  font-size: 1rem;
  line-height: 2.5;
}

.brrank-math-breadcrumbeadcrumbs a:hover {
  color: #218df2;
}

@media screen and (min-width: 900px) {
  .rank-math-breadcrumb {
    font-size: 1.2rem;
    position: absolute;
    bottom: 100%;
    left: 0;
    padding-bottom: 0px;
    background: none;
    padding: 0;
    background: none;
  }

  .rank-math-breadcrumb p {
    font-size: 1.2rem;
  }
}

/* --------------------------------
 * pagenav
 * -------------------------------- */
@media screen and (max-width: 899px) {
  .pagenav {
    background: #fff;
    position: fixed;
    top: -50px;
    left: 0;
    width: 100%;
    height: 40px;
    box-shadow: 0 4px 6px -2px rgba(0, 0, 0, 0.2);
    z-index: 5;
    border-bottom: 1px solid #5590d7;
    -webkit-transition: all .3s;
    transition: all .3s;
  }

  .pagenav nav {
    left: 0;
    white-space: nowrap;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    width: 100%;
    height: 100%;
    position: relative;
  }

  .pagenav ul {
    overflow: scroll;
    display: table;
    width: 100%;
    height: 100%;
    position: relative;
  }

  .pagenav li {
    display: inline-block;
  }

  .pagenav a {
    display: table-cell;
    /* vertical-align: top; */
    white-space: nowrap;
    padding: 0 2px 0 23px;
    margin: 0 6px;
    font-size: 1.5rem;
    font-weight: bold;
    height: 40px;
    line-height: 40px;
    display: block;
    color: #aaa;
    overflow: visible;
    position: relative;
    -webkit-transition: all .4s;
    transition: all .4s;
  }

  /*  .pagenav li:first-child a {
    padding-left: 2px;
    margin-left: 10px;
  }
*/
  .pagenav a:before {
    font-family: 'Comfortaa', cursive;
    content: "1";
    color: #fff;
    font-size: 1rem;
    line-height: 20px;
    text-align: center;
    position: absolute;
    left: 2px;
    top: 9px;
    display: block;
    background: url(../img/single/ribon_nav_off.svg) no-repeat center;
    width: 15px;
    height: 20px;
  }

  /*  .pagenav li:first-child a:before {
    display: none;
  }*/
  .pagenav li:nth-child(2) a:before {
    content: "2";
  }

  .pagenav li:nth-child(3) a:before {
    content: "3";
  }

  .pagenav li:nth-child(4) a:before {
    content: "4";
  }

  .pagenav li:nth-child(5) a:before {
    content: "5";
  }

  .pagenav li:nth-child(6) a:before {
    content: "6";
  }

  .pagenav li:nth-child(7) a:before {
    content: "7";
  }

  .pagenav li:nth-child(8) a:before {
    content: "8";
  }

  .pagenav li:nth-child(9) a:before {
    content: "9";
  }

  .pagenav li:nth-child(10) a:before {
    content: "10";
  }

  .pagenav a.current {
    color: #5590d7;
    border-bottom: 4px solid #5590d7;
  }

  .pagenav a.current:before {
    background-image: url(../img/single/ribon_nav.svg);
  }
}

/* ページナビ表示 */
@media screen and (max-width: 899px) {
  .pagenav_on .pagenav {
    top: 0px;
  }

  .pagenav_on .header {
    box-shadow: none;
  }
}

/* PC */
@media screen and (min-width: 900px) {
  .pagenav {
    display: block;
    background: #f3f3f3;
    padding: 8px 15px 10px;
    margin-bottom: 20px;
  }

  .pagenav li {
    display: inline-block;
    font-size: 1.3rem;
    font-weight: bold;
    vertical-align: middle;
    line-height: 1;
    padding-right: 5px;
  }

  .pagenav li a {
    color: #1e6a90;
  }

  .pagenav li a:before {
    content: "■";
    color: #bbd9e8;
    padding-right: 2px;
  }
}



/* --------------------------------
 * side
 * -------------------------------- */

.side {
  margin: 12px 0;
}

.side .contener {
  background: #fff;
  position: -webkit-sticky;
  position: sticky;
  top: 92px;
  box-shadow: 0 4px 4px -2px rgba(0, 0, 0, 0.1);
  overflow: hidden;
}

.side .side_ttl {
  background: #625d55;
  color: #fff;
  padding: 0 8px;
  font-weight: normal;
  line-height: 30px;
  font-size: 1.4rem;
  letter-spacing: 0.5px;
}

.side_post_item {
  display: -webkit-flex;
  /* Safari */
  display: flex;
  -webkit-justify-content: space-between;
  /* Safari */
  justify-content: space-between;
  -webkit-align-items: center;
  /* Safari */
  align-items: center;
  padding: 10px 15px;
  border-bottom: 1px solid #eee;
}

.side_post_item .img {
  width: 65px;
  height: 65px;
  overflow: hidden;
}

.side_post_item .img img {
  width: 100%;
}

.side_post_item .ttl {
  flex: 1;
  -webkit-flex: 1;
  margin-left: 13px;
  font-size: 1.3rem;
  line-height: 1.4;
}

@media screen and (min-width: 900px) {
  .side {
    margin: 0;
  }

  .side .contener {
    border-radius: 3px;
  }
}

textarea.box_dummy {
  display: block;
  width: 100%;
  border: solid #dedede 1px;
  height: 45px;
  margin-top: 10px;
  cursor: pointer;
}

/* --------------------------------
 * post_head
 * -------------------------------- */

.post_head {
  background: #fff;
  padding: 14px 4% 25px;
  box-shadow: 0 4px 4px -2px rgba(0, 0, 0, 0.1);
  margin-bottom: 22px;
}

.post_head_view,
.post_head_lawyer_answer {
  font-size: 1.3rem !important;
  width: 100%;
  line-height: 28px;
  height: 28px;
  color: #fff;
  border-radius: 14px;
  letter-spacing: 0.1px;
  background: #5590d6;
  padding: 0 15px;
  margin-bottom: 18px;
  position: relative;
}

.post_head_view:before,
.post_head_lawyer_answer:before {
  content: "";
  display: inline-block;
  width: 12px;
  height: 14px;
  background: url(../img/icon_view.png) no-repeat center;
  background-size: contain;
  vertical-align: middle;
  margin-right: 6px;
}

.post_head_view:after,
.post_head_lawyer_answer:after {
  content: "";
  display: block;
  width: 15px;
  height: 12px;
  background: url(../img/icon_fukidashi.png) no-repeat center;
  background-size: contain;
  position: absolute;
  bottom: -9px;
  right: 50px;
}

.post_head_ttl {
  font-size: 2.2rem;
  padding-bottom: 13px;
  line-height: 1.35;
  letter-spacing: -0.3px;
}


.post_head_movie {
  border-radius: 3px;
  overflow: hidden;
  line-height: 0;
  margin-bottom: 20px;
}

.post_head_movie img {
  width: 100%;
}

video#movie {
  max-width: 100%;
  height: auto;
}

.post_head p+p {
  padding-top: 12px;
}

/*
.post_head_readtxt{
  line-height: 1.5;
  letter-spacing: -0.3px;
}*/

.post_head ul.boutou {
  margin-bottom: 18px;
  margin-left: 15px;
}

.post_head ul.boutou li {
  line-height: 1.8em;
  /*    padding-left: 20px;*/
  position: relative;
}

.post_head ul.boutou li::before {
  font-family: "Font Awesome 5 Free", sans-serif;
  content: "\f14a";
  position: relative;
  left: -0.5em;
  /*    color: #5590d7;*/
  color: #ff8701;
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
  font-weight: 900;
}

.kanrentag {
  position: relative;
  margin: 26px auto 34px;
}

.kanrentag_txt {
  color: #6f6f6f;
  font-size: 1.4rem;
  width: 50px;
  position: absolute;
  top: 0;
  left: 0;
  padding-left: 4px;
  line-height: 28px;
  letter-spacing: 0.3px;
}

.kanrentag_list {
  padding-left: 50px;
}

.kanrentag_list li {
  display: inline-block;
  padding-right: 5px;
}

.kanrentag_list li a {
  display: block;
  background: #5590d7;
  border-radius: 3px;
  color: #fff;
  padding: 0 12px;
  line-height: 25px;
  font-size: 1.4rem;
  box-shadow: 0 2px 2px -1px rgba(0, 0, 0, 0.16);
}

.kanrentag_list li a:before {
  content: "";
  border-radius: 50%;
  width: 7px;
  height: 7px;
  line-height: 28px;
  margin-right: 5px;
  background: #fff;
  display: inline-block;
  vertical-align: middle;
  margin-bottom: 2px;
}

.kanrentag {
  display: none;
}

.ftkanren .kanrentag {
  display: block;
  margin-left: 4%;
}

@media screen and (min-width: 900px) {
  .post_head {
    padding: 40px;
    margin-bottom: 25px;
  }

  .post_head_ttl {
    padding-bottom: 34px;
    padding-top: 13px;
  }

  .kanrentag_txt {
    width: 54px;
  }

  .ftkanren .kanrentag {
    margin: 10px auto 38px;
  }
}


/* --------------------------------
 * 動画
 * -------------------------------- */
a.ytbgif {
  position: relative;
  display: block;
}

a.ytbgif:hover {
  opacity: 1;
}

a.ytbgif::before {
  content: "";
  text-align: center;
  position: absolute;
  width: 180px;
  height: 80px;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  display: block;
  background: url(../img/playicon.svg) no-repeat center;
  filter: drop-shadow(0 2.5px 0 rgba(0, 0, 0, 0.1));
}

a.ytbgif::before {
  content: "";
  text-align: center;
  position: absolute;
  width: 90px;
  height: 55px;
  top: 8px;
  left: auto;
  right: 8px;
  bottom: auto;
  /* margin: auto; */
  display: block;
  background: url(../img/playicon.svg) no-repeat center;
}

a.ytbgif:hover:before {
  filter: none;
}


@media screen and (min-width: 900px) {
  a.ytbgif::before {
    content: "";
    width: 140px;
    height: 84px;
    background: url(../img/playicon.svg) no-repeat center;
  }

}

/* --------------------------------
 * 目次 toc_container
 * -------------------------------- */

#toc_container {
  margin: 15px -5px;
  background: #f5f5f5;
  border: 1px solid #d4d4d4;
  padding: 16px 19px 15px;
}

#toc_container .toc_title {
  font-size: 1.7rem;
  font-weight: bold;
  text-align: center;
  line-height: 1;
}


/* 両方・子 */
#toc_container .toc_list a {
  text-decoration: underline;
  margin-bottom: 12px;
  display: block;
  line-height: 1.4;
  font-size: 1.45rem;
  padding-left: 11px;
  position: relative;
  letter-spacing: 0.4px;
}

#toc_container .toc_list a::before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 6px;
  width: 0;
  height: 0;
  border: 3px solid transparent;
  border-left: 5px solid #c2c2c2;
}

/* 親カスタム */
#toc_container .toc_list>li {
  margin-top: 18px;
}

#toc_container .toc_list>li>a {
  color: #218df2;
  font-weight: bold;
  font-size: 1.6rem;
}

#toc_container .toc_list>li>a:before {
  top: 10%;
  width: 3px;
  height: 80%;
  background: #c2c2c2;
  border: none;
}

@media screen and (min-width: 900px) {
  #toc_container {
    margin: 50px -5px 0;
    background: #f5f5f5;
    border: 1px solid #d4d4d4;
    padding: 21px 30px 20px;
  }
}

/* --------------------------------
 * 法律解説 post_houritsu
 * -------------------------------- */

.post_houritsu {
  margin: 0 8px;
  background: #fff;
  border-radius: 3px;
  overflow: hidden;
  box-shadow: 0 4px 4px -2px rgba(0, 0, 0, 0.1);
}

.post_houritsu .ttl {
  background: #82bd5e;
  color: #fff;
  text-align: center;
  font-weight: bold;
  font-size: 1.5rem;
  line-height: 35px;
  letter-spacing: 0.5px;
}

.post_houritsu .body {
  padding: 14px 20px 10px;
}

.post_houritsu .body dt {
  color: #589e2e;
  font-weight: bold;
  font-size: 1.4rem;
  padding-bottom: 4px;
}

.post_houritsu .body dd {
  padding-bottom: 11px;
  line-height: 1.4;
  font-size: 1.6rem;
}

.post_houritsu .body dd+dt {
  border-top: 1px solid #d2d2d2;
  padding-top: 13px;
}

@media screen and (min-width: 900px) {
  .post_houritsu {
    margin: 0;
    border-radius: 3px;
  }

  .post_houritsu .body {
    padding: 25px 40px;
  }
}


.post_houritsu.article_inner {
  /*border: solid 2px #82bd5e;*/
  margin: 0 14px 30px;
  box-shadow: none;
  background-color: #f0f8eb;
}

.post_houritsu.article_inner h2 {
  margin: 0px;
  padding-bottom: 0;
  padding-left: 12px;
}


@media screen and (min-width: 900px) {
  .post_houritsu.article_inner h2 {
    top: 0;
    padding-top: 0px;
  }

  .post_houritsu.article_inner {
    margin: 0 30px 40px;
  }
}


/*目次下*/
.post_houritsu.article_inner.ac {
  margin: 25px 0px 0px;
  box-shadow: none;
  background-color: #f0f8eb;
}

.post_houritsu.ac.morebtn_txt .morelaw {
  background: #82bd5e;
  color: #fff;
  text-align: center;
  font-weight: bold;
  font-size: 1.5rem;
  line-height: 35px;
  letter-spacing: 0.5px;
  position: relative;
  display: block;
  margin-bottom: 0;
}

.post_houritsu.ac.morebtn_txt .morelaw:hover {
  cursor: pointer;
}

dl.body.more_txt {
  display: none;
}

.open dl.body.more_txt {
  display: block;
}

.post_houritsu.ac.morebtn_txt .morelaw:after {
  right: 12px;
  width: 5px;
  background: url(../img/icon_arr_w.svg) no-repeat center;
  content: " ";
  position: absolute;
  width: 5px;
  height: 35px;
  transform: rotate(90deg);
  transition: .2s ease-in-out;
  /*滑らかに表示*/
}

.post_houritsu.ac.morebtn_txt.open .morelaw:after {
  transform: rotate(-90deg);
}


/* --------------------------------
 * クイズ部分 post_quiz
 * -------------------------------- */

.post_quiz {
  margin: 12px 8px 0;
  background: #fff;
  border-radius: 3px;
  overflow: hidden;
  box-shadow: 0 4px 4px -2px rgba(0, 0, 0, 0.1);
}

.post_quiz .ttl {
  background: #5590d7;
  color: #fff;
  text-align: center;
  font-weight: bold;
  font-size: 1.5rem;
  line-height: 35px;
  letter-spacing: 0.5px;
}

.post_quiz .body {
  padding: 14px 20px 10px;
}

.post_quiz .body p {
  padding-bottom: 11px;
  line-height: 1.4;
  font-size: 1.6rem;
}

@media screen and (min-width: 900px) {
  .post_quiz {
    margin: 0;
    border-radius: 3px;
  }

  .post_quiz .body {
    padding: 20px 27px;
  }
}


/* --------------------------------
 * クイズ部分 yakunitatta
 * -------------------------------- */

.afb_container {
  margin: 12px 0 0;
  background: #fff;
  border-radius: 3px;
  box-shadow: 0 4px 4px -2px rgba(0, 0, 0, 0.1);
  padding: 24px 0 30px;
  text-align: center;
}

.afb_container .ttl {
  font-weight: bold;
  font-size: 1.5rem;
}

.afb_container a {
  border-radius: 2px;
  background: #fff;
  color: #218df2 !important;
  border: 1px solid #218df2;
  font-size: 1.6rem;
  text-align: center;
  line-height: 45px;
  width: 30%;
  display: inline-block;
  vertical-align: middle;
  box-shadow: 0 1.5px 0 rgba(0, 0, 0, 0.1);
  margin: 15px 3px 0;
}

.afb_container {
  display: none;
}

/* --------------------------------
 * 記事のセクションごと post_section
 * -------------------------------- */

.post_section {
  margin: 0 auto;
}

.post_section h2 {
  margin: 27px 11px 15px;
  position: relative;
  padding-left: 23px;
  font-size: 1.6rem;
  color: #0f4b89;
  /*word-break: break-all;*/
}

.post_section h2 span {
  font-family: 'Comfortaa', cursive;
  color: #fff;
  font-size: 1.1rem;
  line-height: 21px;
  text-align: center;
  position: absolute;
  left: 0;
  top: -2px;
  display: block;
  background: url(../img/single/ribon.svg) no-repeat center;
  width: 17px;
  height: 21px;
}

@media screen and (min-width: 900px) {
  .post_section h2 {
    padding: 22px 0 22px 80px;
    margin: 40px 0 0;
    background: #fff;
    font-size: 2rem;
    border-radius: 3px 3px 0 0;
    position: -webkit-sticky;
    position: sticky;
    top: 23px;
    z-index: 1;
    border-bottom: 1px solid #ccdef5;
  }

  .post_section h2:before {
    background: #e6edf8;
    content: "";
    display: block;
    position: absolute;
    left: 0;
    bottom: 100%;
    height: 25px;
    width: 100%;
    z-index: 5;
  }

  .post_section h2 span {
    font-size: 2.6rem;
    line-height: 64px;
    left: 0;
    top: 0;
    width: 64px;
    height: 100%;
    background: #5590d7;
  }
}

/* 記事の段落ごと post_content_card */
.post_content_card {
  margin: 0 8px;
  background: #fff;
  border-radius: 3px;
  overflow: hidden;
  box-shadow: 0 4px 4px -2px rgba(0, 0, 0, 0.1);
}

.post_content_card+.post_content_card {
  margin-top: 12px;
  margin-bottom: 20px;
}

@media screen and (min-width: 900px) {
  .post_content_card {
    margin: 0;
    border-radius: 3px;
  }

  h2+.post_content_card {
    border-radius: 0 0 3px 3px;
  }

  .post_content_card+.post_content_card {
    margin-top: 25px;
  }
}

/* 画像 */
.post_content_card .img {
  margin: 3px;
  border-radius: 2px;
  overflow: hidden;
  background: #e2dbd1;
  line-height: 0;
}
.post_content_card .img img{
	height: 100%;
	width: auto;
	max-width: none;
}

.post_content_card .img iframe {
  width: 100%;
}

@media screen and (min-width: 900px) {
  .post_content_card .img {
    max-height: 60vh;
    text-align: center;
    margin: 35px 35px 25px;
	/* border-radius: 2px 2px 0 0; */
  }

  .post_content_card .img img {
    max-height: 60vh;
    width: auto;
  }
}

/* 本文 */
.post_content_card .txtarea {
  padding: 11px 4% 28px;
}

.post_content_card .txtarea a {
  /*  text-decoration: underline;*/
  color: #218df2;
}

@media screen and (min-width: 900px) {
  .post_content_card .txtarea {
    padding: 18px 45px 45px;
  }
}

.post_content_card .ttl {
  position: relative;
  display: -webkit-flex;
  /* Safari */
  display: flex;
  -webkit-justify-content: space-between;
  /* Safari */
  justify-content: space-between;
  -webkit-align-items: center;
  /* Safari */
  align-items: center;
  padding-bottom: 10px;
}

.post_content_card .ttl h3 {
  color: #5590d7;
  font-weight: bold;
  line-height: 1.3;
  font-size: 1.8rem;
  flex: 1;
  letter-spacing: 0.4px;
  padding-top: 3px;
}

.post_content_card:not(.santen_card) .ttl span {
  background: #5590d7;
  border-radius: 5px;
  text-align: center;
  display: block;
  font-family: 'Comfortaa', cursive;
  color: #fff;
  line-height: 40px;
  width: 40px;
  height: 40px;
  margin-right: 10px;
  font-weight: bold;
  font-size: 1.55rem;
}

/* コメント欄 */
.post_comment {
  padding-top: 25px;
}

.post_comment_item {
  display: flex;
  justify-content: space-between;
  align-items: flex-start!important;
  position: relative;
}

.post_comment_item .name {
  width: 56px;
  margin-right: 10px;
  margin-left: -6px;
}

.post_comment_item .name .img {
  display: block;
  margin: auto;
  width: 38px;
  height: 38px;
  background: url(../img/photoicon/okano.png) no-repeat center top;
  background-size: cover;
  border-radius: 50%;
  box-shadow: 0 4px 4px -2px rgba(0, 0, 0, 0.1);
}

.post_comment_item .name span {
  font-size: 1.1rem;
  text-align: center;
  color: #218df2;
  display: block;
  line-height: 1.4;
  text-decoration: underline;
  white-space: nowrap;
  padding-top: 5px;
}

.post_comment_item .txt {
  background: #f1f3f6;
  border-radius: 10px;
  padding: 16px 13px 16px 18px;
  font-size: 1.5rem;
  line-height: 1.6;
  flex: 1;
  -webkit-flex: 1;
  position: relative;
  letter-spacing: -0.3px;
  line-break: strict;
}

.post_comment_item .txt:before {
  content: "";
  text-align: center;
  position: absolute;
  left: -10px;
  top: 44px;
  display: block;
  background: url(../img/single/comment.svg) no-repeat center;
  width: 12px;
  height: 15px;
}

.post_comment_item+.post_comment_item {
  margin-top: 12px;
}

.copyright_area {
  background: #000;
  width: 100%;
  text-align: center;
  padding: 16px 0 123px;
  font-size: 1rem;
  color: #fff;
}

.copyright_area a {
  color: #fff;
  text-decoration: underline;
  margin-right: 2px;
}

.copyright_area small {
  display: block;
  font-family: 'Comfortaa', cursive;
  letter-spacing: 1px;
  line-height: 1.7;
  opacity: .7;
}

.copyright_area small+small {
  font-size: 1rem;
  padding-top: 6px;
  letter-spacing: 0;
}

@media screen and (min-width: 900px) {
  .post_comment_item .name {
    margin-right: 20px;
  }

  .post_comment_item .name .img {
    width: 56px;
    height: 56px;
  }

  .post_comment_item .name span {
    padding-top: 7px;
  }

  .post_comment_item+.post_comment_item {
    margin-top: 22px;
  }

  .post_comment_item .txt {
    padding: 18px 26px 18px 31px;
  }

  .copyright_area {
    padding: 16px 0;
  }

  .post_comment {
    padding-top: 40px;
  }
}


/* --------------------------------
 * 関連記事
 * -------------------------------- */

.page_section {
  margin-top: 12px;
}

.page_section .mainttl {
  line-height: 30px;
  background: #5590d7;
  color: #fff;
  padding: 0 2.5%;
  font-weight: normal;
  font-size: 1.4rem;
}


@media screen and (min-width: 900px) {
  .page_section {
    margin-top: 35px;
  }

  .page_section .mainttl {
    line-height: 39px;
  }

}



.list_post_item {
  background: #fff;
  display: block;
  box-shadow: 0 4px 4px -2px rgba(0, 0, 0, 0.1);
  margin-bottom: 8px;
  padding: 13px 4%;
  position: relative;
}

.list_post_item .img_txt_ {
  display: -webkit-flex;
  /* Safari */
  display: flex;
  -webkit-justify-content: space-between;
  /* Safari */
  justify-content: space-between;
  -webkit-align-items: flex-start;
  /* Safari */
  align-items: flex-start;
  flex-direction: row-reverse;
}

.list_post_item .img {
  width: 76px;
  margin-left: 14px;
  height: 64px;
  background: no-repeat center #eee;
  background-size: cover;
  overflow: hidden;
}
.onecolumn .list_post_item .img img{
	width: auto;
	height: 100%;
	max-width: none;
}

.list_post_item .txt {
  flex: 1;
  -webkit-flex: 1;
  position: relative;
}

.list_post_item .txt .ttl {
  line-height: 1.2;
}

.list_post_item .txt .time,
.list_post_item .txt .tag,
.list_post_item .txt time {
  color: #999;
  font-size: 1.3rem;
  padding-right: 7px;
  letter-spacing: 0.1px;
  padding-top: 7px;
  display: inline-block;
}

.list_post_item .photoicon {
  padding-top: 3px;
  margin-left: -5px;
  position: relative;
}

.list_post_item .photoicon span {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  border: 3px solid #fff;
  margin-right: -8px;
  background-color: #eee;
  display: inline-block;
  vertical-align: bottom;
  background: url(../img/photoicon/okano.png) no-repeat center -2px;
  background-size: cover;
}


.list_post_item .photoicon:after {
  content: "…";
  font-size: 1rem;
  display: inline-block;
  background: #218df2;
  width: 17px;
  height: 17px;
  border-radius: 50%;
  color: #fff;
  font-weight: bold;
  text-align: center;
  line-height: 17px;
  margin-bottom: 3px;
  margin-left: -6px;
}

.list_post_item .link {
  color: #218df2;
  text-decoration: underline;
  font-size: 1.3rem;
  text-align: right;
  position: absolute;
  right: 4%;
  bottom: 15px;
}

.list_post_item .kaitousitaben {
  font-size: 1.1rem;
  position: absolute;
  color: #218df2;
  left: 82px;
  bottom: 7%;
  display: block;
  white-space: nowrap;
  font-weight: bold;
}

.list_post_item .kaitousitaben:first-child {
  left: 17px;
}

.list_post_item .img_txt_.muryou .txt:before {
  width: 82px;
  height: 23px;
  display: inline-block;
  vertical-align: bottom;
  background: url(../img/muryousoudan/free_deco.png) no-repeat;
  background-size: cover;
  content: "";
  position: absolute;
  top: -16px;
  left: 13px;
}

@media screen and (max-width: 899px) {

  /* firstchild */
  .list_post:not(.normal) .list_post_item:first-child {
    padding-top: 0;
  }

  .list_post:not(.normal) .list_post_item:first-child .img_txt_ {
    display: block;
  }

  .list_post:not(.normal) .list_post_item:first-child .img {
    width: 108%;
    height: 150px;
    margin-right: -4%;
    margin-left: -4%;
  }

  .list_post:not(.normal) .list_post_item:first-child .txt {
    padding-top: 12px;
  }

  .list_post:not(.normal) .list_post_item:first-child .photoicon {
    padding-top: 10px;
  }

  .hinagata .list_post_item .link {
    position: relative;
    padding-top: 10px;
    bottom: 0;
    right: 0;
  }

  .list_post_item .img_txt_.muryou .txt:before {
    left: -4px;
  }

  .list_post_item .img_txt_.muryou.last .txt:before {
    display: none;
  }

  .list_post_item .img_txt_.muryou.last .img:after {
    width: 82px;
    height: 23px;
    display: inline-block;
    vertical-align: bottom;
    background: url(../img/muryousoudan/free_deco.png) no-repeat;
    background-size: cover;
    content: "";
    position: absolute;
    top: 70px;
    right: 11px;
  }

  .list_post_item .img_txt_.muryou.last .img {
    background-position: -68px 0px;
  }

  .list_post .list_post_item:nth-child(n + 2) .img img{
	width: auto;
	height: 100%;
	max-width: none;
  }
}



@media screen and (min-width: 900px) {

  .list_post_item:hover {
    opacity: 0.8;
  }


  .list_post {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: stretch;
    align-items: stretch;
    flex-wrap: wrap;
    padding-top: 12px;
  }

  .list_post_item .img_txt_ {

    display: block;
  }

  .list_post_item .img {
    width: 100%;
    margin: 0;
    height: 162px;
  }

  .list_post_item .txt {
    padding-top: 10px;
    padding: 11px 21px 11px;
  }

  .list_post_item .txt .ttl {
    font-size: 1.45rem;
    line-height: 1.4;
  }

  .list_post_item .txt .time,
  .list_post_item .txt .tag,
  .list_post_item .txt time {
    font-size: 1.05rem;
    padding-top: 9px;
  }

  .list_post_item .photoicon {
    margin-left: -4px;
    padding: 0 21px;
  }

  .list_post_item .link {
    font-size: 1.1rem;
    right: 5%;
  }

  .list_post_item {
    margin-bottom: 20px;
    padding: 0;
    padding-bottom: 14px;
    width: 48.8%;
  }

  .normal .list_post_item {
    min-height: 240px;
  }

  .list_post_item .photoicon span {
    width: 46px;
    height: 46px;
  }

  .list_post_item .kaitousitaben {
    left: 120px;
  }
  .list_post_item .kaitousitaben:first-child {
    left: 38px;
  }

}


/* ノーマル版 archive カスタマイズ */

.normal:not(.top) .list_post_item .link {
  position: static;
  padding-top: 10px;
}

@media screen and (min-width: 900px) {
  .normal:not(.top) .list_post_item .link {
    position: absolute;
    padding-top: 10px;
  }
}

/* know トップアーカイブ調整*/
@media screen and (max-width: 899px) {
  .list_post:not(.normal) .onecolumn .list_post_item .img {
    width: 76px;
    margin-left: 14px;
    height: 64px;
    background: no-repeat center #eee;
    background-size: cover;
    margin-right: 0;
  }

  .list_post:not(.normal) .onecolumn .list_post_item .img_txt_ {
    display: -webkit-flex;
    display: flex;
  }

  .list_post:not(.normal) .onecolumn .list_post_item {
    padding-top: 13px;
  }

  .list_post:not(.normal) .onecolumn .list_post_item .txt {
    padding-top: 0;
  }
}

@media screen and (min-width: 900px) {
  .onecolumn {
    margin-bottom: 20px;
    padding: 0;
    padding-bottom: 0;
    width: 48.8%;
  }

  .onecolumn .list_post_item {
    width: 100%;
    background: #fff;
    display: block;
    box-shadow: 0 4px 4px -2px rgba(0, 0, 0, 0.1);
    margin-bottom: 8px;
    padding: 13px 4%;
    position: relative;
  }

  .onecolumn .list_post_item:last-child {
    margin-bottom: 0px;
  }

  .onecolumn .list_post_item .img {
    width: 76px;
    margin-left: 14px;
    height: 64px;
  }

  .onecolumn .list_post_item .img_txt_ {
    display: -webkit-flex;
    display: flex;
  }

  .onecolumn .list_post_item .img_txt_ .txt {
    padding: 0;
  }

  .hinagata .onecolumn .list_post_item .link {
    position: relative;
    right: 0;
    bottom: 0;
    padding-top: 16px;
  }

  .onecolumn .list_post_item .photoicon {
    margin-left: -4px;
    padding: 7px 0;
  }
}


/* --------------------------------
 * page_navi
 * -------------------------------- */
.wp-pagenavi {
  text-align: center;
  padding: 18px 0 32px;
}

.wp-pagenavi span,
.wp-pagenavi a {
  display: inline-block;
  margin: 0 3px;
  color: #626262;
  font-size: 1.6rem;
  line-height: 35px;
  width: 30px;
  background: #fff;
  white-space: nowrap;
  letter-spacing: -1px;
  border-radius: 3px;
  cursor: pointer;
  box-shadow: 0 2px 2px -1px rgba(0, 0, 0, 0.1);
}

.wp-pagenavi .current {
  color: #fff;
  background: #5590d7;
}

.wp-pagenavi .extend {
  background: no-repeat;
  box-shadow: none;
  width: 20px;
}


/* --------------------------------
 * btn
 * -------------------------------- */


.btn {
  border-radius: 2px;
  background: #218df2;
  color: #fff !important;
  font-size: 1.6rem;
  text-align: center;
  line-height: 50px;
  width: 80%;
  display: block;
  margin: 20px auto 0;
  box-shadow: 0 1.5px 0 rgba(0, 0, 0, 0.1);
}

.btn_w {
  border-radius: 2px;
  background: #fff;
  color: #218df2 !important;
  border: 1px solid #218df2;
  font-size: 1.6rem;
  text-align: center;
  line-height: 45px;
  width: 30%;
  display: inline-block;
  vertical-align: middle;
  box-shadow: 0 1.5px 0 rgba(0, 0, 0, 0.1);
}


/* --------------------------------
 * KNOWナビ
 * -------------------------------- */

.footer {
  background: #001e3e;
  font-family: 'Hiragino Kaku Gothic ProN', 'Yu Gothic', YuGothic, meiryo, sans-serif;

}

.navcontent {
  padding: 7px 4% 30px;
}

.nav_qa {
  background: #5590d7;
}

.nav_qa .page_list {
  display: none;
}

.navcontent .ttl {
  text-align: center;
  font-weight: bold;
  font-size: 1.5rem;
  color: #fff;
  border-bottom: 1px solid rgba(255, 255, 255, .4);
  padding-bottom: 15px;
  padding-top: 12px;
}

.navcontent .subttl {
  font-weight: normal;
  font-size: 1.5rem;
  color: #fff;
  padding-bottom: 10px;
  margin-top: 20px;
}


.cat_list {
  display: -webkit-flex;
  /* Safari */
  display: flex;
  -webkit-justify-content: space-between;
  /* Safari */
  justify-content: space-between;
  -webkit-align-items: flex-start;
  /* Safari */
  align-items: flex-start;
  flex-wrap: wrap;
  margin-top: -8px;
}

.cat_list li {
  width: 31.8%;
  margin-top: 8px;
}

.cat_list li a {
  display: block;
  width: 100%;
  line-height: 40px;
  background: #fff;
  border-radius: 2px;
  text-align: center;
  color: #625d55;
  font-size: 1.6rem;
  box-shadow: 0 1px 1px 0px rgba(0, 0, 0, 0.1);
}

.cat_list.lay2 li {
  width: 48.8%;
}

.key_area {
  background: rgba(255, 255, 255, .7);
  border-radius: 2px;
  padding: 18px 16px;
}

.searchform {
  position: relative;
}

/*.searchform:before{
  content: "";
  display: block;
  width: 15px;
  height: 15px;
  background: url(../img/icon_search.png) no-repeat center;
  background-size: contain;
  position: absolute;
  top: 50%;
  margin-top: -8px;
  right: 10px;
  z-index: 1;
}*/
.searchform input[type="text"] {
  width: 100%;
  display: block;
  line-height: 1.8;
  padding: 3px 6px;
  border: 1px solid #ada8a1;
  border-radius: 3px;
  background: #fff;
  font-size: 1.6rem;
}

.searchform input[type="text"]::placeholder {
  color: #bbb;
}

.searchform input[type="submit"] {
  content: "";
  display: block;
  width: 15px;
  height: 15px;
  background: url(../img/icon_search.png) no-repeat center;
  background-size: contain;
  position: absolute;
  top: 50%;
  margin-top: -8px;
  right: 10px;
  z-index: 1;
  border: none;
}

.key_list {
  padding: 14px 4px 0;
}

.key_list li {
  display: inline-block;
  padding-bottom: 10px;
}

.key_list li a {
  font-size: 1.5rem;
  display: inline-block;
  text-decoration: underline;
  color: #218df2;
  margin-right: 8px;
}

.key_list li:nth-of-type(n+11) {
  display: none;
}


@media screen and (min-width: 900px) {
  .navcontent .subttl {
    font-size: 14px;
  }

  .cat_list li a {
    font-size: 1.4rem;
  }
}


/* --------------------------------
 * アトムナビ / foot
 * -------------------------------- */

.nav_atom_head {
  position: relative;
  border-bottom: 1px solid rgba(255, 255, 255, .3);
  padding-bottom: 7px;
}

.nav_atom_head .logo_btn {
  padding: 0;
}

.nav_atom_head .Tel {
  padding: 0px 16px;
  display: block;
}

.page_list li {
  border-bottom: 1px solid rgba(255, 255, 255, .3);
}

.page_list li a {
  font-size: 1.5rem;
  display: block;
  color: #fff;
  width: 100%;
  line-height: 54px;
  padding-left: 3px;
  position: relative;
}

.page_list li a:after {
  content: url(../img/icon_arr_w.svg);
  position: absolute;
  right: 5px;
  top: -2px;
}

.page_list li a:hover {
  background-color: #ffffff1a;
}

.subpage_list {
  padding-top: 20px;
}

.subpage_list li {
  display: inline-block;
  padding-bottom: 10px;
}

.subpage_list li a {
  font-size: 1.3rem;
  display: inline-block;
  text-decoration: underline;
  color: #5fb2ff;
  margin-right: 12px;
  position: relative;
  padding-left: 9px;
}

.subpage_list li a:before {
  content: "";
  display: block;
  position: absolute;
  width: 0;
  height: 0;
  border: 3px solid transparent;
  border-left: 4px solid #5fb2ff;
  left: 0;
  top: 50%;
  margin-top: -3px;
}

.nav_atom_pc {
  position: relative;
  overflow: hidden;
}

.footslider.slick-slider {
  width: 2205px;
  height: 245px;
  overflow: hidden;
  padding: 0;
  margin: auto;
}

/* --------------------------------
 * archive
 * -------------------------------- */
.archive_header {
  background: #fff;
  text-align: center;
  padding: 18px 0 14px;
  color: #33475e;
}

.archive_header .ttl {
  font-size: 1.8rem;
}

.archive_header .ttl span {
  color: #ff7400;
}

.archive_header .sub {
  font-size: 1.3rem;
  padding-top: 7px;
}

.archive_section {
  padding-top: 8px;
}

.pg {
  text-align: center;
  font-size: 1.2rem;
  padding: 10px 0 30px;
}


/* --------------------------------
 * top
 * -------------------------------- */

.mv {
  line-height: 0;
}

.mv img {
  width: 100%;
}

.toppage section {
  padding: 24px 4% 35px;
  background: #e6edf8;
}

.toppage section:nth-child(even) {
  background: #fff;
}

@media screen and (min-width: 900px) {
  .toppage section {
    padding: 38px 4% 66px;
  }
}

/* PR */

.atom_pr {
  padding: 24px 4% 35px;
  text-align: center;
  background: #fff !important;
}

.atom_pr .txt {
  font-size: 1.5rem;
  color: #3169a3;
  line-height: 1.3;
  margin-top: -7px;
}

@media screen and (min-width: 900px) {
  .atom_pr {
    display: none;
  }
}


/* ぼたん */

.contact_btnarea {
  display: -webkit-flex;
  /* Safari */
  display: flex;
  -webkit-justify-content: space-between;
  /* Safari */
  justify-content: space-between;
  -webkit-align-items: stretch;
  /* Safari */
  align-items: stretch;
  padding: 15px 0 20px;
  text-align: center;
}

.contact_btnarea a {
  display: block;
  line-height: 45px;
  width: 48.7%;
  background: #eee;
  border-radius: 30px;
  color: #fff;
  font-size: 1.4rem;
  background-image: linear-gradient(100deg, #3bc1e8, #548fd6);
  box-shadow: 0 3px 3px -2px rgba(0, 0, 0, 0.1);
}

@media screen and (max-width: 320px) {
  .contact_btnarea a {
    font-size: 1.25rem;
  }
}

.contact_btnarea a:before {
  content: "";
  display: inline-block;
  width: 17px;
  height: 17px;
  background: url(../img/icon_line.png) no-repeat center;
  background-size: contain;
  margin-right: 5px;
  vertical-align: text-bottom;
}

.contact_btnarea a.Tel {
  background-image: linear-gradient(100deg, #ffa200, #ff6b00);
}

.contact_btnarea a.Tel:before {
  background-image: url(../img/icon_tel.png);
}

.mobfoot_contact .contact_btnarea {
  padding: 0;
  -webkit-justify-content: flex-end;
  /* Safari */
  justify-content: flex-end;
}

.mobfoot_contact .contact_btnarea a.tel {
  width: auto;
  display: block;
  position: relative;
  line-height: 1.45;
  padding: 7px 19px 7px 36px;
  border: solid #ff9700 2px;
  font-size: 1.15rem;
  letter-spacing: -0.1px;
  bottom: 3px;
}

.mobfoot_contact .contact_btnarea a.line {
  width: 39%;
  display: block;
}

.mobfoot_contact .contact_btnarea a:before {
  position: absolute;
  top: calc(50% - 9px);
  left: 14px;
}

.mobfoot_contact .contact_btnarea a span {
  display: block;
  font-size: 1.1rem;
}

.mobfoot_contact .contact_btnarea a b {
  font-size: 1.55rem;
}

/* てんぷれ　 */
.mainttl_img {
  text-align: center;
  margin-bottom: 16px;
}

.mainttl_img+p,
.mainttl_img+p+p {
  font-size: 1.5rem;
}

.link a {
  font-size: 1.5rem;
  color: #218df2;
  text-align: center;
  display: block;
  text-decoration: underline;
  margin-top: 18px;
  position: relative;
}

.link a:after {
  content: url(../img/icon_arr_b.svg);
  margin-left: 8px;
  margin-right: -8px;
}

.linktxt {
  color: #218df2;
  text-decoration: underline;
}

/* 業務 */
.gyoumu_list+.mainttl_img {
  margin-top: 25px;
}

.gyoumu_list_item {
  margin-bottom: 10px;
}

.gyoumu_list_item a {
  display: -webkit-flex;
  /* Safari */
  display: flex;
  -webkit-justify-content: space-between;
  /* Safari */
  justify-content: space-between;
  -webkit-align-items: stretch;
  /* Safari */
  align-items: stretch;
  background: #fff;
  border-radius: 3px;
  box-shadow: 0 3px 3px -2px rgba(0, 0, 0, 0.1);
  overflow: hidden;
}

.gyoumu_list_item .img {
  width: 120px;
  background: no-repeat center;
  background-size: cover;
}

.gyoumu_list_item .tbox {
  flex: 1;
}

.gyoumu_list_item .ttl {
  font-size: 1.55rem;
  padding-left: 15px;
  font-weight: bold;
  color: #fff;
  line-height: 33px;
  background: #5590d7;
  position: relative;
  white-space: nowrap;
}

.gyoumu_list_item .ttl:after {
  content: url(../img/icon_arr_w.svg);
  position: absolute;
  right: 10px;
  top: -2px;
}


.gyoumu_list_item .txt {
  line-height: 1.3;
  font-size: 1.35rem;
  padding: 8px 8px 12px 13px;
}

.gyoumu_list_item.type1 .ttl {
  background: #2a3853;
}

.gyoumu_list_item.type3 .ttl {
  background: #677477;
  letter-spacing: -1px;
}

.gyoumu_list_item.type4 .ttl {
  background: #2a564a;
}

.gyoumu_list_item.type2 .ttl {
  background: #b7757d;
}

@media screen and (min-width: 900px) {
  .gyoumu_list {
    list-style: none;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: flex-start;
    align-items: flex-start;
    flex-wrap: wrap;
    align-items: stretch;
  }

  .gyoumu_list_item {
    margin-bottom: 10px;
    width: 48.5%;
  }

  .gyoumu_list_item .img {
    width: 80px;
  }

  .gyoumu_list_item .ttl {
    font-size: 1.45rem;
  }

  .gyoumu_list_item .ttl {
    font-size: 1.45rem;
  }

  .gyoumu_list_item a {
    height: 100%;
    box-shadow: 0 3px 2px 0px rgba(0, 0, 0, 0.1);
  }
}


/* 弁護士 */
.bengoshi_list_item {
  margin-bottom: 12px;
  position: relative;
}

.bengoshi_list_item a {
  display: block;
  margin-left: 35px;
  background: #fff4cd;
  border-radius: 3px;
  padding: 13px 8px 8px;
}

.bengoshi_list_item .img {
  width: 77px;
  height: 77px;
  display: block;
  background: no-repeat center;
  background-size: cover;
  border-radius: 50%;
  left: 0;
  top: -5px;
  position: absolute;
  border: 5px solid #fff;
}

.bengoshi_list_item .name {
  padding-left: 45px;
  color: #616060;
  font-size: 1rem;
  padding-bottom: 6px;
  font-weight: normal;
}

.bengoshi_list_item .txt {
  padding-left: 45px;
  font-size: 1.4rem;
  line-height: 1.4;
  padding-bottom: 8px;
}

.bengoshi_list_item .media {
  background: #fff;
  border-radius: 2px;
  padding: 7px 10px 8px;
  line-height: 1.4;
  font-size: 1.2rem;
}

.bengoshi_list_item .mediattl {
  font-size: 1.2rem;
  color: #b4931f;
  font-weight: normal;
  padding-bottom: 4px;
}

.bengoshi_moreimg {
  display: block;
  text-align: center;
  height: 53px;
  margin-top: 20px;
  margin-bottom: -6px;
}

.bengoshi_moreimg img {
  height: 100%;
  width: auto;
}

@media screen and (min-width: 900px) {
  .toppage .bengoshi_list_item a {

    padding: 14px 28px 20px;
  }

  .bengoshi_list_item .media {
    padding: 11px 15px 16px;
  }


}


/* 実績 */
.jisseki_area .img {
  border-radius: 3px;
  overflow: hidden;
  line-height: 0;
  text-align: center;
}

.jisseki_area .img2 {
  width: 250px;
  margin: auto;
}

.jisseki_area .txt {
  font-size: 1.5rem;
  margin: 15px 0;
}



/* 実績 */

.voice_list_item {
  padding: 20px 0 12px;
  border-bottom: 1px solid #d8d8d8;
}

.voice_list_item .txt {
  font-size: 1.1rem;
  color: #ff8701;
  position: relative;
  padding-left: 15px;
  line-height: 1;
  margin-bottom: 8px;
}

.voice_list_item .txt:before {
  content: "";
  background: url(../img/icon_voice.png) no-repeat center;
  background-size: contain;
  width: 13px;
  height: 12px;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
}

.voice_list_item img {
  width: 100%;
  height: auto;
}


/* 費用 */
.hiyou_table {
  background: #fff;
  font-size: 1.4rem;
  width: 100%;
}

.hiyou_table th,
.hiyou_table td {
  background: #fff;
  padding: 15px;
  line-height: 1.4;
  border: 1px solid #d8d8d8;
  vertical-align: middle;
  font-size: 1.4rem;
}

.hiyou_table th {
  font-weight: bold;
  line-height: 1.4;
  padding: 15px 0;
  text-align: center;
}

.hiyou_table .ttl th {
  background: #fff4cd;
  padding: 5px;
}

.hiyou_table a {
  color: #218df2;
  text-align: center;
  text-decoration: underline;
  padding: 3px 0 9px;
  display: inline-block;
}

.small {
  font-size: 80%;
}


/* map */

.accessmap_area {
  position: relative;
  padding: 20px 0 105px;
  margin-bottom: 10px;
}

.accessmap_area img {
  width: 270px;
  display: block;
  margin: auto;
}

.map_list {
  position: absolute;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: flex-start;
  align-items: flex-start;
  flex-wrap: wrap;
  width: 53%;
}

.map_list.list1 {
  bottom: 0;
  right: 0
}

.map_list.list1::before {
  content: "";
  display: block;
  width: 48%;
  height: 10px;
}

.map_list.list2 {
  left: 0;
  top: 65px;
}

.map_list li {
  width: 48%;
  padding-bottom: 7px;
}

.map_list li a {
  background: #5590d7;
  color: #fff;
  font-weight: bold;
  text-align: center;
  display: block;
  width: 100%;
  font-size: 1.6rem;
  line-height: 30px;
  border-radius: 3px;
  box-shadow: 0 2px 2px -1px rgba(0, 0, 0, 0.1);
  position: relative;
}

.map_list li a:after {
  content: url(../img/icon_arr_w.svg);
  position: absolute;
  right: 7px;
  top: -2px;
}

.map_list .kansai a {
  background: #f88426;
}

.map_list .tyubu a {
  background: #77c135;
}

.map_list .kyusyu a {
  background: #d75583;
}

.map_list .kyusyu {
  position: absolute;
  left: 0;
  top: 230px;
}

@media screen and (min-width: 900px) {
  .map_list {
    width: 50%;
  }

  .accessmap_area img {
    width: 360px;
  }

  .map_list li {
    width: 48.5%;
    padding-bottom: 11px;
  }

  .map_list li a {
    line-height: 40px;
  }

  .map_list.list2 {
    top: 47px;
  }

  .accessmap_area {
    padding: 45px 0 165px;
  }

  .map_list .kyusyu {
    top: 360px;
  }
}

.know_img {
  margin-top: 15px;
  border-radius: 3px;
  overflow: hidden;
  text-align: center;
  line-height: 0;
}

.newttl {
  color: #001e3e;
  display: inline-block;
  margin: 20px 0 0 2px;
  position: relative;
  font-size: 1.5rem;
}

/*PC トップページ　1カラム*/
@media screen and (min-width: 900px) {
  .frame.toppage {
    max-width: 100%;
    width: 100%;
    margin-bottom: 0;
  }

  .toppage .inner{
    width: 1050px;
    margin: 0 auto;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    justify-content: space-between;
  }

  footer .inner {
    width: 1050px;
    margin: 0 auto;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    justify-content: center;
    gap: 0 24px;
  }

  .toppage .main {
    margin-right: 0;
  }
}

/*PC-mv*/
@media screen and (min-width: 900px) {
  .mv {
    background-color: #e6edf8;
    padding: 22px 0 26px;
  }

  .mv_tel_bnr {
    position: relative;
  }

  .muryousoudan_btn {
    position: absolute;
    top: 258px;
    left: 45px;
    width: 240px;
    height: 55px;
    background-color: #218df2;
    text-align: center;
    display: block;
    color: #fff;
    font-weight: bold;
    line-height: 55px;
    border-radius: 4px;
    display: block;
  }

  .muryousoudan_btn:after {
    content: "";
    position: absolute;
    right: 10px;
    height: 55px;
    width: 5px;
    background: url(../img/icon_arr_w.svg) no-repeat center;
    background-size: contain;
  }


  /*PC-mv サイズ*/
  .mv_slider {
    width: 709px;
  }

  /* 写真 */
  .mv_photo {
    width: 550px;
    height: 345px;
    float: right;
    position: relative;
  }

  .mv_photo a {
    display: block;
    width: 100%;
    height: 100%;
    transition: .3s ease-in-out;
    cursor: pointer;
  }

  .mv_photo .photo_item {
    position: absolute;
    background: #fff;
    border-radius: 3px;
    height: 100%;
    text-align: center;
    width: 100%;
    overflow: hidden;
    box-shadow: 0 4px 4px -5px rgba(0, 0, 0, 0.04);
  }

  .mv_photo .photo_item .img {
    height: 242px;
    background: #eee no-repeat center;
    background-size: cover;
  }

  .mv_photo .photo_item .ttl {
    font-size: 20px;
    font-weight: bold;
    color: #fff;
    line-height: 40px;
    background: #bfb581;
    white-space: nowrap;
    letter-spacing: 0.5px;
    position: relative;
  }

  .mv_photo .photo_item .ttl:after {
    content: url(../img/icon_arr_w.svg);
    position: absolute;
    right: 20px;
    top: -5px;
    display: block;
  }

  .mv_photo .photo_item .txt {
    font-size: 15px;
    line-height: 1.5;
    padding-top: 9px;
  }

  /* アイコン */
  .mv_thum {
    width: 149px;
    float: left;
    padding: 4px 0;
  }

  .mv_thum .thum_btn {
    background: #0f4b89;
    border-radius: 2px;
    padding: 11px 13px;
    height: 62px;
    position: relative;
    transition: .3s ease-in-out;
    cursor: pointer;
    display: flex;
    align-items: center;
  }

  .mv_thum .thum_btn+.thum_btn {
    margin-top: 7px;
  }

  .mv_thum .thum_btn .txt {
    color: #fff;
    font-size: 16px;
    transition: .3s ease-in-out;
  }

  .mv_thum .thum_btn span {
    font-size: 1px;
    color: #7f9ec0;
    display: block;
    line-height: 1;
    font-family: 'Comfortaa', cursive;
    letter-spacing: 0.5px;
    transition: .3s ease-in-out;
  }


  .mv_thum .thum_btn.current {
    background: #fff;
  }

  .mv_thum .thum_btn.current .txt {
    color: #0f4b89;
  }

  .mv_thum .thum_btn.current span {
    color: #bababa;
  }

  .mv_thum .thum_btn.current:before {
    content: "";
    display: inline-block;
    border: 5px solid transparent;
    border-left-color: #fff;
    left: 100%;
    top: 50%;
    margin-top: -5px;
    position: absolute;
  }

  .mv_tel_bnr {
    width: 330px;
  }

  h2.mainttl_img {
    padding: 18px 0 30px;
    margin-bottom: 0;
  }

  h2.mainttl_img img {
    height: 24px;
  }
}

/*PC-atom_pr*/
@media screen and (min-width: 900px) {
  .toppage section.top_atom_pr {
    padding: 50px 0 70px;
  }

  .top_atom_pr article {
    width: 312px;
    position: relative;
  }

  .pr_image iframe {
    height: 177px;
  }

  .pr_image img {
    border-radius: 4px;
  }

  img.deco {
    position: absolute;
    width: 71px;
    top: -6px;
    left: 12px;
  }

  .top_atom_pr h2.mainttl_img {
    padding: 18px 0 14px;
    margin-bottom: 0;
  }

  .top_atom_pr h2.mainttl_img img {
    height: 19px;
  }

  .top_atom_pr .txt {
    font-size: 16px;
    padding: 0 15px;
  }
}

/*PC-gyoumu*/
@media screen and (min-width: 900px) {
  .toppage .gyoumu_list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    justify-content: space-between;
    width: 1050px;
  }

  .toppage .gyoumu_list_item {
    width: 241px;
    margin-top: 10px;
  }

  .toppage .gyoumu_list_item a {
    display: block;
  }

  .toppage .gyoumu_list_item .img {
    height: 126px;
    width: auto;
  }

  .toppage .gyoumu_list_item .ttl {
    text-align: center;
    padding-left: 0;
  }

  .toppage .gyoumu_list_item .ttl:after {
    right: 25px;
  }

  .toppage .customer {
    padding: 0 137px;
  }


  /*PC-bengoshi_list*/
  .toppage .bengoshi_list.inner {
    margin-top: 20px;
  }

  .toppage .bengoshi_list_item {
    width: 32%;
  }

  .toppage .bengoshi_list_item a {
    width: 100%;
    padding: 10px 20px 16px;
    margin: 0;
    height: 100%;
  }

  .toppage .bengoshi_list_item .img {
    margin: 10px;
    width: 64px;
    height: 64px;
    top: -26px;
  }

  .bengoshi_list_item .name {
    padding: 0px 0 10px 84px;
  }

  .bengoshi_list_item .name span {
    font-size: 17px;
    font-weight: bold;
    line-height: 1.8;
    padding-right: 3px;
  }

  .bengoshi_list_item .txt {
    padding: 7px 0 12px;
  }


  /*PC-footer*/

  .nav_atom {
    width: 1050px;
    margin: 0 auto;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    justify-content: space-between;
    padding: 30px 0 40px;
  }

  .nav_atom div {
    margin-right: 50px;
  }

  .nav_atom div:last-child {
    margin-right: 0;
  }

  .nav_atom h3 {
    color: #fff;
    line-height: 40px;
    font-size: 15px;
    font-weight: bold;
    border-bottom: solid 1px #8394a8;
    padding-top: 10px;
    margin-bottom: 15px;
  }

  .nav_atom h3 a {
    color: #fff;
  }

  .nav_atom li a {
    color: #fff;
    line-height: 27px;
    font-size: 14px;
  }

  .ft1 li.mini {
    padding-left: 15px;
    margin-top: 6px;
  }

  .ft1 li:not(.mini)+li.mini {
    margin-top: 10px;
  }

  .ft1 li a {
    line-height: 36px;
    font-size: 15px;
    font-weight: bold;
  }

  .ft1 li.mini a {
    line-height: 20px;
    font-size: 12px;
    font-weight: normal;
  }

  .ft1 li:not(.mini) a:before,
  .nav_atom h3:before {
    content: "";
    display: inline-block;
    border: 5px solid transparent;
    border-left-color: #e6edf85e;
    right: -16px;
    top: calc(50% - 2px);
    padding-right: 5px;
  }

  .ft3 .clm2 {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    justify-content: flex-start;
    margin-right: 0;
  }

  .clm2 ul {
    margin-right: 30px;
  }

  .ft2,
  .ft3 {
    font-weight: 100;
  }

  /*PC-hover*/
  a:hover {
    opacity: 0.8;
  }
}

/* --------------------------------
 * 固定ページ h1〜
 * -------------------------------- */

.bace_frame {
  padding: 24px 4% 35px;
}

@media screen and (min-width: 900px) {
  .bace_frame {
    padding: 40px 6% 60px;
  }

  .page_content+.bace_frame:not(.atom_foot) {
    padding-top: 0;
  }
}


/* アイキャッチ */
.page_head_icimg {
  background: no-repeat center;
  background-size: cover;
  width: 100%;
  height: 160px;
}


/* 枠 */
.page_content {
  background: #fff;
  padding: 0 3.5% 50px;
}

@media screen and (min-width: 900px) {
  .page_content {
    padding: 0 5% 50px;
  }
}


/* タイトル */
.page_content .pagettl,
.page_content h1 {
  font-size: 1.9rem;
  line-height: 1.5;
  border-bottom: 1px solid #ccc;
  padding: 30px 0 15px;
  margin-bottom: 22px;
}

@media screen and (min-width: 900px) {
  .page_content .pagettl,
  .page_content h1 {
    font-size: 2.1rem;
  }
}

/* テンプレ */
.page_content .pagettl+h2 {
  margin-top: 0;
}

.page_content h2 {
  margin-top: 50px;
  font-size: 1.9rem;
  line-height: 1.5;
  background: #e6edf8;
  padding: 12px 12px 12px 18px;
  position: relative;
  margin-bottom: 18px;
}

.page_content h2:before {
  content: "";
  width: 5px;
  display: block;
  position: absolute;
  height: 100%;
  left: 0;
  top: 0;
  background: #0f4b89;
  border-radius: 2.5px;
}

@media screen and (min-width: 900px) {
  .page_content h2 {
    margin-top: 40px;
    margin-bottom: 24px;
  }
}
.title_line{
  font-size: 17px;
  line-height: 1.4;
  border-bottom: 3px solid #ecedee;;
  margin: 30px 0 18px;
  display: block;
}
.title_line>span {
  display: inline-block;
    padding-bottom: 8px;
    padding-right: 10px;
    position: relative;
}
.title_line > span:before {
  content: "";
  display: inline-block;
  width: 70px;
  position: absolute;
  top: 100%;
  left: 0;
  background: #5892D4;
  height: 3px;
}
@media screen and (min-width: 900px) {
  .title_line{
    font-size: 18px;
    margin: 50px 0 25px;
  }
  .title_line > span:before {
    width: 100%;
  }
}

.access h3,
.page_content:not(.reset) h3 {
  margin-top: 45px;
  font-size: 1.7rem;
  line-height: 1.6;
  position: relative;
  padding: 10px 10px 10px 18px;
  margin-bottom: 18px;
}

.access h3:before,
.page_content:not(.reset) h3:before {
  content: "";
  width: 5px;
  display: block;
  position: absolute;
  height: 100%;
  left: 0;
  top: 0;
  background: #5590d7;
  border-radius: 2.5px;
}

.page_content:not(.reset) h4 {
  font-size: 1.65rem;
  margin-bottom: 15px;
  margin-top: 40px;
  padding-left: 18px;
  position: relative;
}

.page_content:not(.reset) h4:before {
  content: "";
  display: block;
  width: 11px;
  height: 11px;
  border-radius: 50%;
  background: #bbd2ef;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  position: absolute;
}

.page_content p {
  font-size: 1.6rem;
  line-height: 1.8;
}

.page_content p+p {
  margin-top: 12px;
}

.page_content p img {
  margin-top: 8px;
}

.page_content:not(.reset) table {
  border-top: 1px solid #ccc;
  border-left: 1px solid #ccc;
  width: 100%;
  margin-bottom: 20px;
}

.page_content:not(.reset) table th,
.page_content:not(.reset) table td {
  padding: 10px 12px;
  font-size: 1.5rem;
  border-bottom: 1px solid #ccc;
  border-right: 1px solid #ccc;
  line-height: 1.3;
}

.page_content:not(.reset) table th {
  font-weight: bold;
  background: #fff6d7;
}

.page_content:not(.reset) table .yellow {
  background: #F5F5F5;
}

.page_content:not(.reset) table .w325 {
  width: 50%;
}

.page_content:not(.reset) ul {
  margin-bottom: 15px;
}

.page_content:not(.reset) li {
  font-size: 1.6rem;
  line-height: 1.4;
  position: relative;
  padding-left: 12px;
  margin-top: 10px;
}

.page_content:not(.reset) li:before {
  content: "";
  display: block;
  position: absolute;
  width: 0;
  height: 0;
  border: 4px solid transparent;
  border-left: 7px solid #5490d8;
  left: 0;
  top: 6px;
}

.page_content:not(.reset) table li {
  font-size: 1.5rem;
}


.page_content .red,
.page_content strong {
  color: #ea5a00;
  font-weight: 700;
}

.page_content .red a,
.page_content strong a {
  color: #ea5a00;
  text-decoration: underline;
}

.page_content .font90 {
  font-size: 1.2rem !important;
}



.page_content dl {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: flex-start;
  align-items: flex-start;
  flex-wrap: wrap;
}

.page_content dt {
  text-align: center;
  font-weight: bold;
  font-size: 1.4rem;
  background: #5490d8;
  color: #fff;
  line-height: 2;
  white-space: nowrap;
  border-radius: 3px;
  width: 25%;
  position: relative;
}

.page_content dt:before {
  content: "↓";
  display: block;
  position: absolute;
  bottom: -30px;
  left: 50%;
  margin-left: -6px;
  color: #5490d8;
  font-weight: bold;
}

.page_content dd {
  width: 75%;
  padding-left: 15px;
  margin-bottom: 20px;
  font-size: 1.5rem;
  line-height: 1.5;
}

.page .hosoku{
	margin: 12px 0 15px;
	font-size: 13px;
	font-weight: 400;
	line-height: 1.5;
}

.plan_img {
  float: right;
  padding: 0 0px 15px 20px;
  max-width: 48%;
}

.plan_img img {
  height: auto;
  border-radius: 6px;
}

/*defenseシリーズ*/
p.ir {
  text-align: right;
  font-size: 1.1rem;
}

/*qaシリーズ*/
.qa h4 {
  line-height: 2.4rem;
  letter-spacing: 0px;
}

.qa h5 {
  margin: 20px 0 15px;
}

.qa h4+h5 {
  margin-top: 30px;
}

.qa ul {
  background-color: #e6edf8;
  padding: 15px 25px;
}

.keihoukaisei th,
.keihoukaisei td {
  vertical-align: middle;
}

/* --------------------------------
 * 弁護士費用ページ
 * -------------------------------- */

ol {
  list-style: none;
}

.hiyou table {
  margin-bottom: 12px;
}

.hiyou .clmFee {
  background-color: #e9eff3;
  padding: 14px;
  list-style: none;
  margin: 16px 0 10px;
}

.hiyou .clmFee h4 {
  padding-left: 0;
  margin-top: 0;
  font-size: 1.7rem;
  margin-bottom: 12px;
  padding-bottom: 12px;
  border-bottom: 1px dotted #ccc;
  position: relative;
}

.hiyou .clmFee h4:before {
  display: none;
}

.hiyou .clmFee2+.clmFee2 {
  margin-top: 30px;
  border-top: 1px solid #ddd;
}

.hiyou .clmFee+p {
  font-size: 1.2rem;
}

.hiyou .clmFee2 p {
  padding-top: 14px;
}

.hiyou .clmFee2 h4 {
  font-size: 1.7rem;
  line-height: 1.4;
  position: relative;
  padding: 8px 0 8px 18px;
  margin-bottom: 18px;
}

.hiyou .clmFee2 h4:before {
  content: "";
  width: 5px;
  display: block;
  position: absolute;
  height: 100%;
  left: 0;
  top: 0;
  background: #5590d7;
  border-radius: 2.5px;
}

.hiyou .tgr {
  background: #F5F5F5;
  border: 1px solid #ccc;
  border-bottom: 2px solid #ccc !important;
  border-left: 5px solid #ccc;
  padding: 5px 30px 5px 10px !important;
  position: relative;
  z-index: 3;
  display: block;
  height: auto;
  cursor: pointer;
  color: #333;
  line-height: 1.5;
  font-weight: normal !important;
  margin-top: 12px !important;
}

.hiyou .tgr:before {
  display: none !important;
}

.hiyou .tgr:after,
.tgr:checked+.tgr:after {
  position: absolute;
  top: 9px;
  right: 10px;
  color: #FFF;
  font: 10px Typicons;
  content: "▼";
  -moz-transition: .3s;
  -webkit-transition: .3s;
  -o-transition: .3s;
  -ms-transition: .3s;
  transition: .3s;
  color: #B2B2B2;
}

.hiyou .acc {
  padding-top: 12px;
}

.fee p:empty {
  display: none;
}

.page_content.hiyou ol li:before {
  content: counter(li) "";
  counter-increment: li;
  position: absolute;
  left: -20px;
  top: 0;
  width: 1.6em;
  height: 1.6em;
  background: #202437;
  border: none;
  border-radius: 50%;
  color: #fff;
  line-height: 1.6em;
  text-align: center;
  font-size: 0.8em;
}

.fee-case-box {
  padding: 30px 5%;
  border: 2px #AFAFAF dotted;
  border-radius: 5px;
  margin: 15px 0;
}

.fee-case-box>div>*:first-child {
  margin-top: 0 !important;
}

.hiyou table td:first-child {
  background-color: #f9f9f9;
}

/* --------------------------------
 * 弁護士アクセス一覧ページ
 * -------------------------------- */

.mokuji {
  background: #f7f7f7;
  padding: 18px 18px 10px;
}

.mokuji ul {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: flex-start;
  align-items: flex-start;
  flex-wrap: wrap;
}

.mokuji li {
  width: 50%;
}

.mokuji a {
  color: #218df2;
  text-decoration: underline;
  font-size: 1.5rem;
  display: block;
  padding-bottom: 13px;
}


.shibu_head {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: flex-start;
  align-items: flex-start;
}

.shibu_head .img {
  width: 150px;
  height: 100px;
  overflow: hidden;
}

.shibu_head .img img {
  width: 100%;
  height: auto;
}

.shibu_head .txt {
  flex: 1;
  -webkit-flex: 1;
  font-size: 1.5rem;
  color: #555;
  padding-left: 13px;
}

.shibu_head .btn {
  width: 100%;
  line-height: 44px;
  margin-top: 10px;
}

@media screen and (min-width: 900px) {
  .shibu_head .img {
    width: 250px;
    height: 162px;
  }

  .shibu_head .txt {
    padding-left: 25px;
    text-align: center;
  }

  .shibu_head .btn {
    margin-top: 20px;
    width: 270px;
  }
}


.lawyers_list_ttl {
  font-size: 1.4rem;
  margin-bottom: 18px;
  position: relative;
  margin-top: 15px;
}

.lawyers_list_ttl:before {
  width: 100%;
  height: 1px;
  background: #ddd;
  position: absolute;
  content: "";
  display: block;
  left: 0;
  top: 50%;
}

.lawyers_list_ttl span {
  background: #fff;
  padding-right: 10px;
  z-index: 2;
  position: relative;
}

@media screen and (min-width: 900px) {
  .lawyers_list_ttl {
    margin-top: 28px;
    font-size: 1.6rem;
    margin-bottom: 22px;
  }
}


/* 弁護士一覧 */
.sibubengoshi_list {
  margin-bottom: 25px;
}

.sibubengoshi_list+.sibubengoshi_list {
  border-top: 1px solid #ddd;
  padding-top: 22px;
}

.sibubengoshi_list>a {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: flex-start;
  align-items: flex-start;
}

/* 弁護士一覧 head */
.sibubengoshi_list .img {
  display: block;
  width: 77px;
  height: 77px;
  border-radius: 50%;
  background: no-repeat center -10px;
  background-size: cover;
}

.sibubengoshi_list .txt {
  flex: 1;
  -webkit-flex: 1;
  padding-left: 13px;
  padding-top: 3px;
}

.sibubengoshi_list .ttl {
  font-size: 1.6rem;
  letter-spacing: 1px;
}

.sibubengoshi_list .ttl span {
  font-size: 1.1rem;
  color: #777;
  display: inline-block;
  vertical-align: middle;
  font-weight: normal;
  padding-left: 7px;
}

.sibubengoshi_list .message {
  font-size: 1.5rem;
  line-height: 1.3;
  padding-top: 7px;
  display: block;
}


/* 弁護士一覧 プロフィール詳細 */
.sibubengoshi_list .profile {
  padding: 15px 0 6px;
}

.sibubengoshi_list .profile li {
  position: relative;
  font-size: 1.3rem;
  padding-left: 90px;
  margin-bottom: 8px;
  display: block;
  line-height: 1.4;
}

.sibubengoshi_list .profile span {
  color: #fff;
  background: #82bd5e;
  display: block;
  position: absolute;
  top: 0;
  left: 8px;
  width: 68px;
  text-align: center;
  line-height: 20px;
  border-radius: 3px;
}

/* 弁護士一覧 写真 */
.sibubengoshi_list .photolist {
  padding-left: 90px;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: flex-start;
  align-items: flex-start;
}

.sibubengoshi_list .photolist img {
  width: 49%;
  display: inline-block;
  line-height: 0;
  border: 1px solid #dfdfdf;
}

/* リンク */
.sibubengoshi_list .link a {
  text-align: right;
  margin-top: 14px;
}


@media screen and (min-width: 900px) {
  .shibu_head {
    padding-top: 10px;
  }

  .sibubengoshi_list .img {
    width: 120px;
    height: 120px;
  }

  .sibubengoshi_list .txt {
    padding-left: 24px;
    padding-top: 20px;
  }

  .sibubengoshi_list .profile {
    padding-top: 21px;
  }

  .sibubengoshi_list .message {
    line-height: 1.6;
    padding-top: 10px;
  }

  .sibubengoshi_list .profile li {
    font-size: 1.4rem;
    line-height: 1.6;
    margin-bottom: 9px;
    padding-left: 140px;
  }

  .sibubengoshi_list .profile span {
    left: 16px;
    width: 90px;
    line-height: 22px;
    border-radius: 18px;
    font-size: 12px;
  }

  .sibubengoshi_list .photolist {
    padding-left: 140px;
  }

  .sibubengoshi_list+.sibubengoshi_list {
    padding-top: 33px;
  }

}



/* --------------------------------
 * アクセス詳細ページ
 * -------------------------------- */

.sibubengoshi_list.accesspage .ttl {
  color: #218df2;
  text-decoration: underline;
}

.sl_img {
  height: 200px;
  width: 100%;
  display: block;
  background: no-repeat center;
  background-size: cover;
}

.access .thumbnail img{
  width: 100%;
}
.access .slick-arrow {
  display: none !important;
}

@media screen and (min-width: 900px) {
  .access .slick-slider {
    width: 674.25px;
    padding-top: 18px;
  }

  .sl_img {
    height: 330px;
    width: 80%;
    margin: auto;
  }
}


.access h6 {
  font-size: 1.65rem;
  margin-bottom: 6px;
  margin-top: 20px;
  padding-left: 18px;
  position: relative;
}

.access h6:before {
  content: "";
  display: block;
  width: 11px;
  height: 11px;
  border-radius: 50%;
  background: #bbd2ef;
  left: 0;
  top: 50%;
  margin-top: -5px;
  position: absolute;
}

.access .p {
  font-size: 1.6rem;
  line-height: 1.8;
}

.access h3 {
  margin-top: 30px;
}






/* --------------------------------
 * 弁護士紹介
 * -------------------------------- */

.bengoshi_head {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: center;
  align-items: center;
}

.bengoshi_head .img {
  width: 34%;
  line-height: 0;
  overflow: hidden;
  border-radius: 3px;
  max-height: 160px;
}

.bengoshi_head .catch {
  font-weight: bold;
  line-height: 1.6;
  font-size: 1.6rem;
  flex: 1;
  -webkit-flex: 1;
  padding-left: 16px;
  letter-spacing: -0.2px;
  color: #0e74b2;
}

.bengoshi table {
  margin-top: 5px;
  width: 100%;
}

.bengoshi table th {
  padding: 12px 10px;
  font-size: 1.3rem;
  line-height: 1.4;
  width: 30%;
  text-align: left;
  border-bottom: 1px solid #ddd;
}

.bengoshi table td {
  padding: 12px 10px;
  line-height: 1.4;
  font-size: 1.4rem;
  border-bottom: 1px solid #ddd;
}


.bengoshi img+p {
  padding-top: 12px;
}

.law_message img {
  display: block;
  margin: 0 auto 30px;
}

.bengoshi .voice_item {
  margin-top: 50px;
}

@media screen and (min-width: 900px) {
  .bengoshi_head {
    margin-bottom: 15px;
  }

  .bengoshi_head .img {
    max-height: 280px;
  }

  .bengoshi_head .catch {
    font-size: 2.0rem;
  }

  section.bengoshi h2+img {
    float: right;
    width: 45%;
    margin: 0 0 20px 20px;
  }
}


/* --------------------------------
 * 解決実績
 * -------------------------------- */


.jisseki_catttl {
  padding-bottom: 10px;
  color: #0e4b89;
  font-size: 1.6rem;
  text-align: center;
}

.jisseki_catttl .icon {
  display: none;
}

.jisseki_list+.jisseki_catttl {

  padding-top: 40px;
}

.jisseki_list a {
  display: block;
  margin-top: 9px;
  border: 1px solid #ddd;
  border-radius: 3px;
  padding: 10px 25px 7px 12px;
  background: #fff;
  box-shadow: 0 4px 4px -2px rgba(0, 0, 0, 0.1);
  position: relative;
}

.jisseki_list a:before {
  content: url(../img/icon_arr_b.svg);
  position: absolute;
  right: 10px;
  top: 50%;
  margin-top: -10px;
}

.jisseki_list .icon {
  color: #9f9f9f;
  display: inline-block;
  line-height: 1;
  font-size: 1.2rem;
}

.jisseki_list .zaimei {
  background: #5590d7;
  color: #fff;
  display: inline-block;
  line-height: 1.1;
  font-weight: bold;
  font-size: 1.15rem;
  padding: 3px 5px;
  border-radius: 3px;
}

.jisseki_list .ttl {
  font-size: 1.5rem;
  line-height: 1.3;
  padding-bottom: 5px;
  font-weight: normal;
  padding-top: 8px;
}


.jisseki_voice_ttl {
  padding: 12px 4%;
  line-height: 1.5;
  font-size: 1.6rem;
  font-weight: bold;
  color: #0e4b89;
  background: url(../img/icon_woman.png) #f3f6f8 no-repeat right 5px bottom;
  background-size: 65px;
  padding-right: 70px;
  border-radius: 3px;
  margin-bottom: -15px;
}

.jisseki_voice_ttl.man {
  background-image: url(../img/icon_man.png);
}




@media screen and (min-width: 900px) {
  .jisseki_list {
    max-width: 90%;
    margin: auto;
  }

  .know .jisseki_list {
    max-width: 100%;
  }

  .jisseki_list a {
    margin-top: 12px;
    padding: 14px 20px;
  }

  .jisseki_catttl {
    font-size: 1.9rem;
    padding: 0;
    max-width: 90%;
    margin: auto;
    text-align: left;
  }

  .jisseki_catttl .icon {
    width: 40px;
    height: 40px;
    display: inline-block;
    vertical-align: middle;
    margin-left: -3px;
    margin-right: 5px;
  }


  .jisseki_list+.jisseki_catttl {
    padding-top: 60px;
  }

  .jisseki_list .ttl {
    font-weight: bold;
  }

  .jisseki_list .zaimei {
    font-size: 1rem;
  }


  .jisseki_voice_ttl {

    padding: 20px 5%;
    margin-top: 30px;

    line-height: 1.6;
    font-size: 1.8rem;
    background-position: 5px bottom;
    padding-right: 5%;
    background-size: 90px;
    padding-left: 105px;
    border-radius: 10px;
    min-height: 100px;
  }

}


/* --------------------------------
 * 事務所概要
 * -------------------------------- */


.about .img_okano {
  float: right;
  padding: 2px 0 14px 14px;
}

.about .img_okano_name {
  display: block;
  margin: 15px 0 0 auto;
}

.about .w100 {
  width: 85px;
}

.about th {
  font-size: 1.3rem !important;
  white-space: nowrap;
}

.about .linktxt {
  padding-top: 4px;
  display: block;
}

.about td strong {
  padding-bottom: 4px;
  display: block;
}

.about td strong span {
  font-weight: normal;
  font-size: 1.2rem;
  display: block;
  padding-top: 2px;
}

/* --------------------------------
 * お客様の声
 * -------------------------------- */
/* 
/*実績(お手紙）*/
.otegami_tocArea{
	margin-bottom: 40px;
	font-size: 0;
}
.otegami_tocArea .ttl{
	font-size: 1.5rem;
	font-weight: 600;
	color: #011E3E;
	line-height: 1;
	margin: 0 0 8px;
}
.otegami_toc_button{
	font-size: 1.5rem;
    font-weight: 600;
    line-height: 1.2;
    color: #011E3E;
    width: calc(50% - 8px);
    display: inline-block;
    border-radius: 3px;
    background: #E6EDF8;
    padding: 14px 0 14px 10px;
    margin-bottom: 7px;
    position: relative;
    transition: 0.2s;
}
.otegami_toc_button:hover{
	opacity: 0.8;
}
@media screen and (max-width: 959px) {
	.otegami_toc_button:nth-of-type(even){
		margin-left: 8px;
	}
}
.otegami_toc_button::after{
	font-family: "dashicons";
    content: "\f347";
    font-size: 15px;
    position: absolute;
    right: 8px;
    top: 50%;
    transform: translateY(-50%);
}
.otegami_contentArea + .otegami_contentArea{
	margin-top: 60px;
}
.archive h2.otegami_title{
	font-size: 1.7rem;
	font-weight: 600;
	line-height: 1;
	background: none;
	color: #011E3E;
	border-bottom: 2px solid #011E3E;
	padding: 0 0 14px 35px;
	margin: 0 0 30px;
	position: relative;
}
.archive h2.otegami_title::before{
	content: "";
	width: 26px;
	display: inline-block;
	position: absolute;
	top: -2px;
	left: 0;
	height: 100%;
	background-color: transparent;
	background-repeat: no-repeat;
	background-size: contain;
}
.archive h2.otegami_title.chikan-icon::before{
	width: 20px;
	top: -3px;
	background-image: url(/wp-content/uploads/chikan-icon.svg);
}
.archive h2.otegami_title.settou-icon::before{
	width: 25px;
	background-image: url(/wp-content/uploads/settou-icon.svg);
}
.archive h2.otegami_title.bouryoku-icon::before{
	width: 25px;
	background-image: url(/wp-content/uploads/bouryoku-icon.svg);
}
.archive h2.otegami_title.sonota-icon::before{
	width: 27px;
	background-image: url(/wp-content/uploads/sonota-icon.svg);
}
.voice_item + .voice_item{
	margin-top: 40px;
}
.voice_item .ttl{
	padding-bottom: 14px;
}
.voice_item .ttl span.num{
	font-size: 10px;
	font-weight: 600;
    color: #124D87;
    display: inline-block;   
    margin: 0 0 10px;
}
.voice_item .ttl span.ruikei{
	font-size: 12px;
	font-weight: 600;
	color: #124D87;
	display: inline-block;
}
.voice_item .ttl span.ruikei::before{
	content: " | ";
}
.voice_item .otegami_tag span{
	font-size: 15px;
	font-weight: 600;
	color: #124D87;
	line-height: 1;
	display: inline-block;
	padding: 9px 11px;
	background: #E6EDF8;
	border-radius: 30px;
}
.voice_item .otegami_tag span + span{
	margin-left: 5px;
}
.archive .voice_item h3{
	color: #5590D7;
    font-weight: 600;
    line-height: 1.3;
	font-size: 18px;
	margin: 12px 0 0;
	padding: 0;
}
.archive .voice_item h3::before{
	content: none;
}
.voice_item .voicephoto{
	background: #F0F0F0;
	padding: 15px 20px;
	margin-bottom: 20px;
}
.voice_item .messagetext{
	position: relative;
    letter-spacing: -0.3px;
    margin-bottom: 20px;
}
.voice_item .messagetext .more_txt{
	display: block;
	font-size: 15px;
    height: 78px;
    overflow: hidden;
    line-height: 1.7;
}
.voice_item .messagetext .more_txt b{
    background: rgb(255,247,153);
    background: -moz-linear-gradient(0deg, rgba(255,247,153,1) 0%, rgba(255,247,153,1) 85%, rgba(255,255,255,1) 85%, rgba(255,255,255,1) 100%);
    background: -webkit-linear-gradient(0deg, rgba(255,247,153,1) 0%, rgba(255,247,153,1) 85%, rgba(255,255,255,1) 85%, rgba(255,255,255,1) 100%);
    background: linear-gradient(0deg, rgba(255,247,153,1) 0%, rgba(255,247,153,1) 85%, rgba(255,255,255,1) 85%, rgba(255,255,255,1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#fff799",endColorstr="#ffffff",GradientType=1);	
}
.voice_item .messagetext .tsudukibtn_txt{
	display: inline-block;
	font-size: 16px;
	line-height: 1;
    color: #2990EF;
    padding: 0 0 0 10px;
    text-decoration: underline;
    position: absolute;
    bottom: 8px;
    right: 0;
    background: #fff;
    letter-spacing: 0.03em;
    z-index: 1;
    cursor: pointer;
}
.voice_item .messagetext.short .more_txt{
	height: auto;
}
.voice_item .messagetext .tsudukibtn_txt.open+.more_txt{
	height: auto;
    overflow: visible;
}
.voice_item .messagetext .tsudukibtn_txt.open {
	display: none;
}

@media screen and (min-width: 960px) {
	.otegami_tocArea .ttl{
		font-size: 17px;
		margin-bottom: 15px;
	}
	.otegami_toc_button{
		text-align: center;
		padding: 17px 0 25px;
		width: calc((100% - 24px) /4);
	}
	.otegami_toc_button + .otegami_toc_button{
		margin-left: 8px;
	}
	.otegami_toc_button::after{
		bottom: 15px;
		top: auto;
		right: auto;
		bottom: 6px;
		left: 50%;
		transform: translateX(-50%);
	}
	.voice_item + .voice_item{
		margin-top: 50px;
	}
	.voice_item .ttl span.num{
		font-size: 1.2rem;
		display: inline-block;
	}
	.voice_item .otegami_tag{
		display: inline-block;
		margin-left: 3px;
	}
	.page .main_section .voice_item h3{
		font-size: 19px;
		line-height: 1.5;
	}
	.voice_item .voicephoto{
		padding: 25px 0;
		margin-bottom: 20px;
		text-align: center;
	}
	.voice_item .voicephoto img{
		max-width: 450px;
	}
	.voice_item .messagetext .more_txt{
		font-size: 16px;
	}
	.voice_item .messagetext .tsudukibtn_txt{
		bottom: 3px;
	}
	.voice_item .messagetext.short .more_txt{
		height: auto;
	}
	.voice_item .messagetext.short .tsudukibtn_txt{
		display: none;
	}
}
/*実績(口コミ）*/
.tab_wrap {
  display: flex;
  flex-wrap: wrap;
  margin-top: 80px;
}
.tab_switch {
  display: none;
}
@media screen and (max-width: 959px) {
  .tab_label:first-of-type{
    margin-left: 0;
  }
}
.tab_label{
  font-size: 12px;
  text-align: center;
  line-height: 1.4;
  color: #A8A8A8;
  width: calc((100% - 5px) /2);
  background: #EAEAEA;
  border-radius: 5px 5px 0 0;
  padding: 15px 0 10px;
  order: -1;
  margin-left: 5px;
  position: relative;
}
.tab_label b{
  font-size: 17px;
  font-weight: 700;
}
.tab_label .number{  
  display: flex;
  align-items: center;
  position: absolute;
  top: -60px;
  left: 0;
  font-size: 11px;
  color: #000;
}
.tab_label .number b{
  font-size: 13px;
}
.tab_label .number::before{
  content: "";
  display: block;
  width: 66px;
  height: 70px;
  background-repeat: no-repeat;
  background-size: contain;
  margin-right: 5px;
}
.tab_label.google .number::before{
  background-image: url(/wp-content/uploads/review_google_off_sp.png);
}
.tab_label.facebook .number::before{
  background-image: url(/wp-content/uploads/review_facebook_off_sp.png);
}
.tab_wrap .tab_content {
  display: none;
  width: 100%;
  padding: 10px 13px;
}
.tab_content_detail{
  background: #fff;
  padding: 27px 12px;
  border-radius: 5px;
}
.bg_google{
  background: #F47222;
}
.bg_facebook{
  background: #427BEA;
}
@media screen and (min-width: 960px) {
  .tab_wrap{
    margin-top: 40px;
  }
  .tab_label{
    font-size: 13px;
    text-align: left;
    width: auto;
    max-width: 270px;
    height: 90px;
    padding: 0;
    margin-left: calc(48px + 7px);
    flex: 1 1 40%;
    border-radius: 5px;
    cursor: pointer;
    transition: 0.2s;
  }
  .tab_label:first-of-type{
    margin-left: 48px;
  }
  .tab_label b{
    font-size: 19px;
  }
  .tab_label .number::before{
    width: 96px;
    height: 96px;
    position: absolute;
    top: -5px;
    left: 0;
    transform: translateX(-50%);
  }
  .tab_label:hover{
    opacity: 0.8;
  }
  .tab_title{
    position: absolute;
    top: 23px;
    left: 60px;
  }
  .tab_title br{
    display: none;
  }
  .tab_label .number{
    font-size: 12px;
    color: #A8A8A8;
    position: static;
  }
  .tab_label .number b{
    font-size: 14px;
  }
  .tab_label .number br{
    display: none;
  }
  .tab_label .number span{
    margin-top: 52px;
    margin-left: 60px;
  }
  .tab_wrap .tab_content {
    background: #fff;
    padding: 0;
    margin: 35px 20px 20px 20px;
    max-width: 590px;
  }
  .tab_content_detail{    
    padding: 0;
  }
  .tab_label.google .number::before{
    background-image: url(/wp-content/uploads/review_google_off_pc.png);
  }
  .tab_label.facebook .number::before{
    background-image: url(/wp-content/uploads/review_facebook_off_pc.png);
  }
}
/* アクティブなタブ */
.tab_switch:checked + .tab_label{
  color: #fff;
}
.tab_switch:checked + .tab_label::after{
  content: "";
  display: block;
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%) translateY(100%);
  width: 17px;
  height: 10px;
  background-repeat: no-repeat;
  background-size: contain;
}
.tab_switch:checked + .tab_label.google{
  background: #F47222;
}
.tab_switch:checked + .tab_label.google .number::before{
  background-image: url(/wp-content/uploads/review_google_on_sp.png);
}
.tab_switch:checked + .tab_label.google::after{
  background-image: url(/wp-content/uploads/review_tabarr_google.svg);
}
.tab_switch:checked + .tab_label.facebook{
  background: #427BEA;
}
.tab_switch:checked + .tab_label.facebook .number::before{
  background-image: url(/wp-content/uploads/review_facebook_on_sp.png);
}
.tab_switch:checked + .tab_label.facebook::after{
  background-image: url(/wp-content/uploads/review_tabarr_facebook.svg);
}
.tab_switch:checked+.tab_label  + .tab_content {
   display: block;
}

@media screen and (min-width: 960px) {
  .tab_switch:checked + .tab_label .number{
    color: #fff;
  }
  .tab_switch:checked + .tab_label.google .number::before{
    background-image: url(/wp-content/uploads/review_google_on_pc.png);
  }
  .tab_switch:checked + .tab_label.facebook .number::before{
    background-image: url(/wp-content/uploads/review_facebook_on_pc.png);
  }
  .tab_switch:checked + .tab_label::after{
    width: 26px;
    height: 16px;
    transform: translateX(-50%) translateY(-1px);
  }
  .review_tablink{
    margin-top: 20px;
  }
}
.review_item{
  padding: 0 4px;
  margin-bottom: 18px;
}
.review_item:last-of-type{
  margin-bottom: 10px;
}
.review_item > div{
  display: flex;
  align-items: center;
  margin-bottom: 10px;
}
.review_item .name{
  font-size: 14px;
  line-height: 1;
  padding-bottom: 2px;
  margin-top: 2px;
}
.review_item .star{
  width: 70px;
  height: 10px;
  display: block;
  margin-top: 3px;
}
.review_item .text{
  font-size: 14px;
  line-height: 1.5;
  font-weight: 500;
  padding-bottom: 15px;
  border-bottom: 1px solid #DDDDDD;
}
.review_item.google .icon{
  font-size: 17px;
  font-weight: bold;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: #2ba9d4;
  margin-right: 12px;
}
.review_item.google:nth-child(5n+1) .icon{
  background-color: #38AAD2;
}
.review_item.google:nth-child(5n+2) .icon{
  background-color: #BE215C;
}
.review_item.google:nth-child(5n+3) .icon{
  background-color: #5D6DBE;
}
.review_item.google:nth-child(5n+4) .icon{
  background-color: #E6702C;
}
.review_item.google:nth-child(5n+5) .icon{
  background-color: #28971B;
}
.review_item.facebook .icon{
  width: 37px;
  height: 37px;
  background-repeat: no-repeat;
  background-size: contain;
  margin-right: 12px;
}
.review_item.facebook:nth-child(odd) .icon{
  background-image: url(/wp-content/uploads/review_man1.png);
}
.review_item.facebook:nth-child(even) .icon{
  background-image: url(/wp-content/uploads/review_man2.png);
}
.review_tablink{
  text-align: right;
}
.review_tablink:hover{
  text-decoration: underline;
  color: #007AFF;
}
.review_tablink a{
  color: #007AFF;
}
@media screen and (min-width: 960px) {
  .review_item .text{
    font-size: 15px;
    line-height: 1.65;
    margin-left: 50px;
  }
}
/*所属弁護士紹介*/
.member_content + .member_content{
	margin-top: 40px;
}
.member_content h3{
	margin-top: 30px;
    font-size: 1.6px;
	line-height: 1.5;
    position: relative;
    padding: 0px 0px 0px 18px;
    margin-bottom: 15px;
}
.page_content .member_content h3{
	padding: 0px 0px 0px 18px!important;
	margin-bottom: 15px;
}
.member_content h3::before{
    content: "";
    width: 5px;
    display: block;
    position: absolute;
    height: 100%;
    left: 0;
    top: 0;
    background: #5590d7;
    border-radius: 2.5px;
}
.member_list{
	display: flex;
	flex-wrap: wrap;
}
.member_item{
	flex: 0 0  calc((100% - 10px) /3);
    height: auto;
    padding-left: 0;
	position: relative;
	margin-left: 5px;
	margin-bottom: 20px;
}
@media screen and (max-width: 959px) {
	.member_list .member_item:nth-child(3n+1){
		margin-left: 0px;
	}
}
.member_item a{
    display: block;
    width: 100%;
    z-index: 3;
}
.member_item a:hover{
	opacity: 0.8;
}
.member_name{
	padding: 2px 0 0!important;
	margin: 0!important;
    position: absolute!important;
    bottom: 0;
    left: 0;
    text-align: center;
    width: 100%;
	height: 37px;
    background: #275471;
    color: #fff;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}
.member_name::before{
	content: none!important;
}
.member_name_jp{
	font-size: 13px;
    line-height: 1;
    letter-spacing: 0.1em;
	display: block;
}
.member_name_en{
	display: none;
}
.member_name_position{
	font-size: 10px;
	transform: scale(0.8);
	font-weight: 400;
	display: block;
	margin-top: 3px;
}
@media screen and (min-width: 960px) {
	.member_content h3{
		font-size: 18px;
	}
	.member_content + .member_content{
		margin-top: 50px;
	}
	.member_list{
		padding: 0 5px;
	}
	.member_item{
		flex:0 1 calc((100% - 45px) /4);
		margin-left: 15px;
		margin-bottom: 40px;
	}
	.member_list .member_item:nth-child(4n+1){
		margin-left: 0px;
	}
	.member_name{
		height: 60px;
		padding: 0;
		bottom: -23px;
	}
	.member_name_jp{
		font-size: 15px;
		letter-spacing: 0.19em;
	}
	.member_name_en{
		display: block;
		font-size: 12px;
		font-weight: 300;
		letter-spacing: 0.07em;
		transform: scale(0.7);
		margin-top: 3px;
	}
	.member_name_position{
		order: -1;
		transform: none;
		margin: 0 0 7px;
	}
}
/*代表挨拶*/
.greeting_law_img{
	float: right;
	margin: 10px!important;
	width: 45%!important;
	max-width: 260px!important;
}
.greeting_sign_img{
	clear: both;
	width: 55%!important;
	max-width: 220px!important;
	margin: 15px 0 30px auto!important;
  display: block!important;
}
/*所属弁護士紹介　個人ページ*/
.profile_main{
	position: relative;
}
.profile_main::before{
	content: "";
	display: inline-block;
	width: 100vw;
	height: 98vw;
	max-height: 580px;
	background: #ff2;
	position: absolute;
	margin: 130px calc(50% - 50vw) 0;
	z-index: -1;
  }
  .profile_law_mainimg{
	width: 50%;
	display: block;
	margin: 0 auto 20px;
  }
  .profile_main .name{
	letter-spacing: 0.15em;
  }
  .profile_main .profile_item{
	margin-bottom: 30px;
  }
  .profile_main .name{
	font-family: "游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif;
	font-weight: 700;
	font-size: 23px;
	text-align: center;
	margin-bottom: 15px;
  }
  .profile_main .name .s{
	font-size: 17px;
  }
  .profile_main h2.message{
	width: 290px;
	margin: 0 auto 20px;
	padding: 0;
	background: transparent;
	border: none;
  }
  .profile_main .message span{
	font-family: "游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif;
	font-size: 18px;
	font-weight: 400;
	line-height: 1.8;
	white-space: normal;
	display: block;
  }
  .profile_main h2.message::before{
	content: none;
  }
  .profile_main .profile_table{
	width: 100%;
	margin: 20px auto 0px;
  }
  .profile_main .profile_table th, .profile_main .profile_table td{
	padding: 10px 15px;
	line-height: 1.4;
	font-size: 13px;
  }
  .profile_main .profile_table th{
	width: 33%;
  }
  .profile_main .introduction{
	margin-top: 40px;
  }
  .profile_main .introduction_item + .introduction_item{
	margin-top: 40px
  }
  @media screen and (min-width: 960px){
	.profile_main::before{
	  content: none;
	}
	.profile_law_mainimg{
	  width: 240px;
	  margin: 0 35px 0 0;
	  float: left;
	}
	.profile_main .profile_item{
	  width: calc(100% - 275px);
	  float: right;
	  margin: 35px 0 40px;
	  text-align: left;
	}
	.profile_main .introduction{
	  clear: both;
	}
	.profile_main .name{
	  font-size: 27px;
	  margin-bottom: 15px;
	  text-align: left;
	}
	.profile_main .name .s{
	  font-size: 20px; 
	}
	.profile_main h2.message{
	  width: auto;
	}
	.profile_main .message span{
	  font-size: 19px;
	}
	.introduction_item > div{
	  display: flex;
	}
	.introduction_item .normal_p{
	  margin-right: 25px;
    font-size: 16px;
	}
	.introduction_item .img{
	  flex: 0 0 250px;
	}
}
.profile_main .profile_table {
	margin-top: 30px;
}

.profile_main .profile_table {
	border: 1px solid #ccc;
	margin: 20px 0;
	width: 100%;
	background: #fff;
}
.profile_main .profile_table th,
.profile_main .profile_table td {
	border-bottom: 1px solid #ccc;
	border-right: 1px solid #ccc;
	padding: 10px 15px;
	line-height: 1.4;
	font-size: 13px;
}
.profile_main .profile_table th {
	background-color: #fff6d7;
	font-weight: bold;
	text-align: center;
	vertical-align: middle;
	width: 30%;
	white-space: nowrap;
}
/*アクセス一覧*/
.access_content{
	margin-top: 30px;
}
.access_list + .access_list{
	margin-top: 10px;
}
.access_list a{
	text-decoration: none;
	display: flex;
	border: 1px solid #ddd;
	background: #f1f3f6;
	padding: 12px 12px 15px;
	color: #000;
}
.access_list .img{
  flex: 0 0 100px;
	width: 100px;
}
.access_list .address{
	margin-left: 17px;
	font-style: normal;
}
.access_list h3.office_name{
	font-size: 17px;
	font-weight: 600;
	line-height: 1.3;
	margin: 7px 0 10px;
	padding: 0;
	border: none;
}
.access_list h3.office_name::before,
.access_list h3.office_name::after{
	content: none;
}
.access_list .text{
	font-size: 14px;
	line-height: 1.6;
	margin: 0;
}
.access_list .ekisugu{
	font-size: 14px;
	line-height: 1;
	margin: 6px 0 0;
}
.accessmap_content{
  margin: 20px auto;
}
.moyori_img{
  display: none;
}
.route_images_flex {
	display: flex;
	flex-wrap: wrap;
	gap: 0 2%;
}
.route_images_flex li {
    width: 49%;
    margin-bottom: 20px;
}
.route_images_flex img{
    margin-bottom: 5px;
}
.route_images_flex p {
    position: relative;
}

@media screen and (min-width: 960px){
	.accessmap_content{
		display: flex;
		align-items: flex-start;
		justify-content: center;
	}
	.accessmap_content img{
		width: auto;
		max-height: 400px;
	}
	.moyori_img{
    display: inline;
		width: auto;
	}
	.access_list + .access_list{
		margin-top: 20px;
	}
	.access_list a{
		padding: 20px 22px 25px;
	}
	.access_list .img{
    flex: 0 0 185px;
		width: 185px;
	}
	.access_list .address{
		margin-left: 20px;
	}
	.access_list h3.office_name{
		font-size: 17px;
		line-height: 1.3;
		margin: 9px 0 11px!important;
	}
	.access_list .text{
		font-size: 14px;
		line-height: 1.57;
	}
	.access_list .text br{
		display: none;
	}
	.access_list .ekisugu{
		font-size: 14px;
		margin: 10px 0 0;
	}
}

.route-tab-buttons {
  display: flex;
  list-style: none;
  text-align: center;
  padding: 0;
  margin-top: 40px;
  margin-bottom: 40px;
  gap: 5px;
}

.route-tab-button {
  padding: 15px 15px;
  background: #eee;
  cursor: pointer;
  flex: 1 1 100%;
}

.route-tab-button.active {
  background: #333;
  color: #fff;
  position: relative;
}

.route-tab-button.active::before {
  content: "";
  display: block;
  position: absolute;
  top: 99%;
  left: 50%;
  transform: translateX(-50%);
  background: #333;
  width: 20px;
  height: 13px;
  clip-path: polygon(0 0,
      100% 0,
      50% 100%);
}

.route-tab-content {
  display: none;
}

.route-tab-content.active {
  display: block;
}

/* main frame */

.muryousoudan_revue {
  width: 94%;
  margin: auto;
}



/* 口コミ */

.muryousoudan_revue .ttl {
  font-size: 15px;
  font-weight: bold;
  color: #e7711c;
  padding-bottom: 12px;
  line-height: 1;
}

.facebook.muryousoudan_revue .ttl {
  color: #5994fc;
}

.muryousoudan_revue .img {
  display: block;
  width: 100%;
  text-align: center;
  padding-top: 10px;
  padding-bottom: 24px;
}

.facebook.muryousoudan_revue .img {
  padding-bottom: 27px;
}

.muryousoudan_revue .img img {
  height: 250px;
  width: auto;
  padding-right: 15px;
}

.muryousoudan_revue .item {
  margin-left: 50px;
  position: relative;
  padding-bottom: 18px;
}

.muryousoudan_revue .item+.item {
  border-top: 1px solid #ddd;
  padding-top: 20px;
}

.muryousoudan_revue .item .name {
  font-size: 14px;
  line-height: 1;
  padding-bottom: 5px;
}

.muryousoudan_revue .item .txt {
  font-size: 15px;
  line-height: 1.6;
}

.muryousoudan_revue .link {
  color: #307fb8;
  font-size: 12px;
  text-decoration: underline;
  text-align: right;
  font-weight: normal;
  display: block;
}

.muryousoudan_revue .item .icon {
  width: 36px;
  height: 36px;
  position: absolute;
  left: -50px;
  line-height: 36px;
}

.google.muryousoudan_revue .item .icon {
  border-radius: 50%;
  color: #fff;
  font-weight: bold;
  font-size: 17px;
  text-align: center;
  background: #2ba9d4;
}

.google.muryousoudan_revue .item2 .icon {
  background: #c2185b;
}

.google.muryousoudan_revue .item3 .icon {
  background: #5c6bc0;
}

.google.muryousoudan_revue .item4 .icon {
  background: #e8701c;
}

.google.muryousoudan_revue .item5 .icon {
  background: #f1b235;
}

.google.muryousoudan_revue .item6 .icon {
  background: #209806;
}

.facebook.muryousoudan_revue .item .icon img {
  width: 100%;
  height: auto;
}

.google.muryousoudan_revue .item .name span {
  color: #f8b704;
  margin-left: 10px;
  font-size: 13px;
  letter-spacing: 1px;
}

.facebook.muryousoudan_revue .item .name span {
  color: #fff;
  margin-left: 2px;
  background: #5890ff;
  vertical-align: middle;
  border-radius: 18px;
  line-height: 17px;
  font-size: 10px;
  letter-spacing: 1px;
  display: inline-block;
  padding: 0 8px;
  -webkit-transform: scale(0.82);
  -moz-transform: scale(0.82);
  -ms-transform: scale(0.82);
  -o-transform: scale(0.82);
  transform: scale(0.82);
}

/* --------------------------------
 * atom foot
 * -------------------------------- */
.atom_foot {
  text-align: center;
  background: #5590d7;
}

.atom_foot .mainttl {
  color: #fff;
  padding-bottom: 15px;
  border-bottom: 1px solid #9ec0e8;
  margin-bottom: 18px;
  margin-top: -6px;
}

.atom_foot .txt {
  color: #fff;
  font-size: 1.5rem;

}

.atom_foot .mainttl span,
.atom_foot .txt span {
  font-weight: bold;
  color: #fbf396;
}

.nagare_area {
  margin: 15px auto 20px;
  background: #fff;
}

.nagare_area .ttl {
  background: #0f4b89;
  color: #fff;
  font-size: 1.4rem;
  line-height: 32px;
}

.nagare_area dl {
  text-align: left;
  padding: 13px 17px;
}

.nagare_area dt {
  font-size: 1.6rem;
  color: #0f4b89;
  line-height: 1.4;
  font-weight: bold;
}

.nagare_area dd+dt {
  border-top: 1px solid #dbe4ed;
  padding-top: 14px;
  margin-top: 14px;
}

.nagare_area dd {
  font-size: 1.5rem;
  line-height: 1.4;
  padding-top: 4px;
}

.nagare_area dd img {
  margin-top: 10px;
}



.atom_foot .teltxt {
  padding-top: 22px;
}

.atom_foot .teltxt span {
  display: block;
  color: #fff;
  font-size: 1.3rem;
  padding-top: 4px;
}

.atom_foot .telbtn {
  background: #ffef31;
  color: #0f4b89 !important;
  width: 190px;
  border-radius: 3px;
  margin-bottom: 15px;
}

.atom_foot .telbtn:before {
  content: url(../img/icon_atomtel.svg);
  display: inline-block;
  margin-right: 10px;
  vertical-align: middle;
}

.atom_foot .muryousoudan_flow {
  width: 108%;
  margin-left: -4%;
}

@media screen and (min-width: 900px) {
  .atom_foot .mainttl {
    padding-bottom: 23px;
    font-size: 1.9rem;
    margin-bottom: 26px;
  }

  .nagare_area {
    margin: 22px auto 30px;
  }

  .nagare_area .ttl {
    font-size: 1.6rem;
    line-height: 44px;
  }

  .nagare_area dl {
    padding: 30px 35px;
  }

  .nagare_area dd+dt {
    padding-top: 20px;
    margin-top: 20px;
  }

  .nagare_area dd {
    padding-top: 9px;
  }
}

.atom_foot .txt+.txt {
  border-bottom: 1px solid #9ec0e8;
  padding-bottom: 18px;
}

.atom_foot h2 strong {
  color: #faf580;
  font-size: 110%;
  margin-left: 2px;
}

@media screen and (min-width: 900px) {
  .atom_foot .txt+.txt {
    padding-bottom: 26px;
  }

  .atom_foot .muryousoudan_flow {
    width: 650px;
    margin-left: auto;
    margin-right: auto;
    text-align: left;
    display: block;
  }

  .bace_frame {
    padding: 40px 4% 60px;
  }
}

/* --------------------------------
 * 法律Know TOP
 * -------------------------------- */

/* タイトル */
.know_head {
  text-align: center;
  background: #fff;
  padding-top: 22px;
}

.know_head .ttl {
  padding-bottom: 10px;
  padding-right: 1%;
}

.know_head .ttl img {
  height: 25px;
  padding-right: 2px;
}

.know_head .txt {
  color: #001e3e;
  font-size: 1.3rem;
  position: relative;
  display: inline-block;
}

/*.know_head .txt:before{
  content: "";
  display: block;
  width: 32px;
  height: 32px;
  background: url(../img/img_knowtop_icon.png) no-repeat center;
  background-size: contain;
  position: absolute;
  top: -15px;
  left: -20px;
    top: 4px;
    left: -20px;
}
*/
.know_head .ttl img.icon-keiji {
  height: 32px;
  margin-bottom: -4px;
}

@media screen and (min-width: 900px) {
  .know_head .ttl img.icon-keiji {
    height: 39px;
    margin-bottom: -6px;
    margin-right: 1px;
  }
}

/* 検索窓 */
.knowtop_search {
  margin-top: 16px;
  background: url(../img/img_knowtop.png) no-repeat center;
  background-size: cover;
  height: 210px;
  text-align: center;
  padding-top: 63px;
}

.knowtop_search .search_txt {
  font-size: 1.4rem;
  color: #fff;
  padding-bottom: 12px;
}

.knowtop_search .searchform {
  width: 80%;
  margin: auto;
}

.knowtop_search .searchform input[type="text"] {
  border: none;
  background: rgba(255, 255, 255, 0.85);
  padding: 6px 12px;
  border-radius: 2px;
}

.knowtop_search .searchform:before {
  width: 18px;
  height: 18px;
  background-image: url(../img/icon_search_b.svg);
  margin-top: -9px;
  opacity: 0.2;
}

@media screen and (min-width: 900px) {
  .know_head {
    padding-top: 37px;
  }

  .know_head .ttl {
    padding-bottom: 11px;
    padding-right: 1%;
  }

  .knowtop_search {
    margin-top: 25px;
    height: 350px;
    padding-top: 120px;
  }

  .knowtop_search .searchform input[type="text"] {
    padding: 14px 26px;
    border-radius: 3px;
  }

  .knowtop_search .searchform:before {
    right: 24px;
  }
}


/* 検索キーワード */
.knowtop_keylist {
  padding: 12px 4% 8px;
  position: relative;
  margin-bottom: -12px;
}

.knowtop_keylist .ttl {
  font-size: 1.4rem;
  font-weight: normal;
}

.knowtop_keylist .link {
  font-size: 1.3rem;
  display: inline-block;
  text-decoration: underline;
  color: #218df2;
  text-align: center;
  display: block;
  line-height: 24px;
  margin-bottom: 10px;
}

.knowtop_keylist .key_list {
  padding: 10px 0px 0;
}

.knowtop_keylist .key_list li {
  padding-bottom: 6px;
}

.knowtop_keylist .key_list li a {
  margin-right: 0px;
  background: #fff;
  padding: 8px 10px;
  border-radius: 3px;
  box-shadow: 0 1px 1px 0px rgba(0, 0, 0, 0.1);
}

.knowtop_keylist.category .key_list li a {
  background: #ffffff;
}

.knowtop_keylist .key_list li.soudan {
  display: none;
}

.knowtop_keylist .futatsume {
  padding-top: 0px;
}

@media screen and (min-width: 900px) {

  .knowtop_keylist {
    padding: 26px 4% 25px;
    background: #fff;
    margin-bottom: 0;
  }

  .knowtop_keylist .key_list li a {
    background: #e4f0ff;
  }
}



/* 人気の回答 */
.list_post2_item {
  background: #fff;
  display: block;
  box-shadow: 0 4px 4px -2px rgba(0, 0, 0, 0.1);
  margin-bottom: 8px;
  padding: 13px 4% 15px;
  position: relative;
}

.list_post2_item .head {
  display: -webkit-flex;
  /* Safari */
  display: flex;
  -webkit-justify-content: space-between;
  /* Safari */
  justify-content: space-between;
  -webkit-align-items: center;
  /* Safari */
  align-items: center;
}


.list_post2_item .head .img {
  display: block;
  width: 64px;
  height: 64px;
  border-radius: 50%;
  background: no-repeat center;
  background-size: cover;
}

.list_post2_item .head .name {
  flex: 1;
  -webkit-flex: 1;
  font-size: 1.72rem;
  letter-spacing: 1px;
  font-weight: bold;
  padding-left: 14px;
}

.list_post2_item .head .name span {
  font-size: 1.2rem;
  color: #9f9f9f;
  display: block;
  font-weight: normal;
  letter-spacing: 0;
}

.list_post2_item .bodytxt {
  font-size: 1.6rem;
  line-height: 1.4;
  padding-top: 8px;
  display: block;
}

.bodytxt .link {
  font-size: 1.3rem;
  display: inline-block;
  text-decoration: underline;
  color: #218df2;
  text-align: center;
  line-height: 24px;
  margin-bottom: 10px;
}

.blogcard {
  margin-top: 9px;
  border: 1px solid #ddd;
  display: -webkit-flex;
  /* Safari */
  display: flex;
  -webkit-justify-content: space-between;
  /* Safari */
  justify-content: space-between;
  -webkit-align-items: flex-start;
  /* Safari */
  align-items: flex-start;
  border-radius: 3px;
  padding: 11px 9px;
  background: #fff;
  box-shadow: 0 4px 4px -2px rgba(0, 0, 0, 0.1);
}

.blogcard .img {
  width: 75px;
  height: 60px;
  background: no-repeat center;
  background-size: cover;
}

.blogcard .blogcard_txtarea {
  padding-right: 10px;
  flex: 1;
  -webkit-flex: 1;
}

.blogcard .blogcard_ttl {
  font-size: 1.4rem;
  line-height: 1.3;
  text-decoration: underline;
  color: #218df2;
  padding-bottom: 5px;
}

.blogcard .blogcard_excerpt {
  font-size: 1.2rem;
  line-height: 1.3;
  text-decoration: none;
  padding-top: 5px;
  margin-bottom: 5px;
  color: #625d55;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  text-overflow: ellipsis;
}

.blogcard .blogcard_time {
  color: #9f9f9f;
  display: inline-block;
  line-height: 1;
  font-size: 1.2rem;
}

.blogcard .blogcard_tag {
  color: #9f9f9f;
  display: inline-block;
  /*padding-left: 10px;*/
  line-height: 1;
  font-size: 1.2rem;
}

.page_section .mainttl+.genre {
  margin-top: 10px;
}

h4.genre {
  padding: 8px 5px;
  color: #5590d7;
  color: #0f4b89;
  display: inline-block;
  border-bottom: solid;
  font-size: 18px;
  margin: 10px;
  position: relative;
  margin-left: 46px;
  letter-spacing: 2px;
}

h4.genre span {
  font-size: 11px;
  color: #5590d7;
  /* display: block; */
  font-weight: normal;
  line-height: 1;
  font-family: 'Comfortaa', cursive;
  letter-spacing: 0.5px;
  transition: .3s ease-in-out;
  /* background-color: white; */
  padding-left: 5px;
}

h4.genre:before {
  left: -38px;
  background: url(../img/genre/arrest.svg) no-repeat center;
  content: " ";
  position: absolute;
  width: 30px;
  height: 30px;
  bottom: 0;
}

h4.genre.settlement_out_of_court:before {
  background: url(../img/genre/settlement_out_of_court.svg) no-repeat center;
}

h4.genre.police_prosecution:before {
  background: url(../img/genre/police_prosecution.svg) no-repeat center;
}

h4.genre.punishment:before {
  background: url(../img/genre/punishment.svg) no-repeat center;
}

h4.genre.life:before {
  background: url(../img/genre/life.svg) no-repeat center;
}

h4.genre.visitation:before {
  background: url(../img/genre/visitation.svg) no-repeat center;
}

h4.genre.jidansho_cat:before {
  background: url(../img/genre/jidansho_cat.svg) no-repeat center;
}

h4.genre.shazaibun_cat:before {
  background: url(../img/genre/shazaibun_cat.svg) no-repeat center;
}

h4.genre.lawyer:before {
  background: url(../img/genre/lawyer.svg) no-repeat center;
}

@media screen and (min-width: 900px) {
  h4.genre {
    font-size: 20px;
    margin: 0;
    margin-left: 44px;
    letter-spacing: 0;
  }
}

.genrelink {
  text-align: right;
  margin: 10px 8px 25px;
}

.genrelink a {
  font-size: 1.2rem;
  display: inline-block;
  text-decoration: none;
  color: #ffffff;
  text-align: right;
  display: inline-block;
  line-height: 36px;
  background-color: #5590d7;
  border-radius: 100px;
  padding: 0px 25px 0 15px;
  box-shadow: 0 4px 4px -2px rgba(0, 0, 0, 0.1);
}

.genrelink a:after {
  content: url(../img/icon_arr_w.svg);
  right: -8px;
  top: 0;
  position: relative;
}

@media screen and (min-width: 900px) {
  .list_post2_item {
    padding: 23px 5% 30px;
    margin-bottom: 10px;
  }

  .blogcard {
    margin-top: 13px;
  }

  .page_section .mainttl+.genre {
    margin-top: 20px;
  }

  .genrelink {
    margin: -5px 0px 10px;
  }

  .jisseki_list+.genrelink {
    margin: 15px 0px 25px;
  }
}

a.knowtop_btn {
  display: block;
  padding: 15px 20px;
  line-height: 20px;
  background: #ff7400;
  color: #ffffff;
  border-radius: 3px;
  margin: 40px 30px 50px;
  text-align: center;
  height: 50px;
  font-size: 0.9em;
  border-radius: 2px;
  box-shadow: 0 3px 3px -2px rgba(0, 0, 0, 0.1);
  position: relative;
}

a.knowtop_btn:after {
  right: 12px;
  background: url(../img/icon_arr_w.svg) no-repeat center;
  content: " ";
  position: absolute;
  width: 5px;
  height: 20px;
}

.page_section.know {
  margin-top: 25px;
}

.know .jisseki_list {
  margin: 5px;
}

/* --------------------------------
 * 示談書 temp
 * -------------------------------- */

/* 本文 */
.jidansho {
  margin: 6px;
  border: solid #bdbdbd 1px;
  border-radius: 2px;
  padding: 20px 4%;
  position: relative;
  zoom: 0.5;
}

.jidansho:before {
  content: "見本";
  position: absolute;
  top: 10px;
  right: 11px;
  color: #ea5a00;
  border: 1px solid #ea5a00;
  padding: 5px 10px;
  border-radius: 3px;
  display: block;
  font-size: 1.8rem;
  font-family: serif;
  font-weight: bold;
}

.jidansho p:first-child {
  font-weight: bold;
  padding-bottom: 12px;
  font-size: 1.5rem;
  letter-spacing: 2px;
}

.jidansho p {
  font-size: 1.4rem;
  padding-bottom: 6px;
  position: relative;
}

.jidansho b,
.jidansho strong {
  color: #ea5a00;
  font-weight: normal;
}

.jidansho p span {
  position: absolute;
  top: 0;
  right: 0;
}

@media screen and (min-width: 900px) {
  .jidansho {
    margin: 22px;
    padding: 30px 5%;
    zoom: 0.9;
  }
}


/* ページ */
.temp_head {
  margin-bottom: 18px;
}

.temp_head .post_head_ttl {
  font-size: 2rem;
}

.temp_head .post_head_movie {
  max-height: 180px;
  margin-bottom: 15px;
}

.temp_head .link a {
  display: inline-block;
  margin-right: 3px;
  margin-top: 0;
}

.temp_head .link a:after {
  display: none;
}

.temp_card .temp_ttl {
  background: #0f4b89;
  color: #fff;
  text-align: center;
  font-weight: bold;
  font-size: 1.5rem;
  line-height: 35px;
  letter-spacing: 0.5px;
}

.temp_card .btn {
  margin-bottom: 22px;
  margin-top: 15px;
}

@media screen and (min-width: 900px) {
  .temp_head .post_head_movie {
    max-height: 400px;
  }

  .temp_card .btn {
    margin-bottom: 34px;
    margin-top: 21px;
  }

  .blogcard.temp {
    padding: 13px 17px;
    ;
  }

  .blogcard.temp .img {
    width: 120px;
    height: 80px;
    margin: 15px 10px;
  }
}

/* --------------------------------
 * 3ten
 * -------------------------------- */
.santen_ttl {
  padding: 15px 10px;
  border-bottom: solid 1px #0f4b89;
  margin-bottom: 15px;
}

.santen_ttl img {
  width: 100%;
}

p.santen_txt {
  padding: 0 10px;
  margin-bottom: 35px;
}

article.santen_voice {
  background-color: #f0f6ff;
  border-radius: 4px;
  padding: 25px 15px 20px;
  margin: 28px 0 10px;
  position: relative;
}

.santen_voice .ttl {
  background-color: #5590d7;
  font-weight: normal;
  font-size: 11px;
  color: #fff;
  line-height: 13px;
  padding: 5px 15px 5px 45px;
  border-radius: 12px;
  display: inline-block;
  position: absolute;
  top: -10px;
}

.santen_voice .ttl:before {
  content: ' ';
  background-image: url(../img/icon_man.png);
  background-size: cover;
  height: 35px;
  width: 35px;
  position: absolute;
  bottom: 0;
  left: 5px;
}

.santen_voice .ttl.line:before {
  content: ' ';
  background-image: url(../img/icon_woman.png);
}

.santen_voice .txt {
  font-size: 15px;
  line-height: 20px;
}

.santen_voice .txt b {
  color: #5590d7;
  font-weight: 500;
}

a.santen_link {
  font-size: 13px;
}

a.santen_link:after {
  content: url(../img/icon_arr_b.svg);
  right: -8px;
  top: 0;
  position: relative;
}

a.santen_btn {
  display: block;
  position: relative;
}

a.santen_btn.tel {
  margin-top: 30px;
}

p.santen_kome {
  font-size: 10px;
  color: #777777;
  margin-left: 12px;
}

.santenset_btnarea a.Line {
  margin-top: 15px;
  padding: 0 1%;
}

.santenset_btnarea a.mail {
  margin-top: 5px;
  padding: 0 1%;
}

.santen_bottom {
  background-color: #92a9c0;
}

.santen_bottom .ttl {
  text-align: center;
  margin: 0 auto;
  display: block;
  color: #fff;
  font-weight: normal;
  font-size: 16px;
  line-height: 23px;
  padding: 20px 0 5px;
}

.santen_bottom .ttl:before {
  content: ' ';
  background-image: url(../img/3ten/3ten_chui.png);
  background-size: cover;
  height: 22px;
  width: 25px;
  position: relative;
  top: -5px;
  right: 0;
  display: block;
  margin: 0px auto;
}

.santen_bottom .ttl span {
  color: #ffed59;
  font-weight: 500;
}

.santen_tsuiki {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: flex-start;
  align-items: flex-start;
  position: relative;
  padding: 10px 15px 23px;
}

.santen_tsuiki .name {
  width: 56px;
  margin-right: 10px;
  margin-left: -6px;
}

.santen_tsuiki .name .img {
  display: block;
  margin: auto;
  width: 38px;
  height: 38px;
  background: url(../img/photoicon/okano.png) no-repeat center top;
  background-size: cover;
  border-radius: 50%;
}

.santen_tsuiki .txt {
  background: #ffffff;
  border-radius: 5px;
  padding: 16px 13px 16px 18px;
  font-size: 1.5rem;
  line-height: 1.6;
  flex: 1;
  -webkit-flex: 1;
  position: relative;
  letter-spacing: -0.3px;
}

.santen_tsuiki .txt:before {
  content: "";
  text-align: center;
  position: absolute;
  left: -10px;
  top: 44px;
  display: block;
  background: url(../img/3ten/comment.svg) no-repeat center;
  width: 12px;
  height: 15px;
}

/*パターンB*/
.pattern-b .ttl {
  text-align: center;
  font-weight: normal;
  display: block;
  font-size: 14px;
  line-height: 21px;
  color: #555;
  display: block;
}

.pattern-b .ttl span {
  font-weight: 500;
  color: #ff7300;
}

.pattern-b p.santen_kome {
  text-align: center;
  margin: 0;
}

.pattern-b a.santen_btn.tel {
  margin: 15px 10px 3px;
}

.pattern-b a.santen_btn.line {
  margin: 18px 10px 0px;
}

.pattern-b a.santen_btn.mail {
  margin: 2px 10px 0px;
}

.pattern-b .santen_tsuiki .txt {
  background: #fff4cd;
  margin-top: 4px;
}

.pattern-b .santen_tsuiki {
  padding: 10px 0px 23px;
}

.pattern-b .santen_tsuiki .txt:before {
  display: none;
}

.pattern-b .y_line {
  background: linear-gradient(transparent 50%, #ffed59 50%);
}

/*ABtest*/

.pattern-b {
  display: none;
}

.afb_container+.santen_card {
  margin-top: 20px;
  margin-bottom: 20px;
}


/* --------------------------------
 * コンタクトフォーム
 * -------------------------------- */

.contact_fm table {
  width: 100%;
  margin-top: 20px;
  font-size: 1.4rem;
  border: none !important;
}

.contact_fm th,
.contact_fm td {
  padding: 15px 0;
  vertical-align: middle;
  text-align: left;
  line-height: 1.7;
  border: none !important;
}

.contact_fm th {
  width: 22%;
  position: relative;
  padding-left: 25px;
  background: none !important;
  font-size: 14.5px !important;
  padding-left: 15px !important;
}

.contact_fm .hissu:before {
  width: 10px;
  height: 10px;
  position: absolute;
  display: block;
  content: "";
  background: #538eda;
  top: 50%;
  margin-top: -5px;
  left: 0;
  border-radius: 50%;
}

.contact_fm td {
  width: 78%;
}

.contact_fm span.wpcf7-list-item {
  display: block;
  padding: 5px 0;
  margin: 0;
}

.contact_fm span.wpcf7-list-item input,
select {
  margin-top: 0;
}

.contact_fm textarea {
  min-height: 230px;
}

@media screen and (max-width: 640px) {

  .contact_fm th,
  .contact_fm td {
    display: block;
    width: 100%;
  }

  .contact_fm th {
    padding: 0 0 0 15px !important;
    font-size: 1.3rem !important;
  }

  .contact_fm .hissu:before {
    width: 8px;
    height: 8px;
    margin-top: -4px;
  }

  .contact_fm td {
    padding: 13px 0 30px !important;
  }
}

/* リセット */
.contact_fm input[type="submit"],
.contact_fm input[type="button"],
.contact_fm input[type="text"],
.contact_fm input[type="email"],
.contact_fm input[type="tel"],
.contact_fm textarea,
.contact_fm select {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.contact_fm input[type="submit"],
.contact_fm input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}

.contact_fm input[type="submit"]::-webkit-search-decoration,
.contact_fm input[type="button"]::-webkit-search-decoration {
  display: none;
}

.contact_fm input[type="submit"]::focus,
.contact_fm input[type="button"]::focus {
  outline-offset: -2px;
}

.contact_fm input[type="text"],
.contact_fm input[type="email"],
.contact_fm input[type="tel"],
.contact_fm textarea,
.contact_fm select {
  width: 100%;
  font-size: 1.4rem;
  padding: 10px 15px;
  background: #f5f5f5;
  border-radius: 1px;
  position: relative;
  z-index: 0;
  line-height: 1;
}

.contact_fm textarea {
  padding: 13px 15px;
  resize: vertical;
}

@media screen and (max-width: 640px) {

  .contact_fm input[type="text"],
  .contact_fm input[type="email"],
  .contact_fm input[type="tel"],
  .contact_fm textarea,
  .contact_fm select {
    font-size: 16px;
  }

  .contact_fm textarea {
    padding: 13px 15px;
  }
}


.submitbtn {
  margin: 10px auto;
  text-align: center;
}

.submitbtn input[type="submit"],
.contact_fm input[type="button"] {
  display: inline-block;
  background: #ff8b00;
  border-radius: 2px;
  color: #fff;
  letter-spacing: 0.3em;
  font-size: 1.4rem;
  font-weight: bold;
  min-width: 260px;
  line-height: 60px;
}

.contact_fm input.return {
  background: #aaa;
  margin-right: 15px;
}

@media screen and (max-width: 640px) {
  .submitbtn {
    text-align: center;
    margin-top: 5px;
  }
}

.contact_fm .your-subject {
  position: relative;
}

.contact_fm .your-subject:after {
  position: absolute;
  top: 50%;
  margin-top: -2px;
  right: 15px;
  width: 0;
  height: 0;
  margin: auto;
  content: '';
  border-top: 4px solid #ccc;
  border-right: 4px solid transparent;
  border-left: 4px solid transparent;
}

.ajax-loader {
  display: none;
}

.main_section span.wpcf7-not-valid-tip {
  font-size: 1.3rem;
  padding: 10px 5px 0;
}

.main_section .wpcf7-response-output {
  border: none;
}

body .main_section .wpcf7-mail-sent-ok,
body .main_section .wpcf7-validation-errors {
  border: 2px solid #eee;
  padding: 20px 30px;
  font-size: 1.5rem;
  line-height: 1.5;
  /* display: none !important;*/
}

@media screen and (max-width: 640px) {

  .main_section .wpcf7-mail-sent-ok,
  .main_section .wpcf7-validation-errors {
    padding: 10px 15px;
    font-size: 1.3rem;
  }
}

.contact_fm .law {
  height: 180px;
  width: 100%;
  text-align: left;
  border: 1px solid #ccc;
  padding: 20px 30px;
  overflow: auto;
  line-height: 1.8;
  color: #4B4B4B;
  font-size: 1.3rem;
  margin: 30px 0;
}

.contact_fm .law h3 {
  padding-bottom: 10px;
}

.accept {
  font-size: 1.3rem;
  text-align: center;
  padding-bottom: 10px;
}


/* --------------------------------
 * 無料相談
 * -------------------------------- */
.muryousoudan {
  overflow: hidden;
}

.page-id-33 .breadcrumbs {
  display: none;
}

.muryousoudan section.muryousoudan_flow {
  padding: 0 30px 30px;
  margin-top: 20px;
}

@media screen and (max-width: 899px) {
  .muryousoudan section.muryousoudan_flow {
    padding: 5px 20px 20px;
  }
}

/*PC*/
.muryousoudan h1 {
  padding-top: 30px;
}

.muryousoudan .onayami {
  margin: 32px 0;
  background-position: right bottom;
  background-repeat: no-repeat;
  background-size: contain;
  padding: 5px;
  margin-right: 7%;
}

.muryousoudan .onayami li {
  font-size: 1.8rem !important;
  position: relative;
  margin-left: 5%;
  line-height: 1.8;
}

/*.muryousoudan .onayami li:nth-child(2n){
    margin-left: 9%;
}
.muryousoudan .onayami li:nth-child(3n){
    margin-left: 13%;
}*/
.muryousoudan .onayami li::before {
  font-family: "Font Awesome 5 Free", sans-serif;
  content: "\f14a";
  position: relative;
  left: -1.2em;
  color: #ff8701;
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
  font-weight: 900;
  border: none;
  top: 0;
}

.muryousoudan img {
  max-width: 100%;
}

.onayami li {
  font-size: 1.8rem !important;
  position: relative;
  margin-left: 5%;
  line-height: 1.8;
}

img.txt_anshin {
  padding: 28px 12%;
  margin-bottom: 19px;
}

h2 strong,
.reason h2 strong {
  color: #0f4b89;
  color: #fe5e07;
  font-size: 110%;
}

.reason h3.arrow {
  padding: 0 0 15px 77px;
  color: #235891;
  margin-bottom: 5px;
}

.reason h3.arrow:before {
  content: "その1";
}

.reason h3.arrow.two:before {
  content: "その2";
}

.reason h3.arrow.three:before {
  content: "その3";
}

.reason h3.arrow:before {
  background-image: url(../img/muryousoudan/deco_flag.svg);
  background-repeat: no-repeat;
  background-size: contain;
  width: 200px;
  height: 24px;
  color: #fff;
  line-height: 26px;
  background-color: #ffffff00;
  position: absolute;
  font-size: 0.77em;
  padding-left: 11px;
  left: 0px;
  line-height: 23px;
  top: 2px;
}

.reason strong {
  color: #ee721c;
  font-size: 1.8rem;
}

.reason .y_line {
  font-size: 1.65rem;
  font-weight: bold;
  background: linear-gradient(transparent 70%, #fffbb7 70%);
}

img.reasonimg {
  float: right;
  margin-left: 25px;
  width: 33%;
  box-shadow: 5px 8.66px 36px 0px rgba(15, 75, 137, 0.15);
}

.reason p {
  font-size: 1.5rem;
}

/*zenka_tb*/
.zenka_tb {
  margin-top: 40px;
}

.zenka_tb br {
  display: none;
}

.zenka_tb,
.zenka_tb th,
.zenka_tb td {
  border: none !important;
}

.zenka_tb th,
.zenka_tb td {
  text-align: center;
  width: 50%;
  font-size: 1.4rem !important;
}

.zenka_tb th.center {
  width: 1%;
  background-color: #fff !important;
}

.zenka_tb tr:first-child th:first-child {
  border-radius: 0px 10px 0 0;
  font-weight: 400;
}

.zenka_tb tr:first-child th:last-child {
  border-radius: 10px 0 0 0;
  font-weight: 400;
}

.zenka_tb tr:last-child td:first-child {
  border-radius: 0 0 0 10px;
}

.zenka_tb tr:last-child td:last-child {
  border-radius: 0 0 10px 0;
}

.zenka_tb tr {
  background: #fff;
}

.zenka_tb tr:nth-child(even) {
  background: #5590d71f;
}

.zenka_tb .tsuita {
  background: #64707d !important;
}

.zenka_tb .tsukanakatta {
  background: #ee721c !important;
}

.zenka_tb th {
  font-size: 25px;
  color: #fff;
  line-height: 70px;
}

.zenka_tb th span {
  color: #fff06d;
}

.zenka_tb td:first-child {
  border-right: 1px solid #aaa;
  padding-left: 10px;
}

.zenka_tb td:last-child {
  padding-right: 10px;
}

.zenka_tb td .ttl {
  display: block;
  background: #bfc0c4;
  width: 60px;
  line-height: 28px;
  margin-left: -29px;
  border-radius: 9px;
  color: #fff !important;
  font-weight: normal;
  font-size: 1.2rem;
  position: absolute;
  top: 16px;
  letter-spacing: 5px;
  text-indent: 5px;
}

.zenka_tb td {
  line-height: 2.6 !important;
  font-weight: normal;
}

.zenka_tb td:first-child strong {
  color: #64707d;
  background-color: #fff0;
  font-weight: bold;
}

.zenka_tb td:last-child strong {
  color: #ff6c00;
  background-color: #fff0;
  font-weight: bold;
}

td.center,
th.center {
  width: 1px;
  color: #fff;
  padding: 0 !important;
  position: relative;
  background-color: #fff;
}

td.center span {
  position: absolute;
}

td.tsuitatd {
  position: relative;
}

td.tsuitatd::before {
  /* 透過した黒を重ねる */
  background-image: linear-gradient(45deg, #000 25%, transparent 25%, transparent 75%, #000 75%, #000), linear-gradient(45deg, #000 25%, transparent 25%, transparent 75%, #000 75%, #000);
  background-size: 5px 5px;
  opacity: 0.1;
  background-color: #888;
  /* どの範囲に重ねるかを指定 */
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: ' ';
}

/*voicebox*/
.voicebox {
  background: repeating-linear-gradient(-45deg, #fff, #fff 3px, #e7edf8 0, #e7edf8 5px);
  border-radius: 8px;
  padding: 6px;
  margin: 50px 0;
  position: relative;
}

.voicebox div {
  background-color: #fff;
  padding: 20px;
}

.muryousoudan .voicebox h3 {
  position: absolute;
  margin: 0;
  top: -22px;
  left: -13px;
  color: #0f4b89;
  padding: 6px 41px;
  background-image: url(../img/muryousoudan/nanameobi.svg);
  background-repeat: no-repeat;
  background-size: cover;
  font-size: 1.75rem;
}

.muryousoudan .voicebox strong {
  color: #ff7900;
  font-size: 1.85rem;
}

.muryousoudan .voicebox h3:before {
  display: none;
}

.voicebox img {
  width: 40%;
  margin: 7px 20px;
  float: right;
}

.voicebox p {
  padding: 22px 15px 50px;
  overflow: hidden;
  font-size: 1.45rem;
}

.job_a,
.job_b {
  color: #9fadc4;
  font-size: 1.2rem;
  font-weight: normal;
  padding-left: 65px;
  line-height: 1px;
  position: absolute;
  line-height: 1;
  bottom: 13px;
}

.job_a:before {
  background-image: url(../img/muryousoudan/silhouette50.svg);
  background-repeat: no-repeat;
  background-size: cover;
  width: 50px;
  height: 50px;
  content: "";
  display: block;
  position: absolute;
  bottom: -8px;
  left: 10px;
}

.job_b:before {
  background-image: url(../img/muryousoudan/silhouette30.svg);
  background-repeat: no-repeat;
  background-size: cover;
  width: 50px;
  height: 50px;
  content: "";
  display: block;
  position: absolute;
  bottom: -8px;
  left: 10px;
}

.voicebox.review p {
  padding: 15px 15px 10px;
}

.voicebox.review span.remarks {
  font-size: 1.3rem;
  text-align: right;
  display: block;
  margin-right: 15px;
}

.voicebox.review img {
  width: 42%;
  float: none;
  vertical-align: top;
  display: inline-block;
  padding-top: 28px;
}

.voicebox.review .link a {
  margin-top: 0;
  line-height: 1;
  text-align: right;
  font-size: 1.4rem;
}

/*3ten*/
/*3ten*/
.santenset {
  border: 1px solid #E6EDF9;
  border-radius: 10px;
  background: #fff;
  margin: 45px 0;
  max-width: 630px;
  margin: 45px auto 45px;
  padding: 0 0 20px;
  position: relative;
}
.post_content_card .santenset{
	width: 95%;
}

.santenset::after {
  content: "";
  display: inline-block;
  background: url(../img/3ten/santenset_okano.png) center no-repeat;
  background-size: contain;
  width: 188px;
  height: 278px;
  position: absolute;
  bottom: 0;
  right: -22px;
}

.santenset .santenset_ttl {
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
  color: #FFFFFF;
  height: 52px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  padding: 0 0 0 30px;
  margin-bottom: 30px;
  border-radius: 10px 10px 0 0;
  background: #5590D7;
  position: relative;
}

.santenset .santenset_ttl img {
  margin: 0 5px 0 0;
}

.santenset .santenset_subttl {
  font-size: 21px;
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
  color: #0A396A;
  width: 415px;
  padding: 0 0 6px 0;
  margin: 0 0 30px 5%;
  border-bottom: 1px solid #0A396A;
}

.santenset .santenset_subttl br {
  display: none;
}

.santenset .santenset_subttl span {
  font-size: 130%;
}

.santenset .santenset_ttl::after {
  content: "";
  display: inline-block;
  width: 128px;
  height: 128px;
  background: url(../img/3ten/zenkoku24zikan.svg) center no-repeat;
  background-size: contain;
  position: absolute;
  top: -14px;
  right: 18px;
}

.santenset .santenset_content {
  width: 90%;
  margin: 0 auto;
}

.santenset .santenset_content .zenkokutaiou {
  display: none;
}

.santenset .santenset_btnarea {
  max-width: 415px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.santenset .santenset_btnarea .Tel {
  margin: 0 auto 20px;
}

.santenset .santenset_btnarea .Tel img.mob {
  display: none;
}

.santenset .santenset_btnarea .Tel img.pc {
  height: 47px;
}

.santenset .santenset_btnarea .Line,
.santenset .santenset_btnarea .form_b {
  font-size: 13px;
  line-height: 1;
  padding: 20px 0 20px 49px;
  margin: 0;
  background: #E8E8E8;
  box-shadow: 0 2px 5px rgba(188, 188, 188, 0.45);
  border-radius: 50px;
  flex: 0 0 49%;
  position: relative;
}

.santenset .santenset_btnarea .Line br,
.santenset .santenset_btnarea .form_b br {
  display: none;
}

.santenset .santenset_btnarea .Line b,
.santenset .santenset_btnarea .form_b b {
  font-size: 130%;
}

.santenset .santenset_btnarea .Line::before,
.santenset .santenset_btnarea .form_b::before {
  content: "";
  display: block;
  width: 30px;
  height: 30px;
  position: absolute;
  top: 50%;
  left: 14px;
  transform: translateY(-50%);
}

.santenset .santenset_btnarea .Line::before {
  background: url(../img/3ten/3ten_line_icon_color.svg) no-repeat center;
  background-size: contain;
}

.santenset .santenset_btnarea .form_b::before {
  background: url(../img/3ten/3ten_mail_icon_color.svg) no-repeat center;
  background-size: contain;
}

.santenset .santenset_btnarea .Line::after,
.santenset .santenset_btnarea .form_b::after {
  content: "";
  display: block;
  position: absolute;
  width: 7px;
  height: 11px;
  top: 50%;
  margin-top: -5px;
  right: 9px;
  background: url(../img/icon_arr_black.svg) center no-repeat;
  background-size: contain;
}

.santenset .tyuitext {
  font-size: 1.0rem;
  line-height: 1.4;
  color: #555555;
  max-width: 415px;
  margin: 26px 0 10px;
}

.santenset .tyuitext br {
  display: none;
}

@media screen and (max-width: 640px) {
  .santenset::after {
    display: none;
  }

  .santenset .santenset_ttl {
    font-size: 1.6rem;
    height: 44px;
    padding: 0 0 0 17px;
    margin-bottom: 20px;
  }

  .santenset .santenset_ttl::after {
    display: none;
  }

  .santenset .santenset_subttl {
    font-size: 1.8rem;
    text-align: left;
    width: 90%;
    padding: 0 0 16px 5px;
    margin: 0 auto 25px;
    position: relative;
  }

  .santenset .santenset_subttl::after {
    content: "";
    display: inline-block;
    background: url(../img/3ten/santenset_okano.png) center no-repeat;
    background-size: contain;
    width: 94px;
    height: 139px;
    position: absolute;
    bottom: 0;
    right: 0;
  }

  .santenset .santenset_subttl br {
    display: inline;
  }

  .santenset .santenset_content {
    max-width: 350px;
    ;
  }

  .santenset .santenset_content .zenkokutaiou {
    display: block;
    font-size: 15px;
    font-weight: 700;
    text-align: center;
    line-height: 1;
    color: #0A396A;
    width: 237px;
    margin: 0 auto 20px;
    position: relative;
  }

  .santenset .santenset_content .zenkokutaiou::before,
  .santenset .santenset_content .zenkokutaiou::after {
    content: "";
    width: 1px;
    height: 17px;
    background: #0A396A;
    display: inline-block;
    position: absolute;
    top: 0;
  }

  .santenset .santenset_content .zenkokutaiou::before {
    left: 0;
    transform: rotate(-35deg);
  }

  .santenset .santenset_content .zenkokutaiou::after {
    right: 0;
    transform: rotate(35deg);
  }

  .santenset .santenset_btnarea .Tel {
    margin: 0 auto 10px
  }

  .santenset .santenset_btnarea .Tel img.mob {
    display: block;
  }

  .santenset .santenset_btnarea .Tel img.pc {
    display: none;
  }

  .santenset .santenset_btnarea .Line,
  .santenset .santenset_btnarea .form_b {
    font-size: 12px;
    line-height: 1.2;
    padding: 13px 0 13px 49px;
  }

  .santenset .santenset_btnarea .Line br,
  .santenset .santenset_btnarea .form_b br {
    display: inline;
  }

  .santenset .tyuitext {
    text-align: center;
  }

  .santenset .tyuitext br {
    display: inline;
  }
}

section.santen_card.muryousoudan {
  /*    border: solid #0f4b89 2px;
*/
  border: solid #e6edf8 2px;
  border-radius: 10px;
  margin: 45px 0;
  width: 650px;
  /*box-shadow: 0 3px 6px rgba(0, 0, 0, 0.02), 0 3px 6px rgba(0, 0, 0, 0.1);*/
  /*テスト*/
}

section.santen_card.muryousoudan:last-child {
  margin-bottom: 0;
}

.santen_card.muryousoudan h2.temp_ttl {
  margin-top: 0;
  text-align: center;
  background-color: #0f4b89;
  background-color: #5590d7;
  /*テスト*/
  color: #fff;
  font-size: 1.65rem;
  line-height: 1;
  border-bottom: solid 2px #0f4b89;
  border-bottom: solid 2px #5590d7;
  /*テスト*/
  border-radius: 8px 8px 0 0;
}

.santen_card.muryousoudan .txtarea h2.santen_ttl {
  background-color: #fff;
  padding: 0;
  padding-bottom: 14px;
  margin: 20px 20px 0;
}

.santen_card.muryousoudan h2:before,
.santen_card.muryousoudan h3:before {
  display: none;
}

.santen_card.muryousoudan h3 {
  font-size: 1.25rem;
  margin: 10px 20px;
  padding: 0;
  font-weight: normal;
}

.santen_card.muryousoudan h3 span {
  color: #ff7300;
}

img.santen_tel_num {
  display: block;
  margin: 0 auto;
  padding: 30px 18%;
}

.santen_card.muryousoudan p.santen_kome {
  text-align: right;
  margin-right: 20px;
}

.santen_card.muryousoudan .txtarea div {
  background-color: #e6edf8;
  display: -webkit-flex;
  /* Safari */
  display: flex;
  -webkit-justify-content: center;
  /* Safari */
  justify-content: center;
  -webkit-align-items: stretch;
  /* Safari */
  align-items: stretch;
  padding-top: 6px;
  border-radius: 0 0 10px 10px;
  margin-top: 6px;
}

.santen_card.muryousoudan .txtarea div a {
  width: 46%;
  margin: 10px 3px;
  padding: 0;
}

.santen_card.muryousoudan .txtarea div a img {
  width: 300px;
}

.step_img {
  margin-top: 28px;
}

/*SP*/
@media screen and (max-width: 640px) {
  .muryousoudan .pattern-b {
    display: block !important;
  }

  .muryousoudan h1 {
    padding-top: 0;
  }

  .muryousoudan img {
    max-width: 100%;
  }

  .muryousoudan .onayami {
    padding: 0;
    margin-right: 0;
  }

  .muryousoudan .onayami li {
    font-size: 1.55rem !important;
    text-shadow: 2px 2px 1px #fff,
      -2px 2px 1px #fff,
      2px -2px 1px #fff,
      -2px -2px 1px #fff;
  }

  .muryousoudan .onayami li .y_line {
    text-shadow: none;
  }

  img.txt_anshin {
    padding: 28px 2%;
  }

  section.santen_card.muryousoudan {
    width: 100%;
  }

  .muryousoudan .txtarea {
    padding: 8px 4% 28px;
  }

  .santen_card.muryousoudan .txtarea h2.santen_ttl {
    margin: 0;
  }

  .santen_card.muryousoudan p.santen_kome {
    text-align: center;
    margin-right: 0;
  }

  .reason h3.arrow:before {
    top: 0.8em;
  }

  img.reasonimg {
    float: none;
    margin-bottom: 20px;
    margin-left: 14%;
    width: 72%;
  }

  .page_content table.zenka_tb td {
    padding: 10px 5px 10px 15px;
  }

  .page_content table.zenka_tb td.tsuitatd {
    padding: 10px 15px 10px 5px;
  }

  .zenka_tb br {
    display: block;
  }

  .zenka_tb td {
    line-height: 1.6 !important;
  }

  .zenka_tb th,
  .zenka_tb td {
    font-size: 1.35rem !important;
  }

  .voicebox img {
    width: 90%;
    margin: 17px 5% 0px;
    float: none;
  }

  .voicebox p {
    padding: 22px 0 50px;
  }

  .job_a,
  .job_b {
    right: 20px;
  }

  .job_a:before,
  .job_b:before {
    right: -60px;
  }

  .voicebox.review p {
    padding: 10px 0;
  }

  .voicebox.review span.remarks {
    font-size: 1.2rem;
    margin-right: 0;
  }

  .voicebox.review img {
    width: 80%;
    margin: 10px 8% 0;
    float: none;
    padding: 10px 0;
  }

  .zenka_tb td .ttl {
    width: 46px;
    margin-left: -22px;
  }

  .muryousoudan .step_img {
    margin: 28px -4% 0;
    max-width: 108%;
    width: 108%;
  }

  .muryousoudan .voicebox h3 {
    font-size: 1.6rem;
    padding: 6px 30px;
  }
}


/*ABCtest*/
.mobfoot_contact .contact_btnarea .bnr {
  width: 100%;
  border-radius: 0;
  line-height: 0;
  display: block;
}

.mobfoot_contact .contact_btnarea .bnr:before {
  display: none;
}

.mobfoot_contact .contact_btnarea .bnr img {
  display: block;
}

span.close {
  position: absolute;
  right: 0;
  top: 0;
  background-color: #364452;
  font-size: 10px;
  padding: 2px;
  width: 14px;
  color: #fff;
}

a.muryou_bnr {
  margin-bottom: 18px;
  display: block;
}

.side_pc_block.tel {
  display: none;
}

/* --------------------------------
 * サイドバー　タブ
 * -------------------------------- */
/*タブ切り替え全体のスタイル*/
.side .navcontent {
  padding: 2px 0 18px;
}

/*タブのスタイル*/
.navcontent .tab_item {
  width: calc(100%/2);
  height: 45px;
  border-bottom: 3px solid #0f4b89;
  background-color: #d9d9d9;
  line-height: 45px;
  font-size: 14px;
  text-align: center;
  color: #565656;
  display: block;
  float: left;
  text-align: center;
  font-weight: bold;
  transition: all 0.2s ease;
}

.side .tab_item:hover {
  opacity: 0.75;
}

.side .nav_qa {
  margin-bottom: 18px;
}

.navcontent .tab_item.active {
  background-color: #0f4b89;
  color: #fff;
}

/*ラジオボタンを全て消す*/
.navcontent input[name="tab_item"] {
  display: none;
}

/*タブ切り替えの中身のスタイル*/
.navcontent .tab_content {
  display: none;
  clear: both;
  overflow: hidden;
}

/*選択されているタブのコンテンツのみを表示*/
#choose:checked~#choose_content,
#search:checked~#search_content,
#design:checked~#design_content {
  display: block;
}

/*選択されているタブのスタイルを変える*/
.tabs input:checked+.tab_item {
  background-color: #0f4b89;
  color: #fff;
}

.side .tab_content {
  padding: 0 4%;
}

.side .navcontent .ttl {
  border-bottom: none;
}

.tab_content .key_area {
  margin-top: 18px;
}

.tab_item i {
  color: #b6b4b4;
  margin-right: 8px;
}

.tab_item.active i {
  color: #e6edf8;
}

/* --------------------------------
 * knowトップ　タブ
 * -------------------------------- */
.know_head .tabs {
  padding-top: 18px;
}

.tabs .knowtop_search {
  margin-top: 0;
}

/*タブ切り替え全体のスタイル*/
.know_head .navcontent {
  padding: 2px 0 18px;
}

/*タブのスタイル*/
.know_head .tab_item {
  width: calc(100%/2);
  height: 45px;
  border-bottom: 3px solid #5590d7;
  background-color: #d9d9d9;
  line-height: 45px;
  font-size: 14px;
  text-align: center;
  color: #565656;
  display: block;
  float: left;
  text-align: center;
  font-weight: bold;
  transition: all 0.2s ease;
}

.know_head .nav_qa {
  margin-bottom: 18px;
}

.know_head .tab_content {
  padding-top: 45px;
  background-color: #e6edf8;
  text-align: left;
}

.know_head div#know_choose {
  padding: 45px 4% 20px;
}

.know_head .tab_content h3 {
  line-height: 45px;
  margin-top: 15px;
}

.know_head .tabs .knowtop_keylist .ttl {
  margin-top: 7px;
  padding-bottom: 2px;
}

/*選択されているタブのスタイルを変える*/
.know_head .tab_item.active {
  background-color: #5590d7;
  color: #fff;
}

.know_head .tab_item i {
  color: #b6b4b4;
}

.know_head .tab_item.active i {
  color: #e6edf8;
}

.know_head .navcontent .ttl {
  border-bottom: none;
}


/* --------------------------------
 * 長谷川先生記事
 * -------------------------------- */
.hasepost article {
  padding: 18px 4% 45px;
}

.hasepost table {
  width: 100%;
  text-align: center;
  margin-top: 30px;
  margin-bottom: 30px;
}

.hasepost table tr:first-child th {
  background-color: #5590d7d4;
  color: #fff;
  padding: 10px;
  text-align: center;
}

.hasepost table th {
  background-color: #5590d736;
}

.hasepost table tr {
  border-left: solid 1px #5590d7;
}

.hasepost table tr:first-child {
  border-top: solid 1px #5590d7;
}

.hasepost table th,
.hasepost table td {
  padding: 10px;
  text-align: center;
  border-bottom: solid 1px #5590d7;
  border-right: solid 1px #5590d7;
  font-size: 0.8em;
  line-height: 1.5;
  vertical-align: middle;
}

.hasepost table {
  width: 100%;
}

.hasepost .scroll {
  overflow-x: auto;
  white-space: nowrap;
  -webkit-overflow-scrolling: touch;
  margin-bottom: 10px;
}

/*スクロールバー表示させる*/
.scroll::-webkit-scrollbar {
  height: 8px;
}

.scroll::-webkit-scrollbar-track {
  background: #5590d736;
  border: none;
  border-radius: 10px;
}

.scroll::-webkit-scrollbar-thumb {
  background: #fff;
  border-radius: 10px;
  box-shadow: none;
  box-shadow: inset 0 0 2px #5590d7;
}

.hasepost h3 {
  color: #5590d7;
  font-weight: bold;
  line-height: 1.3;
  font-size: 1.8rem;
  flex: 1;
  letter-spacing: 0.4px;
  padding-top: 3px;
  margin-top: 50px;
  padding-left: 50px;
  position: relative;
}

.hasepost h3:before {
  background: #5590d7;
  border-radius: 5px;
  text-align: center;
  display: inline-block;
  font-family: 'Comfortaa', cursive;
  color: #fff;
  line-height: 40px;
  width: 40px;
  height: 40px;
  left: -0;
  font-weight: bold;
  font-size: 1.55rem;
  position: absolute;
  counter-increment: number 1;
  /* number カウンタの増加数をセット */
  content: "Q"counter(number);
  /* 表示形式を指定 */
}

.hasepost {
  counter-reset: number 0;
  /* number のカウンタを 0 にセット */
}

.hasepost .post_content_card h3:first-child,
.hasepost .post_content_card h4:first-child {
  margin-top: 10px;
}

.hasepost h4 {
  color: #5590d7;
  font-weight: 500;
  border-bottom: solid 3px #5590d74f;
  /*    border-top: solid 3px #5590d74f;*/
  display: inline-block;
  line-height: 1.5;
  margin-top: 40px;
  font-size: 1.05em;
}

.hasepost h3+.post_comment,
.hasepost h4+.post_comment {
  padding-top: 30px;
}

.hasepost h4+.img {
  margin-top: 20px;
}

.hasepost p {
  margin-top: 18px;
}

.hasepost p.post_head_lawyer_answer {
  margin-top: 0;
}

.hasepost p.txt {
  margin-top: 0;
}


@media screen and (min-width: 900px) {
  .hasepost article {
    padding: 18px 45px 45px;
  }

  .hasepost .img {
    max-height: 60vh;
    text-align: center;
    margin: 0 0 20px;
    background-color: #eee;
    /*     background: repeating-linear-gradient(-45deg, #f5f5f5, #f5f5f5 10px, #f5f5f5 0, #e1e1e1 15px);
     background-size: 5px;*/
  }

  .hasepost .img img {
    width: auto;
    max-height: 360px;
  }

  .hasepost h4,
  .hasepost h3 {
    margin-top: 40px;
  }

  .hasepost .scroll {
    width: 635px;
  }

  .hasepost .pagenav {
    display: none;
  }
}

@media screen and (max-width: 899px) {
  .hasepost .pagenav a:before {
    display: none;
  }

  .hasepost .pagenav a span {
    font-family: 'Comfortaa', cursive;
    content: "1";
    color: #fff;
    font-size: 1rem;
    line-height: 20px;
    text-align: center;
    position: absolute;
    left: 2px;
    top: 9px;
    display: block;
    background: url(../img/single/ribon_nav_off.svg) no-repeat center;
    width: 15px;
    height: 20px;
  }

  .hasepost .pagenav a.current span {
    background: url(../img/single/ribon_nav.svg) no-repeat center;
  }

  .hasepost .post_content_card h3:first-child,
  .hasepost .post_content_card h4:first-child,
  .hasepost .post_content_card p:first-child {
    margin-top: 0;
  }
}

.hasepost .post_section h2 {
  line-height: 1.3;
}

.hasepost .notice {
  border: 1px solid #ccc;
  padding: 20px;
  margin-top: 40px;
  font-size: 0.9em;
}

.hasepost .notice+.notice {
  margin-top: 20px;
}

.hasepost .notice p {
  font-size: 0.9em;
  margin: 0;
}

.hasepost .notice h5+p,
.hasepost .notice p+p {
  margin-top: 20px;
}

.hasepost .notice ul {
  margin-top: 20px;
}

.hasepost .notice li {
  list-style-type: square;
  font-size: 0.88em;
  line-height: 1.2;
  margin-bottom: 0.5em;
  margin-left: 20px;
}

.hasepost b.fRed {
  color: rgb(255, 115, 0) !important;
}

.hasepost p.f80 {
  font-size: 0.8em;
  margin-top: 5px;
}

/**/

.seihanzaiBox03 {
  border: 1px solid #5590d7;
  padding: 15px 5% 10px 5%;
  margin-top: 30px;
}

.seihanzaiBox03 h4 {
  text-align: center;
  background: none !important;
  margin: 10px auto 3px auto;
  padding: 0;
  margin-top: 0 !important;
}

.seihanzaiBox03 h5 {
  font-size: 15px;
  color: #333;
  padding: 5px 10px;
  margin-top: 10px;
  display: table;
  background: #f7f5f1 url() !important;
}

.seihanzaiBox03 h6 {
  font-size: 0.82em;
}

.seihanzaiBox03 p {
  margin: 5px 0 10px;
}

.jikenBox,
.jikenBox02 {
  background: url(../img/hase/higishaA.gif) no-repeat 15px 15px;
  min-height: 80px;
  padding: 10px 0 10px 100px;
  margin: 0 auto 15px auto;
  display: table !important;
  width: auto;
}

.jikenBox02 {
  background-image: url(../img/hase/higishaB.gif);
}

.hanketsu {
  float: left;
  text-align: center;
  padding: 12px 5px 12px 5px;
  margin-top: 15px;
  width: 160px;
  box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.35);
  background: linear-gradient(to bottom, #eee, #fff);
  background: -webkit-linear-gradient(top, #eee, #fff);
  background: -moz-linear-gradient(top, #eee, #fff);
  background: -o-linear-gradient(top, #eee, #fff);
  border: 1px solid #fff;
}

.hanketsu span {
  color: #c00;
  font-weight: bold;
  font-size: 18px;
  background: url(../hase/precedent/tape.png) no-repeat center top;
  padding-top: 20px;
  margin-top: -7px;
}

.hanketsu p {
  color: #c00;
  margin: 0 !important;
  font-size: 15px !important;
  line-height: 1.5 !important;
}

.hanninBox {
  float: left;
  margin-right: 30px;
  margin-top: 21px;
  max-width: 210px;
}

p.seihanzaiP14,
p.seihanzaiP12 {
  font-size: 0.88em;
}

@media screen and (min-width: 900px) {
  .hanketsu {
    width: 210px;
  }
}

@media screen and (max-width: 899px) {
  .hanketsu {
    margin-top: 3px;
    width: 100%;
  }

  .hanninBox {
    margin-top: 5px;
  }

  .jikenBox,
  .jikenBox02 {
    background-position: 15px 30px;
  }
}

/**/
main .lkc-internal-wrap {
  margin: 40px 10px;
  border: 1px solid #e2e2e2;
  border-radius: 4px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.02), 0 3px 6px rgba(0, 0, 0, 0.1);
  background-color: #ffffff;
}

/*ブログカード*/
main .lkc-title {
  padding: 0px 10px;
  display: block;
}

main .lkc-excerpt {
  padding: 7px 10px;
  overflow: hidden;
  height: 3.6em;
  font-size: 13px;
  line-height: 1.5;
}

main .lkc-domain {
  margin-top: 10px;
  font-size: 11px;
  color: rgba(0, 0, 0, 0.7);
}

/*内部リンク*/
main .internallink {
  border: 1px solid #e6e6e6;
  padding: 0 15px;
  margin-bottom: 40px;
  margin-top: 40px;
  background-color: rgba(217, 231, 240, 0.09);
}

main .internallink li span {
  line-height: 1.5em;
  padding: 5px 0;
  font-size: 0.92em;
}

main .internallink li b {
  padding: 0px 0 10px;
  display: block;
  color: #5590d7;
}

main .internallink i {
  color: #218df2 !important;
}

.lkc-card .lkc-title-text {
  padding: 0 10px;
  display: block;
}

.lkc-card .lkc-thumbnail-img {
  box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.05);
  width: auto;
  max-height: 84px;
}

.lkc-info {
  margin-top: 6px;
}

@media screen and (max-width: 899px) {
  .lkc-card .lkc-title-text {
    padding: 0 0px 0 10px;
    display: block;
    font-size: 15px;
    line-height: 1.5;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
  }

  .lkc-card .lkc-excerpt {
    display: none;
  }

  .lkc-card .lkc-content {
    min-height: 84px;
    height: auto;
  }
}

/*admin 記事のメタチェック用*/
.svaukw {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  justify-content: space-between;
  padding-left: 0;
  width: 100%;
  background: #5590d7;
  padding: 4px 20px;
}

.svaukw .RAIN {
  background-color: #ff0000;
  margin-left: 30px;
}

.svaukw p i {
  background-color: #8cb8ec;
  padding: 4px 6px;
  margin-right: 5px;
  font-style: normal;
  font-size: 0.75em;
  border-radius: 180px;
  line-height: 2.3;
}

.svaukw p {
  font-size: 0.7em;
  color: #fff;
  font-style: normal;
}

.svaukw p i.red,
.svaukw p i.rain {
  background-color: red;
}

a.t-link {
  color: #5590d7 !important;
  border-bottom: dotted 1px;
  font-weight: bold;
}

a.t-link:active,
a.t-link:focus {
  opacity: 0.8;
  background-color: #f7f7f7;
}


/*取り扱い事件と得意な活動　の記事*/
.zaimei .toc_list li:before {
  display: none;
}

.zaimei a {
  color: #218df2;
  text-decoration: underline;
}

/*SPボタン3つver*/
#btntest {
  width: 95%;
  margin: 0 auto;
}

#btntest a::before {
  content: none;
}

#btntest a.tel_test,
#btntest a.line_test {
  width: 48px;
  line-height: 48px;
  border-radius: 50%;
  position: relative;
}

#btntest a img {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  width: 50%;
}

#btntest a.free_test {
  width: auto;
  padding: 0 1em;
  /*  margin-left: 10px;*/
  line-height: 48px;
  background-image: none;
  background-color: #548fd6;
  /*font-size: 1.4rem;*/
}

#btntest a.free_test:before {
  content: "";
  display: inline-block;
  width: 18px;
  height: 18px;
  background: url(../img/icon_free.png) no-repeat center;
  background-size: contain;
  margin-right: 5px;
  vertical-align: text-bottom;
}

#btntest a.tel_test {
  /*background-image: linear-gradient(100deg, #ffa200, #ff6b00);*/
  background-image: none;
  background-color: #ff6b00;
}

#btntest a.line_test {
  /*background-image: linear-gradient(100deg, #96F326, #13bf00);*/
  background-image: none;
  background-color: #13bf00;
}



/*フロントページ　タブレット用調整*/
@media only screen and (max-width: 899px) and (min-width: 481px) {
  .mv_thum {
    width: 149px;
    float: left;
    padding: 4px 0;
  }

  .mv_thum .thum_btn {
    background: #0f4b89;
    border-radius: 2px;
    padding: 11px 13px;
    height: 62px;
    position: relative;
    transition: .3s ease-in-out;
    cursor: pointer;
  }

  .mv_thum .thum_btn+.thum_btn {
    margin-top: 7px;
  }

  .mv_thum .thum_btn .txt {
    color: #fff;
    font-size: 16px;
    transition: .3s ease-in-out;
  }

  .mv_thum .thum_btn span {
    font-size: 1px;
    color: #7f9ec0;
    display: block;
    line-height: 1;
    font-family: 'Comfortaa', cursive;
    letter-spacing: 0.5px;
    transition: .3s ease-in-out;
  }


  .mv_thum .thum_btn.current {
    background: #fff;
  }

  .mv_thum .thum_btn.current .txt {
    color: #0f4b89;
  }

  .mv_thum .thum_btn.current:before {
    content: "";
    display: inline-block;
    border: 5px solid transparent;
    border-left-color: #fff;
    left: 100%;
    top: 50%;
    margin-top: -5px;
    position: absolute;
  }

  .mv_tel_bnr {
    width: 330px;
  }

  h2.mainttl_img {
    padding: 18px 0 30px;
    margin-bottom: 0;
  }

  /* h2.mainttl_img:not(.top) img {
    height: 24px;
  } */

  .mv_photo {
    width: 550px;
    height: 345px;
    float: right;
    position: relative;
  }

  .nav_atom h3 {
    color: #fff;
    line-height: 40px;
    font-size: 15px;
    font-weight: bold;
    border-bottom: solid 1px #8394a8;

    padding-top: 10px;
    margin-bottom: 15px;
  }

  .nav_atom h3 a {
    color: #fff;
  }

  .nav_atom li a {
    color: #fff;
    /*    line-height: 27px;*/
    font-size: 14px;
  }

  .ft1 li a {
    line-height: 34px;
    font-size: 15px;
    font-weight: bold;
  }

  .ft1 li a:before,
  .nav_atom h3:before {
    content: "";
    display: inline-block;
    border: 5px solid transparent;
    border-left-color: #e6edf85e;
    right: -16px;
    top: calc(50% - 2px);
    padding-right: 5px;
  }

  .ft3 .clm2 {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    justify-content: flex-start;
    margin-right: 0;
  } 

  .clm2 ul {
    margin-right: 30px;
  }

  .ft2,
  .ft3 {
    font-weight: 100;

  }

  .header_inner .nav_qa,
  .header_inner .nav-close {
    display: none;
  }
}


/*タブレット横以上 - wp_mobileで消えない要素の非表示*/
@media screen and (min-width: 900px) {

  .mobfoot_contact.fixed,
  .voice_area,
  .nav_atom_head .Tel {
    display: none;
  }

  .subpage_list {
    padding-top: 0;
    margin-left: 40px;
  }
}

/*PCでぐに～っと小さくしたときの対応 - !wp_mobileで消えない要素の非表示*/
@media screen and (max-width: 899px) {
  .mv .inner {
    display: none;
  }

  footer .navcontent ul li {
    line-height: 1.5;
  }
}

/*lazyload　読み込めないとき*/
.photolist .lazyloading {
  height: 1px;
  border: none !important;
}

.bengoshi .lazyloading {
  display: none;
}


/*タブレット対応*/
@media screen and (min-width: 900px) and (max-width: 1024px) {

  .atom_foot .muryousoudan_flow,
  section.santen_card.muryousoudan {
    width: 100%;
  }

  .voicebox.review img {
    width: 40%;
  }
}

/* ============== プライバシーポリシー＆利用規約 ============== */
.arrow_none li:before {
  display: none !important;
}

.privacy_use p {
  margin-top: 12px;
}

.privacy_use li {
  line-height: 1.6 !important;
}



/* --------------------------------
* アトム3バナー
* -------------------------------- */

.sitelink_frame {
  padding: 0 15px;
}

.sitelink_frame .ttl {
  text-align: center;
  color: #004362;
  font-size: 1.75rem;
  padding-bottom: 0;
  margin-top: 20px;
}

.sitelink {
  padding: 25px 0px 20px;
  /*  border-bottom: 1px solid #ddd;*/
  display: block;
}

/* .sitelink_frame article:first-child {
  padding-top: 10px;
} */

.sitelink_frame article:last-child {
  border: none;
  padding-bottom: 30px;
}

.sitelink_frame p {
  padding-top: 4px;
  line-height: 1.7;
  font-weight: normal;
  letter-spacing: 0.02em;
  font-size: 14px;
  margin: 0;
}

.sitelink a {
  text-decoration: underline;
  font-weight: bold;
}

@media screen and (min-width: 769px) {
  .sitelink_frame div {
    margin: 0 auto;
    padding: 0;
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    width: 1100px;
  }

  .sitelink_frame .ttl {
    font-size: 2rem;
    padding-bottom: 20px;
  }

  .sitelink {
    padding: 15px 0px;
    display: flex;
    -webkit-justify-content: space-between;
    /* Safari */
    justify-content: space-between;
    -webkit-align-items: flex-start;
    /* Safari */
    align-items: flex-start;
    max-width: 500px;
    margin: 0 25px;
  }

  .sitelink:first-child {
    padding-top: 15px;
  }

  .sitelink img {
    width: 160px;
    margin-right: 16px;
    max-width: none;
    box-sizing: content-box;
    border: solid 1px #eee;
  }
  .sitelink p {
    padding-top: 0;
  }
}

/*フッターリクルート*/
a.shoudanbtn {
  font-size: 1.5rem;
  font-weight: bold;
  width: 82%;
  height: 100%;
  display: block;
  color: #fff;
  background: #5590d7;
  line-height: 72px;
  border-radius: 3px;
  box-shadow: 2px 2px 2px rgba(0, 0, 0, .1);
  position: relative;
  text-align: center;
  margin: 40px auto 0;
  position: relative;
  border: 1px solid #fff;
}

a.shoudanbtn:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 5px;
  width: 8px;
  height: 8px;
  margin-top: -4px;
  opacity: .5;
  background: url(../img/arrow.svg) no-repeat right center;
  background-size: contain;
}

.shoudan iframe {
  height: 100vh;
  width: 100%;
}

.recruit iframe {
  height: 100vh;
  width: 100%;
}

iframe#parentframe {
  width: 100%;
}

section.frame.biz .main {
  margin-right: 0;
}

.footer_nav .biz li,
.footer_nav .recruit li {
  width: 100%;
}

.footer_nav .biz li a,
.footer_nav .recruit li a {
  padding-left: 3%;
}

.recruit.pc {
  display: none;
}

.recruit.sp a {
  color: #fff;
}

/*.footer .recruit {
    border: solid 1px #fff;
    background: #218df2;
    padding: 8px 13px;
    width: 100%;
    margin-top: 20px;
}*/
footer .navcontent .recruit ul li {
  line-height: 3.2;
  position: relative;
}

footer .navcontent .recruit ul li a:after {
  content: url(../img/icon_arr_w.svg);
  position: absolute;
  right: 5px;
  top: -2px;
}

.recruit.sp {
  text-align: center;
  margin-top: 20px;
}

@media screen and (min-width: 900px) {
  .recruit.pc {
    display: block;
    margin-top: 50px;
    max-width: 289px;
  }

  footer .navcontent .recruit ul li {
    line-height: 1.5;
  }

  footer .navcontent .recruit ul li a:after {
    display: none;
  }

  .recruit .ttl {
    margin-right: 0;
    padding-left: 5px;
    padding-right: 5px;
  }

  .recruit .ttl a {
    color: #fff;
  }

  .footer_nav .biz,
  .footer_nav .recruit {
    margin-top: 60px;
  }

  .footer_nav .biz li a,
  .footer_nav .recruit li a {
    padding-left: 0;
  }

  .biz.sp {
    display: none;
  }
}

.movie_bnr {
  width: 100%;
  padding: 0 4%;
}

.movie_bnr a {
  display: block;
}

.movie_bnr img {
  border-radius: 5px;
  box-shadow: 0px 6px 6px 2px rgba(0, 0, 0, 0.1);
}

.movie_bnr_pc {
  position: fixed;
  right: 3%;
  bottom: 20px;
  z-index: 100;
}

.movie_bnr_pc img {
  width: 309px;
  height: auto;
  border-radius: 5px;
  box-shadow: 0px 6px 6px 2px rgba(0, 0, 0, 0.1);
}

/*front-b*/
.katsudou {
  text-align: center;
  padding: 0 !important;
  letter-spacing: 1px;
}

.katsudou .bg {
  width: 100%;
  background: no-repeat center;
  background-size: cover;
  padding: 54px 4% 34px;
  color: #fff;
  position: relative;
  background-position: top;
  margin-top: -20px;
}

/*.katsudou .bg:before {
  content:"";
  width: 100%;
  height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: linear-gradient(45deg, rgba(4,191,207,0.6), rgba(191,25,203,0.6));
}*/
.katsudou strong {
  color: #ff8200;
  font-size: 120%;
  border-bottom: solid 2px;
  border-top: solid 2px;
  padding: 2px;
}

.katsudou p b {
  font-size: 100%;
  -webkit-text-emphasis: filled dot #fff;
  text-emphasis: filled dot #fff;
}

.ico3 {
  padding: 15px 8% 2px;
}

.katsudou .link a {
  padding: 10px;
  margin-top: 0;
  margin-bottom: 18px;
}

.katsudou a b {
  -webkit-text-emphasis: none;
  text-emphasis: none;
}

.katsudou2 .bg {
  width: 100%;
  background: no-repeat center;
  background-size: contain;
  padding: 20px 0% 20px;
  color: #0a53ab;
  position: relative;
  background-position: top;
  margin-top: 10px;
}

.katsudou2 strong {
  color: #ff8200;
  font-size: 120%;
  border-bottom: solid 2px;
  border-top: solid 2px;
  padding: 2px;
}

.katsudou2 p b {
  font-size: 100%;
  -webkit-text-emphasis: filled dot #fff;
  text-emphasis: filled dot #fff;
}

.katsudou2 .ico3 {
  padding: 15px 12% 2px;
}

.katsudou2 p {
  font-size: 1.5rem;
}

.katsudou.free {
  text-align: center;
  padding: 0 !important;
  letter-spacing: 1px;
  margin: 50px -4% 0;
}

@media screen and (min-width: 900px) {
  .katsudou.free {
    margin: 50px -7% 0;
  }

  .katsudou .bg {
    padding: 74px 0 34px;
    margin-top: -20px;
  }

  .katsudou p {
    font-size: 1.9rem !important;
  }

  .ico3 {
    padding: 20px 14% 10px;
  }
}


/*電話ボタンB*/
.msoudan_btn.patb a {
  background: #00aee6;
  line-height: 1;
  text-align: center;
  padding: 15px;
  border: 1.5px solid #fff;
  box-shadow: 1px 4px 10px -2px rgba(0, 0, 0, .15);
  margin-bottom: 10px;
  padding: 0;
  height: auto;
  box-shadow: none;
  background-image: linear-gradient(to right, #f78ca0 0%, #f9748f 19%, #fd868c 60%, #fe9a8b 100%);
  background-image: linear-gradient(to right, #f78ca0 0%, #f9748f 19%, #fd868c 60%, #fe9a8b 100%);
  width: 48%;
  display: inline-block;
  border-radius: 6px;
  position: relative;
}

.msoudan_btn.patb {
  text-align: right;
}

.msoudan_btn.patb a:before {
  display: block;
  content: "";
  border-radius: 50%;
  background: #fff url(../img/3ten_tel_icon_pink.svg) no-repeat center;
  border: 2px solid #f87e7e;
  background-size: 18px 18px;
  width: 32px;
  height: 32px;
  top: 34px;
  left: 15px;
  -webkit-animation: spin 10s linear infinite;
  -moz-animation: spin 10s linear infinite;
  -ms-animation: spin 10s linear infinite;
  -o-animation: spin 10s linear infinite;
  animation: spin 10s linear infinite;
  position: absolute;
  box-sizing: border-box;
}

@-webkit-keyframes spin {
  0% {
    -webkit-transform: rotate(0deg);
  }

  100% {
    -webkit-transform: rotate(360deg);
  }
}

@-moz-keyframes spin {
  0% {
    -moz-transform: rotate(0deg);
  }

  100% {
    -moz-transform: rotate(360deg);
  }
}

@-ms-keyframes spin {
  0% {
    -ms-transform: rotate(0deg);
  }

  100% {
    -ms-transform: rotate(360deg);
  }
}

@-o-keyframes spin {
  0% {
    -o-transform: rotate(0deg);
  }

  100% {
    -o-transform: rotate(360deg);
  }
}

@keyframes spin {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}


/*無料相談の流れ*/
section.muryousoudan_flow {
  background-color: #5590d7;
  padding: 5px;
}

.flowbox {
  background-color: #fff;
  margin: 50px 1% 0;
  border-radius: 8px;
  padding: 10px 20px 20px 50px;
  position: relative;
}

.flowbox span.step {
  background-color: #e6edf8;
  width: 60px;
  height: 60px;
  display: block;
  text-align: center;
  border-radius: 30px;
  position: absolute;
  left: -20px;
  top: -20px;
  font-family: 'Monotype Corsiva', "游明朝体", YuMincho, 'serif';
  color: #0f4b89;
  padding: 3px;
  filter: drop-shadow(0px 0px 2px rgba(20, 20, 20, .25));
}

.flowbox span.step b {
  display: block;
  font-size: 28px;
  font-style: italic;
  text-indent: -0.25em;
  line-height: 37px;
}

.flowbox:before {
  background-image: url(../img/muryousoudan/arrow.svg);
  background-repeat: no-repeat;
  background-size: contain;
  left: 3px;
  top: -95px;
  position: absolute;
  display: block;
  width: 20px;
  height: 70px;
  content: "";
  opacity: 0.3;
}

img.msoudan_ttl {
  margin: 0 auto;
  text-align: center;
  display: block;
  padding: 30px 0 0;
  height: 52px;
}

h2.midashi_img {
  height: 52px;
  background: none;
  margin: 0;
  padding: 15px 0;
  text-align: left;
}

h2.midashi_img:before {
  display: none;
}

h2.midashi_img img {
  height: 19px;
}

.flowbox p {
  font-size: 1.5rem;
  line-height: 1.6;
  text-align: left;
}

.flowbox p b {
  color: #ee721c;
}

.flowhosoku {
  background: #fffbb7;
  padding: 10px 20px;
  border-radius: 8px;
  border-top-left-radius: 8px;
  border-top-right-radius: 8px;
  border-bottom-right-radius: 8px;
  border-bottom-left-radius: 8px;
  font-size: 0.85em;
  position: absolute;
  right: -12px;
  margin-top: 5px;
  /*    width: fit-content;*/
  /*    filter: drop-shadow(0px 0px 3px rgba(50,50,50,.15));
*/
}

.flowhosoku:before {
  background-image: url(../img/muryousoudan/icon_fukidashi.png);
  background-repeat: no-repeat;
  background-size: contain;
  left: -12px;
  top: 22px;
  position: absolute;
  display: block;
  width: 17px;
  height: 17px;
  content: "";
}

.flowhosoku p {
  font-size: 88%;
  line-height: 1.6;
}

.flowbox.box1 {
  background-image: url(../img/muryousoudan/step1_bg.jpg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: right;
  margin-top: 30px;
}

.flowbox.box2,
.flowbox.box3 {
  margin-bottom: 68px;
}

.flowbox.box1:before {
  display: none;
}

.flowbox br.sponly {
  display: none;
}

@media screen and (max-width: 899px) {
  .flowbox br.sponly {
    display: block;
  }

  .flowbox {
    padding: 10px 20px 20px 35px;
  }

  .flowbox span.step {
    width: 50px;
    height: 50px;
    left: -11px;
    font-size: 88%;
    font-style: italic;
  }

  .flowbox span.step b {
    font-size: 22px;
    line-height: 30px;
  }

  h2.midashi_img {
    height: 48px;
    width: auto;
  }

  .flowhosoku {
    font-size: 0.80em;
  }

  .flowbox:before {
    left: 7px;
  }

  section.muryousoudan_flow {
    padding: 5px 20px;
  }
}

/*TELbtn 2022*/
.mobfoot_contact.wide {
  bottom: 10px;
  box-shadow: none;
  background: none;
  height: auto;
  justify-content: space-between;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  align-items: center;
  padding: 0 5px;
  position: fixed;
  bottom: 0;
  z-index: 2000;
}

.mobfoot_contact.wide a.Tel img {
  background-color: #128ea2;
  background-image: linear-gradient(to right, #369fb0 0%, #2c8ea2 100%);
  display: block;
  padding: 10px 12px 10px 18px;
  color: #fff;
  border-radius: 10px;
  border: solid #a1dde7 4px;
  box-shadow: 0px 2px 7px -2px rgba(0, 0, 0, .15);
}

.mobfoot_contact_fukidashi {
  margin-right: 5px;
}
.kirakira{
	overflow: hidden;
}
.kirakira::before{
	content: "";
    display: block;
    height: 100%;
    width: 30px;
    position: absolute;
    top: -180px;
    left: 0;
    background-color: #fff;
    opacity: 0;
    transform: rotate(45deg);
	/*３秒後スタート10秒おき*/
    animation: reflection 10s 3s ease-in-out infinite;
    z-index: 2;
}
@keyframes reflection {
	0% { transform: scale(0) rotate(45deg); opacity: 0; }
	7% { transform: scale(0) rotate(45deg); opacity: 0.3; }
	7.5% { transform: scale(4) rotate(45deg); opacity: 0.8; }
	10% { transform: scale(50) rotate(45deg); opacity: 0.3; }
	12% { transform: scale(50) rotate(45deg); opacity: 0.1; }
	14% { transform: scale(0) rotate(45deg); opacity: 0; }
 } 

/*kansenyobou*/
.kansenyobou.mv {
  color: #E4111B !important;
  font-size: 12px;
  margin-bottom: 0;
  display: block;
  margin-top: 20px;
  text-decoration: underline;
  text-align: center;
}

.kansenyobou.pr {
  color: #fff !important;
  text-align: center;
  display: block;
  font-size: 13px;
  color: #fff;
  background-color: #212337;
  border-radius: 3px;
  padding: 15px 0;
  margin: 10px 5%;
  text-decoration: underline;
}

@media screen and (min-width: 900px) {
  .kansenyobou.mv {
    font-size: 14px;
    padding: 0;
    margin: 15px 0 0;
  }

  .kansenyobou.sideitem {
    color: #fff !important;
    text-align: center;
    display: block;
    font-size: 13px;
    color: #fff;
    background-color: #212337;
    border-radius: 3px;
    padding: 15px 0;
    margin-top: 5px !important;
    margin-bottom: 20px;
    text-decoration: underline;
  }
}


.exterior_img img {
  width: 100%;
}

/* --------------------------------
 * footer
 * -------------------------------- */
.footer {
	background: #132752;
	color: #fff;
	padding: 30px 0 100px;
  }
  .footer_logo{
	display: inline-block;
	padding: 0 0 23px 12px;
  }
  .footer_logo img{
	height: 47px;
	width: auto;
  }
  .footer_gnav .f_nav_title{
	font-size: 16px;
	font-weight: 600;
	color: #fff;
	line-height: 30px;
	background: #0F1F47;
	padding: 0 12px;
  }
  .footer_gnav .f_nav_list{
	padding: 0 12px;
	margin-top: 18px;
  }
  .footer_gnav li{
	margin-right: 20px;
	margin-bottom: 20px;
	display: inline-block;
  }
  .footer_gnav li a{
	font-size: 13px;
	font-weight: 300;
	color: #fff;
	line-height: 1;
	max-width: none;
	transition: 0.1s;
  }
  
  .footer_gnav li a:hover{
	opacity: 0.8;
  }
  
  .footer_gnav_sub.recruit_link_list{
    display: none;
  }

  @media screen and (max-width: 959px) {
	.footer_gnav .f_nav_list_button{
	  padding: 0;
	  margin-top: 0;
	  display: flex;
	  flex-wrap: wrap;
	  background: #2B4A82;
	}
	.footer_gnav .f_nav_list_button li{
	  margin: 0;
	  flex: 0 0 50%;
	  /* background: #2B4A82; */
	  
	}
	.footer_gnav .f_nav_list_button li:nth-child(odd){
	  border-right: 1px solid #0F1F47;
	}
	.footer_gnav .f_nav_list_button a{
	  font-size: 1.5rem;
	  text-align: left;
	  line-height: 1.4;
	  padding: 0 25px 0 12px;
    margin: 0;
	  height: 60px;
	  background: transparent;
	  border: none;
	  border-bottom: 1px solid #0F1F47;
	  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.15);
    width: auto;
	  display: flex;
	  align-items: center;
	  justify-content: flex-start;
	  border-radius: 0;
    position: relative;
	}
	.footer_gnav .f_nav_list_button a::after{
    font-family: "dashicons";
    content: "\f345";
    font-size: 15px;
    color: #fff;
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);

	  font-size: 12px;
	  color: #fff;
	}
  .footer_gnav .f_nav_list_button a:hover{
    background: #213C70;
  }
  	
  /* recruit_link_list */
	.footer_gnav_sub.recruit_link_list{
		display: block;
	}

	.recruit_link_list{
		padding-bottom: 20px!important;
	}

	.f_nav_title_sub{
		padding: 0 12px;
		margin: 20px 0 12px;
		color: #5e6e8b;
		font-size: 14px;
	}

	.f_nav_title_sub + .f_nav_list{
		margin-top: 8px;
	}

	.recruit_link_list li{
		margin-bottom: 16px;
		display: block;
	}

	.recruit_link_list li:last-child{
		margin-bottom: 0;
	}

	.recruit_link_list li a{
		display: flex;
		gap: 8px;
		align-items: center;
	}

	.recruit_link_list li a img{
		width: 32px;
		height: 32px;
		border-radius: 50%;
		object-fit: cover;
	}

	.recruit_link_list li a p{
		line-height: 1.5;
		font-size: 13px;
		color: #FFF;
	}
}
  .footer_gnav .f_nav_list_button a:hover{
	color: #fff;
  }
  .footer_gnav section:last-of-type{
	border-bottom: 1px solid #0F1F47;
	box-shadow: 0 1px 0 rgba(255, 255, 255, 0.15);
	margin-bottom: 18px;
  }
  .copyright{
	font-size: 10px;
	color: #fff;
	line-height: 2;
	padding-left: 12px;
  }
  @media screen and (min-width: 960px) {
	.footer{
	  padding: 50px 0 35px;
	}
	.footer_inner{
	  width: 90%;
	  max-width: 1040px;
	  margin: 0 auto;
	}
	.footer_logo{
	  padding: 0 0 40px 0;
	}
	.footer_logo img{
	  height: 54px;
	}
	.footer_gnav > section{
	  display: flex;
	}
	.footer_gnav > section.footer_gnav_main{
	  padding-bottom: 5px;
	  margin-bottom: 25px;
	  border-bottom: 1px solid #0B111A;
	  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.15);
	}
	.footer_gnav .f_nav_title{
	  line-height: 1;
	  background: transparent;
	  width: 180px;
	  flex: 0 0 180px;
	  padding: 0;
	  margin-right: 20px;
	}
	.footer_gnav .f_nav_list{
	  padding: 0;
	  margin: 0;
	}
  .footer_gnav section:last-of-type{
    padding-bottom: 15px;
  }
  .footer_gnav_sub{
    margin-bottom: 15px;
  }
  .footer_gnav .footer_gnav_sub li{
    margin-bottom: 12px;
  }
	.footer_gnav li{
	  margin-right: 25px;
	  margin-bottom: 25px;
	}
	.footer_gnav .f_nav_list_button a{
	  font-size: 15px;
	  background: transparent;
	  box-shadow: none;
	  border: none;
	  width: auto;
	  padding: 0;
	  margin: 0;
	}
	.footer_gnav .f_nav_list_button a::after{
	  content: none;
	}
	.footer_gnav .f_nav_list_button li{
	  margin-bottom: 15px;
	}
	.copyright{
	  padding-left: 0px;
	}
}

/*フロートバナー*/
@media screen and (max-width: 640px) {
  .type-org{
    display: flex;
  }
  .floatbn.type-org {
      background: rgba(245,245,245,0.6);
      height: 84px;
      position: fixed;
      bottom: 0;
      display: flex;
      align-items: center;
      justify-content: space-between;
      width: 100%;
      z-index: 100; 
      padding: 0 15px;
  }
  .floatbn.type-org a {
      height: 58px;
      border-radius: 50px;
      text-align: center;
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: center;
      text-decoration: none;
  }
  .floatbn.type-org .Tel .text_area {
      position: relative;
      text-align: left;
      margin-left: 33px;
      color: #e8cdd0;
  }
  .floatbn.type-org .Tel .text_area::before {
      content: "";
      width: 33px;
      height: 35px;
      background: url(/wp-content/themes/atombengo/img/float_telicon_red3.svg) no-repeat;
      display: block;
      position: absolute;
      top: 5px;
      left: -42px;
  }
  .floatbn.type-org .Tel .subtext {
    color: #000;
      margin: 2px 0 5px 0;
  }
  .floatbn.type-org .Tel .maintext {
      color: #FF1717;
      font-size: 20px;
      font-weight: 700;
      line-height: 1;
      margin: 0;
  }
  .floatbn.type-org a .subtext {
      font-size: 15px;
      font-weight: 700;
      line-height: 1;
      margin: 0;
  }
  .floatbn.type-org .Tel {
    background: rgb(238,238,238);
    background: -moz-linear-gradient(0deg, rgba(238,238,238,1) 0%, rgba(255,255,255,1) 100%);
    background: -webkit-linear-gradient(0deg, rgba(238,238,238,1) 0%, rgba(255,255,255,1) 100%);
    background: linear-gradient(0deg, rgba(238,238,238,1) 0%, rgba(255,255,255,1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#eeeeee",endColorstr="#ffffff",GradientType=1);
    border: 2px solid #DEDEDE;
    width: 100%;
    height: 75px;
  }
}

@media screen and (min-width:768px) {
  .floatbn{
    display: none;
  }
}




/* 
.postlist-col {
	width: 90%;
	margin: 0 auto 20px;
	display: flex;
	flex-wrap: wrap; 
}*/
.postlist-col article {
	background: #fff;
	margin-bottom: 20px;
	width: 100%;
	margin: 0 auto 20px;
}
.postlist-col a {
	display: flex;
	overflow: hidden;
}
.postlist-col .postlist_imgarea {
	flex: 1 1 100%;
	width: 100%;
	margin: 0 auto 0;
}
.postlist-col .postlist_imgarea img {
	width: 100%;
	height: auto;
}
.postlist-col .postlist_txtarea {
	padding: 0 10px 25px;
}
.postlist-col .postlist_title {
	font-size: 1.7rem;
	line-height: 1.4;
	font-weight: 600;
	margin-top: 15px;
	margin-bottom: 12px;
}
.postlist-col .postlist_day {
	font-size: 1.3rem;
	color: #8e8e8e;
}
@media screen and (min-width: 960px) {
	.postlist-col {
		max-width: 1040px;
		flex-direction: row;
		justify-content: space-between;
		margin-bottom: 60px;
	}
	.postlist-col article {
		margin: 0 5px 20px;
	}
	.postlist-col .postlist_txtarea {
		max-width: none;
	}
}

/*3col*/
@media screen and (min-width: 960px) {
	.postlist-col3 {
		width: 95%;
	}
	.postlist-col3 article {
		flex: 1 1 30%;
		max-width: 330px;
	}
}
/*------------------------------
 一覧ページ
 ------------------------------*/
.article_postlist article {
	margin-bottom: 20px;
	position: relative;
}
.article_page_postlist article>a {
	display: block;
	position: absolute;
	z-index: 10;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.article_page_postlist .postlist_day {
	font-size: 1.3rem;
	color: #8E8E8E;
}
.article_page_postlist article .postlist_wrap {
	position: relative;
	display: flex;
}
.article .main_section .post_list {
	margin-bottom: 10px;
}
.article_page_postlist article>a:hover+* .postlist_imgarea img {
	opacity: 0.8;
}
@media screen and (min-width: 560px) {
	.article_page_postlist article {
		border-bottom: 1px solid #ededed;
		margin-bottom: 15px;
		padding: 0 5px 20px;
	}
	.main_section .postlist_txtarea {
		max-width: none;
	}
	.main_section .postlist_title {
		font-size: 1.8rem;
		line-height: 1.5;
		font-weight: 600;
		transition: 0.1s;
	}
	.main_section .postlist_imgarea {
		flex: 0 0 202px;
		width: auto;
		height: 135px;
	}
	.main_section .postlist_imgarea img {
		width: 202px;
		height: auto;
	}
}

/*------------------------------
 固定ページ記事
 ------------------------------*/
 figure.wp-block-image {
  margin: 35px 0 25px;
  width: 100%;
}
figcaption.wp-element-caption {
  font-size: 0.8em;
  margin-top: -10px;
}

/*刑法改正の注意書き*/
.essential.kaisei {
  padding: 10px 17px;
  background: #FFF4F4;
  border-radius: 3px;
  border: 1px solid #dd5251;
  position: relative;
  margin-bottom: 30px;
}
.essential.kaisei p:last-child{
  margin-bottom: 0!important;
}
.essential.kaisei + .essential.kaisei{
  margin-top: -15px;
}