
body{
	font-family: 'Noto Sans JP', sans-serif;
}

.pcOFF{
	display:none;
}
.spOFF{
	display:block;
}
@media screen and (max-width: 767px) { /* Smartphone */
	.spOFF{
		display:none;
	}
}
/* -- */
.titObi{
	background:#183073;
	margin-bottom:100px;
	position:relative;
	padding:40px 0 60px;
}
.titObi:after{
	content:"";
	width:100%;
	height:29px;
	background:url(../img/arrow01.png) no-repeat center top;
	position:absolute;
	bottom:-29px;
}
.titObi span{
	display:block;
	max-width: 1240px;
	width:100%;
	margin:0 auto;
	text-align:center;
	color:#fff;
	font-size:42px;
	line-height:1.6;
}

.lead{
	font-size:16px;
	text-align:center;
	color:#183073;
	margin-bottom:30px;
	font-weight:bold;
}
@media screen and (max-width: 767px) { /* Smartphone */
	.titObi{
		padding:30px 0;
		margin-bottom:60px;
	}
	.titObi:after{
	}
	.titObi span{
		font-size:23px;
		line-height:1.6;
	}
}

/*======================================================================*
 *  [ mainImg ] 
 *======================================================================*/

.mainImg {
	background: url(../img/mainVisual.jpg) center center;
	background-size: cover;
	color: #fff;
}
.mainImg .inner {
	max-width: 1240px;
	width:100%;
	margin: 0 auto;
	padding: 50px 20px 25%;
	position:relative;
}
.mainImg * {
	margin: 0;
}
.mainImg p {
	margin-bottom:30px;
}
.mainImg p img {
	max-width: 60%;
}
.mainImg h1 {
}
.mainImg h1 img {
	max-width: 40%;
}
.mainImg .mainImgBatch{
	position:absolute;
	right:30px;
	bottom:30px;
}
.mainImg .mainImgBatch:hover img{
    opacity:100 !important;
	filter: brightness(120%);
}

@media screen and (max-width: 767px) { /* Smartphone */
	.mainImg{
		background:#183073 url(../img/mainVisual_sp.jpg) no-repeat center top;
		background-size: cover;
		width:auto;
		padding:0 20px 0%;
		overflow:hidden;
	}
	.mainImg .inner{
		height:auto;
		position:relative;
		padding:30px 0 0;
	}	
	.mainImg p {
		text-align:center;
		padding-bottom:100%;
	}
	.mainImg p img {
		max-width: 305px !important;
	}
	.mainImg h1 .pcOFF{
		display:block;
		position:absolute;
		bottom:20px;
		left:0;
		right:0;
		margin:auto;
	}
	.mainImg h1 img {
		max-width:298px !important;
	}
}

/*======================================================================*
 *  [ safeBox ] 
 *======================================================================*/
.safeBox{
	margin-bottom:100px;
}
.safeBox .inner{
	width:100%;
	max-width:1200px;
	margin:0 auto;
}
.safeBox__tit{
	font-size:24px;
	font-weight:bold;
	line-height:160%;
	margin-bottom:105px;
	text-align:center;
}
.safeBox__tit span{
	display:inline-block;
	background:url(../img/linemarker.png) repeat-x left bottom -5px;
}
.safeBox__lst{
}
.safeBox__lst__item{
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
	margin-bottom:80px;
}
.safeBox__pic{
	flex-basis:50%
}
.safeBox__pic img{
	width:100%;
	height:auto;
	vertical-align:bottom;
}
.safeBox__cnt{
	flex-basis:50%;
}
.safeBox__cnt h3{
	font-size:32px;
	font-weight:bold;
	color:#53AA3E;
	line-height:140%;
	margin-bottom:30px;
	background:url(../img/safe_lbl01.png) no-repeat left 0;
	padding-top:10px;
	padding-left:120px;
	padding-bottom:10px;
}
.safeBox__cnt p{
	font-size:16px;
	line-height:150%;
	font-size: 16px;
	letter-spacing: 0.04em;
	line-height: 27px;
}
.safeBox__cnt p span{
	font-size:14px;
}
.safeBox__lst__item:nth-child(1) h3 { background-image:url(../img/safe_lbl01.png); }
.safeBox__lst__item:nth-child(2) h3 { background-image:url(../img/safe_lbl02.png); }
.safeBox__lst__item:nth-child(3) h3 { background-image:url(../img/safe_lbl03.png); }
.safeBox__lst__item:nth-child(4) h3 { background-image:url(../img/safe_lbl04.png); }

.safeBox__lst__item:nth-child(odd) .safeBox__pic{ order: 2}
.safeBox__lst__item:nth-child(odd) .safeBox__cnt{ order: 1 }

.safeBox__lst__item:nth-child(odd)  .safeBox__cnt{ padding-right:8%; }
.safeBox__lst__item:nth-child(even) .safeBox__cnt{ padding-left:8%; }

@media screen and (max-width: 1280px) { /* Smartphone */
	.safeBox .inner{
		width:calc(100% - 40px);
	}
}

@media screen and (max-width: 767px) { /* Smartphone */
	.safeBox__tit .pcOFF{
		display:inline-block;
	}
	.safeBox__lst{
	}
	.safeBox__lst__item{
		margin-bottom:80px;
	}
	.safeBox__pic{
		flex-basis:100%;
	}
	.safeBox__pic img{
		width:100%;
		height:auto;
		vertical-align:bottom;
	}
	.safeBox__cnt{
		flex-basis:100%;
		padding:0 !important;
	}
	.safeBox__cnt h3{
		line-height:140%;
		padding:0;
		padding-top:120px;
		background-position:center top;
		background-size:105px 105px;
		text-align:center;
	}
	.safeBox__cnt p{
		font-size:16px;
		line-height:150%;
	}
	.safeBox__lst__item .safeBox__pic{ order: 2}
	.safeBox__lst__item .safeBox__cnt{ order: 1 }
}
/*======================================================================*
 *  [ voiceBox ] 
 *======================================================================*/
.voiceBox{
	background:url(../img/pattern01.png) repeat;
	padding-bottom:40px;
}

.voiceBoxTit{
	background: url(../img/voiceMain.jpg) no-repeat center center;
	background-size: cover;
	color: #fff;
	margin-bottom:80px;
	display:flex;
	padding:10% 0;
	justify-content:space-between;
	flex-wrap:wrap;
	align-items: center;  /* 子要素をflexboxにより中央に配置する */
	height:auto;
}
.voiceBoxTit div{
	max-width: 1240px;
	width:100%;
	margin: 0 auto;
}
.voiceBoxTit div h2{
	text-align:center;
	font-size:42px;
	font-weight:bold;
}
.voiceBoxTit div p{
	font-size:16px;
	font-weight:bold;
	text-align:center;
}
.voiceBox .inner{
	width:100%;
	max-width:785px;
	margin:0 auto;
}
.voiceBox__lst{
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
}
.voiceBox__lst li{
	flex-basis:45%;
	margin-bottom:30px;
	list-style:none;
}
.voiceBox__lst__msg{
	background:#fff;
	border-radius:15px;
	padding:15px;
	font-size:15px;
	min-height:180px;
	margin-bottom:20px;
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
	align-items: center;  /* 子要素をflexboxにより中央に配置する */
	position:relative;
}
.voiceBox__lst__msg:after{
	content:"";
	width:100%;
	height:23px;
	background:url(../img/arrow02.png) no-repeat 80px  top;
	position:absolute;
	bottom:-23px;
	left:0;
}
.voiceBox__lst__cnt{
}
.voiceBox__lst__cnt span{
	display:block;
}
.voiceBox__lst__cnt span:nth-child(1){
	text-align:center;
	margin-bottom:15px;
}
.voiceBox__lst__cnt span:nth-child(2){
	text-align:center;
	font-size:24px;
	font-weight:bold;
	color:#183073;
}
.voiceBox__lst__cnt span:nth-child(1) img{

}


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

	.voiceBoxTit{
		background: url(../img/voiceMain_sp.jpg) no-repeat center center;
		background-size:cover;
		width:auto;
		padding:40px 20px 0;
	}
	.voiceBoxTit div{
		height:auto;
		margin-bottom:30px;
	}
	.voiceBoxTit .pcOFF{
		display:inline-block;
	}

	.voiceBox .inner{
		width:calc(100% - 40px);
	}
	.voiceBox__lst{
	}
	.voiceBox__lst li{
		flex-basis:100%;
	}
	.voiceBoxTit__txt{
		padding-bottom:60%;
	}
}

/*======================================================================*
 *  [ modelBox ] 
 *======================================================================*/
.modelBox{
	margin-bottom:50px;
}
.modelBox .inner{
	width:100%;
	max-width:895px;
	margin:0 auto;
}
.modelBox__tit{
	color:#53AA3E;
	text-align:center;
	font-size:36px;
	margin-bottom:30px;
}
.modelBox__tit span{
	display:inline-block;
	background:url(../img/linemarker.png) repeat-x left bottom -5px;
}
.modelBox__lst{
	width:100%;
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
}
.modelBox__lst li{
	flex-basis:44.6%;
	list-style:none;
}
.modelBox__lst__pic{
	text-align:center;
	margin-bottom:20px;
}
.modelBox__lst__pic img{
}
.modelBox__lst__tit{
	font-size:43px;
	font-weight:bold;
	color:#183073;
	margin-bottom:15px;
	font-family: 'Roboto Condensed', sans-serif;
}
.modelBox__lst__txt{
	font-size:16px;
}
@media screen and (max-width: 767px) { /* Smartphone */

	.modelBox .lead .pcOFF{
		display:inline-block;
	}
	.modelBox .inner{
		width:calc(100% - 40px);
	}
	.modelBox__tit{
		font-size:27px;
	}
	.modelBox__lst{
	}
	.modelBox__lst li{
		flex-basis:100%;
		margin-bottom:75px;
	}
	.modelBox__lst__pic{
		margin:0;
	}
	.modelBox__lst__tit{
		margin-bottom:0;
	}
	.modelBox__lst__txt{
		margin:0;
	}
} 
@media screen and (max-width: 365px) { /* Smartphone */
	.modelBox__tit{
		font-size:25px;
	}
}
/*======================================================================*
 *  [ flowBox ] 
 *======================================================================*/
.flowBox{
}
.flowBox .inner{
}
.flowBox .lead{
	margin-bottom:50px;
}
.flowBox__lst{
	width:100%;
	max-width:1200px;
	margin:0 auto 100px;
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
}
.flowBox__lst__item{
	flex-basis:25%;
	list-style:none;
	padding:0 13px;
	border-right:solid 1px #E3E3E3
}
.flowBox__lst__item:last-child{
	border:none;
}
.flowBox__lst__lbl{
	border-radius:100px;
	background:#53AA3E;
	padding:5px;
	text-align:center;
	font-size:16px;
	font-weight:bold;
	color:#fff;
}
.flowBox__lst__tit{
	text-align:center;
	font-size:28px;
	font-weight:bold;
	color:#183073;
	margin-bottom:20px;
}
.flowBox__lst__pic{
	text-align:center;
}
.flowBox__lst__pic img{
}

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

	.flowBox .lead .pcOFF{
		display:inline-block;
	}
	.flowBox .inner{
		width:calc(100% - 40px);
		margin:0 auto;
	}
	.flowBox__lst{
		width:84%;
		margin:0 auto;
	}
	.flowBox__lst__item{
		flex-basis:100%;
		border:none;
	}
}
/*======================================================================*
 *  [ registerBox ] 
 *======================================================================*/
.registerBox{
	margin-bottom:80px;
}
.registerBox__tit{
}

.registerBox__tit{
	background: url(../img/registerMain.jpg) center center;
	background-size: cover;
	color: #fff;
	margin-bottom:80px;
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
	align-items: center;  /* 子要素をflexboxにより中央に配置する */
	height:auto;
	padding:10% 0;
}
.registerBox__tit div{
	max-width: 1240px;
	width:100%;
	margin: 0 auto;
}
.registerBox__tit h2{
	padding-top:100px;
	position:relative;
	text-align:center;
	font-size:36px;
	font-weight:bold;
	margin-bottom:30px;
}
.registerBox__tit h2:before{
	content:"";
	width:100%;
	height:78px;
	position:absolute;
	left:0;
	top:0;
	background:url(../img/registerMain_icon.png) no-repeat center center;
}
.registerBox__tit a{
	display:block;
	text-align:center;

}
.registerBox__tit a:hover img{
    opacity:100 !important;
	filter: brightness(120%);
}

.registerBox .inner{
	width:100%;
	max-width:1200px;
	margin:0 auto;
}
.registerBox .lead{
	font-size:36px !important;
	text-align:center;
	margin-bottom:100px;
}
.registerBox__lst{
	width:100%;
	max-width:1000px;
	margin:0 auto;
	list-style:none;
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
}
.registerBox__lst__item{
	flex-basis:48%;
	text-align:center;
}
.registerBox__lst__item img{
	width:100%;
	max-width:488px;
	height:auto;
}

@media screen and (max-width: 1280px) { /* Smartphone */
	.registerBox .inner{
		width:calc(100% - 40px);
	}
}
@media screen and (max-width: 767px) { /* Smartphone */
	.registerBox__tit{
		background:#000 url(../img/registerMain_sp.jpg) no-repeat center center;
		background-size:cover;
		width:auto;
		padding:15% 20px;
	}
	.registerBox__tit{
		height:auto;
		margin-bottom:50px;
	}
	.registerBox__tit h2{
		font-size:28px;
	}
	.registerBox__tit h2:before{
		height:66px;
		background-size:auto 100%;
	}
	.registerBox__tit a{
	}
	.registerBox .inner{
		width:calc(100% - 40px);
		margin:0 auto;
	}
	.registerBox .lead .pcOFF{
		display:inline-block;
	}
	.registerBox .lead{
		font-size:25px !important;
	}
	.registerBox__lst__item{
		display:block;
		flex-basis:100%;
		margin-bottom:15px;
		text-align:center;
	}
	.registerBox .lead{
		margin-bottom:50px;
	}
}
@media screen and (max-width: 365px) { /* Smartphone */
	.registerBox .lead{
		font-size:23px !important;
	}
}
/*======================================================================*
 *  [ floatBanner ] 
 *======================================================================*/
@media screen and (max-width: 767px) { /* Smartphone */
	.floatBanner{
		display:block;
		margin:0;
		background:#53AA3E;
		position:fixed;
		bottom:0;
		left:0;
		width:100%;
		padding:10px 0;
	}
	.floatBanner a{
		display:block;
		width:100%;
		text-align:center;
	}
}


/*======================================================================*
 *  [ footer ] 
 *======================================================================*/
@media screen and (max-width: 767px) { /* Smartphone */
	#footer{
		margin-bottom:100px;
	}
}
