<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">@charset "utf-8";

html { font-size: 3.125vw;}
body { font-size: 1.2rem;}
@media (min-width: 768px) {
	html {font-size: 125%; /* sets the base font to 20px for easier math */}
	body { font-size: 13px;}
}
.content-inner { margin: 0 1rem; width:auto; position: relative;}
.content-inner:after { content:"";  display:block;  height:0;  clear:both;  visibility:hidden}
@media (min-width: 768px) { /* desktop */
	body { overflow-x:hidden;}
	.content-inner { max-width:1000px; margin: 0 auto;}
	.hide_ab0205 { max-width:1000px; margin: 0 auto; display: none;}
	.inner{
		width:1000px;
		margin:0 auto;
		position:relative;
	}
}
@media (min-width: 768px) and (max-width: 1020px){ /* tablet */
	/* .content-inner { margin: 0 10px;} */
}
/*----------------------------------------------------------
hidden
----------------------------------------------------------*/
.hide-sp{ display: none!important;}
br.hide-sp { display: none;}
@media (min-width: 768px) {
	.hide-pc{ display: none!important;}
	.hide-sp{ display: block!important;}
	br.hide-pc { display: none;}
	br.hide-sp { display: inline;}
}
@media (min-width: 768px) and (max-width: 1020px){ /* tablet */
	br.hide-tablet,
	br.hide-tablet { display: none;}
}




/* ========================================================================
layout
======================================================================== */
@media screen and (max-width: 767px){
	.pc,
	#path{
		display:none;
	}

	#overlay{
		display:none;
		position:fixed;
		top:0;
		left:0;
		width:100%;
		height:100%;
		z-index:95;
	}
}

/* ========================================================================
header
======================================================================== */
@media screen and (max-width: 767px){
	.nav {
		width:100%;
		z-index:999;
		background:#fff;
	}
	.fixed {
		position: fixed;
		top:0px;
		left:0;
		border-top:2px solid #dc0000;
		width:100%;
	}

	header{
		z-index:100;
	}

	header .inner{
		padding:6px 0 0;
		height: 50px;
	}

	header h1{
		display:none;
	}

	header p.logo{
		padding:0 0 0 5px;
	}

	header p.logo img{
		width:128px;
	}

	header p.service{
		position:absolute;
		top:6px;
		left:139px;
	}

	header p.service img{
		float:left;
		width:95px;
	}

	header p.tel{
		display:none;
	}

	header p.telfree {
		position: absolute;
		top:4px;
		right:0;
	}

	/* ----------------------------------------
	nav
	---------------------------------------- */
	#menu{
		font-size: 13px;
	}

	#menu .dl-trigger{
		position:absolute;
		top:4px;
		right:47px;
		cursor:pointer;
	}

	#menu .dl-menu{
		position:absolute;
		top:50px;
		left:0px;
		width:100%;
		background:#fafafa;
		padding:35px 10px 15px;
		z-index:99;
	}

	#menu .dl-menu &gt; ul{
		margin:0 0 15px 0;
		background:#ffffff;
		border-top:1px solid #bfbfbf;
	}
	#menu ul li a{
		display:block;
		padding:0 10px 0 7px;
		color: #fff;
		border:1px solid #91b4e1;
		font-size:92.3%;
		font-weight:bold;
		line-height:35px;
		text-decoration:none;
		background: rgb(65,107,162);
		background: -moz-linear-gradient(top, rgba(65,107,162,1) 0%, rgba(34,71,120,1) 100%);
		background: -webkit-linear-gradient(top, rgba(65,107,162,1) 0%,rgba(34,71,120,1) 100%);
		background: linear-gradient(to bottom, rgba(65,107,162,1) 0%,rgba(34,71,120,1) 100%);
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#416ba2', endColorstr='#224778',GradientType=0 );
	}

	#menu ul li span{
		padding:0 0 0 21px;
		background:url(../../img/home02/menu_ico_home.png) no-repeat left center;
		-webkit-background-size:15px;
		-moz-background-size:15px;
		background-size:15px;
	}

	#menu ul li:nth-child(2) span{ background-image:url(../../img/home02/menu_ico_trouble.png); }
	#menu ul li:nth-child(3) span{ background-image:url(../../img/home02/menu_ico_type.png); }
	#menu ul li:nth-child(4) span{ background-image:url(../../img/home02/menu_ico_keytype.png); }
	#menu ul li:nth-child(5) span{ background-image:url(../../img/home02/menu_ico_price.png); }
	#menu ul li:nth-child(6) span{ background-image:url(../../img/home02/menu_ico_service.png); }
	#menu ul li:nth-child(7) span{ background-image:url(../../img/home02/menu_ico_about.png); }

	#menu ul li ul li{
		float:left;
		width:50%;
	}

	#menu ul li ul li a{
		padding:0 10px;
		color: #333;
		background:#e9f1f7;
		font-size:76.9%;
		font-weight:normal;
		line-height:1.2;
	}

	/* #menu ul li ul li:nth-child(2n) a{
	border-left:none;
} */

	#menu ul li ul li span{
		display:table-cell;
		height:30px;
		padding:0 0 0 11px;
		vertical-align:middle;
	}

	#menu ul li ul li:nth-child(n+1) span{
		background:url(../../img/home02/menu_ico_arrow.png) no-repeat left center;
		-webkit-background-size:5px 9px;
		-moz-background-size:5px 9px;
		background-size:5px 9px;
	}

	#menu ul li ul li:last-child{
		width:100%;
	}

	#menu ul li:nth-child(3) ul li:last-child,
	#menu ul li:nth-child(4) ul li:last-child,
	#menu ul li:nth-child(6) ul li:last-child{
		width:50%;
	}

	#menu ul li ul li.outlink {
		width:50%;
	}
	#menu ul li ul li.outlink a{
		padding:0 0 0 10px;
	}
	#menu ul li ul li.outlink a{
		background-image: url(../../img/common/menu/bg_outlink.png) ;
		background-repeat: no-repeat;
		background-position:right 5px top 50%;
		-webkit-background-size:11px 12px;
		-moz-background-size:11px 12px;
		background-size:11px 12px;
		padding:0 16px 0 10px;
	}
	#menu .dl-menu &gt; ul&gt;li { margin-bottom: 1px;}
	#menu .dl-menu &gt; ul&gt;li ul li { padding: 1px;}
	#menu .dl-menu &gt; ul&gt;li ul li:nth-child(odd) { padding-left: 0;}

	/* close
	----------------------------------- */
	#menu .dl-menu .menu_close01{
		border: 1px solid #676767;
		background: rgb(182,182,182);
		background: -moz-linear-gradient(top, rgba(182,182,182,1) 0%, rgba(121,121,121,1) 100%);
		background: -webkit-linear-gradient(top, rgba(182,182,182,1) 0%,rgba(121,121,121,1) 100%);
		background: linear-gradient(to bottom, rgba(182,182,182,1) 0%,rgba(121,121,121,1) 100%);
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#b6b6b6', endColorstr='#797979',GradientType=0 );
		text-align:center;
		font-size:76.9%;
		color:#ffffff;
		line-height:34px;
		cursor:pointer;
	}

	#menu .dl-menu .menu_close01 span{
		display:inline-block;
		padding:0 0 0 20px;
		background:url(../../img/home02/menu_ico_close.png) no-repeat left center;
		-webkit-background-size:14px;
		-moz-background-size:14px;
		background-size:14px;
	}
	#menu .dl-menu .menu_close02 {
		width: 20px;
		height: 20px;
		position: absolute;
		right: 10px;
		top: 15px;
	}
	#menu .dl-menu .menu_close02 span::before {
		display: block;
		transform: rotate(-45deg);
		width: 20px;
		height: 2px;
		background: #3f6698;
		content: '';
	}
	#menu .dl-menu .menu_close02 span::after {
		display: block;
		margin-top: -2px;
		transform: rotate(45deg);
		width: 20px;
		height: 2px;
		background: #3f6698;
		content: '';
	}

	/* dlmenu
	----------------------------------- */
	.dl-menuwrapper .dl-menu{
		position:absolute;
		opacity:0;
		pointer-events:none;
		-webkit-transform:translateY(10px);
		-moz-transform:translateY(10px);
		transform:translateY(10px);
		-webkit-backface-visibility:hidden;
		-moz-backface-visibility:hidden;
		backface-visibility:hidden;
	}

	.dl-menuwrapper .dl-menu.dl-menu-toggle{
		-webkit-transition:all 0.3s ease;
		-moz-transition:all 0.3s ease;
		transition:all 0.3s ease;
	}

	.dl-menuwrapper .dl-menu.dl-menuopen{
		opacity:1;
		pointer-events:auto;
		-webkit-transform:translateY(0px);
		-moz-transform:translateY(0px);
		transform:translateY(0px);
	}


	/*
	* mod-cvarea
	*/
	.mod-cvarea {
		position: relative;
	}

	.mod-cvarea-txt {}
	.mod-cvarea-txt img {
		width: 100%;
		height: auto;
	}

	.mod-cvarea-btn {
		position: absolute;
		bottom: 7%;
		right: 0;
		left: 0;
	}
	.mod-cvarea-btn img {
		width: 100%;
		height: auto;
	}


}

@media screen and (max-width: 767px){
	/* ========================================================================
	main
	======================================================================== */
	main .title{
		margin:0 0 15px 5px;
		padding:2px 0 2px 5px;
		border-left:2px solid #c90000;
		font-size:115.4%;
		font-weight:bold;
	}
}

/* ========================================================================
footer
======================================================================== */
footer{ color: #fff;background:#0a3a79;font-size:10px;}
footer .btn { padding: 15px 0; text-align:center;}
footer .btn a { display: inline-block; padding: 0 1em; border-left: 1px solid #fff; color:#ffffff; text-decoration:none;}
footer .btn a:first-child{border-left: none;}
footer .copyright{ background: #04295a; line-height: 30px; font-size: 10px; text-align:center;}

footer .snsicon{
	background: #04295a;
	text-align: center;
}

footer .snsicon img{
	width:40px;
	margin: 10px 20px 0;
}

@media screen and (max-width: 767px){
	footer .snsicon img{width:40px;margin: 10px 20px 7px;} 
}

@media (min-width: 768px){
	footer .copyright { background: #04295a; line-height: 50px; font-size: 12px;}
}
/* ----------------------------------------
nav
---------------------------------------- */
@media (min-width: 768px){
	footer { position: relative; margin-top: 40px;}
	footer nav a:link,
	footer nav a:visited,
	footer nav a:focus,
	footer nav a:active{
		color:#ffffff;
	}
	footer nav { position: relative;
		width:1000px;
		margin:0 auto;
		padding:30px 0 25px;
	}
	footer ul { overflow: visible;}
	footer nav &gt; ul { display: flex;}
	footer nav &gt; ul &gt; li{ position: relative;
		float:left;
		width:150px;
		margin:0 20px 0 0;
		font-size: 10px;
	}
	footer nav &gt; ul &gt; li:last-child{
		margin-right:0;
	}
	footer nav &gt; ul &gt; li::before { right: 0; top: 0; position: absolute; height: 100%; width: 1px; content: '';
		background: -moz-linear-gradient(top, rgba(125,150,184,0) 1%, rgba(125,150,184,1) 50%, rgba(125,150,184,0) 100%);
		background: -webkit-linear-gradient(top, rgba(125,150,184,0) 1%,rgba(125,150,184,1) 50%,rgba(125,150,184,0) 100%);
		background: linear-gradient(to bottom, rgba(125,150,184,0) 1%,rgba(125,150,184,1) 50%,rgba(125,150,184,0) 100%);
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#007d96b8', endColorstr='#007d96b8',GradientType=0 );
	}
	footer nav &gt; ul &gt; li:last-child::before{ content: none;}
	footer nav &gt; ul &gt; li &gt; a{ margin:0 0 20px 0;font-size: 12px; font-weight: bold; line-height:36px;}
	footer nav &gt; ul &gt; li.outlink &gt; a{
		margin:0 0 10px 0;
		padding:0 0 0 14px;
		border-bottom:1px dotted #ffffff;
		line-height:36px;
	}

	footer nav ul li ul li{
		font-size:10px;
		line-height:1.6;
	}
	.pagetop { top: -85px; left: 100%; position: absolute; height: 64px;width: 64px;}
	footer nav ul .outlink a{position: relative;}
	footer nav ul .outlink a::after { left: 100%; position: absolute; margin-left: 10px; content: url(../../img/home02/footer_icon_external.png);}
}

@media screen and (max-width: 767px){
	/* ========================================================================
	bnr
	======================================================================== */
	#bnr{
		position:fixed;
		bottom:0;
		left:0;
		width:100%;
		height:84px;
		padding:0 92px 0 8px;
		background:url(../../img/sp/bnr/bg_02.png) no-repeat right top, url(../../img/sp/bnr/bg_01.png) repeat-x center bottom;
		-webkit-background-size:86px 83px, 4px 82px;
		-moz-background-size:86px 83px, 4px 82px;
		background-size:86px 83px, 4px 82px;
		text-align:center;
	}

	#bnr p{
		padding:4px 0 0 0;
	}

	#bnr p:first-of-type{
		padding-top:10px;
	}

	#bnr p.close{
		position:absolute;
		top:8px;
		right:4px;
	}


	/* ========================================================================
	main
	======================================================================== */
	main h2 img{
		width:100%;
	}

	main .key img{
		width:100%;
		position: relative;
	}

	/* ----------------------------------------
	R追加 PLACE
	---------------------------------------- */

	.cv_area{
		position: relative;
	}
	.cv_area_text{
		position: relative;
		height: 0px;
		margin-top: -15%;
		margin-left: 36%;
		font-size: 2.7vw;
		font-weight: bold;
		font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
		color: #000;
	}

	#place_bold{
		font-size: 3.5vw;
		font-weight: bold;
	}

	#sp_key_place_img{
		position: absolute;
		font-size: 2.7vw;
		color: #feff04;
		padding-left: 40% !important;
		padding-top: 68% !important;
		top: 0px;
		width: 100%;
	}
	.btn2{
		margin-top: 15%;
	}



}
/* ========================================================================
contents
======================================================================== */
.kv-inner{position: relative; margin: 0;}
.kv-inner .kv-txt {	position: relative;	padding: 0.4rem 0;background: #224778;color: #fff;font-size: 1.1rem}
.kv-inner .kv-txt::before { right: -0.5rem; left: -0.5rem; top: 0; bottom: 0; position: absolute; transform: skew(-20deg, 0deg) ; background: #224778; content: '';}
.kv-inner .kv-txt span { position: relative; font-weight: bold;}
.kv-inner .txt-1 {top: 3rem;left: 28.1%;position: absolute;}
.kv-inner .txt-2 {top: 5rem;left: 28.1%;position: absolute;}
.kv-image { width: 100%;}
.kv-notes { font-size: 0.75rem;}
.kv-footer { padding: 0 1rem 1rem;}
@media (min-width: 768px){
	.kv-bg { height: 649px; background: url(../../img/home02/kv_bg01_pc.jpg) no-repeat center center;}
	.kv-inner { margin: 0 auto;}
	.kv-inner .kv-txt { font-size: 23px; padding: 8px 6px;}
	.kv-inner .kv-txt::before { left: 10px;}
	.kv-inner .txt-1 { left: 24.1%; top: 51px;}
	.kv-inner .txt-2 { left: 24.1%; top: 84px;}
	.kv-footer { position: absolute; bottom: 5px; left: 0; padding: 0;}
	.kv-notes { font-size: 10px; line-height: 1.4;}
	.kv-image { margin-left: -203px; width: 1281px; max-width: none;}
	.kv-keyimage { top: 50px; left: 166px; position: absolute; z-index: 1;}
}
.now { margin: 1.5rem 0 0; background: #e1e1e1; color: #316099;}
.now .inner { overflow: hidden;}
.now_content { padding: 1rem; font-size: 1rem;}
.bx-controls { display: none;}
@media (min-width: 768px){
	.now { margin: 0; }
	.now h2 { float: left; width: 174px;}
	.now_content { float: right; width: 826px; padding: 16px 70px 16px 16px; font-size: 14px;}
}
/* ----------------------------------------
cv
---------------------------------------- */
.home_cv{padding:0 0 20px 0;}
.home_cv img{width:100%;}
main .home_cv img{
	width:100%;
}
main .home_cv dl{
	position: relative;
	overflow: hidden;
}
main .home_cv dd{
	position: absolute;
	top: 20.4rem;
	width: 100%;
	padding: 0 4.6%;
}
main .home_cv .telCall img{
	opacity: 1 !important;
}
main .home_cv dl .home_cv_time {
	position: absolute;
	top: 32%;
	width: 66%;
	left: 34%;
	font-size: 2rem;
	line-height: 1.4;
	font-weight: bold;
}
main .home_cv dl .home_cv_time span{
	color:#dc0000;
}
.home_cv .notes{
	font-size: 0.75rem;
	line-height: 1.4;
	margin: 0 1rem;
}
.home_cv_text { position: relative;}
.home_cv_text p { position: absolute; top: 21px; left: 187px; width: 628px; line-height: 48px; font-size: 29px; color: #002a66; text-align: center;}
@media (min-width: 768px){
	.home_cv { padding: 20px 0 54px;}
}
/* ----------------------------------------
trouble
---------------------------------------- */
.trouble h2{margin-bottom: 5px;}
.trouble .trouble-footer{
	margin: 0 1rem;
	padding: 1rem;
	background: #ffffff;
	border: 1px solid #97bad8;
	font-size: 1.3rem;
	font-weight: bold;
	line-height: 1.4;
	text-align: center;
	box-shadow: 0 60px 15px -50px rgba(0,0,0,0.4);
}
.trouble .trouble-footer p { line-height: 1.7; font-weight: bold;}
.trouble .trouble-footer p span{
	color:#dc0000;
}
.trouble .bg { padding-bottom: 2.5rem; background: url(../../img/home02/trouble_bg01.jpg);}
.trouble .trouble_box{margin: 0 1rem;}
.trouble .trouble_box li{float:left; margin-bottom: 1rem;width: 48.83%;text-align: center;}
.trouble ul li:nth-child(even) {float: right;}
.trouble ul li:nth-child(odd) { clear: both;}
.trouble ul li span { display: block; margin-top: -0.2rem; font-size: 0.9rem;}


@media (min-width: 768px){
	.trouble .trouble-footer{ margin: 0; font-size: 22px;}
	.trouble h2 img { margin-top: -22px;}
	.trouble .trouble_box{margin: 0}
	.trouble .trouble_box li {margin-left: 50px; width: 300px;}
	.trouble .trouble_box li:nth-child(3n+1) { margin-left: 0; clear: both;}
	.trouble ul li:nth-child(even) {float: left;}
	.trouble ul li:nth-child(odd) { clear: none;}
	.trouble ul li span { font-size: 14px; margin-top: 0;}
}

/* ----------------------------------------
number one
---------------------------------------- */
.number_one .bg{
	background: rgb(255,120,0);
	background: -moz-linear-gradient(top, rgba(255,120,0,1) 1%, rgba(244,68,0,1) 100%);
	background: -webkit-linear-gradient(top, rgba(255,120,0,1) 1%,rgba(244,68,0,1) 100%);
	background: linear-gradient(to bottom, rgba(255,120,0,1) 1%,rgba(244,68,0,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ff7800', endColorstr='#f44400',GradientType=0 );
}
.number_one_share{}
.number_one-list li{width:33.4375%;float:left;}
.number_one-list li:nth-child(3){ width: 33.125%;}
.number_one .text{ width: 30rem; margin: 0 auto; padding: 1rem 0;}
.number_one .text p { padding: 0 0 0 1rem; color: #fff; font-size: 0.9rem;text-align: left; line-height: 1.55;}
.number_one .text p span {position: relative;}
.number_one .text p span::before { content: '※'; position: absolute; left: -1rem; }
@media (max-width:767px){
	main .trouble .explanation{
		padding: 0 6.4%
	}
	main .trouble .explanation_box{
		background-color: #fff;
		border-left: 5px solid #d8d8d8;
		border-right: 5px solid #d8d8d8;
		border-bottom: 5px solid #d8d8d8;
		padding: 9.46% 5.68%;
		margin-bottom: 8%;
	}
	main .trouble .explanation_list{
		padding: 0;
	}
	main .trouble .explanation_list li{
		float: none;
		min-height: auto;
		width: 100%;
	}
	main .trouble .explanation_list li:first-child{
		margin-bottom: 5%;
	}
	main .trouble .explanation_list li:nth-child(2n+1){
		margin-right: 0;
	}
	main .trouble .explanation_list li:nth-child(2n+2){
		margin-left: 0;
	}
	main .trouble .explanation_box .explanation_txt {
		margin: 0 0 6%;
		padding: 0;
		background: #fff;
		border: none;
		font-size: 14px;
		font-weight: normal;
		line-height: 1.6;
		text-align: left;
	}
	main .trouble .explanation_box .explanation_txt a{
		display: block;
		text-decoration: underline;
	}
	main .trouble .trouble_list{
		margin:0 0 8%;
		padding:0 5.625%;
		background:none;
		border-bottom:none;
	}

	main .trouble .trouble_list section{
		margin:0 ;
		background:none;
		border-bottom:none;
	}

	main .trouble .trouble_list h3 img{
		width:100%;
	}

	main .trouble .trouble_list ul{
		padding:0;
	}

	main .trouble .trouble_list ul li{
		float: none;
		padding:0;
		background:none;
		font-size:107.7%;
		font-weight:bold;
		line-height:1.714;
	}
	main .trouble .explanation_list dt{
		margin-bottom: 3%;
	}
	main .trouble .explanation_list dd{
		font-size: 60%;
		line-height: 1.4;
		text-align: left;
	}
}
@media (min-width: 768px){
	.number_one .bg{ padding-bottom: 50px;}
	.number_one-header { margin: 0 -177px -7px;}
	.number_one .text{ width: auto; margin: 16px 0 0; padding: 0;}
	.number_one .text p { padding: 0 0 0 10px; font-size: 12px; text-align: left; line-height: 1.66; }
	.number_one .text p span { position: relative; }
	.number_one .text p span::before { content: '※'; position: absolute; left: -15px; }
}
/* ----------------------------------------
tv
---------------------------------------- */
.tv { padding: 3rem 0 0;}
.tv h2{ margin-bottom: 1.8rem;}
.tv-images { text-align: center;}
.tv-list { padding: 0.6rem 0 4rem rem; background: url(../../img/home02/tv_img02_sp.png) no-repeat 0 0 / 100% auto;}
.tv-list ul li{	font-size: 1rem;font-weight:bold;line-height:1.5;}
.tv-list ul li span{color:#003978;}
@media (min-width: 768px){
	.tv { padding: 0 0 0px;}
	.tv h2{	margin-bottom: 23px;margin-left:-39px;width: 1035px;}
	.tv h2 img { margin-top: -25px;}
	.tv-images { height: 250px; background: url(../../img/home02/tv_img01_pc.jpg) no-repeat center 0;}
	.tv-list { padding: 0; background: none;}
	.tv-list .inner { display: flex; justify-content: space-between;}
	.tv-list ul li { font-size: 14px;}
	.tv-list ul li::before { content: '・';}
}

/* ----------------------------------------
performance
---------------------------------------- */
.performance h2{ margin-bottom: 2rem;
	background: rgb(230,33,0);
	background: -moz-linear-gradient(top, rgba(230,33,0,1) 0%, rgba(246,94,0,1) 99%);
	background: -webkit-linear-gradient(top, rgba(230,33,0,1) 0%,rgba(246,94,0,1) 99%);
	background: linear-gradient(to bottom, rgba(230,33,0,1) 0%,rgba(246,94,0,1) 99%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e62100', endColorstr='#f65e00',GradientType=0 );
}
.performance h2 img { margin-top: -3.3rem;}
.performance .body { padding: 1.5rem 0 2.5rem;}
.performance .body p { font-size: 0.9rem; line-height: 1.4;}
.performance .body .notes { margin-top: 1rem; text-align: center;}
@media (min-width: 768px){
	.performance h2 { margin-bottom: 30px; text-align: center;}
	.performance .body { padding: 18px 0 75px;}
	.performance .body p { font-size: 12px;}
	.performance .body .notes { text-align: right;}

}


/* ----------------------------------------
flow
---------------------------------------- */
.flow { margin-bottom: 1rem;}
.flow-bg { padding-bottom: 1rem; background: url(../../img/home02/flow_bg01.jpg);}
/* .flow h2{ margin-bottom: 1.5rem;} */
.flow_step-list { overflow: hidden;}
.flow_step-list li{	float:left; margin-bottom: 1.5rem;margin-left: 3.3%; width:48.33%; }
.flow_step-list li dl { position: relative;}
.flow_step-list li dd { bottom: 0; left: 0; position: absolute; display: table; height: 4.5rem; width: 100%; font-size: 1.1rem; text-align: center;}
.flow_step-list li dd span { display: table-cell; vertical-align: middle; font-weight: bold;}
@media (min-width: 768px){
	.flow { margin-top: 1.5rem; }
	.flow-bg{padding-bottom: 40px;}
	.flow h2 {margin-bottom: -350px; padding-top: 45px; height: 607px; background: url(../../img/home02/flow_bg02.png) no-repeat center top; background-size: 2000px auto; text-align: center;}
	.flow h2 img { margin-left: 150px; }
	.flow_step-list::after { top: 348px; left: 140px; position: absolute; content: url(../../img/home02/flow_dot02.png);}
	.flow_step-list li { margin-left: 65px; margin-bottom: 44px; width: 290px; position: relative;}
	.flow_step-list li::before { top: 170px; right: 100%; position: absolute; content: url(../../img/home02/flow_dot01.png);}
	.flow_step-list li:nth-child(3n+1){ margin-left: 0;}
	.flow_step-list li dd {bottom: 7px;height: 85px; font-size: 18px; line-height: 1.55;}
}
@media (max-width: 767px){
	.flow_step-list li:nth-child(2n+1){ margin-left: 0;}
}
/* ----------------------------------------
reason
---------------------------------------- */
.reason {}
.reason-bg { margin-top: 4rem; padding-bottom: 3rem; background-color: #fafafa;}
.reason h2 { width: 100%; margin-top: -4rem; margin-bottom: 0; display: inline-block; text-align: center;}
.reason-index { margin-bottom: 2rem;}
.reason-index img { width: 100% }
.reason-box { margin-bottom: 2.5rem; color: #002a66;}
.reason-box:last-child { margin-bottom: 0;}
.reason-box h3 { padding: 1rem 1.5rem; border: 0.35rem solid #002a66; background-color: #fff; font-size: 1.7rem; font-weight: bold; font-feature-settings: "palt";position: relative;}
.reason-box .hito_01 {position: absolute;bottom: 0;right: 3%;width: 25%;}
.reason-box .hito_02 {position: absolute;bottom: 0;right: 3%;width: 22.6%;}
.reason-box .hito_03 {position: absolute;bottom: 0;right: -3%;width: 20%;}
.reason-box h3 b { color: #ed2214; }
.reason-box h3 .fontsize-l { font-size: 3rem; vertical-align: -0.2rem;}
.reason-box h3 .fontsize-m { font-size: 2.5rem;}
.reason-box h3 .fontsize-s { font-size: 2.2rem;}
.reason-box .tab{ display: inline-block; position: relative; padding: 0.5rem 1.5rem 0.5rem 2.5rem; background-color: #ed2214;color: #fff; font-size: 1.1rem; font-weight: bold;}
.reason-box .tab::before { right: -0.6rem; top: 0; position: absolute; width: 2rem; height: 100%;transform: skew(23deg, 0deg);background-color: #ed2214;content: '';}
.reason-box .image { margin: 1rem;}
.reason-box .heading { margin: 1.5rem 0; padding-left: 1rem; position: relative;}
.reason-box .heading .lead { line-height: 1.33; font-size: 1.5rem; font-weight: bold; font-feature-settings: "palt";}
.reason-box .heading .lead span { color: #ed2214;}
.reason-box .heading .lead span.asterisk { font-size: 20%; color: #002a66; vertical-align: text-top;}
.reason-box .heading .note {font-size: 0.9rem; position: absolute; bottom: -0.8rem; right: 0;} 
.reason-box .body { padding: 1.5rem 1rem; border-top: 3px solid #002a66;}
.reason-box .body p { line-height: 1.66;}
.reason-box .body .notes { margin-top: 1rem; font-size: 0.9rem;}
@media (min-width: 768px){
	.reason-bg {margin-top: 0;}
	.reason h2 { display: block;margin-top: 0; margin-bottom: 1.8rem; padding-top: 82px; }
	.reason-index { max-width: 1000px; margin: 0 auto 60px;}
	.reason-bg{ padding-bottom: 80px; background: #fafafa url(../../img/home02/reason_bg01.jpg) no-repeat center top;}
	.reason-box{ position: relative; margin-right: 250px;}
	.reason-box h3 { position: relative; z-index: 1; padding: 20px 0 20px 8%; font-size: 28px;}
	.reason-box .hito_01 {position: absolute;bottom: 0;right: 3%;width: 14%;}
	.reason-box .hito_02 {position: absolute;bottom: 0;right: 3%;width: 11.6%;}
	.reason-box .hito_03 {position: absolute;bottom: 0;right: 3%;width: 10.8%;}
	.reason-box h3 .fontsize-l { font-size: 50px;}
	.reason-box h3 .fontsize-m { font-size: 38px;}
	.reason-box h3 .fontsize-s { font-size: 1em;}
	.reason-box .tab { padding: 10px 30px 8px 40px;}
	.reason-box .image {top: 95px; right: -360px;position: absolute;margin: 0;}
	.reason-box .heading { margin: 40px 0; padding-left: 0;}
	.reason-box .heading .lead { font-size: 28px;}
	.reason-box .heading .note {font-size: 14px; bottom: -18px; right: 92px;} 
	.reason-box .body { margin-right: 80px; padding: 30px 0 0; font-size: 16px;}
	.reason-box .body .notes { font-size: 12px; text-align: right;}
	.reason-box:nth-child(even) { margin-left:250px; margin-right: 0;}
	.reason-box:nth-child(even) .image { left: -360px; right: auto;}
	.reason-box:nth-child(even) .heading  { margin-left: 80px;}
	.reason-box:nth-child(even) .body { margin: 0 0 0 80px;}
}
/* ----------------------------------------
staff
---------------------------------------- */
.staff-bg{padding:0 0 2.5rem; background: url(../../img/home02/staff_bg01_sp.jpg) no-repeat center top; -webkit-background-size: cover; background-size: cover;}
.staff-heading { position: relative; padding: 1rem; background-color: #002a66; color: #fff; font-size: 2rem; font-weight: bold; text-align: center;}
.staff-heading::before { top: 100%; left: 0; position: absolute; content: ''; width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 10px 10px 0;
	border-color: transparent #011d46 transparent transparent;
}
.staff-heading::after { top: 100%; right: 0; position: absolute; content: ''; width: 0;
	height: 0;
	border-style: solid;
	border-width: 10px 10px 0 0;
	border-color: #011d46 transparent transparent transparent;
}
.staff-list-wrap{
	margin:0 10px;
	padding:2rem 0.5rem 1px;
	background:#ffffff;
	box-shadow:0px 0px 7px rgba(0, 0, 0, 0.2);
}
.staff-list li{
	float:left;
	width:33.3%;
	margin:0 0 1.8rem;
	padding:0 0.5rem;
	text-align:center;
	font-size: 1.1rem;
	font-weight:bold;
	line-height:1.4;
}
.staff-list li span{ display: block; margin-top: 0.7rem;color:#002a66;}
@media (min-width: 768px){
	.staff-bg{padding:68px 0 80px; background-image: url(../../img/home02/staff_bg01_pc.jpg);}
	.staff h2 { margin:0 auto -160px; text-align: center;}
	.staff-heading::before { border-width: 0 17px 17px 0;}
	.staff-heading::after { border-width: 17px 17px 0 0;}
	.staff-list-wrap{ margin: 0 17px; padding: 60px 17px 40px;}
	.staff-list li { width: 20%; padding: 0 13px; font-size: 18px;}
	.staff-list-wrap .btn { text-align: center;}
}
@media (max-width: 767px){
	.staff-list li:nth-child(10){display: none;}
}

/* ----------------------------------------
stock
---------------------------------------- */
.stock .body { margin-top: -2rem; padding: 0 1rem 4rem; background-color: #fafafa;}
.stock .body p { line-height: 1.66;}
.stock .notes { padding: 0 1rem 3.75rem 2rem; font-size: 0.9rem; position: relative; line-height: 1.5; background-color: #fafafa;}
.stock .notes::before { content:'※'; position: absolute; left: 1rem;}
@media (min-width: 768px){
	.stock-bg { margin-top: 100px; padding: 0 0 40px; position: relative; background-color: #fafafa;}
	.stock-bg::before { top: -100px; left: 50%; transform:translateX(-50%); width: 100%; height: 484px; position: absolute; background: url(../../img/home02/stock_bg01.png) no-repeat center top; content: '';}
	.stock h2 img {max-width: none; width: 1104px;}
	.stock .body { margin: -80px 0 0; padding: 0; width: 550px; font-size: 18px;}
	.stock .body p { line-height: 1.66;}
	.stock .notes { margin: 5px 0 0; font-size: 12px; padding: 0 0 0 15px;}
	.stock .notes::before { left: 0;}
}

/* ----------------------------------------
faq
---------------------------------------- */
.faq{ padding: 1.5rem 0;background: url(../../img/home02/faq_bg01.jpg);}
.faq .headline { padding: 2.3rem 0 2.5rem; position: relative;}
.faq .headline::before {position: absolute; right: 0; top: 0; height: 8.8rem; width: 9.5rem; background: url(../../img/home02/faq_title_ball.png) no-repeat 0 0 / contain; content: ''; display: none;}
.faq .headline::after { position: absolute; left: 0; bottom: -3%; height: 8.8rem; width: 9.5rem; background: url(../../img/home02/faq_hito.png) no-repeat 0 0 / contain; content: '';}
.faq .headline h2 {position: relative;font-size: 1.5rem;font-weight: bold;}
.faq .headline h2 .large { font-size: 2.4rem;}
.faq .headline h2 b {color: #ff6600;}
.faq-wrap { }
.faq-wrap dl{margin-bottom: 1rem;}
.faq-wrap dt{ display: flex; align-items: center; position: relative; background-color: #ff6600; color: #fff; font-size: 1.4rem; font-weight: bold;}
.faq-wrap dt::after { right: 1.5rem; top: 50%; position: absolute; margin-top: -0.3rem; background: url(../../img/home02/faq_arrow_up.png); background-size: contain; width: 1rem; height: 0.6rem; content: '';}
.faq-wrap dt span:first-child { background:#ff7800; padding: 2rem 0; width: 4rem;}
.faq-wrap dt span:nth-child(2) { padding-left: 1rem; }
.faq-wrap dt .num { margin: 0 auto; width: 1.9rem; display: block;}
.faq-wrap dt.close::after { transform: rotate(180deg); }
.faq-wrap dd { padding: 1rem 0; line-height: 1.8;}
@media (min-width: 768px){
	.faq .headline::before {display: block;position: absolute; right: 50px; left: auto; width: 191px; height: 176px;background: url(../../img/home02/faq_title_ball.png) no-repeat 0 0 / contain;content: '';top: 0;}
	.faq .headline h2 { font-size: 34px; text-align: center;}
	.faq .headline h2 .large { font-size: 50px;}
	.faq-wrap dl { float: left; width: 480px;}
	.faq-wrap dl:nth-child(even) { float: right;}
	.faq-wrap dl:nth-child(odd) { clear: both;}
	.faq-wrap dt { font-size: 22px;}
	.faq-wrap dt::after { content: none;}
	.faq-wrap dt span:first-child { padding: 25px 0; width: 60px;}
	.faq-wrap dt .num { width: 25px;}
	.faq-wrap dd { padding: 20px 10px; font-size: 16px; display: block!important;}

}


/*-----------------------------------------
license
-----------------------------------------*/
.license{ padding: 3rem 0;}
.license h2 { margin-bottom: 1.5rem; padding: 0 0 1rem; border-bottom: 2px solid #002a66; color: #002a66; font-size: 1.5rem; font-weight: bold; text-align: center;}
.license .content { margin-bottom: 1.5rem;}
.license-list { margin-bottom: 1.5rem;}
.license-list li { text-align: center;}
.license-list li+li{ margin-top: 0.5rem;}
.license-image { width: 23rem; margin: 0 auto;}
.license_notice { font-size: 0.9rem; line-height: 1.6;}
@media (min-width: 768px){
	.license { padding: 30px 0;}
	.license h2 { font-size: 26px;}
	.license .content { padding: 0 90px; overflow: hidden;}
	.license-list { float: left; margin: 0;}
	.license-list li { font-size: 16px; text-align: left;}
	.license-image { float: right; margin: 0;}
	.license_notice { font-size: 12px; text-align: center;}

}



.search-title { position: relative; margin-bottom: 1.4rem; padding: 1.3rem 0; background-color: #ff7800; color: #fff; font-size: 2rem; font-weight: bold; text-align: center;}
.search-title .icon { top: -0.5rem; left: 1.5rem; position: absolute; width: 5.2rem;}
.search-title .any_hito { top: -0.5rem; right: 8.5rem; position: absolute; width: 6.2rem;}
.search-title .trouble_hito { top: -1rem; right: 7rem; position: absolute; width: 6.8rem;}
.search-title .crime_hito { top: -0.5rem; right: 8rem; position: absolute; width: 5.5rem;}
.search-box-list {margin-bottom: 2rem;}
.search-box-list &gt;li { position: relative; margin-bottom: 1rem; border: 2px solid #ff6600; background-color: #fffff3;}
.search-box-list &gt;li h3 { padding: 1rem 0; font-size: 1.5rem; text-align: center; font-weight: bold;}
.search-box-list &gt;li .box { padding-bottom: 1rem; padding-left: 1rem; background-position: bottom right; background-repeat: no-repeat;}
.search-box-list &gt;li .box ul { position: relative; font-size: 1rem;}
.search-box-list &gt;li .box ul li { line-height: 1.5;}
.search-box-list &gt;li .box p { font-size: 1rem; line-height: 1.71;}
@media (min-width: 768px){
	.search-box-list &gt;li { float: left; width: 490px; margin-left: 20px;}
	.search-box-list &gt;li:first-child { margin-left: 0;}
	.search-box-list &gt;li .box { }
	.search-box-list &gt;li .box ul {padding-top: 26px; font-size: 14px;}
	.search-box-list &gt;li .box p {padding-top: 26px; font-size: 14px;}
	.search-title { padding: 20px 0; font-size: 32px;}
	.search-title .icon { left: 185px;}
}

.any { padding: 0 0 2rem; background: #fffff3;}
.any h2 { position: relative; top: -0.3rem; margin-bottom: 1rem;}
.any .notes { margin: 2rem 1rem 0; font-size: 0.9rem; text-align: right;}
.any-image {margin: 2rem 0 0;}
@media (min-width: 768px){
	.any { padding: 0; background: none;}
	.any .search-box-list .box { padding: 0 40% 0 20px; height: 170px; background-size: 230px auto;}
	.any .search-box-list &gt;li:nth-child(3) { margin-left: 0;}
	.any .search-box-list &gt;li:nth-child(3),
	.any .search-box-list &gt;li:nth-child(4),
	.any .search-box-list &gt;li:nth-child(5) { width: 320px;}
	.any .search-box-list &gt;li:nth-child(3) .box,
	.any .search-box-list &gt;li:nth-child(4) .box,
	.any .search-box-list &gt;li:nth-child(5) .box { background-size: 155px auto;}
}

.trouble_list .search-box-list .box { min-height: 9.5rem; background-size: 11rem auto;}
.crime .search-title { background-color: #316099;}
.crime .search-title .icon { top: 0.5rem; left: 1.6rem; width: 4.6rem;}
.crime .search-box-list .box { min-height: 8.5rem; padding-right: 36%; background-size: 11.6rem auto;}
.crime .search-box-list &gt;li { border-color: #316099; background-color: #f6f8fc;}
@media (min-width: 768px){
	.crime .search-title .icon { top: -14px; left: 185px;}
	.crime .search-box-list .box { padding-right: 42%;}
	.crime .search-box-list &gt;li:nth-child(odd),
	.trouble_list .search-box-list &gt;li:nth-child(odd) { margin-left: 0; clear: both;}
}
/* ----------------------------------------
result
---------------------------------------- */
.result { background-color: #cbebed;}
.result h2 { margin: 0 -1rem;}
.result .technology-images { margin:1.6rem 0 1.8rem; }
.result .technology-list { float:left; width: 50%; font-size: 1rem;}
.result .technology-list li { padding-left: 1em; line-height: 1.5;}
.result .technology-list li:before { content: '・'; margin-left: -1em;}
.result .topclass { padding: 3rem 0; clear: both;}
.result .topclass .heading { text-align: center; position: relative;}
.result .topclass .heading p { display: inline-block; margin-bottom: 1.5rem; font-size: 2rem; font-weight: bold; text-align: left;}
.result .topclass .heading b {color: #ff5a00; }
.result .topclass .heading .large { font-size: 3.2rem;}
.result .topclass .heading .mid { font-size: 2.5rem;}
.result .topclass .heading .illust { right: -42px; top: -20px; position: absolute;}
.result .topclass .heading .result_hito { left: 6px; top: -15px; position: absolute;}
.result .topclass .notes { margin-top: 1rem; font-size: 0.6rem;}
.result .technology-images-list li { margin-bottom: 25px; width: 20%; float: left; text-align: center;}
.result .technology-images-list li .cap { display: table; margin-top: 10px; width: 100%; height: 50px;}
.result .technology-images-list li .cap span { display: table-cell; vertical-align: middle; text-align: center;  color: #2399a0; font-size: 14px; font-weight: bold; line-height: 1.7;}
@media (min-width: 768px){
	.result h2 { margin: 0 0 -112px;}
	.result .topclass .heading p { font-size: 45px; text-align: center;}
	.result .topclass .heading .large { font-size: 69px;}
	.result .topclass .heading .mid { font-size: 1em;}
	.result .topclass .notes { font-size: 12px;}
}

/* ----------------------------------------
area
---------------------------------------- */
.area {padding: 2rem 0 1rem;}
.area-block { padding: 2rem 1rem; box-shadow: 0 0 0.5rem inset #cfcfcf; border: 1px solid #eaeaea; border-radius: 1rem;}
.area-image { float: left; width: 40.3%; padding-right: 1.2rem;}
.area-header { float: left; width: 59.7%; margin-bottom: 1.5rem;}
.area-header h2 { margin-bottom: 0.5rem;padding: 0.5rem; font-size: 1.5rem; color: #fff; background-color: #a6816d; text-align: left;}
.area-header .lead { color: #ff5a00; font-size: 2.3rem; font-weight: bold;}
.area-body { clear: both; margin-bottom: 1.5rem;}
.area-body p { font-size: 1.1rem; line-height: 1.56;}
.area .notes { font-size: 0.9rem;}
.area .notes b { color: #ff5a00;}
@media (min-width: 768px){
	.area-block { padding: 15px 26px 26px;}
	.area-image { width: 314px;}
	.area-header { width: 628px; margin-bottom: 15px; padding-top: 15px;}
	.area-header h2 { font-size: 30px; margin-bottom: 30px;}
	.area-header .lead { font-size: 26px;}
	.area-body { clear:none; float: left; width: 628px;}
	.area-body p {font-size: 14px;}
	.area .notes { font-size: 12px; clear: both;}
}
/* ----------------------------------------
about
---------------------------------------- */
.about-bg { padding: 2.5rem 0 1.5rem; color: #002a66; background: url(../../img/home02/about_bg01.jpg);}
.about-bg .content-inner::before { right: 1rem; top: 0; position: absolute; height: 16.25rem; width: 18.5rem; background: url(../../img/home02/about_img01.png) no-repeat 0 0 / contain; content: '';}
.about .notes { padding: 0 0 0 1rem; font-size: 0.9rem; text-align: left; position: relative;}
.about .notes .asterisk{position: absolute; left: 0;}
.about h2 { margin-bottom: 1.3rem; font-size: 1.6rem;}
.about .body { padding: 1.3rem 0; border-top: 1px solid #d7d7d7; position: relative;}
.about .body::before {top: 0; position: absolute; width: 100%; border-top: 1px solid #fff; content: '';}
.about .body h3 { margin-bottom: 1.3rem; color: #ff5a00; font-size: 1.5rem; font-weight: bold;}
.about .body h3 sup { font-size: 0.9rem;}
.about .body p { font-size: 1.1rem; line-height: 1.36;}
@media (min-width: 768px){
	.about-bg .content-inner::before { top: -40px; right: 15px; width: 369px; height: 325px;}
	.about .notes { text-align: right; font-size: 12px;}
	.about .notes .asterisk{position: inherit;}
	.about h2 { margin-bottom: 15px; font-size: 28px; text-align: left;}
	.about .body h3 { font-size: 24px;}
	.about .body h3 sup { font-size: 16px;}
	.about .body p { font-size: 14px;}
}
.about_other .headline span { display: none;}
.about_other .headline { position: relative; padding: 2rem 0; margin-bottom: 2.5rem; background-color: #ff6600; color: #fff; box-shadow: 0 1rem 2rem -2rem #000;}
.about_other .headline::after,
.about_other .headline::before { top: 0; position: absolute; width: 2rem; height: 100%; background-color: #ff6600; content: ''; z-index: -1;}
.about_other .headline::after { left: -0.6rem; transform: skew(7deg,0deg);}
.about_other .headline::before { right: -0.6rem; transform: skew(-7deg,0deg); }
.about_other .headline h2 { font-size: 1.8rem; font-weight: bold; text-align: center;}
.about_other-list { overflow: visible;}
.about_other-list li { position: relative; padding: 3rem 0;}
.about_other-list li h3 { top: 0; left: 0; position: absolute; width: 100%; color: #ff6600; font-size: 1.45rem; font-weight: bold; text-align: center;}
.about_other-list li .img { float: left; width: 14rem; margin: 0 0.8rem 0 -2rem; border: 1px solid #ff6600;}
.about_other-list li p { overflow: hidden;}
@media (min-width: 768px){
	.about_other { padding: 60px 0 40px;}
	.about_other .headline { margin: 0 28px 30px; padding: 14px; box-shadow: 0 10px 20px -20px #000;}
	.about_other .headline::after { left: -20px; transform: skew(20deg,0deg);}
	.about_other .headline::before { right: -20px; transform: skew(-20deg,0deg); }
	.about_other .headline span { display: inline;}
	.about_other .headline h2 { font-size: 30px;}
	.about_other-list { margin-bottom: 70px;}
	.about_other-list::after {display: table;visibility: hidden;clear: both;content: '';}
	.about_other-list li { float: left; width: 310px; margin-left: 35px; padding: 0;}
	.about_other-list li:first-child{margin-left: 0;}
	.about_other-list li h3 { position: static; margin: 0 0 15px; font-size: 20px;}
	.about_other-list li .img { float: none; margin: 0 0 15px; width: auto;}
	.about_other-list li p { font-size: 14px;}
}

.efforts { padding: 1rem 0 3rem; color: #002a66; position: relative;}
.efforts::after,
.efforts::before { top: 0; position: absolute; height: 1rem; width: 50%; content: '';}
.efforts::before {left: 0; background-color: #002a66;}
.efforts::after { right: 0;background-color: #e50012;}
.efforts .bgimage { position: absolute; right: -1rem; top: 0.5rem; width: 18.6rem;}
.efforts_txt { margin-bottom: 1.7rem; font-size: 1.2rem;}
.efforts-header { padding-top: 3rem; position: relative; z-index: 1;}
.efforts-header h2 { display: inline-block; width: 16.8rem; padding: 0.8rem 1rem; font-size: 1.2rem; color: #fff; background-color: #e50012; text-align: center;}
.efforts-header .catch { margin: 1.8rem 0; font-size: 1.7rem; line-height: 1.47; font-weight: bold; white-space: nowrap;}
.efforts-header .catch b { color: #e50012;}
@media (min-width: 768px){
	.efforts .bgimage { top: -95px; right: -349px; width: 800px;}
	.efforts-header { padding-right: 400px;}
	.efforts-header h2 { display: block; width: auto; padding: 16px 20px; font-size: 26px; text-align: left;}
	.efforts-header .catch { margin: 15px 0 20px 10px; font-size: 40px;}
	.efforts_txt { padding-right: 400px; font-size: 14px; margin-left: 10px; line-height: 1.78;}
}
@media all and (-ms-high-contrast: none){ /* IE10以上 */
	.staff-heading { padding-bottom: 10px;}
	.search-title { padding-bottom: 12px;}
	.about_other .headline { padding-bottom: 6px;}
	.efforts-header h2 { padding-bottom: 6px;}
	.area-header h2 { padding-bottom: 2px;}
	.home_cv_text p { padding-top: 4px;}
}



/* ----------------------------------------
202305 改修対応
---------------------------------------- */
/*数十万コンテンツ*/
.explanation_02 {
	background: #fffff3;
	padding: 5rem 0 3.5rem;
}
.explanation_02_ttl_bg {
	background: #002a66;
	height: 9.5rem;
	margin: 0 calc(50% - 50vw);
	padding: 0 calc(50vw - 50%);
	position: relative;
}
.explanation_02_ttl_bg .ttl_pic {
	position: absolute;
}
.explanation_02_txt {
	margin: 17rem auto 0;
	width: 82%;
	font-size: 1.3rem;
	line-height: 1.4;
}
.explanation_02_txt a {
	text-decoration: underline;
}
.explanation_02_content_wrap {
	width: 93%;
	margin: 1.3rem auto 0;
	position: relative;
}
.explanation_02_content_wrap::after {
	content: "";
	display: block;
	background: url("../../img/home02/explanation_02_pic_03_sp.png")no-repeat center;
	background-size: contain;
	width: 9rem;
	height: 18rem;
	position: absolute;
	right: -1rem;
	top: -33.5rem;
}


@media (max-width: 768px) {
	.explanation_02_ttl_bg .ttl_pic {
		top: -4.5rem;
		right: 0;
		left: 0;
		width: 98%;
		margin: 0 auto;
	}
	.explanation_02_content_wrap {
		display: flex;
		justify-content: center;
	}
}

@media (min-width: 768px) {
	.explanation_02 {
		padding: 70px 0;
	}
	.explanation_02 .inner {
		width: 930px;
		margin: 0 auto;
		position: relative;
	}
	.explanation_02_ttl_bg {
		height: 210px;
	}
	.explanation_02_ttl_bg .ttl_pic {
		top: -55px;
		z-index: 30;
	}
	.explanation_02_txt {
		margin: 170px 0 0;
		width: 691px;
		font-size: 18px;
		letter-spacing: 0.025em;
	}
	.explanation_02_content_wrap__child {
		background: #fff;
		display: flex;
		justify-content: center;
		box-shadow: 0px 0px 13px -5px #777777;
		border-radius: 10px;
		padding: 20px 0 40px;
		position: relative;
		z-index: 10;
	}
	.explanation_02_content_wrap {
		position: relative;
		margin: 30px auto 0;
		width: 100%;
	}
	.explanation_02_content_wrap::after {
		content: "";
		display: block;
		background: url("../../img/home02/explanation_02_pic_03_pc.png")no-repeat center;
		background-size: contain;
		width: 280px;
		height: 410px;
		position: absolute;
		right: -33px;
		top: -340px;
	}
}

/* CTA */
.home_cv .cta_ab_web_btn {
	position: absolute;
	bottom: 2rem;
	width: 50%;
	left: 0;
	right: 0;
	margin: 0 auto;
}
main .home_cv.ab_01 dl .home_cv_time {
	top: 29%;
}

main .home_cv.ab_02 dl .home_cv_time {
	top: 29%;
}
main .home_cv.ab_02 dd {
	top: 25.5rem;
}

main .home_cv.ab_03 dl .home_cv_time {
	top: 26%;
}
main .home_cv.ab_03 dd {
	top: 25.5rem;
}

@media (min-width: 768px)  {
	.home_cv .cta_ab_web_btn {
		position: absolute;
		bottom: 75px;
		width: 270px;
		left: auto;
		right: 35px;
		margin: 0;
	}
}

/*ニュースティッカー*/
.home_cv .news_ticker{
	position: absolute;
	top: 22.3rem;
	left: 0;
	right: 0;
	margin: 0 auto;
	width: 100%;
	height: 1.6rem;
	overflow: hidden;
	z-index: 50;
}
.home_cv .news_ticker p {
	font-size: 1.35rem;
	font-weight: bold;
	margin: 0;
	white-space: nowrap;
	text-overflow: ellipsis;
	color: #293d45;
	text-align: center;
}
.home_cv .news_ticker p .orange {
	color: #dc3403;
}
.home_cv .news_ticker_slider {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	margin: 0;
	padding: 0;
	list-style: none;
}

/*
.home_cv .news_ticker_slider[data-length="2"] {
top: 1.5rem;
animation-name: news-2_cta;
animation-duration: 10s;
animation-iteration-count: infinite;
animation-timing-function: ease;
animation-fill-mode: both;
animation-delay: 3s;
}
.home_cv .news_ticker_slider:hover {
animation-play-state: paused;
}
*/

@media (min-width: 768px)  {
	.home_cv .news_ticker_cta_wrap {
		position: relative;
	}
	.home_cv .news_ticker{
		top: 260px;
		width: 530px;
		height: 23px;
		left: 40px
	}
	.home_cv .news_ticker p {
		font-size: 20px;
	}
	/*
	.home_cv .news_ticker_slider[data-length="2"] {
	top: 23px;
	animation-name: news-2_pc_cta;
}
	*/
}


/*
@keyframes news-2_cta {
0% { top: 0; visibility: visible; }
5% { top: 0; }
10% { top: 0; }
20% { top: -1.5rem; }
55% { top: -1.5rem; }
65% { top: -3rem; }
66% { top: -3rem; visibility: hidden; }
67% { top: 1.5rem; visibility: hidden; }
68% { top: 1.5rem; }
75% { top: 0; }
90% { top: 0; }
100% { top: 0; }
}
@keyframes news-2_pc_cta {
0% { top: 0; visibility: visible; }
5% { top: 0; }
10% { top: 0; }
20% { top: -23px; }
55% { top: -23px; }
65% { top: -46px; }
66% { top: -46px; visibility: hidden; }
67% { top: 23px; visibility: hidden; }
68% { top: 23px; }
75% { top: 0; }
90% { top: 0; }
100% { top: 0; }
}
*/






/*fixバー*/
@media (max-width: 768px)  {
	.fix_menu_02 {
		position: fixed;
		bottom: 0;
	}
	.fix_menu_02_bg {
		background: url("../../img/home02/fix_menu_02_bg_sp.png")no-repeat left center;
		background-size: cover;
		padding: 0 0 0 3%;
	}
	.fix_menu_02_wrap {
		display: flex;
		align-items: center;
		justify-content: space-between
	}
	.tel_pic {
		filter: drop-shadow(1px 1px 3px rgba(0, 0, 0, 0.6));
	}
	.web_btn {
		margin: 0 0 0 3%;
	}
	.fix_menu_02 .news_ticker_wrap {
		background: #e9f6ed;
		height: 2rem;
		width: 100%;
		position: relative;
		left: 0;
		top: 1px;
	}
	.fix_menu_02 .news_ticker{
		position: absolute;
		overflow: hidden;
		height: 1.5rem;
		width: 100%;
		margin: 4px auto 0;
		right: 0;
		left: 0;
	}
	.fix_menu_02 .news_ticker p {
		font-size: 1.3rem;
		font-weight: bold;
		margin: 0 auto;
		white-space: nowrap;
		text-overflow: ellipsis;
		color: #dc3403;
		text-align: center;
	}
	.fix_menu_02 .news_ticker_slider {
		position: absolute;
		left: 0;
		top: 0;
		width: 100%;
		margin: 0;
		padding: 0;
		list-style: none;
	}
	/*
	.fix_menu_02 .news_ticker_slider[data-length="2"] {
	top: 1.5rem;
	animation-name: news-2;
	animation-duration: 12s;
	animation-iteration-count: infinite;
	animation-timing-function: ease;
	animation-fill-mode: both;
	animation-delay: 3s;
}
	.fix_menu_02 .news_ticker_slider:hover {
	animation-play-state: paused;
}
	*/

	footer .snsicon.fixmenu{
		padding-bottom: 9rem;
	}
}

@media (min-width: 768px)  {
	.bottom_fix_menu {
		background: #002a66;
		position: fixed;
		z-index: 9999;
		bottom: 0;
		width: 100%;
		display: none;
	}
	.bottom_fix_menu_inner {
		margin: 0 auto 0;
		width: 1000px;
	}
	.bottom_fix_menu .menu_list {
		color: #fff;
		display: flex;
		align-items: center;
		justify-content: flex-end;
	}
	.bottom_fix_menu .menu_list02 {
		color: #fff;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
	.bottom_fix_menu .menu_list03 {
		color: #fff;
		display: flex;
		align-items: center;
		justify-content: center;
		margin: 30px 0 0;
	}
	.menu_list_child_01 .txt01 {
		font-size: 20px;
		font-weight: bold;
	} 
	.menu_list_child_01 .txt01 .num {
		font-size: 22px;
	} 
	.menu_list_child_01 .txt02 {
		font-size: 11px;
	} 
	.bottom_fix_menu .menu_list .menu_list_child_02 {
		margin-left: 20px;
	}
	.bottom_fix_menu .menu_list .menu_list_child_03 {
		margin-left: 40px;
	}

	.menu_list_wrap {
		display: flex;
		align-items: flex-start;
		justify-content: flex-end;
	}
	.menu_list02 .menu_list_child_02 {
		margin-left: 20px;
	}
	.menu_list_wrap .menu_list_child_03 {
		margin-left: 40px;
		position: relative;
	}


	.bottom_fix_menu .news_ticker_wrap {
		background: #fff;
		height: 23px;
		width: 75%;
		position: absolute;
		left: 0;
		top: 0;
		border-top: solid 1px #002a66;
	}
	.bottom_fix_menu .news_ticker{
		position: absolute;
		overflow: hidden;
		height: 20px;
		width: 310px;
		margin: 2px 0 0;
		right: 200px;
	}
	.bottom_fix_menu .news_ticker p {
		font-size: 16px;
		font-weight: bold;
		margin: 0;
		white-space: nowrap;
		text-overflow: ellipsis;
		color: #002a66;
	}
	.bottom_fix_menu .news_ticker p .orange {
		color: #fa5717;
	}
	/*
	.bottom_fix_menu .news_ticker_slider {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	margin: 0;
	padding: 0;
	list-style: none;
}
	.bottom_fix_menu .news_ticker_slider[data-length="2"] {
	top: 20px;
	animation-name: news-2_pc;
	animation-duration: 12s;
	animation-iteration-count: infinite;
	animation-timing-function: ease;
	animation-fill-mode: both;
	animation-delay: 3s;
}
	.bottom_fix_menu .news_ticker_slider:hover {
	animation-play-state: paused;
}
	*/
	footer .snsicon.fixmenu{
		padding-bottom: 80px;
	}
}
@media screen and (min-width:2000px){
	.bottom_fix_menu .news_ticker_wrap {
		width: 65%;
	}
}

/*
@keyframes news-2 {
0% { top: 0; visibility: visible; }
5% { top: 0; }
10% { top: 0; }
20% { top: -1.5rem; }
55% { top: -1.5rem; }
65% { top: -3rem; }
66% { top: -3rem; visibility: hidden; }
67% { top: 1.5rem; visibility: hidden; }
68% { top: 1.5rem; }
75% { top: 0; }
90% { top: 0; }
100% { top: 0; }
}
@keyframes news-2_pc {
0% { top: 0; visibility: visible; }
5% { top: 0; }
10% { top: 0; }
20% { top: -20px; }
55% { top: -20px; }
65% { top: -40px; }
66% { top: -40px; visibility: hidden; }
67% { top: 20px; visibility: hidden; }
68% { top: 20px; }
75% { top: 0; }
90% { top: 0; }
100% { top: 0; }
}
*/


.ticker_js {
	margin: 0 auto;
	padding: 0;
	width: 600px;
	text-align: left;
	position: relative;
	overflow: hidden;
}
.ticker_js ul {
	width: 100%;
	position: relative;
	overflow: initial;
}
.ticker_js ul li {
	width: 100%;
	display: none;
}

.ticker_js ul li.showlist {
	animation: SlideIn 5.2s;
}
@keyframes SlideIn {
	0% { opacity: 1; }
	87% { opacity: 1; }
	100% { opacity: 0; }
}

@media screen and (max-width: 750px) {
.faq .headline { padding: 2.3rem 0 2.5rem 10rem; position: relative;}
	
	.search-title .any_hito { top: -0.5rem; right: 8.5rem; position: absolute; width: 6.2rem;}
.search-title .trouble_hito { top: -0.0rem; right: 1rem; position: absolute; width: 6.8rem;}
.search-title .crime_hito { top: -0.5rem; right: 2rem; position: absolute; width: 5.5rem;}
	.result .topclass .heading .large { font-size: 2.3rem;}
.result .topclass .heading .mid { font-size: 2.5rem;}
	.result .topclass .heading { text-align: left; position: relative;}
	.result .topclass .heading p { display: inline-block; margin-bottom: 0; font-size: 2rem; font-weight: bold; text-align: left;}
	.result .topclass .heading .result_hito { right: 6px; top: -15px; position: absolute;left: auto;width: 24%;}
}

.br-sp {
    display: none;
}

@media (max-width: 600px) {
    .br-sp {
        display: block;
        font-size: 0;
    }
}</pre></body></html>