@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@300;400;500;700&display=swap');



/*
Theme Name:mrp04-child
Template:mrp04
Version: 0.01
*/

/*------------------------
メイン画像の切り替え
------------------------*/
/*@media screen and (min-width: 769px){	
#mainImg { display:block; }
  .mainimg-sp { display:none; }
}
@media screen and (max-width: 768px){	
#mainImg { display:none; }
  .mainimg-sp { display:block; }
}
@media screen and (max-width: 768px){
.mainimg-sp {

    margin-top: 60px;
}}*/
/*------------------------
SP時のメニュー背景
------------------------*/
@media only screen and (max-width: 1023px) {
	body.mobile nav#mainNav.menuOpen {
		background: #ffffffe6;
	}

	nav#mainNav ul li a {
		text-align: center;
	}
}

/*------------------------
ロゴ横並びお問い合わせだけ右寄せで色違い
------------------------*/
@media print,
screen and (min-width: 1024px) {
	#header .logo {
		padding-left: 5%;
		padding-top: 10px;
	}

	#header .logo img {
		max-height: 65px;
	}

	#header-layout {
		padding: 0;
		display: flex;
	}

	nav#mainNav {
		margin: 0 auto;
		margin-right: 0;
	}

	.panel ul li {
		margin: 0;
	}

	nav#mainNav ul li {
		padding: 15px;
	}

	nav#mainNav ul li#menu-item-65 {
		background: #e9e9e9;
	}
}

/*------------------------
本HPのみのcss
------------------------*/
/*表組み線のみアレンジ*/
.post table,
.post table th,
.post table td {
	border: none;
}

.post table tr {
	border-bottom: 1px solid #29A2C6;
}

.post table tr:last-child {
	border-bottom: none;
}

@media screen and (min-width: 769px) {
	.tbl-pc {
		display: block;
	}

	.tbl-sp {
		display: none;
	}
}

@media screen and (max-width: 768px) {
	.tbl-pc {
		display: none;
	}

	.tbl-sp {
		display: block;
	}
}

/*------------------------
メニュー
------------------------*/
@media print,
screen and (min-width: 1024px) {

	nav#mainNav ul li ul.sub-menu li a,
	nav#mainNav ul li ul.sub-menu li a:hover,
	nav#mainNav ul li.current-menu-item ul.sub-menu li a,
	nav#mainNav ul li ul.sub-menu li.current-menu-item a {
		font-weight: bold;
	}

	nav#mainNav {
		padding-bottom: 1%;
	}
}

/*------------------------
改行位置の調整
------------------------*/
@media screen and (min-width: 769px) {
	.br-pc {
		display: block;
	}

	.br-sp {
		display: none;
	}
}

@media screen and (max-width: 768px) {
	.br-pc {
		display: none;
	}

	.br-sp {
		display: block;
	}
}

/*----------------------
送信ボタンの幅を広げる
----------------------*/
.wpcf7 .linkBtn {
	display: block;
}

/*----------------------
問い合わせフォームの必須
----------------------*/
.wpcf7-form .must {
	background: rgba(0, 72, 152, 0);
	color: rgba(0, 72, 152, 1);
	font-size: 1.5rem;
	float: none;
	margin-left: -2px;
	padding: 0;
}

/*------------------------
共通
------------------------*/
body.mobile #header .logo .mark {
	background: #fff;
}

#header .logo img {
	max-height: 100px;
}

header#h1Header img {
	height: 250px;
}

@media only screen and (max-width: 640px) {
	#header-layout {
		padding-bottom: 0px;
	}
}

#content {
	width: 95%;
	margin: 0 auto;
	padding: 0;
}

#mainImg {
	padding-bottom: 0px;
}

.home #content {
	padding: 0px;
}

body.mobile #breadcrumb {
	margin-top: 0;
}

header#h1Header h1.title {
	text-align: center;
	font-size: 2rem;
	font-weight: 700;
	letter-spacing: .2em;
}

header#h1Header h1.title span {
	position: relative;
}

header#h1Header h1.title span::after {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	top: 50px;
	width: 2px;
	height: 47px;
	margin: auto;
	background-color: white;
}

/*------------------------
テーブルレスポンシブ左寄せ
------------------------*/
@media only screen and (max-width: 640px) {

	.post table.responsive th,
	.post table.responsive td {
		text-align: left;
	}
}




/*------------------------
新着情報
------------------------*/

.dateLabel {
	background-color: rgba(0, 10, 0, 0);
}

.postlist {
	background-color: rgba(255, 255, 255, 0);
}

.postlist li {
	margin: 0;
}

/*.front_post_list {
background-image:url(/wp-content/uploads/shutterstock_647388013.jpg);
background-attachment:fixed;
background-size: cover;
}*/
@media screen and (min-width: 769px) {
	.postlist {
		width: 90%;
		margin: 0 auto;
	}

	.front_post_list {
		padding: 5% 10%;
	}
}

@media screen and (max-width: 768px) {
	.postlist {
		width: 85%;
		margin: 0 auto 5%;
		box-shadow: 0 5px 20px 0 rgb(0 0 0 / 20%);
	}

	.front_post_list {
		padding: 5% 2%;
	}

	.postlist .time a {
		font-size: .8rem;
		color: #fff !important;
	}

	.postlist .date {
		font-size: .8rem;
		padding: 1px;
	}

	.postlist .ttls a {
		font-size: .8rem;
	}

	.postlist .ttls {
		padding: 0;
	}

	.postlist .post_text {
		width: 100%;
	}
}

/*新着情報のシャドウの装飾*/
.postlist li {
	border-bottom: none;
}

.postlist .time {
	background: #f26649;
}

.postlist .date {
	color: #a39e9e;
}

.postlist .ttls a {
	color: #626262;
}

.postlist {
	padding: 5%;
	background: #fff;
	box-shadow: 0 5px 20px 0 rgb(0 0 0 / 20%);
}

h1.title.bottom-loop {
	font-size: calc(24px + (1vw - 4.1px) * 1.0624);
	margin: 0 auto 3%;
	font-family: 'Zen Kaku Gothic New', sans-serif;
	width: 88%;

}

.linkBtn {
	background: #dadada;
}

.linkBtn:hover {
	background: #b3b3b3;
}

p.dateLabel {
	margin: 0;
	color: rgb(171 171 171);
	font-style: initial;
	font-weight: 500;
	font-family: 'Zen Kaku Gothic New', sans-serif;

}

h1.title.first {
	text-align: left;
	margin-top: 10%;
	font-size: 1.5rem;
	font-weight: 500;
}

h1.title.first.cat-loop {
	margin-bottom: 5%;
}

h1.title.first {
	margin-top: 5%;
}

h1.title.bottom-loop {
	font-size: calc(13px + (1vw - 1px) * 1);
	letter-spacing: .1em;
	color: #ffffff !important;
	padding: 1%;
	background-color: #f26649;
}

/*------------------------
フォント
------------------------*/
body {
	font-family: 'Zen Kaku Gothic New', sans-serif;


}

.post h1.top {
	font-size: calc(13px + (1vw - 1px) * 1);
	font-family: 'Zen Kaku Gothic New', sans-serif;

	line-height: 1.7;
	text-align: center;
	color: #fff;
	position: relative;
}

p.h1sub {
	color: #fff;
	margin-top: 5%;
	text-align: center;
	font-size: calc(13px + (1vw - 1px) * 1);
}

.post h1.top:before {
	position: absolute;
	bottom: -26px;
	left: calc(50% - 30px);
	width: 60px;
	height: 1px !important;
	content: '';
	background: #ffffff;
}

@media screen and (max-width: 768px) {
	.post h1.top:before {
		bottom: -13px;
	}

	p.h1sub {
		margin-top: 25px;
	}
}

.post h1.kasou {
	text-align: left;
	padding-left: 0;
	font-family: 'Zen Kaku Gothic New', sans-serif;

	font-size: 1.5rem;
}

p.sub {
	color: #09194F;
	font-size: .8rem;
	margin-bottom: 5%;
}

.post h2 {
	font-size: calc(13px + (1vw - 1px) * 1);
	font-family: 'Zen Kaku Gothic New', sans-serif;

	padding-left: 0;
	border-bottom: 1px solid rgb(137 137 137);
	padding-bottom: 15px;
	margin-bottom: 15px;
}

.post h3 {
	font-family: 'Zen Kaku Gothic New', sans-serif;

	border-left: 10px solid rgb(137 137 137);
	padding: 0 0 0 10px;
	font-weight: 500;
	line-height: 1.3;
}


@media screen and (max-width: 1023px) {
	h5 {
		padding: 10px;
		font-size: .9rem;
	}
}

h6 {
	font-size: calc(12px + (1vw - 1px) * .9);
	margin: 12% 0 5%;
	border-bottom: 1px solid rgb(62 0 127);
	padding-bottom: 15px;
	padding-left: 10px;
}

span.notes {
	font-size: .8rem;
}

.post h1.h1w {
	color: #fff;
}

.post h2 {}

nav#mainNav ul li a b {
	font-family: 'Zen Kaku Gothic New', sans-serif;

	font-size: .8rem;

}

nav#mainNav ul li a span {
	font-family: 'Zen Kaku Gothic New', sans-serif;

	font-size: .8rem;
}

p.cen {
	text-align: center;
}

header#h1Header h1.title {
	font-family: 'Zen Kaku Gothic New', sans-serif;

}

/*------------------------
レイアウト
------------------------*/
.line {
	border-bottom: 1px solid #888888;
	padding-top: 10%;
}

.mt {
	margin-top: 5% !important;
}

/*
.mb {
    margin-bottom: 5%!important;
    padding-bottom: 10%!important;
}
*/

.contentbox {
	background: #fff;
}

@media screen and (min-width: 1024px) {
	.contentbox {
		padding: 5% 5% 0%;
		width: 900px;
		margin: 0 auto 0;
	}

	.contentbox2 {
		padding: 10% 0;
	}
}

@media screen and (max-width: 1023px) {
	.contentbox {
		padding: 3%;
		width: 90%;
		margin: 0 auto;
	}

	.contentbox2 {
		padding: 10% 0;
	}
}


/*------------------------
レイアウト
------------------------*/
/*よくあるご質問*/
@media screen and (min-width: 769px) {
	summary.qa_sum {
		padding: 1.5rem 5rem 1.5rem 4.5rem;
		font-size: 1.2rem;
	}

	.answer {
		padding: 1.5rem 6rem 2rem 4.5rem;
	}
}

@media screen and (max-width: 768px) {
	summary.qa_sum {
		padding: 2rem 4rem 1.5rem 1.5rem;
		font-size: 1rem;
	}

	.answer {
		padding: 1.5rem 2.5rem 2rem 1.5rem;
	}
}

.qa_box details:first-of-type summary {
	border-top: 1px solid #999;
}

summary.qa_sum {
	font-weight: 500;
	list-style: none;
	position: relative;
	cursor: pointer;
	color: #333;
	border-bottom: 1px solid #999;
}

summary.qa_sum::-webkit-details-marker {
	display: none;
}

summary.qa_sum:hover,
details[open] summary.qa_sum {
	transition: background .3s ease;
}

summary.qa_sum::after {
	content: '+';
	position: absolute;
	top: 50%;
	right: 30px;
	transform: translateY(-50%);
	transition: transform 0.5s;
	font-size: 30px;
}

details[open] summary.qa_sum::after {
	transform: translateY(-50%) rotate(45deg);
}

details[open] summary.qa_sum {
	border-bottom: none;
}

.answer {
	position: relative;
	border-bottom: 1px solid #999;
	line-height: 1.5;
}

details[open] .answer {
	animation: fadein 0.5s ease;
}

@keyframes fadein {
	0% {
		opacity: 0;
	}

	100% {
		opacity: 1;
	}
}

.fa-brands,
.fab {
	padding-right: 10px;
	color: rgb(9 25 79);
}




/*------------------------
table01
------------------------*/
#table01 tr {
	border-bottom: 1px solid #b5b1b1;
}

#table01 th,
#table01 td {
	padding: 24px 0;
	border: none;
}

#table01 th {
	width: 30%;
}

/* sp */
@media only screen and (max-width: 480px) {

	#table01 th,
	#table01 td {
		width: 100%;
		display: block;
	}

	#table01 th {
		width: 100%;
	}

	#table01 td {
		padding-top: 0;
	}
}






/*------------------------
子ページ
------------------------*/
@media only screen and (max-width: 1023px) {

	nav#mainNav ul li li a,
	nav#mainNav ul li.current-menu-item li a {
		background: none;

	}

	nav#mainNav ul li li a:hover,
	nav#mainNav ul li.current-menu-item li a:hover,
	nav#mainNav ul li li.current-menu-item a {
		background: none;
	}

	nav#mainNav ul li li:last-child a {
		background: none;
	}
}







/*------------------------
コンセプト
------------------------*/

@media only screen and (min-width: 1024px) {
	nav#mainNav ul li a {
		height: 40px;
		padding: 26px 8px 0px 21px;
	}
}



/*------------------------
背景
------------------------*/

/*背景*/
.post {
	background: #fff;
	margin-bottom: 0;
}

/*下層グラデ*/
.page-id-71 .post,
.page-id-68 .post,
.page-id-62 .post {
	background-color: #fffac8;
	background-image: linear-gradient(186deg, #fffbd9 0%, #0043ff 100%);
	padding-top: 5% !important;
}

.post .linkBtn {
	background: #17182c;
}









/*--------------------------------------------------
	オリジナル設定
--------------------------------------------------*/
.fs {
	font-size: 85%;
}

.fm {
	font-size: 115%;
}

.red {
	color: #FC0000;
}

.pick {
	color: #80B624;
}

p.attention {
	text-indent: -1em;
	margin-left: 1em;
}

p.nm {
	padding-bottom: 0;
}

/**/
.cen {
	text-align: center;
}

.lft {
	text-align: left;
}

.rit {
	text-align: right;
}

.pad_anchor {
	margin-top: -115px;
	padding-top: 115px;
}

/* 非表示用 */
@media print,
screen and (min-width: 641px) {

	/* PC用 */
	.dsp_smt {
		display: none;
	}

	.cen_pc {
		text-align: center;
	}
}

@media only screen and (max-width: 640px) {

	/* スマホ用 */
	.dsp_hp {
		display: none;
	}
}

/*--------------------------------------------------
	共通
--------------------------------------------------*/
.mb {
	margin-bottom: 40px;
}

.bg_wide {
	position: relative;
}

.bg_wide::before {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100vw;
	height: 100%;
	margin-left: calc(((100vw - 100%) / 2) * -1);
	margin-right: calc(((100vw - 100%) / 2) * -1);
	content: "";
	z-index: -1;
}

.bg_pad {
	padding: 30px 0;
}

.box_pad {
	padding: 20px;
	box-sizing: border-box;
}

.box_w2 .column2_50:not(.cen) {
	text-align: left;
}

@media print,
screen and (min-width: 641px) {

	/* PC用 */
	.mb {
		margin-bottom: 80px;
	}

	.bg_pad {
		padding: 80px 0;
	}

	.bg_fix::before {
		background-attachment: fixed !important;
	}

	.box_w2 {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}

	.box_w2.rev {
		flex-direction: row-reverse;
	}

	.box_w2.vcen {
		align-items: center;
	}

	.box_pad {
		padding: 40px;
	}

	.box_w2 .column2_50 {
		width: 48.5%;
	}
}

/*--------------------------------------------------
	トップページ
--------------------------------------------------*/
#wrapper {
	overflow: visible;
}

.post {
	background: none;
	border: none;
}

.home #mainImg {
	padding-bottom: 0;
}

.home #content {
	padding-top: 0;
}

#post-2 .post {
	padding-top: 0;
}

/**/
#top_msg::before {
	background: url(/wp-content/uploads/top-bg01.jpg) no-repeat right top;
	background-size: 55% auto;
}

#top_msg,
#top_msg h1 {
	color: #000;
}

#top_msg h1 {
	margin-bottom: 30px;
	padding: 0;
	text-align: left;
	font-weight: bold;
}

#top_msg h1 span {
	display: block;
	padding: 8px 0 0;
	font-size: 20px;
}

#top_msg h1 img {
	width: 60px;
	margin-left: 10px;
	vertical-align: bottom;
}

@media print,
screen and (min-width: 641px) {

	/* PC用 */
	#top_bg {
		padding-top: 80px;
	}

	#top_msg p {
		font-size: 100%;
		line-height: 2;
	}
}

@media only screen and (max-width: 640px) {

	/* スマホ用 */
	#top_msg::before {
		top: -35px;
	}

	#top_msg h1 {
		position: relative;
		padding-top: 70px;
		font-size: 28px;
	}

	#top_msg h1 span {
		font-size: 17px;
	}

	#top_msg h1 img {
		position: absolute;
		top: 0;
		left: 0;
		width: auto;
		height: 60px;
	}
}


/**/
#top2_msg::before {
	background: url(/wp-content/uploads/bg01_02.jpg) no-repeat right top;
	background-size: 55% auto;
}

#top2_msg,
#top2_msg h1 {
	color: #000;
}

#top2_msg h1 {
	margin-bottom: 30px;
	padding: 0;
	text-align: left;
	font-weight: bold;
}

#top2_msg h1 span {
	display: block;
	padding: 8px 0 0;
	font-size: 20px;
}

#top2_msg h1 img {
	width: 60px;
	margin-left: 10px;
	vertical-align: bottom;
}

@media print,
screen and (min-width: 641px) {

	/* PC用 */
	#top2_bg {
		padding-top: 80px;
	}

	#top2_msg p {
		font-size: 100%;
		line-height: 2;
	}
}

@media only screen and (max-width: 640px) {

	/* スマホ用 */
	#top2_msg::before {
		top: -35px;
	}

	#top2_msg h1 {
		position: relative;
		padding-top: 70px;
		font-size: 28px;
	}

	#top2_msg h1 span {
		font-size: 17px;
	}

	#top2_msg h1 img {
		position: absolute;
		top: 0;
		left: 0;
		width: auto;
		height: 60px;
	}
}



/**/
#top_investigation h1 {
	margin-bottom: 30px;
	color: #0a306d;
	font-weight: bold;
}

#top_investigation h1 img {
	width: 30px;
	margin-bottom: 15px;
}

#top_investigation dl {
	margin-bottom: 30px;
	box-sizing: border-box;
	color: #0a306d;
}

#top_investigation dt {
	padding: 0 40px 15px;
	background: url(/wp-content/uploads/bg_investigation02.png) no-repeat left 10px,
		url(/wp-content/uploads/bg_investigation01.png) no-repeat right 10px;
	font-size: 115%;
	text-align: center;
}

#top_investigation dd {
	padding: 0 15px 15px;
	border: 3px solid #0a306d;
	border-top: none;
	border-radius: 0 0 15px 15px;
	/* フレックス */
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

#top_investigation dd .photo {
	width: 45%;
}

#top_investigation dd .txt {
	width: 52%;
}

#top_investigation dd img {
	margin: 0 auto;
	padding: 0;
}

#top_investigation dd .fm {
	font-size: 150%;
}

#top_investigation dd .fs {
	font-size: 70%;
}

@media print,
screen and (min-width: 641px) {

	/* PC用 */
	#top_investigation dl {
		width: 48%;
	}
}

/**/
#top_beginner {
	position: relative;
}

#top_beginner h1 {
	margin-bottom: 30px;
	color: #0a306d;
	font-weight: bold;
}

#top_beginner h1 img {
	width: 30px;
	margin-bottom: 15px;
}

#top_beginner .link,
#top_beginner .link li {
	margin: 0;
	padding: 0;
	border: none;
}

#top_beginner .link {
	/* フレックス */
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

#top_beginner .link li {
	width: 50%;
}

#top_beginner .link li a {
	overflow: hidden;
	position: relative;
	display: block;
}

#top_beginner .link li a img {
	position: absolute;
	top: 50%;
	left: 50%;
	object-fit: cover;
	width: 100%;
	height: 100%;
	max-width: none;
	margin: 0;
	padding: 0;
	border: none;
	vertical-align: bottom;
	-moz-transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

#top_beginner .link li a:hover img {
	width: 120%;
}

#top_beginner .link li a b {
	position: relative;
	height: 250px;
	padding: 20px;
	background: rgba(0, 0, 0, 0.3);
	box-sizing: border-box;
	color: #fff;
	font-size: 25px;
	font-weight: normal;
	z-index: 9;
	/* 縦方向中央揃え */
	display: flex;
	align-items: flex-end;
	justify-content: flex-start;
}

@media only screen and (max-width: 640px) {

	/* スマホ用 */
	#top_beginner .link li a b {
		height: 180px;
		padding: 15px;
		font-size: 20px;
	}
}

/**/
#top_contact::before {
	background: url(/wp-content/uploads/bg_contact.jpg) no-repeat center center / cover;
}

/**/
#front_bottom_content h1 {
	color: #0a306d;
}

/*--------------------------------------------------
	下層共通
--------------------------------------------------*/
#post-64,
#post-66 {
	position: relative;
	padding: 80px 0;
}

#post-64::before,
#post-66::before {
	position: absolute;
	left: 0;
	top: 0;
	display: block;
	width: 100vw;
	height: 100%;
	margin-left: calc(((100vw - 100%) / 2) * -1);
	margin-right: calc(((100vw - 100%) / 2) * -1);
	background: url(/wp-content/uploads/bg02.jpg) no-repeat center center / 100% 100%;
	content: "";
	z-index: -1;
}

@media only screen and (max-width: 640px) {

	/* スマホ用 */
	#post-64,
	#post-66 {
		padding: 50px 0;
	}
}

/**/
.box_white {
	background: #FCE0DB;
}

.bg_wide.bg01::before {
	background: url(https://tantei-asahirc.jp/wp-content/uploads/bg01.jpg) no-repeat center center / cover;
}

.bg_wide.bg02::before {
	background: url(https://tantei-asahirc.jp/wp-content/uploads/bg01_02.jpg) no-repeat center center / cover;
}



.bg_wide.bg01_02::before {
	background: url(/wp-content/uploads/bg01.jpg) no-repeat center center / cover;
}

/*--------------------------------------------------
.bg_wide.bg02::before {
	background: url(/wp-content/uploads/bg02.jpg) no-repeat center center / 100% 100%;
}
--------------------------------------------------*/

/*--------------------------------------------------
	サービス
--------------------------------------------------*/
#service_nayami::before {
	background: url(/wp-content/uploads/bg_sub.jpg) no-repeat center center / cover;
}

/* #service_nayami::after {
	position: absolute;
	content: "";
	top: 0;
	left: 50%;
	margin-left: -40px;
	border: 40px solid transparent;
	border-top: 30px solid #fff;
} */

#service_nayami h1 {
	margin-bottom: 30px;
}

#service_nayami h1 img {
	width: 50px;
	margin-bottom: 20px;
}

@media print,
screen and (min-width: 641px) {

	/* PC用 */
	#service_nayami p {
		line-height: 2.5;
	}
}

@media only screen and (max-width: 640px) {

	/* スマホ用 */
	#service_nayami h1 {
		font-size: 30px;
	}
}

/**/
.post .service_support {
	position: relative;
}

/* .post .service_support.arow::after {
	position: absolute;
	content: "";
	top: 0;
	left: 50%;
	margin-left: -40px;
	border: 40px solid transparent;
	border-top: 30px solid #E7E8EA;
} */

.post .service_support h1 {
	margin-bottom: 30px;
}

.post .service_support h2 {
	padding: 10px 15px;
	background: #17182c;
	border: none;
	color: #fff;
	font-size: 20px;
	line-height: 1.3;
}

.post .service_support h1 img {
	width: 50px;
	margin-bottom: 20px;
}

.post .service_support dl {
	margin-bottom: 40px;
}

.post .service_support dt {
	margin-bottom: 15px;
}

.post .service_support dd {
	padding: 0;
}

.post .service_support dd span {
	display: inline-block;
	margin-bottom: 5px;
	font-size: 140%;
}

@media print,
screen and (min-width: 641px) {

	/* PC用 */
	.post .service_support dl {
		width: 48%;
	}
}

@media only screen and (max-width: 640px) {

	/* スマホ用 */
	.post .service_support h1 {
		font-size: 30px;
	}
}

/**/
#service_price::before {
	background: #e4e3da;
}

/* #service_price::after {
	position: absolute;
	content: "";
	top: 0;
	left: 50%;
	margin-left: -40px;
	border: 40px solid transparent;
	border-top: 30px solid #D9E8C9;
} */

#service_price h1 {
	margin-bottom: 30px;
}

#service_price h1 img {
	width: 50px;
	margin-bottom: 20px;
}

#service_price table {
	width: auto;
	margin: 0 auto 20px;
	font-size: 120%;
}

#service_price table,
#service_price table th,
#service_price table td {
	background: none;
	text-align: center;
}

#service_price table tr {
	border-color: #666;
}

@media print,
screen and (min-width: 641px) {

	/* PC用 */
	#service_price table {
		width: 500px;
		font-size: 150%;
	}

	#service_price table.tbl_wide {
		width: auto;
	}

	#service_price table th,
	#service_price table td {
		padding: 15px;
	}
}

@media only screen and (max-width: 640px) {

	/* スマホ用 */
	#service_price h1 {
		font-size: 30px;
	}
}

/*--------------------------------------------------
	ご利用の流れ
--------------------------------------------------*/
#flow_list .box_w2 {
	margin-bottom: 30px;
}

#flow_list .box_w2:not(:first-child) {
	margin-top: 30px;
}

#flow_list dt {
	position: relative;
	margin-bottom: 15px;
	padding-left: 48px;
	font-size: 20px;
	font-weight: normal;
}

#flow_list dt b {
	position: absolute;
	top: -4px;
	left: 0;
	display: block;
	width: 34px;
	height: 34px;
	background: #17182c;
	border-radius: 50%;
	color: #fff;
	/* 縦方向中央揃え */
	display: flex;
	align-items: center;
	justify-content: center;
}

#flow_list dd {
	padding: 0;
}

@media print,
screen and (min-width: 641px) {

	/* PC用 */
	#flow_list .photo {
		width: 40%;
	}

	#flow_list dl {
		width: 57.5%;
	}
}

/*--------------------------------------------------
	解決事例
--------------------------------------------------*/
.sample_about h2 {
	padding: 5px 10px;
	background: #17182c;
	color: #fff;
	font-size: 20px;
	line-height: 1.3;
}

.sample_about h3 {
	border-color: #17182c;
}

@media print,
screen and (min-width: 641px) {

	/* PC用 */
	.sample_about .box {
		overflow: hidden;
	}

	/*
	.sample_about h2,
	.sample_about .txt {
		float: right;
		width: calc(100% - 180px);
		box-sizing: border-box;
	}*/
	.sample_about .photo {
		float: left;
		width: 150px;
	}
}

@media only screen and (max-width: 640px) {

	/* スマホ用 */
	.sample_about h2 {
		font-size: 18px;
	}

	.sample_about .photo {
		float: left;
		width: 100px;
		margin-right: 15px;
	}
}

/*--------------------------------------------------
	お問い合わせ
--------------------------------------------------*/
#contact_box {
	padding: 15px;
	background: #f26649;
	color: #fff;
}

#contact_box h1 {
	margin-bottom: 20px;
	color: #fff;
}

#contact_box .btn {
	width: 550px;
	max-width: 100%;
	margin: 10px auto 0;
}

#contact_box .btn a {
	display: block;
	background: #fff;
	border: 1px solid #fff;
	border-radius: 30px;
	box-sizing: border-box;
	color: #000000;
	font-weight: bold;
}

#contact_box .btn a:hover {
	background: #251d54;
	color: #fff;
}

@media print,
screen and (min-width: 641px) {

	/* PC用 */
	#contact_box {
		padding: 40px;
	}

	#contact_box .btn a {
		width: 48%;
		box-sizing: border-box;
	}
}

@media only screen and (max-width: 640px) {

	/* スマホ用 */
	#contact_box h1 {
		font-size: 30px;
	}
}

/**/
.wpcf7-form select {
	width: auto;
}

.wpcf7-form table td {
	text-align: left !important;
}

/* ボタン */
.post form.wpcf7-form .linkBtn {
	padding: 0 !important;
}

.post form.wpcf7-form .linkBtn input.wpcf7-submit {
	width: 100%;
	padding: 15px 40px;
}

.post form.wpcf7-form .linkBtn span.ajax-loader {
	position: absolute;
}

@media print,
screen and (min-width: 641px) {

	/* PC用 */
	.wpcf7-form table th {
		width: 200px;
		white-space: nowrap;
	}

	.post form.wpcf7-form .linkBtn {
		width: 200px;
		max-width: 100%;
	}
}

/*
@media print, screen and (min-width: 641px){
.mb {
    margin-bottom: 60px;
    padding-bottom: 10%;
}}
*/
.post {
	padding: 0;
}

@media only screen and (max-width: 1023px) {

	nav#mainNav ul li li a,
	nav#mainNav ul li.current-menu-item li a {
		background: none;
		font-size: .9rem;
		font-weight: 800;
	}
}

.post p {
	padding-bottom: 15px;
	font-weight: 500;
}

.post p.fm {
	font-size: 140%;
	font-weight: 600;
}

#service_nayami h1,
.post .service_support h1,
#service_price h1 {
	margin-bottom: 30px;
	font-weight: 600;
}

.box_white.box_pad p {
	line-height: 2.5;
}

.box_w2.vcen p {
	line-height: 2;
}

.post .service_support dd span {
	margin-bottom: 10px;
	font-weight: 500;
}

.post .service_support dd {
	padding: 0;
	line-height: 1.8;
}

/*****************フローディング*********************/
.floating-button-wrapper {
	position: fixed;
	bottom: 10px;
	right: 72px;
	z-index: 10;
	-webkit-backdrop-filter: blur(10px);
	padding: 5px 0;
	justify-content: center;
}

.floating-button.floating-button {
	display: block;
	background: #1fbb15;
	color: #ffffff;
	width: 90vw;
	max-width: 380px;
	font-weight: 700;
	text-align: center;
	text-decoration: none;
	padding: 12px 6px;
	border-radius: 9999px;
	box-shadow: 0px 2px 4px #00000029;
	font-size: 18px;
}

@media screen and (min-width: 769px) {
	.floating-button-wrapper {
		display: block;
	}
}

@media screen and (max-width: 768px) {
	.floating-button-wrapper {
		display: none;
	}
}

/*----------20240305----------*/

.time .cat-news a {
	color: #fff !important;
}

#footer {
	background: #f26649;
}

#copyright {
	color: #F5F7FA;
	background: #f26649;
}

/* .page-korasime .column2_60 p,
.page-kakusyu .column2_60 p,
.page-wakaresase .column2_60 p,
.page-page-korasime .column2_60 p,
.page-others .column2_60 p {
	color: #fff !important;
} */

.page-wakaresase .bg03::before,
.page-kakusyu .bg03::before,
.page-korasime .bg03::before,
.page-others .bg03::before,
.page-flow .bg03::before,
.page-sample .bg03::before {
	background: url(/wp-content/uploads/bg_contact.jpg) no-repeat center center / cover;
}

.page-wakaresase .post h2,
.page-sample .post h2 {
	background-color: #f26649 !important;
}

.page-wakaresase .service_support .contact_box h1 {
	font-weight: 400 !important;
}

.page-wakaresase .contact_bg {
	padding-top: 80px;
}

@media screen and (max-width: 768px) {
	.page-wakaresase .contact_bg {
		padding-top: 20px;
	}
}

.page-faq #post-62 .post,
.page-company #post-68 .post,
.page-contact #post-71 .post {
	background-image: unset;
}

.page-flow #post-64::before,
#post-66::before {
	position: absolute;
	left: 0;
	top: 0;
	display: block;
	width: 100vw;
	height: 100%;
	margin-left: calc(((100vw - 100%) / 2)* -1);
	margin-right: calc(((100vw - 100%) / 2)* -1);
	background: unset;
}

#flow_list dt b {
	background: #f26649;
}

#post-64,
#post-66,
.bg06 {
	padding: 80px 0 0;
}

@media print,
screen and (min-width: 641px) {
	.box_pad {
		padding: 40px 40px 20px 40px;
	}
}

.page-flow .box_white {
	background: unset;
}

.page-sample .sample_about h3 {
	border-color: #f26649;
}


.page-contact .post .linkBtn {
	background: #f26649;
}

.category-news #wrapper {
	padding: 20px 10px;
}

.page-others .bluebox,
.page-korasime .bluebox,
.page-kakusyu .bluebox,
.page-wakaresase .bluebox {
	background-color: #DCFCE1;
	padding: 2em;
	margin: 3rem 0;

}

.page-others .bluebox h2,
.page-korasime .bluebox h2,
.page-kakusyu .bluebox h2,
.page-wakaresase .bluebox h2 {
	text-align: left;
}

.page-others .bluebox h2 span,
.page-korasime .bluebox h2 span,
.page-kakusyu .bluebox h2 span,
.page-wakaresase .bluebox h2 span {
	display: inline-block;
	background-color: #f26649;
	color: #fff;
	margin-right: 1em;
	padding: 0.5em;
}

.page-others .post .column2_40,
.page-korasime .post .column2_40,
.page-kakusyu .post .column2_40,
.page-wakaresase .post .column2_40 {
	vertical-align: top;
}

.page-others .colinner-l,
.page-korasime .colinner-l,
.page-kakusyu .colinner-l,
.page-wakaresase .colinner-l {
	padding: 0 5% 0 0;
}

.page-others .colinner-l .text,
.page-korasime .colinner-l .text,
.page-kakusyu .colinner-l .text,
.page-wakaresase .colinner-l .text {
	color: #333 !important;
}

.page-others .post .column2_40 img,
.page-korasime .post .column2_40 img,
.page-kakusyu .post .column2_40 img,
.page-wakaresase .post .column2_40 img {
	max-width: 100%;
}

.page-others .post img.aligncenter,
.page-korasime .post img.aligncenter,
.page-kakusyu .post img.aligncenter,
.page-wakaresase .post img.aligncenter {
	display: block;
	margin: 5px auto;
}

.page-others .colinner-r,
.page-korasime .colinner-r,
.page-kakusyu .colinner-r,
.page-wakaresase .colinner-r {
	padding: 0 0 0 5%;
}

.page-others .post p,
.page-korasime .post p,
.page-kakusyu .post p,
.page-wakaresase .post p {
	padding-bottom: 15px;
}

@media print,
screen and (max-width: 641px) {

	.page-others .bluebox h2 span,
	.page-korasime .bluebox h2 span,
	.page-kakusyu .bluebox h2 span,
	.page-wakaresase .bluebox h2 span {
		margin-right: 76%;
		margin-bottom: 10px;
		width: 80px;
	}

	.bluebox h2 {
		font-size: 20px !important;

	}
}

/*----------20240308----------*/

.floating-button-wrapper .floating-button {
	padding: 12px 6px 12px 50px;
	position: relative;
}

.floating-button-wrapper a::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 65px;
	transform: translateY(-50%);
	width: 37px;
	height: 35px;
	background-image: url(https://tantei-asahirc.jp/wp-content/uploads/LINE_Brand_icon.png);
	background-size: contain;
}

@media print,
screen and (min-width: 1024px) {
	#header-layout {
		padding: 0;
		display: flex;
		height: 80px;
		align-items: center;
	}

	#header-layout .logo {
		padding-top: 0;
	}

	#mainNav {
		padding-bottom: 0 !important;
	}

	nav#mainNav ul {
		display: flex;
		column-gap: clamp(0px, 7.444vw - 76.22px, 30px);
	}

	#mainNav .panel ul li {
		padding: 0;
	}

	.page-contact .contentbox,
	.page-faq .contentbox,
	.page-company .contentbox {
		padding: 0% 5% 0%;
	}

	.sub-menu li a:hover {
		margin: 4px 0;
	}

	/* #mainNav ul li ul.sub-menu li a:hover {
		margin: 4px 0;
	} */
}

.page-id-71 .post,
.page-id-68 .post,
.page-id-62 .post {
	background-color: #fff !important;
}

@media print,
screen and (min-width: 641px) {
	.page-flow .box_pad {
		padding: 40px 40px 0 40px;
	}
}

.vi_iframe {
	box-sizing: border-box;
	padding: 20px;
	width: 100%;
}

.vi_iframe iframe {
	display: block;
	width: 100%;
	height: 100%;
	aspect-ratio: 16 / 9;
}

.post img,
.post2b img,
.post4b img {
	border: none !important;
	padding: 10px !important;
}


/*----------20240311----------*/


#top2_msg {
	background: rgba(255, 255, 255, 0.5);
	box-sizing: border-box;
	padding: 30px;
}

#top2_msg p {
	padding-bottom: 0 !important;
}

@media print,
screen and (max-width: 640px) {
	.bg_wide.bg01::before {
		background: unset;
	}

	#top2_msg h1 {
		padding-top: 0;
	}
}

/*youtube埋め込み
----------------------------*/

.youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}
