@charset "utf-8";


body {
	margin: 0px;
	padding: 0px;
	color: #111111;
	font-size: 18px;
	line-height: 1.8;
	letter-spacing: .03em;
	font-feature-settings : "palt";
	text-align: left;
	background-color: #fff;
	font-family: "YakuHanJP", 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	/*font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "游ゴシック", YuGothic, "メイリオ", "Meiryo", sans-serif;*/
	-webkit-text-size-adjust: none;
	-webkit-backface-visibility:hidden;
	backface-visibility:hidden;
}
@media screen\0 {
	body {
		letter-spacing: normal;
		font-family: "YakuHanJP", メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	}
}
@media print {
	body {
		zoom: 0.68;
		-webkit-print-color-adjust: exact;
	}
}
/* IE10以上 */
@media print and (-ms-high-contrast: none) {
	/* @pageの指定いらないかも */
	@page {
		size: A4;
		margin: 12.7mm 9.7mm;
	}

	body {
		zoom: 1.8;
		width: 1200px;
		transform: scale(0.5);
		transform-origin: 0 0;
	}
}
div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, button, textarea, select, p, blockquote, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary {
	margin: 0px;
	padding: 0px;
	text-align: left;
}
main {
	display: block;
}
table {
	font-size: inherit; /* モダンブラウザ向け */
	font: 100%; /* Win IE 5-5.5､6(後方互換モード)向け */
}
fieldset, img {
	border:0;
}
address, caption, cite, code, dfn, em, strong, th, var {
	font-style:normal;
	font-weight:normal;
}
ol, ul {
	list-style:none;
}
caption, th {
	text-align:left;
}
h1, h2, h3, h4, h5, h6 {
	font-size:100%;
	font-weight:normal;
}
q:before, q:after {
	content:'';
}
abbr, acronym {
	border:0;
}
input[type="radio"],input[type="checkbox"],label,button,input[type="submit"] {
	cursor: pointer;
}
input[type="submit"] {
	cursor: pointer;
}
input[type="text"], input[type="search"], input[type="tel"], input[type="url"], input[type="email"], input[type="password"], input[type="date"], input[type="number"] {
	height: 50px;
	padding: 5px 20px;
	font-family: "YakuHanJP", 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	font-size: 18px;
	font-weight: bold;
	border: 3px solid #dddddd;
	box-sizing: border-box;
	border-radius: 0;
	-webkit-text-size-adjust: none;
	-webkit-backface-visibility:hidden;
	backface-visibility:hidden;
}
select {
	height: 50px;
	padding: 5px 10px;
	font-family: "YakuHanJP", 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	font-size: 18px;
	font-weight: bold;
	border: 3px solid #dddddd;
	box-sizing: border-box;
	border-radius: 0;
}
textarea {
	height: 150px;
	padding: 15px 20px;
	font-family: "YakuHanJP", 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	font-size: 18px;
	font-weight: bold;
	border: 3px solid #dddddd;
	box-sizing: border-box;
	border-radius: 0;
	vertical-align: top;
}
/* Webkit */
::-webkit-input-placeholder {
	color: #b8b8b8;
	opacity: 1;
}
/* Firefox 18 以前 */
:-moz-placeholder {
	color: #b8b8b8;
}
/* Firefox 19 以降 */
::-moz-placeholder {
	color: #b8b8b8;

	/* Firefox 19 以降のデフォルトでは */
	/* color ではなく opacity で色合いを調整しているため */
	/* 文字色を指定する場合、opacity を 1 にする必要がある */
	opacity: 1;
}
/* IE 10 以降 */
:-ms-input-placeholder {
	color: #b8b8b8 !important;
}
/* CSS4では以下のような名前の擬似クラスになるらしい */
/* おそらく今のところ対応ブラウザはない */
:placeholder-shown {
	color: #b8b8b8;
}
/* Android chrome対策 */
div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, button, textarea, select, p, blockquote, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary {
	max-height:100%;
}

.clear {
	clear: both;
}
.clearfix {
	zoom: 100%;
}
.clearfix:after {
	content: "";
	clear: both;
	height: 0;
	display: block;
	visibility: hidden;
}
a {
	text-decoration: none;
}
a:link {
	color: #111111;
}
a:visited {
	color: #111111;
}
a.normal:link {
	color: #111111;
}
a.normal:visited {
	color: #111111;
}
a:hover {
	text-decoration: none;
}
a:active {
}
a.noline {
	text-decoration: none;
}
a.reverse {
	text-decoration: none;
}
a.reverse:hover {
	text-decoration: underline;
}
.linkBox {
	cursor: pointer;
}
body {
	text-align: center;
}
img {
	max-width: 100%;
	width: auto;
	height: auto;
	vertical-align: middle;
	-webkit-backface-visibility: hidden;
}
a { /* FireFox リンク選択時の点線を消す　*/
    overflow: hidden;
    outline: none;
}
.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 */
}
.ovImg:hover img {	
	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 */
}
.nowrap {
	white-space: nowrap;
}
.mincho {
	font-family: "YakuHanMP", YuMincho, '游明朝', 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho ProN','メイリオ',"HGS明朝E", 'MS P 明朝', 'MS PMincho', serif;
}
@media screen\0 {
	.mincho {
		font-family: "YakuHanMP", 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho ProN','メイリオ',"HGS明朝E", 'MS P 明朝', 'MS PMincho', serif;
	}
}
.gothic {
	font-family: "YakuHanJP", 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}
@media screen\0 {
	.gothic {
		font-family: "YakuHanJP", メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	}
}
.Barlow {
	font-family: 'Barlow', sans-serif;
}
.lato {
	font-family: "YakuHanJP", 'Lato', sans-serif;
}
* {
	box-sizing: border-box;
}


@media screen and (max-width:767px){
	body {
		font-size: 16px;
	}
	input[type="text"], input[type="search"], input[type="tel"], input[type="url"], input[type="email"], input[type="password"], input[type="date"], input[type="number"] {
		height: 44px;
		padding: 5px 10px;
		font-size: 16px;
		border: 2px solid #dddddd;
	}
	select {
		height: 44px;
		padding: 5px 10px;
		font-size: 16px;
		border: 2px solid #dddddd;
	}
	textarea {
		height: 34.6666666vw;
		padding: 5px 10px;
		font-size: 16px;
		border: 2px solid #dddddd;
	}
}

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

 general

***********************************/
/* margin-bottom */
.mb5  {margin-bottom: 5px;}
.mb10 {margin-bottom: 10px;}
.mb15 {margin-bottom: 15px;}
.mb20 {margin-bottom: 20px;}
.mb25 {margin-bottom: 25px;}
.mb30 {margin-bottom: 30px;}
.mb35 {margin-bottom: 35px;}
.mb40 {margin-bottom: 40px;}
.mb45 {margin-bottom: 45px;}
.mb50 {margin-bottom: 50px;}
.mb55 {margin-bottom: 55px;}
.mb60 {margin-bottom: 60px;}
.mb65 {margin-bottom: 65px;}
.mb70 {margin-bottom: 70px;}
.mb75 {margin-bottom: 75px;}
.mb80 {margin-bottom: 80px;}
.mb85 {margin-bottom: 85px;}
.mb90 {margin-bottom: 90px;}
.mb95 {margin-bottom: 95px;}
.mb100 {margin-bottom: 100px;}
.mb110 {margin-bottom: 110px;}
.mb120 {margin-bottom: 120px;}
/* margin-top */
.mt5  {margin-top: 5px;}
.mt10 {margin-top: 10px;}
.mt20 {margin-top: 20px;}
.mt30 {margin-top: 30px;}
.mt40 {margin-top: 40px;}
.mt50 {margin-top: 50px;}
/* margin-left */
.ml5  {margin-left: 5px;}
.ml10 {margin-left: 10px;}
.ml20 {margin-left: 20px;}
.ml30 {margin-left: 30px;}
.ml40 {margin-left: 40px;}
.ml45 {margin-left: 45px;}
.ml50 {margin-left: 50px;}
/* margin-right */
.mr5  {margin-right: 5px;}
.mr10 {margin-right: 10px;}
.mr20 {margin-right: 20px;}
.mr30 {margin-right: 30px;}
.mr40 {margin-right: 40px;}
.mr50 {margin-right: 50px;}
/* padding-top */
.pt5  {padding-top: 5px;}
.pt10 {padding-top: 10px;}
.pt20 {padding-top: 20px;}
.pt30 {padding-top: 30px;}
.pt40 {padding-top: 40px;}
.pt50 {padding-top: 50px;}
.pt60 {padding-top: 60px;}
.pt70 {padding-top: 70px;}
/* padding-bottom */
.pb5  {padding-bottom: 5px;}
.pb10 {padding-bottom: 10px;}
.pb20 {padding-bottom: 20px;}
.pb30 {padding-bottom: 30px;}
.pb40 {padding-bottom: 40px;}
.pb50 {padding-bottom: 50px;}
.pb55 {padding-bottom: 55px;}
.pb60 {padding-bottom: 60px;}
.pb70 {padding-bottom: 70px;}
/* width */
.w10   {width: 10px;}
.w20   {width: 20px;}
.w30   {width: 30px;}
.w40   {width: 40px;}
.w50   {width: 50px;}
.w60   {width: 60px;}
.w70   {width: 70px;}
.w80   {width: 80px;}
.w90   {width: 90px;}
.w100  {width: 100px;}
.w110  {width: 110px;}
.w120  {width: 120px;}
.w130  {width: 130px;}
.w140  {width: 140px;}
.w150  {width: 150px;}
.w200  {width: 200px;}
.w240  {width: 240px;}
.w250  {width: 250px;}
.w300  {width: 300px;}
.w350  {width: 350px;}
.w400  {width: 400px;}
.w450  {width: 450px;}
.w500  {width: 500px;}
.wfull {width: 100%;}
.imgMax {
	max-width: none;
	width: 100%;
}
.floatL {
	float: left;
}
.floatR {
	float: right;
}
.alignC {
	text-align: center;
}
.alignR {
	text-align: right;
}
.alignL {
	text-align: left;
}
.veralignT {
	vertical-align: top;
}
.veralignM {
	vertical-align: middle;
}
.veralignB {
	vertical-align: bottom;
}
.indent {
	text-indent: -1em;
	padding-left: 1em;
}
.bold {
	font-weight: bold;
}
.red {
	color: #ff3f00;
}
.blue {
	color: #003f97;
}
.yellow {
	color: #ffff00;
}
.bgYellow {
	background-color: #fff100;
}
.marker {
	background: linear-gradient(transparent 60%, #ff5900 60%);
}
@media screen\0 {
	.marker {
		font-family: "YakuHanJP", Lato, メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	}
}
.underline {
	text-decoration: underline;
}
.large {
	font-size: 24px;
}
.large-x {
	font-size: 36px;
}
.small {
	font-size: 86%;
}
@media screen and (min-width:768px){
	.sp {
		display: none;
	}
}
@media screen and (max-width:767px){
	.pc {
		display: none;
	}
	.large {
		font-size: 15px;
	}
	.large-x {
		font-size: 18px;
	}
}

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

 parts

***********************************/
.define_wrap {
	padding: 0 50px;
}

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


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

	.define_wrap {
		padding: 0 4.62962962962963%;
	}
}


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

	.define_wrap {
		padding: 0 4.66666667%;
	}
}

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

 layout

***********************************/
.l-wrap {
	overflow: hidden;
}

.l-main {
}

.l-pageTop {
	display: none;
	position: fixed;
	bottom: 40px;
	right: 40px;
	z-index: 5;
}

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

	.l-pageTop {
		width: 60px;
		bottom: 24px;
		right: 24px;
	}
}

@media screen and (max-width:767px){
	.l-wrap.top {
		padding-bottom: 50px;
	}

	.l-pageTop {
		width: 32px;
		bottom: 15px;
		right: 4%;
	}

	.l-wrap.top .l-pageTop {
		bottom: 65px;
	}
}

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

 l-header

***********************************/
.l-header {
	background: #fff;
}

@media screen and (max-width:767px){
}

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

 l-fixedContent

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

@media screen and (min-width:768px){
	.l-fixedContent {
		display: none;
	}
}

@media screen and (max-width:767px){
	.l-fixedContent {
		width: 100%;
		height: 50px;
		position: fixed;
		bottom: 0;
		left: 0;
		z-index: 10;
	}

	.l-fixedContent__btn {
		font-size: 18px;
		font-weight: bold;
	}

	.l-fixedContent__btn a {
		display: flex;
		justify-content: center;
		align-items: center;
		height: 50px;
		color: #fff;
		background-color: #00a601;
	}

	.l-fixedContent__btn a span {
		padding-left: 31px;
		position: relative;
		z-index: 1;
	}

	.l-fixedContent__btn a span:before {
		content: "";
		display: block;
		width: 22px;
		height: 16.5px;
		background: url(../images/icon_mail01.png) no-repeat left top;
		background-size: contain;
		position: absolute;
		top: 50%;
		left: 0;
		transform: translateY(-50%);
		-webkit-transform: translateY(-50%);
	}
}

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

 l-footer

***********************************/
.l-footer {
	background-color: #f6f6f6;
}

.l-footer__inner {
	padding: 31px 0;
}

.l-footer__inner p {
	color: #cccccc;
	font-size: 16px;
	font-weight: bold;
	text-align: center;
	letter-spacing: normal;
}

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

	.l-footer__inner {
		padding: 15px 0;
	}

	.l-footer__inner p {
		font-size: 9px;
	}
}

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

 c-sec

***********************************/
.c-sec {
}

.c-sec__head {
	background-color: #003f97;
}

.c-sec__head__inner {
}

.c-sec__head__inner__ttl {
	text-align: center;
}

.c-sec__body {

}

@media screen and (max-width:767px){
}

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

 c-title01

***********************************/
.c-title01 {
	padding: 23px 15px;
	color: #fff;
	font-size: 26px;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
	background: url(../images/ttl_bg01_pc.jpg) no-repeat center;
	background-size: cover;
}

@media screen and (max-width:767px){
	.c-title01 {
		padding: 11px 4.411764705882353%;
		font-size: 16px;
		background: url(../images/ttl_bg01_sp.jpg) no-repeat center;
		background-size: cover;
	}
}

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

 c-subHero

***********************************/
.c-subHero {
	background-color: #003f97;
}

.c-subHero__inner {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 300px;
}

.c-subHero__inner__ttl {
	color: #fff;
	font-size: 36px;
	font-weight: bold;
	letter-spacing: .15em;
	line-height: 1.5;
}

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

	.c-subHero__inner {
		height: 150px;
	}

	.c-subHero__inner__ttl {
		font-size: 18px;
	}
}

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

 c-btn01

***********************************/
a.c-btn01 {
	display: block;
	width: 100%;
	padding: 20px 15px;
	margin-bottom: 5px;
	color: #fff;
	font-size: 26px;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
	letter-spacing: .05em;
	line-height: 1.5;
	border-radius: 9px;
	box-shadow:0px 5px 0px 0px #002f0b;
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#00a800+0,00661a+100 */
	background: rgb(0,168,0); /* Old browsers */
	background: -moz-linear-gradient(top,  rgba(0,168,0,1) 0%, rgba(0,102,26,1) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  rgba(0,168,0,1) 0%,rgba(0,102,26,1) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom,  rgba(0,168,0,1) 0%,rgba(0,102,26,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00a800', endColorstr='#00661a',GradientType=0 ); /* IE6-9 */
	border: none;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}


@media screen and (max-width:767px){
	a.c-btn01 {
		padding: 12px 15px;
		margin-bottom: 3px;
		font-size: 17px;
		border-radius: 6px;
		box-shadow:0px 3px 0px 0px #002f0b;
	}
}

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

 c-form

***********************************/
.c-form {
}

.c-form__content {
	margin-bottom: 55px;
}

.c-form__content dl {
	display: table;
	width: 100%;
	margin-bottom: 35px;
}

.c-form__content dl dt {
	display: table-cell;
	width: 310px;
	padding: 15px 20px 15px 25px;
	vertical-align: middle;
	background-color: #f2f7fb;
	box-shadow: 0px 3px 0px 0px rgba(0,0,0,0.1);
}

.c-form__content dl dt .inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	line-height: 1.5;
}

.c-form__content dl dt .inner .name {
	font-weight: bold;
}

.c-form__content dl dt .inner .require {
	padding: 3px 5px;
	color: #fff;
	font-size: 12px;
	font-weight: bold;
	background-color: #f20000;
}

.c-form__content dl dt .inner .any {
	padding: 3px 5px;
	color: #fff;
	font-size: 12px;
	font-weight: bold;
	background-color: #00bfff;
}

.c-form__content dl dd {
	display: table-cell;
	padding: 19px;
	line-height: 1.5;
	vertical-align: middle;
	background-color: #fff;
	border-top: 1px solid #dddddd;
	border-right: 1px solid #dddddd;
	border-bottom: 1px solid #dddddd;
}

.c-form__content dl dd .radioList {
	font-weight: bold;
	margin: 5px -10px;
	font-size: 16px;
}

.c-form__content dl dd .radioList li {
	display: inline-block;
	margin: 5px 10px;
}

.c-form__submit {
	width: 360px;
	max-width: 100%;
	margin: 0 auto;
}

.c-form__submit button,
.c-form__confirmBtn__btn .submit {
	display: block;
	width: 100%;
	padding: 19px 15px;
	margin-bottom: 5px;
	color: #fff;
	font-size: 28px;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
	letter-spacing: .05em;
	line-height: 1.5;
	border-radius: 12px;
	box-shadow:0px 5px 0px 0px #002f0b;
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#00a800+0,00661a+100 */
	background: rgb(0,168,0); /* Old browsers */
	background: -moz-linear-gradient(top,  rgba(0,168,0,1) 0%, rgba(0,102,26,1) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  rgba(0,168,0,1) 0%,rgba(0,102,26,1) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom,  rgba(0,168,0,1) 0%,rgba(0,102,26,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00a800', endColorstr='#00661a',GradientType=0 ); /* IE6-9 */
	border: none;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

.c-form__confirmBtn {
	display: flex;
	justify-content: center;
}

.c-form__confirmBtn__btn {
	width: 360px;
}

.c-form__confirmBtn__btn:first-child {
	margin-right: 30px;
}

.c-form__confirmBtn__btn .back {
	display: block;
	width: 100%;
	padding: 19px 15px;
	margin-bottom: 5px;
	color: #fff;
	font-size: 28px;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
	letter-spacing: .05em;
	line-height: 1.5;
	border-radius: 12px;
	box-shadow:0px 5px 0px 0px #333333;
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#666666+0,777777+100 */
	background: rgb(102,102,102); /* Old browsers */
	background: -moz-linear-gradient(top,  rgba(102,102,102,1) 0%, rgba(119,119,119,1) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  rgba(102,102,102,1) 0%,rgba(119,119,119,1) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom,  rgba(102,102,102,1) 0%,rgba(119,119,119,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#666666', endColorstr='#777777',GradientType=0 ); /* IE6-9 */
	border: none;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

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

	.c-form__content {
		margin-bottom: 32px;
	}

	.c-form__content dl {
		display: block;
		width: auto;
		margin-bottom: 28px;
		box-shadow: 0px 3px 0px 0px rgba(0,0,0,0.1);
	}

	.c-form__content dl dt {
		display: block;
		width: auto;
		padding: 11px 15px;
		box-shadow: none;
	}

	.c-form__content dl dt .inner {
		display: block;
		width: auto;
		position: relative;
	}

	.c-form__content dl dt .inner .name {
		font-size: 16px;
		text-align: center;
	}

	.c-form__content dl dt .inner .require {
		padding: 3px 5px;
		font-size: 10px;
		position: absolute;
		top: 50%;
		right: 0;
		transform: translateY(-50%);
		-webkit-transform: translateY(-50%);
	}

	.c-form__content dl dt .inner .any {
		padding: 3px 5px;
		font-size: 10px;
		position: absolute;
		top: 50%;
		right: 0;
		transform: translateY(-50%);
		-webkit-transform: translateY(-50%);
	}

	.c-form__content dl dd {
		display: block;
		padding: 14px;
		border: 1px solid #dddddd;
		box-shadow: none;
	}

	.c-form__content dl dd .radioList {
		margin: 0;
		font-size: 15px;
	}

	.c-form__content dl dd .radioList li {
		display: block;
		margin: 0 0 10px 0;
	}

	.c-form__content dl dd .radioList li:last-child {
		margin-bottom: 0;
	}

	.c-form__submit {
		width: 240px;
	}

	.c-form__submit button,
	.c-form__confirmBtn__btn .submit {
		padding: 12px 15px;
		margin-bottom: 3px;
		font-size: 17px;
		border-radius: 6px;
		box-shadow:0px 3px 0px 0px #333333;
	}

	.c-form__confirmBtn {
		justify-content: space-between;
	}

	.c-form__confirmBtn__btn {
		width: 47.5%;
	}

	.c-form__confirmBtn__btn:first-child {
		margin-right: 0;
	}

	.c-form__confirmBtn__btn .back {
		padding: 12px 15px;
		margin-bottom: 3px;
		font-size: 17px;
		border-radius: 6px;
		box-shadow:0px 3px 0px 0px #333333;
	}

}


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

 c-faq

***********************************/
.c-faq {
}

.c-faq dl {
	margin-bottom: 60px;
}

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

.c-faq dl dt {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	margin-bottom: 30px;
}

.c-faq dl dt .icon {
	width: 68px;
	color: #fff;
	font-size: 24px;
	font-weight: bold;
	text-align: center;
	line-height: 68px;
	background-color: #2b536a;
	border-radius: 5px;
}

.c-faq dl dt .ttl {
	flex: 1;
	min-height: 68px;
	padding: 14px 29px;
	margin-left: 12px;
	font-size: 25px;
	font-weight: bold;
	line-height: 1.5;
	border: 1px solid #e7e7eb;
	background-color: #fff;
	border-radius: 5px;
}

.c-faq dl dd {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}

.c-faq dl dd .icon {
	width: 68px;
	color: #fff;
	font-size: 24px;
	font-weight: bold;
	text-align: center;
	line-height: 68px;
	background-color: #4481a5;
	border-radius: 5px;
}

.c-faq dl dd .cont {
	flex: 1;
	min-height: 68px;
	padding: 19px 29px;
	margin-left: 12px;
	line-height: 1.5;
	border: 1px solid #e7e7eb;
	background-color: #fff;
	border-radius: 5px;
}

.c-faq dl dd .cont p {
}

.faqSec__inner__btn {
	width: 240px;
	margin: 0 auto;
}

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

	.c-faq {
	}

	.c-faq dl {
		margin-bottom: 30px;
	}

	.c-faq dl dt {
		margin-bottom: 20px;
	}

	.c-faq dl dt .icon {
		width: 40px;
		font-size: 16px;
		line-height: 40px;
		border-radius: 4px;
	}

	.c-faq dl dt .ttl {
		flex: 1;
		min-height: 40px;
		padding: 7px 12px;
		margin-left: 10px;
		font-size: 16px;
		border-radius: 4px;
	}

	.c-faq dl dd .icon {
		width: 40px;
		font-size: 16px;
		line-height: 40px;
		border-radius: 4px;
	}

	.c-faq dl dd .cont {
		min-height: 40px;
		padding: 7px 12px;
		margin-left: 10px;
		border-radius: 4px;
	}

	.c-faq dl dd .cont p {
	}

	.faqSec__inner__btn {
		width: 190px;
	}

}



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

 c-completeSec

***********************************/
.c-completeSec {

}

.c-completeSec__inner {
	padding: 120px 0;
}

.c-completeSec__inner .intro {
	margin-bottom: 60px;
	font-size: 18px;
	font-weight: bold;
}

.c-completeSec__inner .back {
	max-width: 430px;
	margin: 0 auto;
}


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

	.c-completeSec__inner {
		padding: 60px 0;
	}

	.c-completeSec__inner .intro {
		margin-bottom: 30px;
		font-size: 14px;
	}

	.c-completeSec__inner .back {
		max-width: 215px;
	}
}



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

 heroSec

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

.heroSec__inner {
	position: relative;
	z-index: 1;
}

.heroSec__inner__main {

}

.heroSec__inner__btnArea {
	margin-bottom: 13%;
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
}

.heroSec__inner__btnArea__balloon {
	width: 26.669%;
	margin: -14% -29% 0 0;
	position: absolute;
	top: 0;
	right: 0;
	z-index: 2;
}

.heroSec__inner__btnArea__btn {
	width: 360px;
	font-size: 24px;
	font-weight: bold;
}

.heroSec__inner__btnArea__btn a {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 80px;
	color: #fff;
	border-radius: 100px;
	box-shadow: 0px 5px 0px 0px #000501;
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#00a800+0,00661a+100 */
	background: rgb(0,168,0); /* Old browsers */
	background: -moz-linear-gradient(top,  rgba(0,168,0,1) 0%, rgba(0,102,26,1) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  rgba(0,168,0,1) 0%,rgba(0,102,26,1) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom,  rgba(0,168,0,1) 0%,rgba(0,102,26,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00a800', endColorstr='#00661a',GradientType=0 ); /* IE6-9 */
}

.heroSec__inner__btnArea__btn a span {
	padding-left: 38px;
	position: relative;
	z-index: 1;
}

.heroSec__inner__btnArea__btn a span:before {
	content: "";
	display: block;
	width: 27px;
	height: 20px;
	background: url(../images/icon_mail01.png) no-repeat left top;
	background-size: contain;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}

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


	.heroSec__inner__btnArea__btn {
		width: 33.33333333333333vw;
		font-size: 2.2222222222222223vw;
	}

	.heroSec__inner__btnArea__btn a {
		height: 7.4074074074074066vw;
		box-shadow: 0px 0.4629629629629629vw 0px 0px #000501;
	}

	.heroSec__inner__btnArea__btn a span {
		padding-left: 3.5185185185185186vw;
	}

	.heroSec__inner__btnArea__btn a span:before {
		width: 2.5vw;
		height: 1.8518518518518516vw;
	}
}

@media screen and (max-width:767px){
	.heroSec {
		padding: 0;
		background: url(../images/hero_bg01_sp.jpg) no-repeat center;
		background-size: cover;
	}

	.heroSec__inner__btnArea {
		margin-bottom: 26%;
	}

	.heroSec__inner__btnArea__balloon {
		width: 22.4%;
		margin: -7% -24% 0 0;
	}

	.heroSec__inner__btnArea__btn {
		width: 66.66666666666666vw;
		font-size: 4.8vw;
	}

	.heroSec__inner__btnArea__btn a {
		height: 15.733333333333333vw;
		box-shadow: 0px 0.9333333333333335vw 0px 0px #000501;
	}

	.heroSec__inner__btnArea__btn a span {
		padding-left: 6.133333333333333vw;
	}

	.heroSec__inner__btnArea__btn a span:before {
		width: 4.3999999999999995vw;
		height: 3.2vw;
	}

}



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

 aboutSec

***********************************/
.aboutSec {
	background: url(../images/about_bg01.png) repeat center top;
}

.aboutSec__inner {
	padding: 115px 0 64px;
	position: relative;
	z-index: 1;
}

.aboutSec__inner__ttl {
	width: 100%;
	color: #fff;
	font-size: 32px;
	font-weight: bold;
	text-align: center;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}

.aboutSec__inner__ttl:before {
	content: "";
	display: block;
	width: 980px;
	height: 110px;
	background: url(../images/about_ttl_bg_pc.png) no-repeat center top;
	background-size: contain;
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: -1;
	transform: translateY(-50%) translateX(-50%);
	-webkit-transform: translateY(-50%) translateX(-50%);
}

.aboutSec__inner__list {
	display: flex;
	justify-content: center;
}

.aboutSec__inner__list__sec {
	width: 36.73469387755102%;
	padding: 25px 15px 20px;
	margin: 0 3.061224489795918%;
	border: 5px solid #fff;
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#014198+0,2e94b9+100 */
	background: rgb(1,65,152); /* Old browsers */
	background: -moz-linear-gradient(top,  rgba(1,65,152,1) 0%, rgba(46,148,185,1) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  rgba(1,65,152,1) 0%,rgba(46,148,185,1) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom,  rgba(1,65,152,1) 0%,rgba(46,148,185,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#014198', endColorstr='#2e94b9',GradientType=0 ); /* IE6-9 */
	box-shadow: 0px 3px 0px 0px #d7d7d7;
	position: relative;
	z-index: 1;
}

.aboutSec__inner__list__sec .num {
	width: 40px;
	height: 40px;
	line-height: 40px;
	margin-top: -26px;
	background-color: #003f97;
	color: #fff;
	font-size: 20px;
	font-weight: 900;
	text-align: center;
	box-shadow: 0px 2px 2px 0px rgba(0,0,0,0.3);
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
}

.aboutSec__inner__list__sec .ttl {
	color: #fff;
	font-size: 22px;
	font-weight: bold;
	text-align: center;
	line-height: 1.55;
}

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

	.aboutSec__inner__ttl {
		font-size: 2.9629629629629632vw;
	}

	.aboutSec__inner__ttl:before {
		width: 90.74074074074075vw;
		height: 10.185185185185185vw;
	}
}

@media screen and (max-width:767px){
	.aboutSec {
		background-size: 960px auto;
	}

	.aboutSec__inner {
		padding: 20.666666666666668vw 0 30px;
	}

	.aboutSec__inner__ttl {
		font-size: 4.266666666666667vw;
		line-height: 1.6;
	}

	.aboutSec__inner__ttl:before {
		width: 96vw;
		height: 21.6vw;
		background: url(../images/about_ttl_bg_sp.png) no-repeat center top;
		background-size: contain;
	}

	.aboutSec__inner__list {
		display: block;
	}

	.aboutSec__inner__list__sec {
		width: 85.294117647058824%;
		min-width: 290px;
		padding: 20px 15px 12px;
		margin: 0 auto 40px;
		border: 3px solid #fff;
		box-shadow: 0px 2px 0px 0px #d7d7d7;
	}

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

	.aboutSec__inner__list__sec .num {
		width: 25px;
		height: 25px;
		line-height: 25px;
		margin-top: -15px;
		font-size: 14px;
	}

	.aboutSec__inner__list__sec .ttl {
		font-size: 16px;
	}

}



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

 taskSec

***********************************/
.taskSec {
	overflow: hidden;
}

.taskSec__inner {
	padding: 80px 0 105px;
}

.taskSec__inner__ttl {
	margin-bottom: 60px;
	text-align: center;
}

.taskSec__inner__trouble {
	padding-bottom: 80px;
	margin-bottom: 80px;
	position: relative;
	z-index: 1;
}

.taskSec__inner__trouble:before {
	content: "";
	display: block;
	width: 100vw;
	height: calc(100% - 60px);
	background-color: #f2f7fb;
	position: absolute;
	bottom: 0;
	left: 40px;
	z-index: -1;
}

.taskSec__inner__trouble__pic {
	text-align: center;
}

.taskSec__inner__list {
	padding-top: 100px;
	margin-bottom: 75px;
	position: relative;
	z-index: 1;
}

.taskSec__inner__list:before {
	content: "";
	display: block;
	width: 100vw;
	height: calc(100% + 105px);
	background-color: #f2f7fb;
	position: absolute;
	top: 0;
	right: 40px;
	z-index: -1;
}

.taskSec__inner__list:after {
	content: "";
	display: block;
	width: 904px;
	height: 460px;
	background: url(../images/task_arr01.png) no-repeat center bottom;
	background-size: contain;
	position: absolute;
	bottom: -312px;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
}

.taskSec__inner__list__sec {
	margin-bottom: 80px;
	position: relative;
	z-index: 1;
}

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

.taskSec__inner__list__sec .ttl {
	display: flex;
	border-radius: 100px;
	overflow: hidden;
	box-shadow: 0px 3px 0px 0px #e5e5e5;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit-transform: translateY(-50%) translateX(-50%);
}

.taskSec__inner__list__sec .ttl .txt01 {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100px;
	background-color: #111111;
}

.taskSec__inner__list__sec .ttl .txt01 img {
	display: block;
	width: 60px;
}

.taskSec__inner__list__sec .ttl .txt02 {
	display: block;
	padding: 8px 20px;
	font-size: 19px;
	font-weight: bold;
	white-space: nowrap;
	background-color: #fff;
}

.taskSec__inner__list__sec ul {

}

.taskSec__inner__list__sec ul li {
	font-size: 22px;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
}

.taskSec__inner__list__sec ul li:nth-child(1) {
	padding: 40px 15px 27px;
	color: #003f97;
	background-color: #fff;
	border-top: 6px solid #dfdfdf;
	border-left: 6px solid #dfdfdf;
	border-right: 6px solid #dfdfdf;
}

.taskSec__inner__list__sec ul li:nth-child(2) {
	padding: 27px 15px;
	color: #fff;
	background-color: #003f97;
}

.taskSec__inner__copy {
	position: relative;
	z-index: 2;
}

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

	.taskSec__inner {
		padding: 30px 0 43px;
	}

	.taskSec__inner__ttl {
		margin-bottom: 30px;
	}

	.taskSec__inner__trouble {
		padding-bottom: 30px;
		margin-bottom: 30px;
	}

	.taskSec__inner__trouble:before {
		width: 100vw;
		height: calc(100% - 7.5vw);
		background-color: #f2f7fb;
		left: -5.15%;
	}

	.taskSec__inner__list:after {
		width: 452px;
		height: 230px;
		bottom: -150px;
	}

	.taskSec__inner__trouble__pic {
		margin: 0 -2.945%;
	}

	.taskSec__inner__list {
		padding-top: 40px;
		margin-bottom: 30px;
	}

	.taskSec__inner__list:before {
		height: calc(100% + 30px);
		right: -5.15%;
	}

	.taskSec__inner__list__sec {
		margin-bottom: 45px;
	}

	.taskSec__inner__list__sec .ttl {
		box-shadow: 0px 2px 0px 0px #e5e5e5;
	}

	.taskSec__inner__list__sec .ttl .txt01 {
		width: 65px;
	}

	.taskSec__inner__list__sec .ttl .txt01 img {
		display: block;
		width: 35px;
	}

	.taskSec__inner__list__sec .ttl .txt02 {
		padding: 4px 12px;
		font-size: 13px;
	}

	.taskSec__inner__list__sec ul {

	}

	.taskSec__inner__list__sec ul li {
		font-size: 16px;
	}

	.taskSec__inner__list__sec ul li:nth-child(1) {
		padding: 25px 15px 11px;
		border-top: 3px solid #dfdfdf;
		border-left: 3px solid #dfdfdf;
		border-right: 3px solid #dfdfdf;
	}

	.taskSec__inner__list__sec ul li:nth-child(2) {
		padding: 11px 15px;
	}

	.taskSec__inner__copy {
		position: relative;
		z-index: 2;
	}

}



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

 cvSec

***********************************/
.cvSec {
	background: url(../images/cv_bg_pc.jpg) no-repeat center;
	background-size: cover;
}

.cvSec__inner {
	padding: 40px 0 60px;
}

.cvSec__inner__ttl {
	margin-bottom: 30px;
	color: #fff;
	font-size: 23px;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
}

.cvSec__inner__btnArea {
	position: relative;
	z-index: 1;
}

.cvSec__inner__btnArea__balloon {
	width: 26.669%;
	margin: -14% -29% 0 0;
	position: absolute;
	top: 0;
	right: 0;
	z-index: 2;
}

.cvSec__inner__btnArea__btn {
	width: 610px;
	font-size: 28px;
	font-weight: bold;
	margin: 0 auto;
}

.cvSec__inner__btnArea__btn a {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 94px;
	color: #fff;
	border-radius: 100px;
	box-shadow: 0px 5px 0px 0px #000501;
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#00a800+0,00661a+100 */
	background: rgb(0,168,0); /* Old browsers */
	background: -moz-linear-gradient(top,  rgba(0,168,0,1) 0%, rgba(0,102,26,1) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  rgba(0,168,0,1) 0%,rgba(0,102,26,1) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom,  rgba(0,168,0,1) 0%,rgba(0,102,26,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00a800', endColorstr='#00661a',GradientType=0 ); /* IE6-9 */
}

.cvSec__inner__btnArea__btn a span {
	padding-left: 38px;
	position: relative;
	z-index: 1;
}

.cvSec__inner__btnArea__btn a span:before {
	content: "";
	display: block;
	width: 27px;
	height: 20px;
	background: url(../images/icon_mail01.png) no-repeat left top;
	background-size: contain;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}

@media screen and (max-width:767px){
	.cvSec {
		background: url(../images/cv_bg_sp.jpg) no-repeat center;
		background-size: cover;
	}

	.cvSec__inner {
		padding: 20px 0 30px;
	}

	.cvSec__inner__ttl {
		margin-bottom: 15px;
		font-size: 16px;
	}

	.cvSec__inner__btnArea {
		width: 250px;
		margin: 0 auto;
	}

	.cvSec__inner__btnArea__balloon {
		width: 22.4%;
		margin: -7% -24% 0 0;
	}

	.cvSec__inner__btnArea__btn {
		width: 250px;
		font-size: 18px;
	}

	.cvSec__inner__btnArea__btn a {
		height: 59px;
		box-shadow: 0px 3px 0px 0px #000501;
	}

	.cvSec__inner__btnArea__btn a span {
		padding-left: 23px;
	}

	.cvSec__inner__btnArea__btn a span:before {
		width: 16.5px;
		height: 12px;
	}

}

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

	.cvSec__inner__btnArea {
		width: 66.66666666666666vw;
	}

	.cvSec__inner__btnArea__btn {
		width: 66.66666666666666vw;
		font-size: 4.8vw;
	}

	.cvSec__inner__btnArea__btn a {
		height: 15.733333333333333vw;
		box-shadow: 0px 0.9333333333333335vw 0px 0px #000501;
	}

	.cvSec__inner__btnArea__btn a span {
		padding-left: 6.133333333333333vw;
	}

	.cvSec__inner__btnArea__btn a span:before {
		width: 4.3999999999999995vw;
		height: 3.2vw;
	}
}



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

 differentSec

***********************************/
.differentSec {
	background: url(../images/different_bg01_pc.jpg) no-repeat center bottom;
	background-size: cover;
}

.differentSec__inner {
	padding: 80px 0 125px;
}

.differentSec__inner__ttl {
	margin-bottom: 55px;
	text-align: center;
}

.differentSec__inner__intro {
	margin-bottom: 45px;
	position: relative;
	z-index: 1;
}

.differentSec__inner__intro:before {
	content: "";
	display: block;
	width: 646px;
	height: 329px;
	background: url(../images/different_arr01.png) no-repeat center bottom;
	background-size: contain;
	position: absolute;
	bottom: -180px;
	left: 50%;
	z-index: -1;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
}

.differentSec__inner__intro__inner {
	padding: 20px 15px;
	background-color: #fff;
	border: 6px solid #dfdfdf;
}

.differentSec__inner__intro p {
	font-size: 22px;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
}

.differentSec__inner__but {
	margin-bottom: 100px;
	text-align: center;
	position: relative;
	z-index: 2;
}

.differentSec__inner__sec01 {
	margin-bottom: 60px;
}

.differentSec__inner__sec01__content {
	padding: 20px 3.469387755102041%;
	background-color: #fff;
	border: 6px solid #dfdfdf;
}

.differentSec__inner__sec01__content p {
	font-weight: bold;
}

.differentSec__inner__sec02 {
	margin-bottom: 50px;
	position: relative;
	z-index: 1;
}

.differentSec__inner__sec02:before {
	content: "";
	display: block;
	width: 646px;
	height: 329px;
	background: url(../images/different_arr01.png) no-repeat center bottom;
	background-size: contain;
	position: absolute;
	bottom: -195px;
	left: 50%;
	z-index: -1;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
}

.differentSec__inner__sec02 table {
	width: 100%;
	border-spacing: 0;
	margin-top: 40px;
	box-shadow: 0px 5px 0px 0px rgba(0,0,0,0.1);
	border-radius: 0 0 12px 12px;
}

.differentSec__inner__sec02 table thead tr th {
	width: 33.33334%;
	padding: 15px 20px;
	color: #fff;
	font-size: 20px;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#004bb0+0,004bb0+100 */
	background: rgb(0,75,176); /* Old browsers */
	background: -moz-linear-gradient(top,  rgba(0,75,176,1) 0%, rgba(0,75,176,1) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  rgba(0,75,176,1) 0%,rgba(0,75,176,1) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom,  rgba(0,75,176,1) 0%,rgba(0,75,176,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#004bb0', endColorstr='#004bb0',GradientType=0 ); /* IE6-9 */
	border-right: 1px solid #003986;
}

.differentSec__inner__sec02 table thead tr th:first-child {
	border-left: 3px solid #004aae;
}

.differentSec__inner__sec02 table thead tr th:last-child {
	border-right: 3px solid #004aae;
}

.differentSec__inner__sec02 table thead tr th:nth-child(1) {
	border-radius: 12px 0 0 0;
}

.differentSec__inner__sec02 table thead tr th:nth-child(3) {
	border-radius: 0 12px 0 0;
}

.differentSec__inner__sec02 table tbody tr th {
	padding: 20px 20px;
	font-size: 18px;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
	background-color: #fff;
	border-left: 3px solid #003f97;
	border-bottom: 1px solid #e4e4e4;
}

.differentSec__inner__sec02 table tbody tr:last-child th {
	border-radius: 0 0 0 12px;
	border-bottom: 3px solid #003f97;
}

.differentSec__inner__sec02 table tbody tr td {
	padding: 20px 20px;
	font-size: 18px;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
	border-bottom: 1px solid #e4e4e4;
}

.differentSec__inner__sec02 table tbody tr td:nth-child(2) {
	background-color: #f2f7fb;
}

.differentSec__inner__sec02 table tbody tr td:nth-child(3) {
	background-color: #dceff5;
}

.differentSec__inner__sec02 table tbody tr td:last-child {
	border-right: 3px solid #003f97;
}

.differentSec__inner__sec02 table tbody tr:last-child td {
	border-bottom: 3px solid #003f97;
}

.differentSec__inner__sec02 table tbody tr:last-child td:last-child {
	border-radius: 0 0 12px 0;
}

.differentSec__inner__copy {
	text-align: center;
	position: relative;
	z-index: 2;
}

@media screen and (max-width:767px){
	.differentSec {
		background: url(../images/different_bg01_sp.jpg) no-repeat center bottom;
		background-size: cover;
	}

	.differentSec__inner {
		padding: 30px 0 30px;
	}

	.differentSec__inner__ttl {
		margin-bottom: 28px;
	}

	.differentSec__inner__intro {
		margin-bottom: 22px;
	}

	.differentSec__inner__intro:before {
		width: 323px;
		height: 165px;
		bottom: -55px;
	}

	.differentSec__inner__intro__inner {
		padding: 10px 3.529411764705882%;
		border: 3px solid #dfdfdf;
	}

	.differentSec__inner__intro p {
		font-size: 16px;
	}

	.differentSec__inner__but {
		margin-bottom: 30px;
	}

	.differentSec__inner__sec01 {
		margin-bottom: 30px;
	}

	.differentSec__inner__sec01__content {
		padding: 12px 3.529411764705882%;
		border: 3px solid #dfdfdf;
	}

	.differentSec__inner__sec01__content p {
		font-size: 14px;
	}

	.differentSec__inner__sec02 {
		margin-bottom: 32px;
	}

	.differentSec__inner__sec02:before {
		width: 323px;
		height: 165px;
		bottom: -100px;
	}

	.differentSec__inner__sec02 table {
		margin-top: 20px;
		box-shadow: 0px 3px 0px 0px rgba(0,0,0,0.1);
		border-radius: 0 0 6px 6px;
	}

	.differentSec__inner__sec02 table thead tr th {
		padding: 8px 10px;
		font-size: 12px;
	}

	.differentSec__inner__sec02 table thead tr th:first-child {
		border-left: 2px solid #004aae;
	}

	.differentSec__inner__sec02 table thead tr th:last-child {
		border-right: 2px solid #004aae;
	}

	.differentSec__inner__sec02 table thead tr th:nth-child(1) {
		border-radius: 6px 0 0 0;
	}

	.differentSec__inner__sec02 table thead tr th:nth-child(3) {
		border-radius: 0 6px 0 0;
	}

	.differentSec__inner__sec02 table tbody tr th {
		padding: 10px 10px;
		font-size: 12px;
		border-left: 2px solid #003f97;
	}

	.differentSec__inner__sec02 table tbody tr:last-child th {
		border-radius: 0 0 0 6px;
		border-bottom: 2px solid #003f97;
	}

	.differentSec__inner__sec02 table tbody tr td {
		padding: 10px 10px;
		font-size: 12px;
		text-align: left;
	}

	.differentSec__inner__sec02 table tbody tr td:last-child {
		border-right: 2px solid #003f97;
	}

	.differentSec__inner__sec02 table tbody tr:last-child td {
		border-bottom: 2px solid #003f97;
	}

	.differentSec__inner__sec02 table tbody tr:last-child td:last-child {
		border-radius: 0 0 6px 0;
	}
}



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

 problemSec

***********************************/
.problemSec {

}

.problemSec__inner {
	padding: 80px 0 100px;
}

.problemSec__inner__ttl {
	margin-bottom: 60px;
	text-align: center;
}

.problemSec__inner__txt01 {
	padding: 2.5% 4.081632653061224%;
	font-weight: bold;
	background-color: #f2f7fb;
}

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

	.problemSec__inner {
		padding: 30px 0 65px;
	}

	.problemSec__inner__ttl {
		margin-bottom: 30px;
	}

	.problemSec__inner__txt01 {
		padding: 2.8% 4.411764705882353%;
		font-size: 14px;
	}

}



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

 microsoftSec

***********************************/
.microsoftSec {
	background-color: #f2f7fb;
}

.microsoftSec__inner {
	padding: 125px 0 100px;
	position: relative;
	z-index: 1;
}

.microsoftSec__inner .c-title01 {
	width: 100%;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit-transform: translateY(-50%) translateX(-50%);
}

.microsoftSec__inner__list {

}

.microsoftSec__inner__list__sec {
	margin-bottom: 80px;
	position: relative;
	z-index: 1;
}


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

.microsoftSec__inner__list__sec .ttl {
	display: flex;
	border-radius: 100px;
	overflow: hidden;
	box-shadow: 0px 3px 0px 0px #e5e5e5;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit-transform: translateY(-50%) translateX(-50%);
}

.microsoftSec__inner__list__sec .ttl .txt01 {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 120px;
	background-color: #111111;
}

.microsoftSec__inner__list__sec .ttl .txt01 img {
	display: block;
	width: 76px;
}

.microsoftSec__inner__list__sec .ttl .txt02 {
	display: block;
	padding: 8px 20px;
	font-size: 19px;
	font-weight: bold;
	white-space: nowrap;
	background-color: #fff;
}

.microsoftSec__inner__list__sec p {
	padding: 37px 3.469387755102041% 22px;
	color: #003f97;
	font-size: 22px;
	font-weight: bold;
	line-height: 1.5;
	text-align: center;
	border: 6px solid #dfdfdf;
	background-color: #fff;
}

.microsoftSec__inner .microsoftSec__inner__txt01 {
	margin: 0 -31.634%;
}

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

	.microsoftSec__inner {
		padding: 90px 0 30px;
	}

	.microsoftSec__inner__list__sec {
		margin-bottom: 60px;
		position: relative;
		z-index: 1;
	}

	.microsoftSec__inner__list__sec .ttl {
		display: flex;
		border-radius: 100px;
		overflow: hidden;
		box-shadow: 0px 3px 0px 0px #e5e5e5;
		position: absolute;
		top: 0;
		left: 50%;
		transform: translateY(-50%) translateX(-50%);
		-webkit-transform: translateY(-50%) translateX(-50%);
	}

	.microsoftSec__inner__list__sec .ttl .txt01 {
		width: 75px;
	}

	.microsoftSec__inner__list__sec .ttl .txt01 img {
		width: 47px;
	}

	.microsoftSec__inner__list__sec .ttl .txt02 {
		padding: 12px 12px;
		font-size: 13px;
		line-height: 1.5;
	}

	.microsoftSec__inner__list__sec p {
		padding: 40px 3.970588235294118% 12px;
		font-size: 16px;
		border: 3px solid #dfdfdf;
	}

	.microsoftSec__inner .microsoftSec__inner__txt01 {
		margin: 0 -5.15%;
	}

}



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

 featureSec

***********************************/
.featureSec {
	background: url(../images/feature_bg01_pc.jpg) no-repeat center bottom;
	background-size: cover;
}

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

.featureSec__inner__ttl {
	margin-bottom: 55px;
	text-align: center;
}

.featureSec__inner__intro {
	margin-bottom: 75px;
}

.featureSec__inner__intro .ttl {
	padding: 20px 15px;
	font-size: 22px;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
	background-color: #fff;
	border: 6px solid #dfdfdf;
}

.featureSec__inner__intro p {
	padding: 2.5% 4.081632653061224%;
	color: #fff;
	font-weight: bold;
	background-color: #003f97;
}

.featureSec__inner__case {

}

.featureSec__inner__case__content {
	padding: 4.081632653061224%;
	background-color: #fff;
}

.featureSec__inner__case__content .sec {
	margin-bottom: 25px;
}

.featureSec__inner__case__content .sec:last-child {
	margin-bottom: 0;
}

.featureSec__inner__case__content .ttl {
	display: flex;
	margin-bottom: 15px;
}

.featureSec__inner__case__content .ttl .num {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 60px;
	color: #fff;
	font-size: 24px;
	font-weight: bold;
	background-color: #003f97;
}

.featureSec__inner__case__content .ttl .txt {
	flex: 1;
	display: block;
	padding: 12px 15px;
	color: #003f97;
	font-size: 24px;
	font-weight: bold;
	line-height: 1.5;
	background-color: #f2f7fb;
}

.featureSec__inner__case__content .txt01 {
	font-weight: bold;
}

.featureSec__inner__case__content .note {
	margin-top: .3em;
	font-size: 14px;
	font-weight: bold;
}

.featureSec__inner__copy {
	text-align: center;
}

@media screen and (max-width:767px){
	.featureSec {
		background: url(../images/feature_bg01_sp.jpg) no-repeat center bottom;
		background-size: cover;
	}

	.featureSec__inner {
		padding: 30px 0 30px;
	}

	.featureSec__inner__ttl {
		margin-bottom: 25px;
	}

	.featureSec__inner__intro {
		margin-bottom: 30px;
	}

	.featureSec__inner__intro .ttl {
		padding: 10px 3.970588235294118%;
		font-size: 16px;
		border: 3px solid #dfdfdf;
	}

	.featureSec__inner__intro p {
		padding: 12px 4.411764705882353%;
		font-size: 14px;
	}

	.featureSec__inner__case {

	}

	.featureSec__inner__case__content {
		padding: 4.411764705882353%;
		margin-top: 20px;
	}

	.featureSec__inner__case__content .sec {
		margin-bottom: 15px;
	}

	.featureSec__inner__case__content .ttl {
		margin-bottom: 10px;
	}

	.featureSec__inner__case__content .ttl .num {
		width: 35px;
		font-size: 16px;
	}

	.featureSec__inner__case__content .ttl .txt {
		padding: 6px 10px;
		font-size: 16px;
	}

	.featureSec__inner__case__content .txt01 {
		font-size: 14px;
	}

	.featureSec__inner__case__content .note {
		margin-top: .3em;
		font-size: 12px;
	}

}



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

 flowSec

***********************************/
.flowSec {

}

.flowSec__inner {
	padding: 75px 0 90px;
}

.flowSec__inner__intro {
	margin-bottom: 40px;
	font-size: 20px;
	font-weight: bold;
	line-height: 1.5;
}

.flowSec__inner__step {

}

.flowSec__inner__step__sec {
	display: flex;
	margin-bottom: 73px;
	position: relative;
	z-index: 1;
}

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

.flowSec__inner__step__sec:before {
	content: "";
	display: block;
	width: 68px;
	height: 34px;
	background: url(../images/flow_arr01.png) no-repeat left top;
	background-size: contain;
	position: absolute;
	bottom: -54px;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
}

.flowSec__inner__step__sec:last-child:before {
	display: none;
}

.flowSec__inner__step__sec .num {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 120px;
	color: #fff;
	font-size: 24px;
	font-weight: bold;
	letter-spacing: .05em;
	background-color: #002455;
}

.flowSec__inner__step__sec .content {
	flex: 1;
	padding: 20px;
	border-top: 3px solid #dfdfdf;
	border-right: 3px solid #dfdfdf;
	border-bottom: 3px solid #dfdfdf;
}

.flowSec__inner__step__sec .content dl {
	display: flex;
	align-items: flex-start;
	padding-top: 20px;
	margin-top: 20px;
	border-top: 1px solid #dfdfdf;
}

.flowSec__inner__step__sec .content dl:first-child {
	padding-top: 0;
	margin-top: 0;
	border-top: none;
}

.flowSec__inner__step__sec .content dl dt {
	width: 210px;
	padding: 11px 10px;
	margin-right: 20px;
	color: #fff;
	font-weight: bold;
	text-align: center;
	background-color: #003f97;
}

.flowSec__inner__step__sec .content dl dd {
	flex: 1;
	padding: 11px 0;
}

.flowSec__inner__step__sec .content .note {
	padding: 8px 20px;
	margin-top: 20px;
	background-color: #f2f2f2;
}

.flowSec__inner__step__sec .content .note li {
	text-indent: -1em;
	margin-left: 1em;
	font-size: 14px;
}

.flowSec__inner__step__goal {
	padding: 9px 15px;
	color: #fff;
	font-size: 32px;
	font-weight: bold;
	text-align: center;
	background-color: #003f97;
}

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


	.flowSec__inner {
		padding: 20px 0 30px;
	}

	.flowSec__inner__intro {
		margin-bottom: 20px;
		font-size: 16px;
		text-align: center;
	}

	.flowSec__inner__step {

	}

	.flowSec__inner__step__sec {
		margin-bottom: 50px;
	}

	.flowSec__inner__step__sec:before {
		width: 41px;
		height: 21px;
		bottom: -35px;
	}

	.flowSec__inner__step__sec:last-child:before {
		display: none;
	}

	.flowSec__inner__step__sec .num {
		width: 80px;
		font-size: 16px;
	}

	.flowSec__inner__step__sec .content {
		padding: 15px;
		border-top: 2px solid #dfdfdf;
		border-right: 2px solid #dfdfdf;
		border-bottom: 2px solid #dfdfdf;
	}

	.flowSec__inner__step__sec .content dl {
		display: block;
		padding-top: 15px;
		margin-top: 15px;
	}

	.flowSec__inner__step__sec .content dl dt {
		width: 180px;
		padding: 4px 0;
		margin-right: 0;
		margin-bottom: 10px;
		font-size: 16px;
	}

	.flowSec__inner__step__sec .content dl dd {
		padding: 0;
		font-size: 16px;
	}

	.flowSec__inner__step__sec .content .note {
		padding: 8px 10px;
		margin-top: 15px;
		line-height: 1.6;
	}

	.flowSec__inner__step__sec .content .note li {
		font-size: 12px;
	}

	.flowSec__inner__step__goal {
		padding: 7px 15px;
		font-size: 18px;
	}
}



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

 companySec

***********************************/
.companySec {
	background-color: #f8f8f8;
}

.companySec__inner {
	padding: 80px 0 90px;
}

.companySec__inner__ttl {
	padding: 12px 15px;
	margin-bottom: 10px;
	text-align: center;
	font-size: 28px;
	font-weight: bold;
	line-height: 1.5;
	background-color: #fff;
	border-top: 2px solid #111111;
	border-left: 1px solid #dddddd;
	border-right: 1px solid #dddddd;
	border-bottom: 1px solid #dddddd;
}

.companySec__inner__list {

}

.companySec__inner__list dl {
	display: flex;
	padding: 30px 0;
	border-bottom: 1px solid #dddddd;
}

.companySec__inner__list dl dt {
	width: 200px;
	padding-left: 20px;
	padding-right: 30px;
	font-weight: bold;
	border-right: 1px solid #dddddd;
}

.companySec__inner__list dl dd {
	flex: 1;
	padding-left: 30px;
}

.companySec__inner__list dl dd .email {
	color: #003f97;
	text-decoration: underline;
}

.companySec__inner__list dl dd .email:hover {
	text-decoration: none;
}

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

	.companySec__inner {
		padding: 30px 0 30px;
	}

	.companySec__inner__ttl {
		padding: 8px 15px;
		margin-bottom: 8px;
		font-size: 16px;
	}

	.companySec__inner__list {

	}

	.companySec__inner__list dl {
		display: block;
		padding: 10px 0;
		border-bottom: 1px solid #dddddd;
	}

	.companySec__inner__list dl dt {
		width: auto;
		margin-bottom: .2em;
		text-align: center;
		padding-left: 0;
		padding-right: 0;
		border-right: none;
	}

	.companySec__inner__list dl dd {
		text-align: center;
		padding-left: 0;
	}
}



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

 formSec

***********************************/
.formSec {

}

.formSec__inner {
	padding: 80px 0 95px;
}

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

	.formSec__inner {
		padding: 30px 0 35px;
	}

}


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

 xxx

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

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

}

