@charset "utf-8";
/*! Yaku Han JP v3.2.0 (OFL-1.1 AND MIT) by Qrac *//*! Type: YakuHanJP - Based on Noto Sans CJK JP */
@font-face{font-family:YakuHanJP;font-style:normal;font-weight:100;src:url(https://cdn.jsdelivr.net/npm/yakuhanjp@3.2.0/dist/fonts/YakuHanJP/YakuHanJP-Thin.eot);src:url(https://cdn.jsdelivr.net/npm/yakuhanjp@3.2.0/dist/fonts/YakuHanJP/YakuHanJP-Thin.woff2) format("woff2"),url(https://cdn.jsdelivr.net/npm/yakuhanjp@3.2.0/dist/fonts/YakuHanJP/YakuHanJP-Thin.woff) format("woff")}@font-face{font-family:YakuHanJP;font-style:normal;font-weight:200;src:url(https://cdn.jsdelivr.net/npm/yakuhanjp@3.2.0/dist/fonts/YakuHanJP/YakuHanJP-Light.eot);src:url(https://cdn.jsdelivr.net/npm/yakuhanjp@3.2.0/dist/fonts/YakuHanJP/YakuHanJP-Light.woff2) format("woff2"),url(https://cdn.jsdelivr.net/npm/yakuhanjp@3.2.0/dist/fonts/YakuHanJP/YakuHanJP-Light.woff) format("woff")}@font-face{font-family:YakuHanJP;font-style:normal;font-weight:300;src:url(https://cdn.jsdelivr.net/npm/yakuhanjp@3.2.0/dist/fonts/YakuHanJP/YakuHanJP-DemiLight.eot);src:url(https://cdn.jsdelivr.net/npm/yakuhanjp@3.2.0/dist/fonts/YakuHanJP/YakuHanJP-DemiLight.woff2) format("woff2"),url(https://cdn.jsdelivr.net/npm/yakuhanjp@3.2.0/dist/fonts/YakuHanJP/YakuHanJP-DemiLight.woff) format("woff")}@font-face{font-family:YakuHanJP;font-style:normal;font-weight:400;src:url(https://cdn.jsdelivr.net/npm/yakuhanjp@3.2.0/dist/fonts/YakuHanJP/YakuHanJP-Regular.eot);src:url(https://cdn.jsdelivr.net/npm/yakuhanjp@3.2.0/dist/fonts/YakuHanJP/YakuHanJP-Regular.woff2) format("woff2"),url(https://cdn.jsdelivr.net/npm/yakuhanjp@3.2.0/dist/fonts/YakuHanJP/YakuHanJP-Regular.woff) format("woff")}@font-face{font-family:YakuHanJP;font-style:normal;font-weight:500;src:url(https://cdn.jsdelivr.net/npm/yakuhanjp@3.2.0/dist/fonts/YakuHanJP/YakuHanJP-Medium.eot);src:url(https://cdn.jsdelivr.net/npm/yakuhanjp@3.2.0/dist/fonts/YakuHanJP/YakuHanJP-Medium.woff2) format("woff2"),url(https://cdn.jsdelivr.net/npm/yakuhanjp@3.2.0/dist/fonts/YakuHanJP/YakuHanJP-Medium.woff) format("woff")}@font-face{font-family:YakuHanJP;font-style:normal;font-weight:700;src:url(https://cdn.jsdelivr.net/npm/yakuhanjp@3.2.0/dist/fonts/YakuHanJP/YakuHanJP-Bold.eot);src:url(https://cdn.jsdelivr.net/npm/yakuhanjp@3.2.0/dist/fonts/YakuHanJP/YakuHanJP-Bold.woff2) format("woff2"),url(https://cdn.jsdelivr.net/npm/yakuhanjp@3.2.0/dist/fonts/YakuHanJP/YakuHanJP-Bold.woff) format("woff")}@font-face{font-family:YakuHanJP;font-style:normal;font-weight:900;src:url(https://cdn.jsdelivr.net/npm/yakuhanjp@3.2.0/dist/fonts/YakuHanJP/YakuHanJP-Black.eot);src:url(https://cdn.jsdelivr.net/npm/yakuhanjp@3.2.0/dist/fonts/YakuHanJP/YakuHanJP-Black.woff2) format("woff2"),url(https://cdn.jsdelivr.net/npm/yakuhanjp@3.2.0/dist/fonts/YakuHanJP/YakuHanJP-Black.woff) format("woff")}
@font-face {
	font-family: 'Roboto';
	src: url('../fonts/Roboto-Bold.eot');
	src: url('../fonts/Roboto-Bold.woff') format('woff'),
	url('../fonts/Roboto-Bold.ttf') format('truetype');
	font-weight: normal;
	font-style: normal;
}

/*reset*/
body, h1, h2, h3, h4, h5, h6, h7,
div, p, dl, dt, dd, ol, ul, li, table, th, td, fieldset,
form, input[type="radio"], input[type="checkbox"] {
	margin: 0;
	padding: 0;
}
h1, h2, h3, h4, h5, h6, h7,
dt, dd, th, td, em, address, label {
	font-weight: normal;
	font-style: normal;
	font-size: inherit;
}
ol, ul {
	list-style-type: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
input, select, textarea {
}
input[type="text"], textarea {
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
img, input, select, textarea {
}

@media(max-width:767px){
button,
input[type="reset"],
input[type="submit"] {
	-webkit-appearance: none;
}
}

img, fieldset {
	border: 0;
}
img {
	vertical-align: middle;
	max-width: 100%;
	height: auto;
	-webkit-backface-visibility: hidden;
}

h1, h2, h3, h4, h5, h6, h7,
p, dl, dt, dd, ol, ul, li, th, td {
  line-height: 1.5;
  letter-spacing: .5pt;
}
p, dl, dt, dd, ol, ul, li, th, td {
  line-height: 1.75;
}

/*common*/
a {
	color: #1f5fac;
}
.roboto {
	font-family: 'Roboto', sans-serif;
}
.bold {
	font-weight: bold;
}
#contents {
	min-width: 1028px;
	color: #333333;
	font-family: "YakuHanJP", 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	font-size: 18px;
	overflow: hidden;
}
.mincho {
	font-family: "Times New Roman", Georgia, YuMincho, '游明朝', 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho ProN','メイリオ',"HGS明朝E", 'MS P 明朝', 'MS PMincho', serif;
}
.inner {
	width: 980px;
	margin: 0 auto;
}
.section {
	padding: 60px 0;
	background: #FFF;
}
.section.blue {
	background: #EDF2F7;
}
.section h2 {
	margin-bottom: 60px;
	text-align: center;
}
.section h2 span {
	padding-bottom: 10px;
	color: #0C1863;
	font-size: 28px;
	font-weight: bold;
	background: url("../img/bg_title.png") left bottom repeat-x;
	font-family: "YakuHanJP", 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}
.define_wrap {
	padding: 0 24px;
}

.define_inner {
	max-width: 100%;
	width: 980px;
	margin: 0 auto;
}

.clear {
	clear: both;
}
.clearfix {
	zoom: 100%;
}
.clearfix:after {
	content: "";
	clear: both;
	height: 0;
	display: block;
	visibility: hidden;
}

.ov {
	transition: all 600ms cubic-bezier(0.165, 0.84, 0.44, 1);
}
.ov:hover {
	opacity:0.7;
	filter: alpha(opacity=70);        /* ie lt 8 */
	-ms-filter: "alpha(opacity=70)";  /* ie 8 */
	-moz-opacity:0.7;                 /* FF lt 1.5, Netscape */
	-khtml-opacity: 0.7;              /* Safari 1.x */
}
.c-sec {

}

.c-sec__head {
	background-color: #1f5fac;
}

.c-sec__head__inner {
	padding: 38px 0;
}

.c-sec__head__inner__ttl {
	margin: 0 -50px;
	color: #fff;
	font-size: 42px;
	text-align: center;
	letter-spacing: .025em;
	font-feature-settings : "palt";
}

.l-pageTop {
	/*display: none;*/
	position: fixed;
	bottom: 50px;
	right: 50px;
	z-index: 5;
	opacity: 0;
	cursor: pointer;
}

.l-pageTop img {
	width: 60px;
	height: 60px;
}

/*header*/
#header {
	padding: 13px 0;
	background: #fff;
	border-top: 3px solid #db2e30;
	border-bottom: 1px solid #dfdbd8;
}
#header .inner {
	width: 980px;
	margin: 0 auto;
}
#header h1 {
	font-size: 12px;
	line-height: 1;
	color: #888;
	margin-bottom: 11px;
}
#header .logo {
	width: 450px;
	display: flex;
	justify-content: flex-start;
	align-items: center;
}
#header .logo .logo_image {
	width: 228px;
	transition: 0.25s;
}
#header .logo .logo_image img {
	width: 228px;
	height: auto;
	transition: 0.25s;
}
#header .logo .logo_text {
	margin-left: 15px;
	line-height: 1;
}
#header .logo .logo_text a {
	color: #333;
	text-decoration: none;
	font-size: 16px;
	font-weight: bold;
	transition: 0.25s;
}
#header .logo .logo_text a:hover {
	opacity: 0.7;
}

/**********************************

 heroSec

***********************************/
.heroSec {
	background: url(../image/hero_bg.jpg) no-repeat center;
	background-size: cover;
}

.heroSec .define_inner {
	width: 100%;
}

.heroSec__inner__txt img {
	display: block;
	max-width: 1430px;
	width: 100%;
	height: auto;
	margin: 0 auto;
	image-rendering: -webkit-optimize-contrast;
}

.heroSec__inner__btn a {
	display: block;
	width: 460px;
	height: 60px;
	margin: 0 auto;
	color: #333333;
	font-size: 18px;
	font-weight: bold;
	text-align: center;
	background: url(../image/hero_btn_bg.png) no-repeat left top;
	text-decoration: none;
}

.heroSec__inner__btn a span {
	display: inline-block;
	padding: 15px 32px 0 0;
	position: relative;
}

.heroSec__inner__btn a span:before {
	content: "";
	display: block;
	width: 20px;
	height: 6px;
	background: url(../image/icon_arr01.png) no-repeat left top;
	position: absolute;
	top: 23px;
	right: 0;
}

.heroSec ul.discraimer {
	width: 400px;
	margin: 0 auto;
}

.heroSec ul.discraimer  li {
	font-size: 15px;
}

/**********************************

 breadcrumbsSec

***********************************/
.breadcrumbsSec {
	max-width: 100%;
	width: 980px;
	margin: 0 auto;
}

.breadcrumbsSec__inner {
	padding: 16px 0;
}

.breadcrumbsSec__inner ul li {
	display: inline-block;
	margin-right: 5px;
	font-size: 14px;
}

.breadcrumbsSec__inner ul li a {
	display: inline-block;
	padding-right: 16px;
	position: relative;
	text-decoration: none;
}

.breadcrumbsSec__inner ul li a:before {
	content: "";
	display: block;
	width: 4px;
	height: 7px;
	background: url(../image/icon_arr02.png) no-repeat left top;
	position: absolute;
	top: 8px;
	right: 0;
}

/**********************************

 contactSec

***********************************/
.contactSec {
	background: #222;
}

.contactSec__inner {
	padding: 30px 0;
}

.contactSec__inner__ttl {
	margin-bottom: 37px;
	text-align: center;
    color: #FFF;
    font-size: 22px;
    font-weight: bold;
}

.contactSec__inner__ttl span {
    padding: 4px 10px 5px 10px;
    margin-right: 15px;
    color: #FFAE00;
    border-top: 1px solid #FFAE00;
    border-bottom: 1px solid #FFAE00;
}

.contactSec__inner__telArea {
	width: 815px;
	padding: 10px 0;
	margin: 0 auto;
	text-align: center;
	background: url(../image/contact_black.png) repeat center;
}

.contactSec__inner__telArea .txt01 {
	display: inline-block;
	vertical-align: middle;
}

.contactSec__inner__telArea .tel {
	display: inline-block;
	margin: 0 10px 0 15px;
	font-size: 50px;
	font-weight: bold;
	line-height: 1.5;
	vertical-align: middle;
	color: #FFF;
}

.contactSec__inner__telArea .tel a {
	display: inline-block;
	color: #fff;
	text-decoration: none;
}

.contactSec__inner__telArea .txt02 {
	display: inline-block;
	color: #fff;
	font-size: 14px;
	font-weight: bold;
	line-height: 1.5;
	vertical-align: middle;
	text-align: left;
}

.contactSec__inner__telmailArea {
	width: 815px;
	margin: 0 auto;
}

.contactSec__inner__telmailArea .tel {
	float: left;
}

.contactSec__inner__telmailArea .mail {
    width: 490px;
	margin: 0 auto;
}

.contactSec__inner__telmailArea .mail a {
	transition: all  0.3s ease;
}

.contactSec__inner__telmailArea .mail a:hover {
	opacity: 0.8;
	transition: all  0.3s ease;
}

/**********************************

 serviceSec

***********************************/
.serviceSec {
	background-color: #f8f3ed;
}

.serviceSec__inner {
	padding: 80px 0 120px;
	overflow: hidden;
}

.serviceSec__inner__list {
	margin: 0 -30px 50px;
	font-size: 0;
}

.serviceSec__inner__list__item {
	margin: 0 30px 50px;
	vertical-align: top;
	font-size: 18px;
}

.serviceSec__inner__list__item.mb0 {
	margin-bottom: 0;
}

.serviceSec__inner__list__item.even {
	/*float: right;*/
}

.serviceSec__inner__list__item.odd {
}

.serviceSec__inner__list__item {
}

.serviceSec__inner__list__item__head {
	display: table;
	width: 977px;
	border-right: 3px solid #000000;
	position: relative;
}

.serviceSec__inner__list__item__head .num {
	display: table-cell;
	width: 50px;
	color: #fff;
	font-size: 36px;
	font-weight: bold;
	vertical-align: middle;
	text-align: center;
	background-color: #1f5fac;
}

.serviceSec__inner__list__item__head .ttl {
	display: table-cell;
	padding: 30px 5px 30px 15px;
	color: #1f5fac;
	font-size: 26px;
	font-weight: bold;
	letter-spacing: .025em;
	font-feature-settings : "palt";
	vertical-align: middle;
	background-color: #ffffff;
}

.serviceSec__inner__list__item__body {
	position: relative;
}

.serviceSec__inner__list__item__body:before {
	content: "";
	display: block;
	width: 977px;
	height: 3px;
	margin-left: 3px;
	background-color: #000;
}

.serviceSec__inner__list__item__body .pic {
	margin: 30px 0 20px 20px;
	float: right;
}

.serviceSec__inner__list__item__body p {
	margin-top: 30px;
	font-size: 20px;
	line-height: 2;
}

.serviceSec__inner__target {

}

.serviceSec__inner__target__ttl {
	padding: 15px 0;
	color: #fff;
	font-size: 24px;
	font-weight: 600;
	text-align: center;
	background-color: #1f5fac;
}

.serviceSec__inner__target__content {
	padding: 30px 60px;
	background-color: #fff;
	border-bottom: 3px solid #000;
}

.serviceSec__inner__target__content .txt01 {
	margin-bottom: 25px;
}

.serviceSec__inner__target__content ul {
	margin-bottom: 30px;
}

.serviceSec__inner__target__content ul li {
	padding: 12px 15px 12px 25px;
	margin-bottom: 30px;
	font-weight: bold;
	/*border-left: 3px solid #1f5fac;*/
	border-top: 3px solid #dddddd;
	border-bottom: 3px solid #dddddd;
	border-right: 3px solid #dddddd;
	position: relative;
}

.serviceSec__inner__target__content ul li:before {
	content: "";
	display: block;
	width: 3px;
	height: 100%;
	padding: 3px 0;
	background-color: #1f5fac;
	position: absolute;
	top: -3px;
	left: 0;
}

.serviceSec__inner__target__content ul li:last-child {
	margin-bottom: 0;
}

.serviceSec__inner__target__content .note {
}

/**********************************

 safeSec

***********************************/
.safeSec {
	background: url(../image/safe_bg.jpg) no-repeat center;
	background-size: cover;
	-ms-filter: "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='image/safe_bg.jpg', sizingMethod='scale')";
}

.safeSec__inner {
	padding: 80px 0 120px;
}

.safeSec__inner__list {

}

.safeSec__inner__list__item {
	display: table;
	width: 100%;
	margin-bottom: 60px;
	background-color: #fff;
}

.safeSec__inner__list__item:last-child {
	margin-bottom: 0;
}

.safeSec__inner__list__item__head {
	display: table-cell;
	width: 320px;
	height: 198px;
	vertical-align: middle;
	background: url(../image/safe_ttl_bg.jpg) no-repeat left top;
}

.safeSec__inner__list__item__head__inner {
	padding: 0 8px;
}

.safeSec__inner__list__item__head .num {
	margin-bottom: 4px;
	color: #fff;
	font-size: 32px;
	font-weight: bold;
	text-align: center;
}

.safeSec__inner__list__item__head .ttl {
	color: #fff;
	font-size: 26px;
	font-weight: 600;
	text-align: center;
}

.safeSec__inner__list__item__head .ttl span,
.safeSec__inner__list__item__head p.discraimer {
	font-size: 12px;
	color: #FFF;
	text-align: center;
}

.safeSec__inner__list__item__body {
	display: table-cell;
	padding: 30px 40px;
	vertical-align: middle;
	border: 8px solid #fff;
}

/**********************************

 flowSec

***********************************/
.flowSec {
	background-color: #f8f3ed;
}

.flowSec__inner {
	padding: 80px 0;
}

.flowSec__inner__list {
	overflow: hidden;
	margin-bottom: 40px;
}

.flowSec__inner__list ol {
	margin: 0 -30px 0 -29px;
	font-size: 0;
}

.flowSec__inner__list ol li {
	display: inline-block;
	margin: 0 30px 0 29px;
	font-size: 18px;
	vertical-align: top;
	position: relative;
}

.flowSec__inner__list ol li:before {
	content: "";
	display: block;
	width: 25px;
	height: 48px;
	background: url(../image/icon_arr03.png) no-repeat left top;
	position: absolute;
	top: 82px;
	right: -45px;
}

.flowSec__inner__list ol li:last-child:before {
	display: none;
}

.flowSec__inner__list ol li .pic {
}

.flowSec__inner__list ol li .ttl {
	display: table;
	width: 100%;
	height: 89px;
	color: #fff;
	font-weight: bold;
	background-color: #1f5fac;
	border-bottom: 3px solid #000;
	text-align: center;
}

.flowSec__inner__list ol li .ttl span {
	display: table-cell;
	vertical-align: middle;
}

.flowSec__inner__note {

}

/**********************************

 faqSec

***********************************/
.faqSec {
	background-color: #f8f3ed;
}

.faqSec__inner {
	padding: 80px 0 120px;
}

.faqSec__inner dl {
	margin-bottom: 60px;
}

.faqSec__inner dl:last-child {
	margin-bottom: 0;
}

.faqSec__inner dl dt {
	margin-bottom: 30px;
	font-size: 0;
}

.faqSec__inner dl dt .icon {
	display: block;
	width: 100px;
	height: 100px;
	float: left;
	background-color: #1f5fac;
	vertical-align: top;
}

.faqSec__inner dl dt .txt {
	display: block;
	width: 849px;
	float: right;
	color: #1f5fac;
	font-size: 21px;
	font-weight: bold;
	background-color: #fff;
	vertical-align: top;
}

.faqSec__inner dl dt .txt .txt__inner {
	display: block;
	min-height: 45px;
	padding: 30px 30px 25px;
}

.faqSec__inner dl dd {
	font-size: 0;
}

.faqSec__inner dl dd .icon {
	display: block;
	width: 100px;
	height: 100px;
	float: left;
	background-color: #000;
	vertical-align: top;
}

.faqSec__inner dl dd .txt {
	display: block;
	width: 849px;
	float: right;
	font-size: 21px;
	background-color: #fff;
	vertical-align: top;
}

.faqSec__inner dl dd .txt .txt__inner {
	display: block;
	min-height: 30px;
	padding: 35px 30px 35px;
}

/**********************************

 useSec

***********************************/
.useSec {
	background: url(../image/use_bg.jpg) repeat;
}

.useSec__inner {
	padding: 80px 0 120px;
}

.useSec__inner__txt01 {
	margin-bottom: 60px;
	font-size: 32px;
	font-weight: 600;
	text-align: center;
	letter-spacing: .025em;
	font-feature-settings : "palt";
}

.useSec__inner__txt01 span {
	color: #1f5fac;
}

.useSec__inner__contact {
	position: relative;
}

.useSec__inner__contact:before {
	content: "";
	display: block;
	width: 100%;
	height: 40px;
	background: url(../image/use_box_bg01.png) no-repeat left top;
}

.useSec__inner__contact:after {
	content: "";
	display: block;
	width: 100%;
	height: 40px;
	background: url(../image/use_box_bg02.png) no-repeat left top;
}

.useSec__inner__contact__inner {
	padding: 0 84px;
	background: url(../image/use_box_bg03.png) repeat-y left top;
}

.useSec__inner__contact__inner__ttl {
	margin-bottom: 30px;
}

.useSec__inner__contact__inner__box {

}

.useSec__inner__contact__inner__box__tel {
	width: 270px;
	float: left;
}

.useSec__inner__contact__inner__box__tel .ttl {
	margin-bottom: 5px;
}

.useSec__inner__contact__inner__box__tel .tel {
	margin-right: -10px;
	margin-bottom: 5px;
	font-size: 35px;
	font-weight: bold;
	line-height: 1.2;
}

.useSec__inner__contact__inner__box__tel .tel a {
	display: inline-block;
	padding-left: 30px;
	text-decoration: none;
	position: relative;
}

.useSec__inner__contact__inner__box__tel .tel a:before {
	content: "";
	display: block;
	width: 27px;
	height: 27px;
	background: url(../image/icon_tel02.png) no-repeat left top;
	position: absolute;
	top: 7px;
	left: 0;
}

.useSec__inner__contact__inner__box__tel .time {
	min-height: 24px;
	color: #1f5fac;
	font-size: 12px;
	font-weight: bold;
	text-align: center;
	background: url(../image/use_time_bg.png) no-repeat left top;
}

.useSec__inner__contact__inner__box__message {
	width: 510px;
	float: right;
	position: relative;
}

.useSec__inner__contact__inner__box__message:before {
	content: "";
	display: block;
	width: 100%;
	height: 10px;
	background: url(../image/use_box_message_bg01.png) no-repeat left top;
}

.useSec__inner__contact__inner__box__message:after {
	content: "";
	display: block;
	width: 100%;
	height: 10px;
	background: url(../image/use_box_message_bg02.png) no-repeat left top;
}

.useSec__inner__contact__inner__box__message__inner {
	padding: 0 10px;
	background-color: #fff;
	text-align: center;
}

.useSec__inner__contact__inner__box__message__inner .pic {
	display: inline-block;
	margin-right: 10px;
	vertical-align: middle;
}

.useSec__inner__contact__inner__box__message__inner p {
	display: inline-block;
	font-weight: bold;
	line-height: 1.6;
	letter-spacing: .025em;
	font-feature-settings : "palt";
	text-align: left;
	vertical-align: middle;
}

.useSec__inner__contact__inner__box__message__inner p span {
	color: #de2413;
}