﻿/*==================================================
#home
==================================================*/
/*home > hero
--------------------------------------------*/
.hero {
	padding: 0 0 25px;
}
.hero .bx-wrapper {
	position: relative;
	width: 757px;
	margin: 0 auto;
}
.hero .bx-pager {
	display: none;
}
.hero .bx-controls-direction a {
	position: absolute;
	top: 50%;
	margin-top: -16px;
	outline: 0;
	width: 32px;
	height: 32px;
	text-indent: -9999px;
	z-index: 500;
	background: url(../img/index/icn_slide.png) no-repeat;
	background-size: 40px 80px;
}
.hero .bx-prev {
	left: 30px;
	background-position: 0 0;
}
.hero .bx-next {
	right: 30px;
	background-position: 0 -40px !important;
}
.hero #pager {
	overflow: hidden;
	margin: 12px auto;
	text-align: center;
}
.hero #pager a {
	float: left;
}
.hero #pager a+a {
	margin: 0 0 0 5px;
}
.hero #pager a img {
	border: 2px solid #fff;
}
.hero #pager a.active img {
	border: 2px solid #c00;
}
.hero_sp {
	display: none;
}

/* reason */
.h_reason {
	width: 377px;
	float: left;
	padding: 15px;
	margin: 0 10px 0 0;
	background: #dceef6 url(../img/index/bg_reason.png) no-repeat 50% 50%;
	border-radius: 6px;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
}
.h_reason h2 {
	position: relative;
	padding: 0 0 20px;
	margin: 0 0 15px;
	font-size: 18px;
	color: #00589e;
	text-align: center;
	line-height: 170%;
	border-bottom: 2px solid #00589e;
}
.h_reason h2 span {
	display: block;
	font-size: 36px;
}
.h_reason h2 span em {
	font-weight: bold;
	background: linear-gradient(transparent 60%, #ffe600 60%);
}
.h_reason h2:before {
	border: 10px solid transparent;
	border-top-color: #00589e;
	content: '';
	position: absolute;
	bottom: -20px;
	left: 50%;
	margin-left: -10px;
}
.h_reason h2:after {
	border: 10px solid transparent;
	border-top-color: #e3f2f5;
	content: '';
	position: absolute;
	bottom: -17px;
	left: 50%;
	margin-left: -10px;
}
.h_reason ul {
	padding: 0 5px;
}
.h_reason li a {
	display: block;
	position: relative;
	font-size: 23px;
	color: #00589e;
	font-weight: bold;
	letter-spacing: -0.02em;
	padding: 25px 35px 25px 80px;
	text-shadow: 2px 1px 1px rgba(255, 255, 255, 1);
}
.h_reason li a:before {
	content: "\e903";
	display: block;
	position: absolute;
	top: 50%;
	right: 5px;
	width: 22px;
	height: 22px;
	margin-top: -12px;
	color: #00589e;
	font-size: 22px;
}
.h_reason li span {
	position: absolute;
	top: 50%;
	left: 0;
	margin-top: -35px;
	display: inline-block;
	width: 70px;
	height: 70px;
	background: url(../img/parts/icn_reason.png) no-repeat;
	background-size: 75px 425px;
}
.h_reason li span.icn_reason01 {background-position: 0 0;}
.h_reason li span.icn_reason02 {background-position: 0 -80px;}
.h_reason li span.icn_reason03 {background-position: 0 -159px;}
.h_reason li span.icn_reason04 {background-position: 0 -239px;}
.h_reason li span.icn_reason05 {background-position: 0 -320px;}


/*infobox
--------------------------------------------*/
.h_infobox {
	width: 330px;
	float: left;
	background: #00589e;
	border: 5px solid #00589e;
	border-radius: 6px;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
}
.h_infobox h2 {
	padding: 10px 0;
	color: #fff;
	font-size: 20px;
	text-align: center;
	background: #00589e;
}
.h_infobox .inr {
	padding: 15px;
	background: #fff;
	border-radius: 4px;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
}
.h_infobox .freecall {
	padding: 15px 7px;
	margin: 0 0 20px;
}
.h_infobox .freecall em {
	line-height: 125%;
	font-size: 11px;
}
.h_infobox .freecall p {
	font-size: 14px;
	margin-bottom: 3px;
}
.h_infobox .freecall .number {
	margin-bottom: 5px;
	font-weight: bold;
	font-size: 30px;
	letter-spacing: -.8px;
}
.h_infobox .btn_mail,
.h_infobox .btn_access {
	width: 100%;
	margin: 0 0 10px;
}
.h_infobox .btn_mail a,
.h_infobox .btn_access a {
	padding-left: 15px;
	text-align: left;
}
.h_infobox .add {
	padding: 20px 0 0;
	margin: 20px 0 0;
	border-top: 1px solid #e8e8e8;
}

/*pv
--------------------------------------------*/
.pv {
	clear: both;
	padding: 40px 0 20px;
	background: url(../img/index/bg_pv.jpg) no-repeat 50% 0;
	background-size: 100% auto;
}
.pv ul {
	overflow: hidden;
	width: 1005px;
	margin: 0 -15px 0 0;
}
.pv li {
	width: 320px;
	margin: 0 7.5px 0;
	float: left;
}
.pv dt {
	position: relative;
	padding: 10px 0;
	margin: 0 0 22px;
	color: #fff;
	font-size: 108%;
	font-weight: bold;
	text-align: center;
	background: #00589e;
}
.pv dt:after {
	position: absolute;
	bottom: -11px;
	left: 50%;
	content: "";
	margin-left: -11px;
	border-top: 11px solid #00589e;
	border-left: 11px solid transparent;
	border-right: 11px solid transparent;
}
.pv dd {
	margin: 0 auto 5px;
	text-align: center;
}
.pv a img {
	margin-top: -10px;
}
video {
	width: 320px !important;
	height: 180px !important;
	border: none;
}

/* h_commission */
.h_commission {
	padding: 0 0 40px;
	background: #dceef6;
}
.h_commission .sec_inr {
	overflow: hidden;
}
.h_commission h2 {
	padding: 65px 0 40px;
	text-align: center;
	font-size: 21px;
	color: #00589e;
	line-height: 170%;
}
.h_commission h2 span {
	display: block;
	font-size: 36px;
}
.h_commission ul {
	overflow: hidden;
	margin: 0 -50px 0 0;
}
.h_commission li {
	width: 300px;
	float: left;
	padding: 0px 50px 30px 0;
}
.h_commission li a {
	display: block;
}
.h_commission li img {
	padding: 0 0 10px 0;
}
.h_commission h3 {
	padding: 0 0 5px;
	color: #00589e;
	font-size: 18px;
	font-weight: bold;
}
.h_commission p {
	font-size: 12px;
	line-height: 150%;
}

/*homeBox
--------------------------------------------*/
.homeBox {
	overflow: hidden;
	position: relative;
}
/* left */
.homeBox .leftWrap {
	width: 1000px;
	padding: 0 0 120px;
	margin: 0 auto;
}
.homeBox .h_greeting {
	width: 52.5%;
	padding: 40px 47.5% 0 0;
}
.homeBox .h_greeting h2 {
	padding: 0 0 10px;
	margin: 0 0 25px;
	color: #00589e;
	font-size: 22px;
	border-bottom: 3px solid #00589e;
}
.homeBox .h_greeting .txtWrap p {
	padding: 0 0 1.5em;
}

/*right */
.homeBox .rightWrap {
	position: absolute;
	top: 0;
	left: 54%;
	width: 100%;
	padding: 40px 0 0 40px;
	background: #00589e;
}
.h_topics,
.h_media {
	width: 325px;
}
.h_topics {
	padding: 0 0 40px;
	color: #fff;
}
.h_topics h2 {
	padding: 0 0 10px;
	font-size: 18px;
	font-weight: bold;
	border-bottom: 1px solid #4daabd;
}
.h_topics dl {
	height: 120px;
	overflow-y: scroll;
}
.h_topics dt {
	padding: 10px 0 0;
}
.h_topics dd {
	padding: 0 0 10px;
	border-bottom: 1px solid #4daabd;
}
.h_media h2 {
	padding: 0 0 10px;
	font-size: 18px;
	color: #fff;
	font-weight: bold;
}
.h_media ul {
	overflow: hidden;
	width: 335px;
	margin-right: -10px;
	padding: 0 0 40px;
}
.h_media li {
	width: 157px;
	float: left;
	padding: 0 10px 10px 0;
}
.h_media li dl {
	padding: 5px 0;
	font-size: 12px;
	text-align: center;
	line-height: 140%;
	color: #fff;
}
.h_media li dt {
	font-weight: bold;
}
.home #map {
	width: 100%;
	height: 400px;
}

/*==================================================
201608トップページ分追加
==================================================*/
.h_commission .tv {
	overflow: hidden;
	margin: 0 -50px 0 0;
}
.h_commission .tv p {
	width: 300px;
	float: left;
	padding: 0px 50px 30px 0;
}

.area{
	clear:both;
	width: 1000px;
	margin: 0 auto 10px auto;
	padding: 10px;
	background: #f6f6f6;
}

/*==================================================
error ( 403 / 404 )
==================================================*/
.error {
	padding: 20px 0 50px;
}
.error h1 {
	padding: 0 0 20px;
	font-size: 26px;
	font-weight: bold;
	color: #00589e;
}
.error a {
	color: #00589e;
	text-decoration: underline;
}

/*==================================================
faq
==================================================*/
.faqlist {
	padding: 30px 0 60px;
}
.faqlist dt {
	position: relative;
	cursor:pointer;
	display:block;
	padding: 20px 45px 20px 20px;
	margin: 0 0 10px;
	line-height: 130%;
	font-size: 16px;
	font-weight: bold;
	color: #00589e;
	border: 2px solid #00589e;
	background: #f6f6f6;
	border-radius: 8px;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
}
.faqlist dt:after {
	position: absolute;
	top: 50%;
	right: 15px;
	margin-top: -10px;
	content: "\e606";
	font-size: 30px;
}
.faqlist dd {
	padding: 0 20px 25px;
	display:none;
}
.faqlist dt.active {
	color: #fff;
	background: #00589e;
}
.faqlist dt.active:after {
	content: "\e605";
}

/*==================================================
about
==================================================*/
.about .sec_cont table {
	margin: 0 0 10px;
}
.about .sec_cont table+table {
	margin: 0 0 30px;
}

/*==================================================
access
==================================================*/
.access .sec_cont {
/* 	background: url(../img/page/mapimg.jpg) no-repeat 100% 100px; */
}
.access .sec_cont p {
	padding-right: 250px;
}
.access dl {
	border-bottom: 1px dotted #999;
	margin: 0 0 15px;
}
.access dt {
	padding: 0 0 8px;
	font-size: 16px;
	font-weight: bold;
}
.access dd {
	padding: 0 0 15px;
}
.access #map {
	width: 100%;
	height: 465px;
	border: 5px solid #00589e;
	box-sizing: border-box;
}
.access .btn_google {
	width: 170px;
	margin: 15px auto;
}
.access .btn_google a {
	display: block;
	padding: 10px;
	color: #fff;
	text-align: center;
	background: #00589e;
	border-radius: 6px;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
}
.ggmap {
position: relative;
padding-bottom: 56.25%;
padding-top: 30px;
height: 0;
overflow: hidden;
}
 
.ggmap iframe,
.ggmap object,
.ggmap embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}


/*==================================================
price
==================================================*/
.price table {
	margin: 0 0 10px;
}
.price th {
	width: 180px;
}

/*==================================================
contact
==================================================*/
table.mailform {
	width: 100%;
}
.mailform th {
	width: 210px;
}
.mailform span.import {
	color: #be0000;
	font-size: 10px;
}
.mailform li {
	float: left;
	padding: 0 20px 0 0;
}
input[type=radio],
input[type=text],
select,
textarea {
	border: 1px solid #666;
	-moz-box-shadow: inset 0 0 2px rgba(0,0,0,0.1);
	-webkit-box-shadow: inset 0 0 2px rgba(0, 0, 0, 0.1);
/* 	box-shadow: inner 0 0 2px rgba(0, 0, 0, 0.1); */
	border-radius: 4px;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
}
.mailform label {
	white-space: nowrap;
	float: left;
}
.mailform input,
.mailform select {
	padding: 5px;
	margin-right: 5px;
}
.mailform textarea {
	width: 96%;
	padding: 2%;
	height: 120px;
	overflow: auto;
	vertical-align: top;
}
.mailform #name { width: 50%; }
.mailform #old { width: 50px; }
.mailform #email { width: 80%; }
.mailform #emailc { width: 80%; }

.mailform .errortext {
	clear: both;
	color: #fff;
	padding: 0 10px !important;
	margin: 5px 0 0 !important;
	background: #be0000;
}
.contact .button {
	width: 230px;
	overflow: hidden;
	margin: 0 auto 30px;
	text-align: center;
}
.contact .button p {
	overflow: hidden;
	display: block;
	width: 230px;
	float: left;
	padding: 0 0 10px;
	text-align: center;
}
.contact .button a {
	display: inline-block;
}
.contact .button input,
.contact .button a {
	width: 230px;
	padding: 15px 0;
	font-size: 120%;
	color: #fff;
	background: #00589e;
	border-radius: 6px;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	border: none;
	outline: none;
}
.contact .button input:hover {
	background: #1ba4c1;
}

/*==================================================
sitemap
==================================================*/
.sitemap .sec_cont {
	width: 400px;
	margin: 0 auto;
}
.sitemap .sec_cont {
	overflow: hidden;
	width: 400px;
	margin: 0 auto;
}
.sitemap .sec_cont ul {
	width: 180px;
	float: left;
	padding: 0 10px;
}
.sitemap .sec_cont li a {
	padding: 3px 0;
}
.sitemap .sec_cont li a:before {
	content: "\e604";
	color: #00589e;
}

/*==================================================
searchpage menu
==================================================*/
.search .sec_cont ul,
.wiretap .sec_cont ul,
.justice .sec_cont ul,
.select .sec_cont ul {
	padding: 15px 0;
}
.wiretap .sec_cont p+ul,
.select .sec_cont p+ul,
.wiretap .sec_cont h2+ul,
.search .sec_cont h2+ul,
.justice .sec_cont h2+ul {
	padding-top: 0;
}
.search .sec_cont ul li,
.wiretap .sec_cont ul li,
.justice .sec_cont ul li,
.select .sec_cont ul li {
	position: relative;
	padding-left: 20px;
}
.search .sec_cont ul li:before,
.wiretap .sec_cont ul li:before,
.justice .sec_cont ul li:before,
.select .sec_cont ul li:before {
	position: absolute;
	top: 0;
	left: 0;
	content: "●";
	padding: 0 5px 0 0;
	margin: 0 0 0 5px;
	font-size: 10px;
	color: #4e4e4e;
}
.wiretap .sec_cont ul,
.wiretap .sec_cont ul li:before,
.select .sec_cont ul,
.select .sec_cont ul li:before {
	color: #900;
}

/*cheating
------------------------------------------------------------*/
/*preparation*/
.cheating figure+p {
	padding-top: 20px;
}
.cheating figure .schedule {
	display: none;
}
/*report*/
ul.report li {
	width: 20%;
	padding: 1%;
	margin: 1%;
	float: left;
	text-align: center;
	border: 1px solid #ccc;
}

/*divorce
------------------------------------------------------------*/
/* index */
.divorce p.caption {
	padding: 0;
	font-size: 12px;
	text-align: right;
}
.divorce .male,
.divorce .female {
	width: 50%;
	float: left;
}
.divorce table.male {
	border-right: none;
}
.divorce table.female {
	border-left: none;
}
.divorce .table_number td {
	text-align:right;
}
/* cause */
.divorce .violation dt {
	color: #00589e;
	font-weight: bold;
}
.divorce .violation dd {
	padding: 0 0 10px;
}
.divorce .violation+p {
	padding-top: 20px;
}
/* arbitration */
.divorce .mailtxt {
	margin: 2% 2% 3%;
	padding: 2%;
	border: 1px dotted #ccc;
}
.divorce .mailtxt p {
	padding: 8px 0;
}
/* preparation */
.divorce p.line {
	padding-top: 40px;
	border-top: 1px dotted #666;
}

/*search
------------------------------------------------------------*/
/* search02 */
.search02 .list_point {
	margin: 5px;
	padding: 15px;
	border: 1px dotted #00589e;
}
.search02 .list_point dt {
	padding-bottom: 5px;
	border-bottom: 1px solid #00589e;
}

/* wiretap
------------------------------------------------------------*/
.wiretap .emtxt {
	padding: 15px 10px;
	margin: 0 0 20px;
	font-size: 13.5px;
	color: #900;
	border: 1px dotted #900;
	background: #fff0f0;
}
.wiretap p.bottomtxt {
	padding-top: 30px;
	margin-top: 30px;
	border-top: 1px dotted #1e1e1e;
}

/* select
------------------------------------------------------------*/
.select .pointtxt {
	padding: 15px 10px;
	margin: 0 0 20px;
	font-size: 13.5px;
	color: #00589e;
	border: 1px dotted #00589e;
	background: #f6f6f6;
}
.select p em {
	color: #900;
}

/* flowlist
------------------------------------------------------------*/
.flowlist li {
	position: relative;
	margin: 0 0 40px;
	border: 1px solid #00589e;
	border-radius: 8px;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
}
.flowlist li:after {
	position: absolute;
	bottom: -25px;
	left: 50%;
	content: "";
	margin-left: -40px;
	border-top: 20px solid #dceef6;
	border-left: 40px solid transparent;
	border-right: 40px solid transparent;
}
.flowlist li:last-child:after {
	border: none;
}
.flowlist dt {
	padding: 10px 20px;
	font-size: 16px;
	font-weight: bold;
	color: #00589e;
	background: #dceef6;
	border-top-left-radius: 10px;
	border-top-right-radius: 10px;
	-webkit-border-top-left-radius: 10px;
	-webkit-border-top-right-radius: 10px;
	-moz-border-radius-topleft: 10px;
	-moz-border-radius-topright: 10px;
}
.flowlist dd {
	padding: 20px;
}

/*==================================================
press
==================================================*/
.book li,
.mag li {
	overflow: hidden;
	width: 25.333%;
	padding: 20px 4%;
	float: left;
}
.book li {
	min-height: 280px;
}
.mag li {
	min-height: 200px;
}
.book li img,
.mag li img {
	display: block;
	margin: 0 auto 10px;
}
.book li dt,
.mag li dt  {
	padding: 0 0 5px;
	font-size: 94%;
	font-weight: bold;
	line-height: 140%;
}
.book li dd,
.mag li dd {
	line-height: 140%;
	font-size: 86%;
}
.book li dd p,
.mag li dd p {
	padding: 0;
}

.press .media table {
	width: 100%;
	font-size: 94%;
}
.press .media th {
	width: 40%;
}
.press .media td {
	width: 25%;
	border-right: 1px solid #00589e;
	font-size: 94%;
}
.press .media td+td {
	width: 35%;
}
.madiatxt dl {
	padding: 20px;
	margin: 0 0 20px;
	border: 1px dotted #00589e;
	background: #f6f6f6;
}
.madiatxt dt {
	color: #00589e;
}

/*==================================================
corporation
==================================================*/
.corporation .pagenav h2 {
	margin: 0 0 10px;
}
.corporation .pagenav ul {
	padding-bottom: 50px;
}
.corporation .sec_cont h2 {
	padding-top: 10px;
}
.corporation .sec_cont em {
	color: #900;
	font-weight: bold;
}
.corporation .txtlink {
	padding-bottom: 15px;
}

/*==================================================
error
==================================================*/
.error {
	padding: 5%;
	background: #fff;
	border-top-left-radius: 10px;
	border-top-right-radius: 10px;
	-webkit-border-top-left-radius: 10px;
	-webkit-border-top-right-radius: 10px;
	-moz-border-radius-topleft: 10px;
	-moz-border-radius-topright: 10px;
}
