@charset "utf-8";

/* ****************************************************
Title: layout.css
***************************************************** */



@font-face {
    font-family: 'NotoSansCJKjp';
    font-style: normal;
    font-weight: 400;
    /*src: url('../font/NotoSansCJKjp-Regular.eot');*/
    src: /*url('../font/NotoSansCJKjp-Regular.eot?#iefix') format('embedded-opentype'),*/
    url('../font/NotoSansCJKjp-Regular.woff') format('woff'),
    url('../font/NotoSansCJKjp-Regular.ttf')  format('truetype');
}
@font-face {
    font-family: 'NotoSansCJKjp';
    font-style: normal;
    font-weight: 500;
   /* src: url('../font/NotoSansCJKjp-Medium.eot');*/
    src: /*url('../font/NotoSansCJKjp-Medium.eot?#iefix') format('embedded-opentype'),*/
    url('../font/NotoSansCJKjp-Medium.woff') format('woff'),
    url('../font/NotoSansCJKjp-Medium.ttf')  format('truetype');
}
@font-face {
    font-family: 'NotoSansCJKjp';
    font-style: normal;
    font-weight: 700;
    /*src: url('../font/NotoSansCJKjp-Bold.eot');*/
    src: /*url('../font/NotoSansCJKjp-Bold.eot?#iefix') format('embedded-opentype'),*/
    url('../font/NotoSansCJKjp-Bold.woff') format('woff'),
    url('../font/NotoSansCJKjp-Bold.ttf')  format('truetype');
}



/* -------------------------------------------------------------------- 
 body
-------------------------------------------------------------------- */

body {
 color: #4d4d4d;

/*font-family: 'NotoSansCJKjp', 'Noto Sans JP', Sans-Serif;*/
font-family: 'NotoSansCJKjp', Sans-Serif;

font-size: 13px;
 *font-size:small;
 *font:x-small;
 text-align: center;
	text-size-adjust: 100%;
	-moz-text-size-adjust: none;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	/*max-height: 999999px;*/
}

#top {
	/*overflow: hidden;*/
}

#wrap {
	overflow: hidden;
	/*width: 640px;*/
	min-width: 1200px;
	margin-top: 0px;
	margin-right: auto;
	margin-bottom: 0px;
	margin-left: auto;
	padding: 0px;
}


img {
	vertical-align: bottom;
	width: auto;
	max-width: 100%;
	height: auto;
}

.relative-wrap {
	position: relative;
}

.contDispN {
	display: none;
}

p, span, dt, dd, th, td, li, h1, h2, h3, h4 {
	max-height: 999999px;
	background-image: url(../img/spacer.gif);
}

a.imghover {
	display: block;
}


/*-----------------------*/

.anc {
	position: relative;
}
.ancIn {
	position: absolute;
	top: -133px;
}

#top {
	padding-top: 45px;
	background-color: #ffffff;
}

#top.win10 {
	padding-top: 72px;
}


/*-----------------------*/

.pc {
	display: block;
}

.sp {
	display: none;
}

.pcBr {
	display: inline;
}

.spBr {
	display: none;
}

.pcTable {
	display: table !important;
}
.spTable {
	display: none !important;
}

.tbBr {
	display: none;
}

.contIn1200 {
	width: 1200px;
	/*max-width: 1200px;*/
	margin: 0px auto;
	position: relative;
}

.mojitume {
	letter-spacing: -1px;
}

.pagelink {
	margin-top:-80px;
	padding-top:80px;
}



@media screen and (max-width:1201px) {

.contIn1200 {
	/*box-sizing: border-box;
	padding-left: 20px;
	padding-right: 20px;*/
}


}


.radius200 {
	-moz-border-radius: 200px;
	-webkit-border-radius: 200px;
	-o-border-radius: 200px;
	-ms-border-radius: 200px;
	border-radius: 200px;
}
.radius200_02 {
	-moz-border-radius: 200px;
	-webkit-border-radius: 200px;
	-o-border-radius: 200px;
	-ms-border-radius: 200px;
	border-radius: 200px;
}

/*.radius15 {
	-moz-border-radius: 15px;
	-webkit-border-radius: 15px;
	-o-border-radius: 15px;
	-ms-border-radius: 15px;
	border-radius: 15px;
	overflow: hidden;
}*/

.contGr01 {
	background: rgb(212, 43, 77);
	background: -moz-linear-gradient(0deg, rgb(212, 43, 77) 0%, rgb(255, 96, 77) 100%);
	background: -webkit-linear-gradient(0deg, rgb(212, 43, 77) 0%, rgb(255, 96, 77) 100%);
	background: -o-linear-gradient(0deg, rgb(212, 43, 77) 0%, rgb(255, 96, 77) 100%);
	background: -ms-linear-gradient(0deg, rgb(212, 43, 77) 0%, rgb(255, 96, 77) 100%);
	background: linear-gradient(90deg, rgb(212, 43, 77) 0%, rgb(255, 96, 77) 100%);
}
.contGr0102 {
	background: rgb(231, 80, 115);
	background: -moz-linear-gradient(0deg, rgb(231, 80, 115) 0%, rgb(231, 38, 57) 100%);
	background: -webkit-linear-gradient(0deg, rgb(231, 80, 115) 0%, rgb(231, 38, 57) 100%);
	background: -o-linear-gradient(0deg, rgb(231, 80, 115) 0%, rgb(231, 38, 57) 100%);
	background: -ms-linear-gradient(0deg, rgb(231, 80, 115) 0%, rgb(231, 38, 57) 100%);
	background: linear-gradient(90deg, rgb(231, 80, 115) 0%, rgb(231, 38, 57) 100%);
}

.contGr02 {
	background: rgb(255, 168, 24);
	background: -moz-linear-gradient(0deg, rgb(255, 168, 24) 0%, rgb(255, 129, 24) 100%);
	background: -webkit-linear-gradient(0deg, rgb(255, 168, 24) 0%, rgb(255, 129, 24) 100%);
	background: -o-linear-gradient(0deg, rgb(255, 168, 24) 0%, rgb(255, 129, 24) 100%);
	background: -ms-linear-gradient(0deg, rgb(255, 168, 24) 0%, rgb(255, 129, 24) 100%);
	background: linear-gradient(90deg, rgb(255, 168, 24) 0%, rgb(255, 129, 24) 100%);
}

.contGr03 {
	background: rgb(255, 229, 185);
	background: -moz-linear-gradient(0deg, rgb(255, 229, 185) 0%, rgb(255, 217, 185) 100%);
	background: -webkit-linear-gradient(0deg, rgb(255, 229, 185) 0%, rgb(255, 217, 185) 100%);
	background: -o-linear-gradient(0deg, rgb(255, 229, 185) 0%, rgb(255, 217, 185) 100%);
	background: -ms-linear-gradient(0deg, rgb(255, 229, 185) 0%, rgb(255, 217, 185) 100%);
	background: linear-gradient(90deg, rgb(255, 229, 185) 0%, rgb(255, 217, 185) 100%);
}

/*------------------------*/

.pcDispHeader {
	display: block;
}
.spDispHeader {
	display: none;
}

.transition01 a {
	-moz-transition: color 0.4s ease;
	-o-transition: color 0.4s ease;
	-webkit-transition: color 0.4s ease;
	transition: color 0.4s ease;
}

.dumy {
	height: 2000px;
}

@media screen and (max-width:1023px) {

	.pcDispHeader {
		display: none;
	}
	.spDispHeader {
		display: block;
	}

	/*-----------------------*/

	.anc {
		position: relative;
	}
	.ancIn {
		position: absolute;
		top: -96px;
	}

	#top {
		padding-top: 96px;
	}
	#top.win10 {
		padding-top: 96px;
	}

	#wrap {
		/*width: 640px;*/
		min-width: 960px;
		margin-top: 0px;
		margin-right: auto;
		margin-bottom: 0px;
		margin-left: auto;
		padding: 0px;
	}

	.contIn1200 {
		width: auto;
		/*max-width: 1200px;*/
		margin: 0px auto;
		position: relative;
		padding: 0px 20px;
	}

	.tbBr {
		display: inline;
	}


}
        


@media screen and (max-width:767px) {

	#wrap {
		overflow: hidden;
		/*width: 750px;*/
		width: auto;
		margin-top: 0px;
		margin-right: auto;
		margin-bottom: 0px;
		margin-left: auto;
		padding: 0px;
		min-width: 375px;
	}

	/*-----------------------*/

	.anc {
		position: relative;
	}
	.ancIn {
		position: absolute;
		top: -60px;
	}

	#top {
		padding-top: 30px;
	}
	#top.win10 {
		padding-top: 30px;
	}

	/*-----------------------*/

	.pc {
		display: none;
	}
	.sp {
		display: block;
	}
	.pcBr {
		display: none;
	}
	.spBr {
		display: inline;
	}

	.pcTable {
		display: none !important;
	}
	.spTable {
		display: table !important;
	}

	.tbBr {
		display: inline;
	}

	.contIn1200 {
		width: auto;
		padding: 0px 15px;
	}

	.radius200_02 {
		-moz-border-radius: 10px;
		-webkit-border-radius: 10px;
		-o-border-radius: 10px;
		-ms-border-radius: 10px;
		border-radius: 10px;
	}

	.textSh01 {
		text-shadow: 1px 1px 0px rgba(255, 255, 255, 1), -1px -1px 0px rgba(255, 255, 255, 1), 1px -1px 0px rgba(255, 255, 255, 1), -1px 1px 0px rgba(255, 255, 255, 1);
	}

	.textShadow01 {
		text-shadow: 4px 4px 10px rgba(0, 0, 0, 0.8);
	}
	.textShadow01White {
		text-shadow: 1px 1px 0px rgb(255, 255, 255, 1);
	}
        

}


/* -------------------------------------------------------------------- 
 header
-------------------------------------------------------------------- */

.menuSpWrap {
	display: none;
}

/*-------------------*/

.pcHeaderWrap {
	background-color: #ffffff;
	width: 100%;
	position: fixed;
	top: 0px;
	left: 0px;
	z-index: 50;
}
.pcHeader {
	display: table;
	width: 100%;
	height: 72px;
}

.change .pcHeader {
	height: 50px;
}

.logoWrap01 {
	display: table-cell;
	text-align: left;
	vertical-align: middle;
	padding-left: 82px;
}
.naviWrap01 {
	display: table-cell;
	text-align: right;
	vertical-align: middle;
}
.logoWrap02 {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	width: 229px;
	padding: 0px 20px;
}

.logoWrap01 .h101 {
	font-size: 12px;
	line-height: 1.0em;
	letter-spacing: 0.05em;
	vertical-align: middle;
	white-space: nowrap;
	display: block;
	padding: 5px 0px;
}
.logoWrap01 .logo01 {
	vertical-align: middle;
}
.logoWrap01 .logo01 img {
	width: auto;
	height: 41px;
	vertical-align: middle;
	margin-right: 25px;
}
.change .logoWrap01 .logo01 img {
	height: 34px;
}

.logoWrap02 .logo02 {
}
.logoWrap02 .logo02 img {
	width: 229px;
	height: auto;
}

.headerNavi {
	display: table;
	margin: auto 0px auto auto;
}
.headerNavi li {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	padding: 0px 3px;
}

.headerBtn01 {
	display: table;
	width: 143px;
	height: 33px;
}
.headerBtn01 a {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	background-image: url("../img/header_btn_bg01.png");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	font-size: 14px;
	line-height: 1.0em;
	font-weight: 500;
	color: #ff8118;
}
.headerBtn02 {
	display: table;
	width: 143px;
	height: 33px;
}
.headerBtn02 a {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	background-image: url("../img/header_btn_bg02.png");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	font-size: 14px;
	line-height: 1.0em;
	font-weight: 500;
	color: #ffffff;
}
.gNaviWrap01 {
	border-top: 1px solid #d3d3d3;
	border-bottom: 1px solid #d3d3d3;
	position: relative;
}
.gNavi01 {
	max-width: 1200px;
	margin: auto;
}
.gNaviUl01 {
	display: table;
	width: 100%;
	border-left: 1px solid #d3d3d3;
}
.gNaviUl01 li {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	width: 16.66%;
}
.gNaviCont01 {
	display: table;
	width: 100%;
	height: 60px;
	border-left: 1px solid #d3d3d3;
}
.gNaviCont01 a {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	border-right: 1px solid #d3d3d3;
}
.gNavi01 a:link {	color: #4d4d4d;	text-decoration: none;}
.gNavi01 a:visited {	color: #4d4d4d;	text-decoration: none;}
.gNavi01 a:hover {	color:#cc0033;	text-decoration: none;}
.gNavi01 a:active {	color:#4d4d4d;	text-decoration: none;}

/*----------------------------------------------*/

.gNaviUl01 li:hover .pcMegaNaviWrap {
	/*display: block;*/
	visibility: visible;
    opacity: 1;
}

.pcMegaNaviWrap {
	background-image: url("../img/megamenu_bg01.png");
	background-repeat: repeat;
	background-position: left top;
	width: 100%;
	position: absolute;
	left: 0px;
	top: 60px;
	/*display: none;*/
	visibility: hidden;
    opacity: 0;
	transition-duration:0.3s;
}
.change .pcMegaNaviWrap {
	top: 45px;
}
.pcMegaNaviIn {
	padding: 26px 0px;
	width: 1042px;
	margin: auto;
	text-align: left;
}
.magaNaviCont02 .magaNavi01 {
	float: left;
	margin-right: 36px;
	margin-bottom: 8px;
}
.magaNaviCont02 .magaNavi01.last01 {
	margin-right: 0px;
}

.magaNaviCont01 {
	margin-bottom: 8px;
}

/*--------------------------*/

.detailBredWrap01 {
	text-align: left;
	padding: 20px;
}
.detailBredWrap01 li {
	font-size: 13px;
	line-height: 1.3em;
}
.detailBredWrap01 a:link {	color: #4d4d4d;	text-decoration: none;}
.detailBredWrap01 a:visited {	color: #4d4d4d;	text-decoration: none;}
.detailBredWrap01 a:hover {	color:#4d4d4d;	text-decoration: underline;}
.detailBredWrap01 a:active {	color:#4d4d4d;	text-decoration: none;}

/*--------------------------*/

.headerLink01 {
	font-size: 14px;
	line-height: 1.4em;
	font-weight: bold;
	letter-spacing: -0.05em;
	margin-right: 10px;
	background-image: url("../img/top_reason_ar01.png");
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 11px auto;
	padding-left: 14px;
}
.headerLink01 a:hover {	color:#cc0033;	text-decoration: none;}



@media screen and (max-width:1023px) {

	.logoWrap01 {
		padding-left: 50px;
	}

	.mm-menu.mm-offcanvas {
		z-index: 2 !important;
	}

	.spHeaderWrap {
		width: 100%;
		position: fixed;
		top: 0px;
		left: 0px;
		background-color: #ffffff;
		z-index: 50;
	}
	.mm-opened .spHeaderWrap {
		position: absolute;
	}

	.spHeader {
		display: table;
		width: 100%;
		height: 96px;
	}
	.logoWrap01 {
		display: table-cell;
		text-align: left;
		vertical-align: middle;
		padding-left: 20px;
	}
	.logoWrap01 .h101 {
		font-size: 12px;
		line-height: 1.0em;
		letter-spacing: 0.05em;
		vertical-align: middle;
	display: block;
	padding: 5px 0px;
	}
	.logoWrap01 .logo01 {
		vertical-align: middle;
	}
	.logoWrap01 .logo01 img {
		width: auto;
		height: 38px;
		vertical-align: middle;
		margin-right: 25px;
	}

	.spHeaderMenu {
		display: table-cell;
		text-align: right;
		vertical-align: middle;
		padding-right: 20px;
	}
	.spHeaderMenu img {
		width: 120px;
		height: auto;
	}

	/*--------------------------*/

	.detailBredWrap01 {
		text-align: left;
		padding: 20px;
	}
	.detailBredWrap01 li {
		font-size: 13px;
		line-height: 1.3em;
	}
	.detailBredWrap01 a:link {	color: #4d4d4d;	text-decoration: none;}
	.detailBredWrap01 a:visited {	color: #4d4d4d;	text-decoration: none;}
	.detailBredWrap01 a:hover {	color:#4d4d4d;	text-decoration: underline;}
	.detailBredWrap01 a:active {	color:#4d4d4d;	text-decoration: none;}



	.mm-listview .cv_link a {
		background-color: #e72639;
		color: #fff;
	}
	.mm-listview .cv_link a:hover {
		opacity: 0.7;
	}

	.mm-listview .cv_link button {
		background-color: #e72639;
		color: #fff;
		font-family: 'NotoSansCJKjp', Sans-Serif;
		font-size: 14px;
	}
	.mm-listview .cv_link button:hover {
		opacity: 0.7;
	}


.mm-listview button {
	text-overflow: ellipsis;
	white-space: nowrap;
	overflow: hidden;
	color: inherit;
	display: block;
	padding: 10px 10px 10px 20px;
	margin: 0;
	width: 100%;
	border: none;
}



}


@media screen and (max-width:767px) {

	.mm-menu.mm-offcanvas {
		z-index: 0 !important;
	}

	.spHeaderWrap {
		width: 100%;
		position: fixed;
		top: 0px;
		left: 0px;
		background-color: #ffffff;
		z-index: 50;
	}
	.mm-opened .spHeaderWrap {
		position: absolute;
	}

	.spHeader {
		display: table;
		width: 100%;
		height: 60px;
	}
	.logoWrap01 {
		display: table-cell;
		text-align: left;
		vertical-align: middle;
		padding-left: 20px;
	}
	.logoWrap01 .h101 {
		font-size: 10px;
		line-height: 1.0em;
		letter-spacing: 0em;
		vertical-align: middle;
	display: block;
	padding: 5px 0px;
	}
	.logoWrap01 .logo01 {
		vertical-align: middle;
	}
	.logoWrap01 .logo01 img {
		width: auto;
		height: 24px;
		vertical-align: middle;
		margin-right: 10px;
	}

	.spHeaderMenu {
		display: table-cell;
		text-align: right;
		vertical-align: middle;
		padding-right: 15px;
		position: absolute;
		top: 31px;
		right: 0px;
	}
	.spHeaderMenu img {
		width: 90px;
		height: auto;
	}

	/*--------------------------*/

	.detailBredWrap01 {
		text-align: left;
		padding: 20px;
	}
	.detailBredWrap01 li {
		font-size: 13px;
		line-height: 1.3em;
	}
	.detailBredWrap01 a:link {	color: #4d4d4d;	text-decoration: none;}
	.detailBredWrap01 a:visited {	color: #4d4d4d;	text-decoration: none;}
	.detailBredWrap01 a:hover {	color:#4d4d4d;	text-decoration: underline;}
	.detailBredWrap01 a:active {	color:#4d4d4d;	text-decoration: none;}



	.mm-listview .cv_link a {
		background-color: #e72639;
		color: #fff;
	}
	.mm-listview .cv_link a:hover {
		opacity: 0.7;
	}

	.mm-listview .cv_link button {
		background-color: #e72639;
		color: #fff;
		font-family: 'NotoSansCJKjp', Sans-Serif;
		font-size: 14px;
	}
	.mm-listview .cv_link button:hover {
		opacity: 0.7;
	}


.mm-listview button {
	text-overflow: ellipsis;
	white-space: nowrap;
	overflow: hidden;
	color: inherit;
	display: block;
	padding: 10px 10px 10px 20px;
	margin: 0;
	width: 100%;
	border: none;
}


}


@media print {
	body {
		zoom: 80%;
		-webkit-print-color-adjust: exact;
	}
	.pcHeaderWrap {
		position: absolute;
	}

	.daasBox01Cell01 {
		height: 412px;
	}
	.contactBtn10 a {
		box-sizing: border-box !important;
		height: 56px !important;
		}


}

/* -------------------------------------------------------------------- 
 main
-------------------------------------------------------------------- */

.topMaivisualWrap01 {
	background-image: url("../img/top_mainvisual01.jpg");
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
	/*height: 771px;*/
	height: 529px;
}

.topH201 {
	padding-top: 50px;
}

.topMainvisualtext01 {
	font-size: 22px;
	color: #fff;
	margin-bottom: 25px;
}
.topH201 .h2Span02 {
	display: block;
	color: #fff;
	font-size: 40px;
	line-height: 1.6em;
	font-weight: bold;
}
.topMainvisualimg01 {
	max-width: 970px;
	height: auto;
	margin: 0 auto;
}


.topcaption {
	padding: 10px 0px 0px 0px;
}


/*-----------セキュリティ事故を起こさないための最善の方法とは？--------------*/

.topdownloadWrap01 {
    max-width: 912px;
    margin: auto;
    padding: 57px 0px 60px 0px;
}


.topdownloadWrap01 .downloadSpan01 {
    display: table-cell;
	vertical-align: middle;
    background-image: url(../img/top_download_bg01.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    width: 912px;
    height: 297px;
    color: #4d4d4d;
	font-size: 30px;
}
.topdownloadWrap01 .topText01 {
	margin-bottom: 10px;
}


/*-----------こんな課題はありませんか？--------------*/


.topSubjectWrap {
	background-color: #082162;
	padding: 50px 0px;
	color: #fff;
	position: relative;
	margin-bottom: 22px;
}
.topSubjectWrap h3 {
	font-size: 40px;
	margin-bottom: 40px;
}

.topSubjectWrap ul{
	text-align: left;
	padding-right: 200px;
}
.topSubjectWrap ul li {
	font-size: 21px;
    display: inline-block;
    background-image: url(../img/top_subjectimg02.png);
    background-repeat: no-repeat;
    background-position: left center;
    background-size: 22px auto;
    line-height: 1.4em;
    padding-left: 28px;
}
.topSubjectWrap .topImg01 img {
    position: absolute;
    max-width: 182px;
    height: auto;
    right: 15px;
    top: 50%;
	margin-top: -91px;
}
.topSubjectWrap .topImg02 img {
    position: absolute;
    height: auto;
	bottom: -76px;
    left: 50%;
    margin-left: -58px;
}

/*-------------おまかせください----------------*/


.topMerittWrap {
    padding: 58px 0px 68px 0px;
}
.topMerittWrap h3 {
	font-size: 40px;
	margin-bottom: 45px;
}
.topMerittWrap h3 img {
	max-width: 535px;
}
.topMerittWrap ul li {
	display: table;
	width: 100%;
	margin-bottom: 10px;
}
.topMerittWrap ul li .topSpan01 {
	display: table-cell;
	background-color: #51417d;
	color: #fff;
	vertical-align: middle;
	width: 147px;
}

.topMerittWrap ul li .topSpan01 .span03 {
	vertical-align: middle;
	display: table-cell;
	padding-right: 5px;
}
.topMerittWrap ul li .topSpan01 .span03 .underline {
	border-bottom: solid 1px #fff;
	font-size: 12px;
}
.topMerittWrap ul li .topSpan01 .span04 {
	font-size: 33px;
	vertical-align: middle;
	display: table-cell;
}
.topMerittWrap ul li .topSpan02 {
	display: table-cell;
	background-color: #f7f7f7;
	text-align: left;
	padding: 15px 20px;
	font-size: 20px;
}
.caption_right {
	text-align: right;
	font-size: 12px;
}
.topMerittWrap .topImg02 {
	margin-top: 50px;
}
.topMerittWrap .topImg02 img {
	max-width: 400px;
}



/*-------------選ばれる理由---------------*/


.topReasonWrap {
	padding: 50px 0px;
	background-color: #dadada;
}


.WhiteWrap {
	background-color: #fff;
	position: relative;
	margin-top: 120px;
	padding: 110px 50px 50px 50px;
}
.WhiteWrap .number {
	position: absolute;
	background-color: #51417d;
	color: #fff;
    width: 126px;
	left: 50%;
	margin-left: -63px;
	top: -63px;
	font-size: 20px;
}
.WhiteWrap .number:before {
    content:"";
    display: block;
    padding-top: 100%;
}
.WhiteWrap .number .child {
    position: absolute;
    top: 20px;
    left: 0;
    bottom: 0;
    right: 0;
}
.WhiteWrap .number .topSpan01 {
	font-size: 40px;
}



.title01 {
	font-size: 44px;
    padding-bottom:  5px;
    margin-bottom: 40px;
    position:  relative;
}
.title01 .underline {
	border-bottom: solid 4px #51417d;
	padding-bottom: 6px;
}





.topReasonWrap .Reasonarea01 .topSpan01 {
	display: block;
	font-size: 27px;
	font-weight: bold;
	margin-bottom: 40px;
}
.topReasonWrap .Reasonarea01 .topImg01 img {
	max-width: 700px;
}
.topReasonWrap .topReasonBox_gr {
	background-color: #f5f9ff;
	padding: 30px 50px;
	margin-bottom: 35px;
}

.topReasonWrap .topReasonBox_gr h4 {
	font-size: 26px;
	margin-bottom: 20px;
	text-align: left;
}
.topReasonWrap .topReasonBox_gr .tag {
	background-color: #857aa4;
	color: #fff;
	border-radius: 30px;
	font-size: 15px;
	padding: 8px 15px;
	vertical-align: middle;
}
.topReasonWrap .topReasonBox_gr .tag img {
	max-width: 25px;
	height: auto;
	vertical-align: middle;
	margin-right: 3px;
}

.topReasonWrap .topReasonBox_gr .topReasonTb01 {
	display: table;
	width: 100%;
}
.topReasonWrap .topReasonBox_gr .topReasonBox01 ,
.topReasonWrap .topReasonBox_gr .topReasonBox02 {
	display: table-cell;
	text-align: left;
}



.topReasonWrap .topReasonBox_gr .topReasonBox01 {
	padding-right: 20px;
}
.topReasonWrap .topReasonBox_gr .topReasonBox01 ul {
	padding-left: 30px;
}
.topReasonWrap .topReasonBox_gr .topReasonBox01 li {
	font-size: 16px;
	line-height: 25px;
	list-style: disc;
}

.topReasonWrap .topReasonBox_gr .topReasonTb01 .topReasonBox02 {
	background-color: #fdf3ce;
	border-radius: 35px;
	padding: 20px;
    width: 290px;
	vertical-align: middle;
	text-align: center;
}
.topReasonWrap .topReasonBox_gr .topReasonTb01 .topReasonBox02 .topSpan01 {
	font-size: 18px;
	margin-bottom: 5px;
	text-align: center;
}
.topReasonWrap .topReasonBox_gr .topReasonTb01 .topReasonBox02 p {
	text-align: left;
	margin-top: 5px;
}



.topReasonWrap .topReasonBox_gr.Reasonarea02 {border-top: solid 2px #857aa4; margin-top: 50px;}
.topReasonWrap .topReasonBox_gr.Reasonarea03 {border-top: solid 2px #66ada4;}
.topReasonWrap .topReasonBox_gr.Reasonarea03 .tag {background-color: #66ada4;}
.topReasonWrap .topReasonBox_gr.Reasonarea04 {border-top: solid 2px #c2a052;}
.topReasonWrap .topReasonBox_gr.Reasonarea04 .tag {background-color: #c2a052;}
.topReasonWrap .topReasonBox_gr.Reasonarea05 {border-top: solid 2px #6695b6;}
.topReasonWrap .topReasonBox_gr.Reasonarea05 .tag {background-color: #6695b6;}




.topReasonWrap .topReasonBox_gr .topReasonTb02 {
	background-color: #fff;
	width: 100%;
	display: table;
	margin-top: 20px;
	padding: 40px 35px;
	box-sizing: border-box;
}
.topReasonWrap .topReasonBox_gr .topReasonTb02 .topReasonBox01 {
	vertical-align: top;
}
.topReasonWrap .topReasonBox_gr .topReasonTb02 .topReasonBox01 .topSpan01 {
	font-size: 18px;
}
.topReasonWrap .topReasonBox_gr .topReasonTb02 .topReasonBox01 p {
	font-size: 14px;
	line-height: 25px;
}
.topReasonWrap .topReasonBox_gr .topReasonTb02 .topReasonBox02 img {
	max-width: 650px;
	height: auto;
	padding-left: 20px;
}




/* 理由02 */

.topReasonWrap .topReason02 .Reasonarea01 {
	margin-bottom: 50px;
}
.topReasonWrap .topReason02 .Reasonarea01 .topSpan01 {
	margin-bottom: 15px;
}
.topReasonWrap .topReason02 .Reasonarea01 p{
	font-size: 16px;
}


.topReasonWrap .topReason02 .topReasonTb01 {
	display: table;
	width: 100%;
	box-sizing: border-box;
}
.topReasonWrap .topReason02 .topReasonBox01 {
	z-index: 2;
}
.topReasonWrap .topReason02 .topReasonBox01 ,
.topReasonWrap .topReason02 .topReasonBox03 {
	display: table-cell;
	border: solid 2px #c9c9c9;
	padding: 30px 25px;
	position: relative;
}
.topReasonWrap .topReason02 .topReasonBox02 {
	display: table-cell;
	padding: 15px;
	box-sizing: border-box;
}


.topReasonWrap .topReason02 .topReasonBox01:after {
	position: absolute;
	content: "";
	background: url("../img/top_reasonar05.png")center;
	background-size: cover;
	height: 100px;
	width: 50px;
	right: -48px;
	top: 50%;
	margin-top: -50px;
}

.topReasonWrap .topReason02 .topReasonBox01 img ,
.topReasonWrap .topReason02 .topReasonBox03 img {
	max-width: 470px;
}

.topReasonWrap .topReason02 h4 {
	font-size: 24px;
	background-color: #e3e3e3;
	border-radius: 30px;
	margin-bottom: 10px;
}

.topReasonWrap .topReason02 ul {
	margin-bottom: 10px;
    height: 65px;
}
.topReasonWrap .topReason02 ul li {
	text-align: left;
	padding-left: 18px;
	position: relative;
}
.topReasonWrap .topReason02 ul li:before {
	content: "■";
	left: 0px;
	position: absolute;
}

.topReasonWrap .topReason02 .topReasonBox03 {
	z-index: 1;
	border: solid 2px #b9b3cb;
	background-color: #eeecf2;
}
.topReasonWrap .topReason02 .topReasonBox03 h4 {
	background-color: #003e8f;
	color: #fff;
}
.topReasonWrap .topReason02 .topReasonBox03 ul li:before {
	color: #003e8f;
}

/* 理由3 */

.topReasonWrap .topReason03 .topReasonBox01 {
	background-color: #f5f9ff;
	padding: 40px;
}
.topReasonWrap .topReason03 .topReasonBox01 .topSpan01 {
	border-bottom: solid 2px #003e8f;
	color: #003e8f;
	padding-bottom: 3px;
	font-size: 24px;
}
.topReasonWrap .topReason03 .topReasonBox01 img {
	max-width: 830px;
}



/*-------------高い信頼性---------------*/

.topTrustWrap {
	padding: 50px 0px;
}

.topTrustWrap .title02 {
	font-size: 43px;
	line-height: 63px;
	margin-bottom: 50px;
}




/*-------------価格・プラン---------------*/


.topPlanWrap {
	padding: 50px 0px;
	background-color: #dadada;
}
.topPlanWrap .WhiteWrap {
	padding: 50px;
	margin-top: 0;
}



/*-------------資料ダウンロード---------------*/


.topDownloadWrap {
	padding: 70px 0px;
}

.topDownloadWrap .contIn1200 {
	font-size: 0px;
}
.topDownloadWrap .topDownloadArea {
	display: inline-block;
	width: 48%;
	border: solid 2px #0072e9;
	background-color: #f7fafb;
	box-sizing: border-box;
	padding: 25px 0px;
}
.topDownloadWrap .topDownloadArea:nth-child(2n) {
	margin-left: 4%;
}
.topDownloadWrap .topDownloadBox:nth-child(1n) {
	display: table-cell;
    vertical-align: middle;
	box-sizing: border-box;
}
.topDownloadWrap .topDownloadBox:nth-child(1n) img {
	max-width: 210px;
}
.topDownloadWrap .topDownloadBox:nth-child(2n) {
	display: table-cell;
	text-align: left;
    vertical-align: middle;
    padding-left: 0px;
	box-sizing: border-box;
	padding-right: 15px;
}

.topDownloadWrap .topDownloadArea .topSpan01 {
	font-size: 22px;
	color: #0072e9;
	margin-bottom: 30px;
	display: block;
	font-weight: bold;
}

.topDownloadWrap .topDownloadArea .btn_effect {
    margin: 0;
}




.topDownloadWrap .topDownloadArea:nth-child(2n) {
    border: solid 2px #eea74c;
    background-color: #fdf6ed;
}
.topDownloadWrap .topDownloadArea:nth-child(2n) .topSpan01 {
	color: #e98c1a;
}

/* ボタン色変更 */


.topDownloadWrap .contactBtn04Form {
    width: 275px;
}
.contactBtn04Form .span01 {
    display: inline-block;
    background-repeat: no-repeat;
    background-position: left center;
    line-height: 1.4em;
    padding-left: 44px;
    font-size: 18px;
}
.topDownloadWrap .contactBtn04Form button {
	padding: 14px 0px;
}


.topDownloadWrap .topDownloadArea:nth-child(1n) .contactBtn04Form .span01 {
    background-image: url(../img/top_btn_icon05_on.png);
    background-size: 28px auto;
}
.topDownloadWrap .topDownloadArea:nth-child(1n) .contactBtn04Form:hover .span01 {
    background-image: url(../img/top_btn_icon05.png);
}


.topDownloadWrap .topDownloadArea:nth-child(1n) .contactBtn04Form {
    background-color: #0072e9;
}
.topDownloadWrap .topDownloadArea:nth-child(1n) .contactBtn04Form button {
    border: 2px solid #0072e9;
}
.topDownloadWrap .topDownloadArea:nth-child(1n) .contactBtn04Form button:hover {
	color: #0072e9;
}


.topDownloadWrap .topDownloadArea:nth-child(2n) .contactBtn04Form {
    background-color: #e98c1a;
}
.topDownloadWrap .topDownloadArea:nth-child(2n) .contactBtn04Form button {
    border: 2px solid #e98c1a;
}
.topDownloadWrap .topDownloadArea:nth-child(2n) .contactBtn04Form .span01 {
    background-image: url(../img/top_btn_icon06_on.png);
    background-size: 28px auto;
}
.topDownloadWrap .topDownloadArea:nth-child(2n) .contactBtn04Form button:hover {
	color: #e98c1a;
}
.topDownloadWrap .topDownloadArea:nth-child(2n) .contactBtn04Form:hover .span01 {
    background-image: url(../img/top_btn_icon06.png);
}









@media screen and (max-width:1023px) {

	.topMaivisualWrap01 {
		background-image: url("../img/top_mainvisual01.jpg");
		background-repeat: no-repeat;
		background-position: center top;
		background-size: cover;
	}
	.topMaivisual01 {
		padding: 50px 0px 0px 40px;
	}
	.topH201 {
		text-align: left;
	}
	.topH201 .h2Span01 {
		display: block;
		font-size: 22px;
		line-height: 2.0em;
		font-weight: bold;
		margin-bottom: 10px;
	}
	.topH201 .h2Span02 {
		display: block;
		font-size: 35px;
		line-height: 1.6em;
		font-weight: bold;
	}
	
	.topReasonWrap .topReasonBox_gr .topReasonTb02 {
		display: block;
	}

	.topReasonWrap .topReasonBox_gr .topReasonTb02 .topReasonBox01,
	.topReasonWrap .topReasonBox_gr .topReasonTb02 .topReasonBox02 {
		display: block;
		text-align: left;
	}
	.topReasonWrap .topReason03 .topReasonBox01 img {
		max-width: 100%;
	}
	
	
	.topReasonWrap .topReason02 .topReasonTb01 {
		display: block;
	}
	.topReasonWrap .topReason02 .topReasonBox01, .topReasonWrap .topReason02 .topReasonBox03 {
		width: auto;
		display: block;
    	padding: 15px;
	}
	.topReasonWrap .topReason02 .topReasonBox01 img, .topReasonWrap .topReason02 .topReasonBox03 img {
		max-width: 100%;
	}
	.topReasonWrap .topReason02 .topReasonBox01:after {
		background: url(../img/top_reasonar05_2.png)center;
		background-size: cover;
		height: 50px;
		width: 100px;
		left: 50%;
		top: auto;
		bottom: -48px;
		margin-left: -50px;
	}
	.topReasonTb01 {
		margin-bottom: 0px;
	}
	
	.topReasonWrap .topReason02 ul {
		height: auto;
	}
	
	
	/*-------------資料ダウンロード---------------*/

	.topDownloadWrap .topDownloadBox:nth-child(1n) {
		display: block;
		width: 100%;
	}
	.topDownloadWrap .topDownloadBox:nth-child(2n) {
		display: block;
		text-align: center;
		width: 100%;
	}
	.topDownloadWrap .topDownloadBox:nth-child(2n) {
    	padding: 0px 15px;
	}
	.topDownloadWrap .topDownloadArea .btn_effect {
		margin: 0 auto;
	}

	.topDownloadWrap .topDownloadArea:nth-child(2n) {
		height: 384px;
		padding-bottom: 10px;
	}


	.topTabletBox01 {
		margin-top: 20px;
	}
	
}


@media screen and (max-width:767px) {

	.topMaivisualWrap01 {
		background-image: url("../img/top_mainvisual01.jpg");
		background-repeat: no-repeat;
		background-position: 25% top;
		background-size: cover;
		height: 360px;
	}
	.topH201 {
    	padding-top: 25px;
	}
	.topH201 .h2Span02 {
		display: block;
		font-size: 24px;
		margin-bottom: 5px;
		line-height: 1.6em;
		text-align: center;
		font-weight: bold;
	}
	.topMainvisualtext01 p {
		font-size: 15px;
	}
	
	.topMainvisualimg01 img {
		max-width: 500px;
		height: auto;
	}

	.caption_right {
		text-align: left;
	}
	.topcaption.caption_right {
    	padding: 10px 15px 0px 15px;
	}
	
	.topTrustWrap .caption_right {
		text-align: right;
	}
	
	
	/*  */
	
	.topdownloadWrap01 {
		margin: auto;
		width: auto;
    padding: 10px 15px;
	}
	
	.topdownloadWrap01 .downloadSpan01 {
		background-size: 100%;
		font-size: 30px;
    	height: auto;
    	padding: 60px 15px;
		background-image:none;
	}
	.topdownloadWrap01 .topText01 {
		font-size: 18px;
		margin-bottom: 20px;
	}
	
	/* 課題 */
	
	.topSubjectWrap {
    	padding-bottom: 200px;
	}
	.topSubjectWrap .topImg02 img {
    	bottom: -236px;
	}
	
	.topSubjectWrap h3 {
		font-size: 25px;
		margin-bottom: 30px;
	}
	.topSubjectWrap ul li {
		font-size: 16px;
		margin-bottom: 10px;
	}
	.topSubjectWrap ul {
    	padding-right: 0px;
	}
	
	.topSubjectWrap .topImg01 img {
    	max-width: 160px;
		top: auto;
		bottom: -170px;
		margin-top: 0px;
		right: 50%;
		margin-right: -80px;
	}
	
	
	/* メリット */
	
	.topMerittWrap h3 {
    	font-size: 25px;
	}
	.topMerittWrap h3 img {
		max-width:100%;
	}
	
	.topMerittWrap ul li .topSpan01 {
    	width: 106px;
	}
	.topMerittWrap ul li .topSpan02 {
		font-size: 15px;
	}
	.topMerittWrap ul li .topSpan01 .span04 {
    	font-size: 26px;
	}
	
	.topMerittWrap .topImg02 img {
		max-width: 200px;
	}
	
	
	
	/* 選ばれる理由 */
	
	
	.title01 {
    	font-size: 25px;
	}
	
	.WhiteWrap .number {
		width: 90px;
		margin-left: -45px;
		top: -45px;
		font-size: 17px;
	}
	.WhiteWrap .number .topSpan01 {
		font-size: 25px;
	}
	.WhiteWrap .number .child {
    	top: 12px;
	}
	
	.WhiteWrap {
		padding: 70px 15px 20px 15px;
	}
	.topReasonWrap .Reasonarea01 .topSpan01 {
		font-size: 22px;
		margin-bottom: 30px;
	}
	.topReasonWrap .Reasonarea01 .topImg01 img {
		max-width: 100%;
	}
	.topReasonWrap .topReasonBox_gr .topReasonBox01, .topReasonWrap .topReasonBox_gr .topReasonBox02 {
		display: block;
		width: 100%;
	}
	.topReasonWrap .topReasonBox_gr {
		padding: 20px 15px;
	}

	.topReasonWrap .topReasonBox_gr .topReasonTb01 .topReasonBox02 {
		width: 100%;
		box-sizing: border-box;
		margin-top: 20px;
		padding: 15px;
	}
	.topReasonWrap .topReasonBox_gr .topReasonTb01 {
		margin-bottom: 0px;
	}
	
	.topReasonWrap .topReasonBox_gr h4 .topSpan01 {
		display: block;
		font-size: 20px;
		margin-top: 10px;
	}
	.topReasonWrap .topReasonBox_gr .topReasonTb02 {
    	padding: 20px 15px;
	}
	.topReasonWrap .topReasonBox_gr .topReasonTb02 .topReasonBox02 img {
		max-width: 100%;
    	padding: 0px;
	}
	.topReasonWrap .topReasonBox_gr .topReasonBox01, .topReasonWrap .topReasonBox_gr .topReasonBox02 {
		box-sizing: border-box;
		padding-right: 0;
	}
	
	.topReasonBox01 {
		padding-left: 0px;
	}
	.topReasonBox02 {
		padding: 0px;
	}

	.topReasonWrap .topReasonBox_gr .topReasonBox01 ul {
		padding-left: 25px;
	}
	
	/* 理由2 */
	
	.topReasonWrap .topReason02 .topReasonTb01 {
		display: block;
	}
	.topReasonWrap .topReason02 .topReasonBox01, .topReasonWrap .topReason02 .topReasonBox03 {
		width: auto;
		display: block;
    	padding: 15px;
	}
	.topReasonWrap .topReason02 .topReasonBox01 img, .topReasonWrap .topReason02 .topReasonBox03 img {
		max-width: 100%;
	}
	.topReasonWrap .topReason02 .topReasonBox01:after {
		background: url(../img/top_reasonar05_2.png)center;
		background-size: cover;
		height: 50px;
		width: 100px;
		left: 50%;
		top: auto;
		bottom: -48px;
		margin-left: -50px;
	}
	.topReasonTb01 {
		margin-bottom: 0px;
	}
	
	.topReasonWrap .topReason02 h4 {
    	font-size: 20px;
	}
	
	
	/* 理由3 */
	
	.topReasonWrap .topReason03 .topReasonBox01 {
		padding: 15px;
	}
	
	.topReasonWrap .topReason03 .topReasonBox01 img {
		max-width: 100%;
		margin-top: 20px;
	}
	.topReasonWrap .topReason03 .topReasonBox01 .topSpan01 {
		font-size: 16px;
	}
	
	/* 信頼性 */
	
	.topTrustWrap .title02 {
		font-size: 25px;
		line-height: 44px;
		margin-bottom: 30px;
	}
	
	.topPlanWrap {
    	padding: 30px 0px;
	}

	.topPlanWrap .WhiteWrap {
		margin-top: 0;
	}
	.topPlanWrap .WhiteWrap {
		padding: 15px;
	}
	
	
	
	/*-------------資料ダウンロード---------------*/
	.topDownloadWrap .topDownloadArea {
    	width: 100%;
	}
	.topDownloadWrap .topDownloadArea:nth-child(2n) {
		margin-left: 0%;
		margin-top: 20px;
	}
	.topDownloadWrap .topDownloadArea .topSpan01 {
		font-size: 20px;
		margin-bottom: 15px;
	}
	
	.topDownloadWrap .topDownloadArea .btn_effect a span {
		margin-right: 0px;
	}
	.topDownloadWrap .topDownloadArea .contactBtn04Form button {
    	border: 2px solid #e98c1a;
	}
	.topDownloadWrap .topDownloadArea .contactBtn04Form:hover button {
		color: #e98c1a;
	}
	.topDownloadWrap .topDownloadArea .contactBtn04Form {
		width: 80%;
	}
	.topDownloadWrap .contactBtn04Form button {
		padding: 20px 0px;
	}

	
	
	

	
}



/* -------------------------------------------------------------------- 
 footer
-------------------------------------------------------------------- */

/*.pagetopButton {
	display: none;
	position: fixed;
	bottom: 80px;
	right: 30px;
}*/

#gfooter {
	background-color: #f2f2f2;
	padding: 32px 0px 16px 0px;
}
.footerWrap01 a:hover {	color:#cc0033;	text-decoration: none;}


.footerLogoWrap01 {
	width: 222px;
	float: left;
	margin-bottom: 12px;
}
.footerNaviWrap01 {
	float: right;
}
.footerNaviTb01 {
	display: table;
}
.footerNaviCell01 {
	display: table-cell;
	text-align: left;
	vertical-align: top;
	padding-left: 44px;
}

.footerNaviCont01 {
	margin-bottom: 20px;
}
.footerNavi01 {
	background-image: url("../img/footer_navi_line01.png");
	background-repeat: no-repeat;
	background-position: left 10px;
	background-size: 17px auto;
	padding-left: 25px;
	font-weight: bold;
}
.footerNavi01 a {
	font-size: 14px;
	line-height: 1.4em;
	font-weight: bold;
	letter-spacing: -0.05em;
}

.footerNavi01 button {
	font-size: 14px;
	line-height: 1.4em;
	font-weight: bold;
	letter-spacing: -0.05em;
	border: none;
	background-color: transparent;
	color: #4d4d4d;
	padding: 0px;
	cursor: pointer;
}
.footerWrap01 button:hover {	color:#cc0033;	text-decoration: none;}

.footerNaviUl01 {
	padding-left: 25px;
	font-size: 12px;
	line-height: 1.8em;
}

.footerImg01 {
	padding-top: 5px;
}
.footerImg01 img {
	width: 150px;
	height: auto;
	margin-bottom: 4px;
}
.footerImg02 img {
	width: 196px;
	height: auto;
}
.footerImg03 img {
	width: 145px;
	height: auto;
}
.footerImg04 img {
	width: 220px;
	height: auto;
	margin-bottom: 4px;
}

.footerNaviTb02 {
	display: table;
	margin: 22px 0px 60px 0px;;
}
.footerNaviCell0201 {
	display: table-cell;
	text-align: left;
	vertical-align: middle;
	padding-left: 70px;
	font-size: 12px;
	line-height: 1.0em;
}
.footerNaviCell02 {
	display: table-cell;
	text-align: left;
	vertical-align: middle;
	padding-left: 36px;
}

.footerCopyright01{
	font-family: 'Montserrat', sans-serif;
	font-size: 13px;
	line-height: 1.4em;
	text-align: center;
}

.all .footerCopyright01{
	text-align: left;
}


@media screen and (max-width:1023px) {

	#gfooter {
		background-color: #f2f2f2;
		padding: 32px 0px 16px 0px;
	}
	.footerWrap01 a:hover {	color:#cc0033;	text-decoration: none;}


	.footerLogoWrap01 {
		width: 222px;
		float: none;
	}
	.footerNaviWrap01 {
		float: none;
		margin-top: 20px;
	}
	.footerNaviTb01 {
		display: table;
	}
	.footerNaviCell01 {
		display: table-cell;
		text-align: left;
		vertical-align: top;
		padding-left: 35px;
	}

	.footerNaviCont01 {
		margin-bottom: 20px;
	}
	.footerNavi01 {
		background-image: url("../img/footer_navi_line01.png");
		background-repeat: no-repeat;
		background-position: left center;
		background-size: 17px auto;
		padding-left: 25px;
	}
	.footerNavi01 a {
		font-size: 14px;
		line-height: 1.4em;
		font-weight: bold;
		letter-spacing: -0.05em;
	}
	.footerNaviUl01 {
		padding-left: 25px;
		font-size: 12px;
		line-height: 1.8em;
	}

	.footerImg01 img {
		width: 150px;
		height: auto;
	}
	.footerImg02 img {
		width: 196px;
		height: auto;
	}
	.footerImg03 img {
		width: 145px;
		height: auto;
	}

	.footerNaviTb02 {
		display: table;
		margin: 22px 0px 60px 0px;;
	}
	.footerNaviCell0201 {
		display: table-cell;
		text-align: left;
		vertical-align: middle;
		padding-left: 20px;
		font-size: 12px;
		line-height: 1.0em;
		white-space: nowrap;
	}
	.footerNaviCell02 {
		display: table-cell;
		text-align: left;
		vertical-align: middle;
		padding-left: 36px;
	}

	.footerCopyright01{
		font-family: 'Montserrat', sans-serif;
		font-size: 13px;
		line-height: 1.4em;
		text-align: center;
	}



}



/*@media screen and (max-width:768px) {*/
@media screen and (max-width:767px) {

	/*.pagetopButton {
		display: none;
		position: fixed;
		bottom: 60px;
		right: 40px;
	}*/

	#gfooter {
		background-color: #f2f2f2;
		padding: 32px 0px 16px 0px;
	}
	.footerWrap01 a:hover {	color:#cc0033;	text-decoration: none;}


	.footerLogoWrap01 {
		width: 222px;
		float: none;
		margin: 0px auto 30px auto;
	}
	.footerNaviWrap01 {
		float: none;
		display: block;
	}
	.footerNaviTb01 {
		display: block;
	}
	.footerNaviCell01 {
		display: block;
		text-align: left;
		vertical-align: top;
		padding-left: 0px;
	}

	.footerNaviCont01 {
		margin-bottom: 20px;
	}
	.footerNavi01 {
		background-image: url("../img/footer_navi_line01.png");
		background-repeat: no-repeat;
		background-position: left center;
		background-size: 17px auto;
		padding-left: 25px;
	}
	.footerNavi01 a {
		font-size: 14px;
		line-height: 1.4em;
		font-weight: bold;
		letter-spacing: -0.05em;
	}
	.footerNaviUl01 {
		padding-left: 25px;
		font-size: 12px;
		line-height: 1.8em;
	}
	.footerNaviUl01 li {
		margin-top: 10px;
	}
	
	.footerImg01 img {
		width: 150px;
		height: auto;
	}
	.footerImg02 img {
		width: 196px;
		height: auto;
	}
	.footerImg03 img {
		width: 145px;
		height: auto;
	}

	.footerNaviTb02 {
		display: block;
		margin: 22px 0px 60px 0px;;
		text-align: center;
	}
	.footerNaviCell0201 {
		display: block;
		text-align: center;
		vertical-align: middle;
		padding-left: 0px;
		font-size: 16px;
		line-height: 1.0em;
		margin-bottom: 20px;
	}
	.footerNaviCell02 {
		display: block;
		text-align: center;
		vertical-align: middle;
		padding-left: 0px;
		margin-top: 12px;
	}

	.footerCopyright01{
		font-family: 'Montserrat', sans-serif;
		font-size: 13px;
		line-height: 1.4em;
		text-align: center;
		padding: 0px 10px;
	}



}


/* -------------------------------------------------------------------- 
 
-------------------------------------------------------------------- */

.footerNaviTb02 p {
	font-size: 11px;
	line-height: 1.4em;
	text-align: center;
}


@media screen and (max-width:1023px) {

	.footerNaviTb02 p {
		font-size: 10px;
		line-height: 1.4em;
		text-align: center;
	}

}


@media screen and (max-width:767px) {

	.footerNaviTb02 p {
		font-size: 11px;
		line-height: 1.4em;
		text-align: center;
	}

}



/* -------------------------------------------------------------------- 
 
-------------------------------------------------------------------- */

.footerCopyright02 li {
	font-family: 'Montserrat', sans-serif;
	font-size: 13px;
	line-height: 1.4em;
	text-indent: -1em;
	padding-left: 1em;
}


@media screen and (max-width:1023px) {

.footerCopyright02 li {
	font-family: 'Montserrat', sans-serif;
	font-size: 13px;
	line-height: 1.4em;
	text-indent: -1em;
	padding-left: 1em;
}


}


@media screen and (max-width:767px) {

.footerCopyright02 li {
	font-family: 'Montserrat', sans-serif;
	font-size: 13px;
	line-height: 1.4em;
	text-indent: -1em;
	padding-left: 1em;
}


}


/*-------------------------------------------------*/

.swpHeaderLink01 button {
	display: inline-block;
	background-image: url("../img/swp_top_sec_btn_icon01.png");
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 24px auto;
	padding: 10px 25px 10px 32px;
	background-color: transparent;
	border: none;
	font-size: 13px;
	line-height: 1.5em;
	font-family: 'NotoSansCJKjp', Sans-Serif;
}

.swpTopNewsWrap01 {
	display: table;
	box-sizing: border-box;
	width: 100%;
	border: 1px solid #c9c9c9;
	-moz-border-radius: 45px;
	-webkit-border-radius: 45px;
	-o-border-radius: 45px;
	-ms-border-radius: 45px;
	border-radius: 45px;
	margin: 45px 0px 45px 0px;
}
.swpTopNewsWrap01 .cell01 {
	display: table-cell;
	text-align: left;
	vertical-align: top;
	font-size: 20px;
	line-height: 1.75em;
	font-weight: bold;
	padding: 38px 15px 38px 70px;
	width: 130px;
}
.swpTopNewsWrap01 .cell02 {
	display: table-cell;
	text-align: left;
	vertical-align: top;
	font-size: 14px;
	line-height: 1.72em;
	padding: 20px 70px 20px 0px;
}

.topNewsUl01 li {
	padding: 10px 0px;
}

.topNewsUl01 li a {
	display: table;
}
.topNewsUl01 li .liCell01 {
	display: table-cell;
	text-align: left;
	vertical-align: top;
	width: 125px;
}
.topNewsUl01 li .liCell02 {
	display: table-cell;
	text-align: left;
	vertical-align: top;
}

.topNewsIcon01 {
	color: #ffffff;
	font-size: 14px;
	line-height: 2.0em;
	display: inline-block;
	text-align: center;
	box-sizing: border-box;
	width: 108px;
	background-color: #f48626;
}
.topNewsIcon02 {
	color: #ffffff;
	font-size: 14px;
	line-height: 2.0em;
	display: inline-block;
	text-align: center;
	box-sizing: border-box;
	width: 108px;
	background-color: #53a2cf;
}
.topNewsIcon03 {
	color: #ffffff;
	font-size: 14px;
	line-height: 2.0em;
	display: inline-block;
	text-align: center;
	box-sizing: border-box;
	width: 108px;
	background-color: #6ab07d;
}

.topDownloadArea.topBoxNew02 {
	display: table;
	width: 100%;
}

.topDownloadArea.topBoxNew01 {
	display: table;
	width: 100%;
	/*padding: 0px;*/
}
/*.topDownloadArea.topBoxNew01 .topDownloadBox img {
	width: 135px;
	height: auto;
}
.topDownloadArea.topBoxNew01 .topDownloadBox {
	padding-right: 45px;
}
*/
.topContButton01 {
	cursor: pointer;
	border: none;
	padding: 0px;
	background-color: transparent;
}

.topFormWrapInBlock {
	display: inline-block;
	vertical-align: top;
	width: 48%;
}
.topFormWrapInBlock .topContButton01 {
	width: 100%;
}





@media screen and (max-width:1023px) {


	.swpHeaderLink01 button {
		display: inline-block;
		background-image: url("../img/swp_top_sec_btn_icon01.png");
		background-repeat: no-repeat;
		background-position: left center;
		background-size: 24px auto;
		padding: 10px 25px 10px 32px;
		background-color: transparent;
		border: none;
	}

	.swpTopNewsWrap01 {
		display: table;
		box-sizing: border-box;
		width: 100%;
		border: 1px solid #c9c9c9;
		-moz-border-radius: 45px;
		-webkit-border-radius: 45px;
		-o-border-radius: 45px;
		-ms-border-radius: 45px;
		border-radius: 45px;
		margin: 45px 0px 45px 0px;
	}
	.swpTopNewsWrap01 .cell01 {
		display: table-cell;
		text-align: left;
		vertical-align: top;
		font-size: 20px;
		line-height: 1.75em;
		font-weight: bold;
		padding: 38px 15px 38px 70px;
		width: 130px;
	}
	.swpTopNewsWrap01 .cell02 {
		display: table-cell;
		text-align: left;
		vertical-align: top;
		font-size: 14px;
		line-height: 1.72em;
		padding: 20px 70px 20px 0px;
	}

	.topNewsUl01 li {
		padding: 10px 0px;
	}

	.topNewsUl01 li a {
		display: table;
	}
	.topNewsUl01 li .liCell01 {
		display: table-cell;
		text-align: left;
		vertical-align: top;
		width: 125px;
	}
	.topNewsUl01 li .liCell02 {
		display: table-cell;
		text-align: left;
		vertical-align: top;
	}

	.topNewsIcon01 {
		color: #ffffff;
		font-size: 14px;
		line-height: 2.0em;
		display: inline-block;
		text-align: center;
		box-sizing: border-box;
		width: 108px;
		background-color: #f48626;
	}
	.topNewsIcon02 {
		color: #ffffff;
		font-size: 14px;
		line-height: 2.0em;
		display: inline-block;
		text-align: center;
		box-sizing: border-box;
		width: 108px;
		background-color: #53a2cf;
	}


	.topDownloadArea.topBoxNew02 {
		display: block;
		width: 100%;
		padding: 58px 25px 10px;
		box-sizing: border-box;
		height: 384px;
	}

	.topDownloadArea.topBoxNew01 {
		display: table;
		width: 100%;
		/*padding: 0px;*/
	}
	/*.topDownloadArea.topBoxNew01 .topDownloadBox img {
		width: 135px;
		height: auto;
	}
	.topDownloadArea.topBoxNew01 .topDownloadBox {
		padding-right: 45px;
	}
	*/
	.topContButton01 {
		cursor: pointer;
		border: none;
		padding: 0px;
		background-color: transparent;
		display: table;
		margin: auto;
	}

	.topFormWrapInBlock {
		display: inline-block;
		vertical-align: top;
	}


}


@media screen and (max-width:767px) {


	.swpHeaderLink01 button {
		display: inline-block;
		background-image: url("../img/swp_top_sec_btn_icon01.png");
		background-repeat: no-repeat;
		background-position: left center;
		background-size: 24px auto;
		padding: 10px 25px 10px 32px;
		background-color: transparent;
		border: none;
	}

	.swpTopNewsWrap01 {
		display: block;
		box-sizing: border-box;
		width: 100%;
		border: 1px solid #c9c9c9;
		-moz-border-radius: 45px;
		-webkit-border-radius: 45px;
		-o-border-radius: 45px;
		-ms-border-radius: 45px;
		border-radius: 45px;
		margin: 30px 0px 30px 0px;
	}
	.swpTopNewsWrap01 .cell01 {
		display: block;
		text-align: center;
		vertical-align: top;
		font-size: 20px;
		line-height: 1.4em;
		font-weight: bold;
		padding: 15px 20px 5px 20px;
		width: auto;
	}
	.swpTopNewsWrap01 .cell02 {
		display: block;
		text-align: left;
		vertical-align: top;
		font-size: 14px;
		line-height: 1.72em;
		padding: 0px 20px 20px 20px;
	}

	.topNewsUl01 li {
		padding: 10px 0px;
	}

	.topNewsUl01 li a {
		display: block;
	}
	.topNewsUl01 li .liCell01 {
		display: block;
		text-align: left;
		vertical-align: top;
		width: auto;
	}
	.topNewsUl01 li .liCell02 {
		display: block;
		text-align: left;
		vertical-align: top;
		padding-top: 10px;
	}

	.topNewsIcon01 {
		color: #ffffff;
		font-size: 14px;
		line-height: 2.0em;
		display: inline-block;
		text-align: center;
		box-sizing: border-box;
		width: 108px;
		background-color: #f48626;
	}
	.topNewsIcon02 {
		color: #ffffff;
		font-size: 14px;
		line-height: 2.0em;
		display: inline-block;
		text-align: center;
		box-sizing: border-box;
		width: 108px;
		background-color: #53a2cf;
	}


	.topDownloadArea.topBoxNew02 {
		display: table;
		width: 100%;
		padding: 58px 0px;
	}

	.topDownloadArea.topBoxNew01 {
		display: table;
		width: 100%;
		/*padding: 0px;*/
	}
	/*.topDownloadArea.topBoxNew01 .topDownloadBox img {
		width: 135px;
		height: auto;
	}
	.topDownloadArea.topBoxNew01 .topDownloadBox {
		padding-right: 45px;
	}
	*/
	.topContButton01 {
		cursor: pointer;
		border: none;
		padding: 0px;
		background-color: transparent;
		width: 100%;
	}

	.topFormWrapInBlock {
		display: block;
		width: 100%;
	}


}


/* -------------------------------------------------------------------- 
 お役立ち資料
-------------------------------------------------------------------- */

.downMainWrap {
	background-image: url("../img/download-list/download_main_bg01.jpg");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}

.downMainTb01 {
	display: table;
	margin: auto;
	width: 1100px;
}
.downMainTb01Cell01 {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	height: 80px;
}
.downH201 {
	color: #ffffff;
	font-size: 34px;
	line-height: 1.2em;
	font-weight: bold;
	margin-bottom: 6px;
}
.downMainText01 {
	color: #ffffff;
	font-size: 21px;
	line-height: 1.2em;
	font-weight: 500;
}

/*--------------*/

.downLineupWrap {
	padding: 30px;
	font-size: 16px;
	font-weight: bold;
}

/*--------------*/

.downAncWrap {
	display: inline-block;
	margin: 40px auto 0px auto;
	width: 1200px;
}
.downAncWrap ul {}
.downAncWrap li {
	width: 188px;
	margin-right: 0px;
	margin-bottom: 10px;
	float: left;
}
.downAncWrap li:nth-child(4n) {
	margin-right: 0px;
}

/*--------------*/

.downBlockWrap {
}

.downH301 {
	background-color: #0095d9;
	text-align: center;
	color: white;
	font-size: 20px;
	line-height: 1.2em;
	font-weight: bold;
	padding: 5px 10px 5px 10px;
}

.downH302 {
	background-color: #e0f3f8;
	text-align: center;
	color: #0095d9;
	font-size: 28px;
	line-height: 1.2em;
	font-weight: bold;
	padding: 10px 20px 10px 20px;
	margin-bottom: 50px;
}

.downH303 {
	background-color: #00a381;
	text-align: center;
	color: white;
	font-size: 20px;
	line-height: 1.2em;
	font-weight: bold;
	padding: 5px 10px 5px 10px;
}

.downH304 {
	background-color: #dbfde3;
	text-align: center;
	color: #00a381;
	font-size: 28px;
	line-height: 1.2em;
	font-weight: bold;
	padding: 10px 20px 10px 20px;
	margin-bottom: 50px;
}

.downH305 {
	background-color: #bf1e33;
	text-align: center;
	color: white;
	font-size: 20px;
	line-height: 1.2em;
	font-weight: bold;
	padding: 5px 10px 5px 10px;
}

.downH306 {
	background-color: #fdede4;
	text-align: center;
	color: #bf1e33;
	font-size: 28px;
	line-height: 1.2em;
	font-weight: bold;
	padding: 10px 20px 10px 20px;
	margin-bottom: 50px;
}
.downH307 {
	background-color: #bdddff;
	text-align: center;
	color: #082162;
	font-size: 28px;
	line-height: 1.2em;
	font-weight: bold;
	padding: 22px 20px 22px 20px;
	margin-bottom: 50px;
}

.downBlockIn01 {
	width: 1100px;
	margin: auto;
}

.downBox01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.downBox01 li {
	box-sizing: border-box;
	width: 250px;
	text-align: left;
	/*float: left;*/
	margin-right: 30px;
	margin-bottom: 30px;
	background-color: #f7f7f7;
	padding: 15px 15px 20px 15px;
}
.downBox01 li:nth-child(4n) {
	margin-right: 0px;
}

.downH401 {
	border-left: 5px solid #51417d;
	padding-left: 12px;
	font-size: 16px;
	line-height: 1.3em;
	font-weight: bold;
	margin-bottom: 20px;
	min-height: 64px;
}

.downH402 {
	border-left: 5px solid 	#f7f7f7;
	padding-left: 12px;
	font-size: 16px;
	line-height: 1.3em;
	font-weight: bold;
	margin-bottom: 20px;
	min-height: 64px;
}


.downImg01 {
	margin-bottom: 18px;
        background:#111;
	display:block;
        overflow:hidden; 
}

.downImg01 a img {
	 overflow:hidden; 
}

.downImg01 a:hover{ 
	transform:scale(1.2);
	transition:0.3s;
        width: 100%;
}


.downImg01 {
	margin-bottom: 18px;
}
.downText01 {
	font-size: 14px;
	line-height: 1.5em;
	margin-bottom: 18px;
	min-height: 115px;
}
.downText02 {
	font-size: 14px;
	line-height: 1.5em;
	margin-bottom: 18px;
	min-height: 70px;
}

/*----------------------*/

.downImg01 button {
	border: none;
	padding: 0px;
	cursor: pointer;
	width: 100%;
}



@media screen and (max-width:1023px) {


	.downMainWrap {
		background-image: url("../img/download-list/download_main_bg01.jpg");
		background-repeat: no-repeat;
		background-position: center center;
		background-size: cover;
	}

	.downMainTb01 {
		display: table;
		margin: auto;
		width: 100%;
	}
	.downMainTb01Cell01 {
		display: table-cell;
		text-align: center;
		vertical-align: middle;
		height: 80px;
	}
	.downH201 {
		color: #ffffff;
		font-size: 34px;
		line-height: 1.2em;
		font-weight: bold;
		margin-bottom: 6px;
	}
	.downMainText01 {
		color: #ffffff;
		font-size: 21px;
		line-height: 1.2em;
		font-weight: 500;
	}

	/*--------------*/

	.downLineupWrap {
		padding-bottom: 30px;
	}

	/*--------------*/
	.downAncWrap {
		display: table;
		margin: 50px auto 40px auto;
		padding: 0px 20px;
		width: 90%;

	}
	.downAncWrap ul {}
	.downAncWrap li {
		width: 31.3%;
		margin-right: 2%;
		float: left;
	}
	.downAncWrap li:nth-child(3n) {
		margin-right: 0px;
	}
	.downAncWrap li:nth-child(4n) {
		margin-right: 2%;
	}

	/*--------------*/

	.downBlockWrap {
	}
	
       .downH301 {
	background-color: #0095d9;
	text-align: center;
	color: white;
	font-size: 20px;
	line-height: 1.2em;
	font-weight: bold;
	padding: 5px 10px 5px 10px;
}
        
        

       
	.downBlockIn01 {
		width: auto;
		margin: auto;
		padding: 0px 40px;
	}

	.downBox01 {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
				flex-wrap: wrap;
	}
	.downBox01 li {
		box-sizing: border-box;
		width: 31.3%;
		text-align: left;
		/*float: left;*/
		margin-right: 2%;
		margin-bottom: 30px;
		background-color: #f7f7f7;
		padding: 15px 15px 20px 15px;
	}
	.downBox01 li:nth-child(3n) {
		margin-right: 0px;
	}
	.downBox01 li:nth-child(4n) {
		margin-right: 2%;
	}

	.downH401 {
		border-left: 5px solid #51417d;
                padding-left: 12px;
		font-size: 16px;
		line-height: 1.3em;
		font-weight: bold;
		margin-bottom: 20px;
	}

        .downH402 {
		border-left: 5px solid #B22D35;
		padding-left: 12px;
		font-size: 16px;
		line-height: 1.3em;
		font-weight: bold;
		margin-bottom: 20px;
	}
	.downImg01 {
		margin-bottom: 18px;
	}
	.downText01 {
		font-size: 14px;
		line-height: 1.5em;
		margin-bottom: 18px;
	}




}


@media screen and (max-width:767px) {


	.downMainWrap {
		background-image: url("../img/download-list/download_main_bg01_sp.jpg");
		background-repeat: no-repeat;
		background-position: center center;
		background-size: cover;
	}

	.downMainTb01 {
		display: table;
		margin: auto;
		width: 100%;
	}
	.downMainTb01Cell01 {
		display: table-cell;
		text-align: center;
		vertical-align: middle;
		height: 80px;
	}
	.downH201 {
		color: #ffffff;
		font-size: 23px;
		line-height: 1.2em;
		font-weight: bold;
		margin-bottom: 6px;
	}
	.downMainText01 {
		color: #ffffff;
		font-size: 14px;
		line-height: 1.2em;
		font-weight: 500;
	}

	/*--------------*/

	.downLineupWrap {
		padding-bottom: 30px;
	}

	/*--------------*/

	.downAncWrap {
		display: block;
		margin: 20px auto 20px auto;
		padding: 0px 15px;
	}
	.downAncWrap ul {}
	.downAncWrap li {
		width: 100%;
		margin-right: 0px;
		float: none;
		margin-bottom: 10px;
	}
	.downAncWrap li:last-child {
		margin-right: 0px;
	}

	/*--------------*/

	.downBlockWrap {
		padding-bottom: 30px;
	}
	
        
        .downH301 {
	background-color: #0095d9;
	text-align: center;
	color: white;
	font-size: 20px;
	line-height: 1.2em;
	font-weight: bold;
	padding: 5px 10px 5px 10px;
}

	.downBlockIn01 {
		width: auto;
		margin: auto;
	}

	.downBox01 {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
				flex-wrap: wrap;
	}
	.downBox01 li {
		box-sizing: border-box;
		width: 100%;
		text-align: left;
		/*float: left;*/
		margin-right: 0px;
		margin-bottom: 30px;
		background-color: #f7f7f7;
		padding: 15px 20px 20px 20px;
	}
	.downBox01 li:nth-child(4n) {
		margin-right: 0px;
	}

	.downH401 {
		border-left: 6px solid #51417d;
		padding-left: 12px;
		font-size: 18px;
		line-height: 1.3em;
		font-weight: bold;
		margin-bottom: 20px;
		min-height: 10px;
	}
	.downImg01 {
		margin-bottom: 18px;
		text-align: center;
	}
	.downText01 {
		font-size: 18px;
		line-height: 1.5em;
		margin-bottom: 18px;
		min-height: 10px;
	}




}




/*-----*/
