/* ----------- mv ----------- */
.mv {
	position: relative;
}
.mv_box{
	width: 100%;
	height: 672px;
	padding: 60px 0 60px;
	box-sizing: border-box;
	background: url(../img/mv_bg.png) no-repeat top center;
	background-size: cover;
	overflow: hidden;
	position: relative;
}

.mv_tableBox{
	position: relative;
	width: 1000px;
	max-width: 95%;
	height: 100%;
	margin: 0 auto;
}

.mv_content{
	display: flex;
	justify-content: flex-start;
}
.mv_content .mv_content-bj{
	text-align:left;
}
.mv_content .mv_content-bj .mv_img{
	width: 100%;
}
.mv_content .mv_content-bj .mv_img .mv_pc{
	width: 100%;
	max-width: 100%;
}

.mv_btn a{
	display: inline-block;
	width: 447px;
	font-size: 2.0rem;
	font-weight: bold;
	line-height: 1;
	background-color: #ff0000;
	color: #FFFFFF;
	text-align: center;
	padding: 20px 10px 17px;
	padding: 27px 10px 20px\0;
	letter-spacing: 4px;
	border-radius: 5px;
	border: 1px solid #ff0000;
	box-sizing: border-box;
	position: relative;
	margin-left: 124px;
}

.mv_btn a:hover{
	background-color: #FFFFFF;
	color: #ff0000;
}
.mv_btn a::after{
	content: "";
	width: 10px;
	height: 17px;
	background: url(../img/mv_img03.png);
	background-repeat: no-repeat;
	background-size: 100% 100%;
	display: inline-block;
	
	position: absolute;
	right: 25px;
	top: 0;
	bottom: 0;
	margin: auto;
	
	-webkit-transition: .3s ease-in-out;
	-moz-transition: .3s ease-in-out;
	-o-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
}
.mv_btn a:hover::after{
	background: url(../img/mv_img04.png);
	background-repeat: no-repeat;
	background-size: 100%;
}


/* ----------- reason ----------- */
.reason{
	padding: 107px 0 120px;
}

.reason-bj1{
	display: flex;
	justify-content: space-around;
	align-items: center;
}
.reason-bj1:nth-of-type(2){
	margin-top: 55px;
}
.reason-bj1:not(:nth-of-type(4)){
	margin-bottom: 37px;
}

.reason-bj1 .cont1{
	width: 100%;
	max-width: 400px;
}
.reason-bj1 .cont1 p{
	font-size: 2.2rem;
	padding: 20px 35px;
	display: inline-block;
	width: 100%;
	box-sizing: border-box;
}
.reason-bj1 .cont1 p span{
	font-weight: bold;
}
.reason-bj1 .cont1 p.bg1{
	background: url(../img/reason_bg01.png) no-repeat right center;
	background-size: cover;
}
.reason-bj1 .cont1 p.bg2{
	background: url(../img/reason_bg02.png) no-repeat right center;
	background-size: cover;
}

.reason-bj2{
	width: 58.7%;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	padding-left: 40px;
}
.reason-bj2 .tu{
	width: 100%;
	max-width: 76px;
	margin-right: 30px;
}
.reason-bj2 .tu img{
	width: 100%;
}
.reason-bj2 .zi{
	width: 100%;
}
.reason-bj2 .zi p{
	font-weight: bold;
	font-size: 2.6rem;
	padding-bottom: 5px;
	border-bottom: 6px solid #fe8300;
	line-height: 1.333;
}
.reason-bj2 .zi p span{
	font-size: 3rem;
	color: #2fafbb;
}

.reason_btn{
	padding-top: 35px;
}
.reason_btn a{
	width: 90%;
	display: block;
	max-width: 861px;
	margin: 0 auto;
}
.reason_btn a img{
	display: block;
}
.reason_btn a:hover{
	transform: scale(1.05);
}

/* ----------- flow ----------- */

.flow{
	padding: 110px 0 123px;
	background-color: #e1f6ff;
}
.flow_list{
	margin-top: 90px;
}
.flow_list>ul>li{
	background-color: #2fafbb;
	border-radius: 10px;
	position: relative;
	margin-bottom: 100px;
	z-index: 2;
}
.flow_list>ul>li:last-of-type{
	margin-bottom: 35px;
}
.flow_list>ul>li .tu img{
	width: 100%;
	max-width: 337px;
}
.flow_list>ul>li:nth-of-type(2n+1){
	padding: 0px 55px 0px 185px;
	margin-left: 200px;
}
.flow_list>ul>li:nth-of-type(2n+1) .tu{
	position: absolute;
	top: -35px;
	bottom: 0;
	left: -200px;
	margin: auto;
	max-width: 100%;
}
.flow_list>ul>li:nth-of-type(2n){
	padding: 0px 185px 0px 55px;
	margin-right: 200px;
}
.flow_list>ul>li:nth-of-type(2n) .tu{
	position: absolute;
	top: -35px;
	bottom: 0;
	right: -200px;
	margin: auto;
	max-width: 100%;
}

.flow_table{
	padding: 80px 0px 40px;
	width: 100%;
	display: table;
	position: relative;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.flow_table .point{
	position: absolute;
	left: 0;
	top: -19px;
	max-width: 100%;
}
.flow_table .point img{
	width: 100%;
	max-width: 168px;
}
.flow_inner{
	display: table-cell;
	vertical-align: middle;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
	
.flow_title{
	border-bottom: 1px solid #fff;
	padding-bottom: 10px;
}
.flow_title span{
	font-weight: bold;
	font-size: 3rem;
	color: #fff;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {

     /* IE10+ CSS styles go here */
	 .flow_title span{
	 	font-weight: bold;
	 	background-image: linear-gradient(to bottom, transparent, transparent 40%, #ffec1d 40%, #ffec1d 80%, transparent 80%, transparent 100%);
	 }

}
.flow_iList{
	margin-top: 10px;
}
.flow_iList>li{
	list-style-type: none;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	font-size: 2.4rem;
	font-weight: bold;
	color: #fff;
}

.flow_iList02>li>div:nth-child(1){
	color: #221815;
	padding-left: 0px;
	padding-right: 0px;
}

/* ----------- qa ----------- */
.qa{
	padding: 105px 0 90px;
}
.qa .part_title{
	display: flex;
	align-items: center;
	justify-content: center;
}
.qa .part_title .pn{
	display: table;
}
.qa .part_title .pn .part_titleIco{
	display: table-cell;
	vertical-align: middle;
}
.qa .part_title .pn .part_phone{
	display: table-cell;
	vertical-align: middle;
	padding-left: 22px;
}
.qa .part_title .phoneNumber{
	display: table;
	vertical-align: middle;
	margin-left: 40px;
}
.qa .part_title .phoneNumber div{
	display: table-cell;
	vertical-align: middle;
	padding-right: 40px;
}
.qa .part_title .phoneNumber div:last-of-type{
	padding-right: 0px;
}
.qa .part_title .phoneNumber div p{
	font-weight: bold;
	font-size: 2rem;
	border-radius: 5px;
	border: solid 2px #2fafbb;
	padding: 3px 15px;
	box-sizing: border-box;
	line-height: 1.4;
	text-align: center;
}
.qa .part_title .part_phone a{
	text-decoration: none;
	font-size: 7rem;
	color: #2fafbb;
	font-weight: bold;
	line-height: 1;
}
.qa .desc{
	text-align: center;
}
.qa .desc .p1{
	display: inline-block;
	margin: 0 auto;
	font-size: 2.1rem;
	font-weight: bold;
	letter-spacing: 4px;
	color: #fff;
	background-color: #fe8300;
	border-radius: 20px;
	padding: 0 10px;
	width: 100%;
	max-width: 450px;
	position: relative;
	margin: 35px 0 20px;
	box-sizing: border-box;
}
.qa .desc .p1::after{
	position: absolute;
	content: "";
	width: 30px;
	height: 16px;
	background: url(../img/qa_icon.png) no-repeat;
	right: 0;
	left: 0;
	bottom: -15px;
	margin: auto;
}
.qa .desc .p2{
	font-size: 2rem;
}

/* ----------- information ----------- */
.information{
	padding: 90px 0 80px;
	background-color: #e1f6ff;
}
.information_content{
	padding-top: 45px;
}
.information_title{
	font-size: 1.8rem;
	font-weight: bold;
	color: #221815;
	text-align: center;
}

.information_list{
	font-size: 1.8rem;
	line-height: 1.8rem;
	font-weight: bold;
	color: #221815;
}
.information_list li{
	margin: 0 auto;
	display: table;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	margin-top: 10px;
}
.information_list li div{
	display: table-cell;
	vertical-align: top;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.information_list li div:nth-child(1){
	padding-right: 10px;
}
.information_list li div:nth-child(1) img{
	display: block;
	position: relative;
	top: -3px;
	top: -6px\0;
}

.information_list li a{
	color: #221815;
}
.information_list li a:hover{
	color: #255898;
	text-decoration: underline;
}

/* contact_form */
.contact_form .part_title01{
	margin-top: 105px;
}
.contact_form .part_title h2{
	font-size: 3.5rem;
}



@media only screen and (max-width: 1024px) {
	/* ----------- mv ----------- */
	.mv_btn a {
	    max-width: 45%;
	    padding: 20px 10px 17px;
	}
	.mv_box {
	    height: 68vw;
	    padding: 4.0vw 0 4.0vw;
	}
	
	/* ----------- reason ----------- */
	.reason{
		padding: 80px 0;
	}
	.reason-bj2{
		padding-left: 20px;
	}
	.reason-bj1 .cont1{
		max-width: 350px;
	}
	.reason-bj1 .cont1 p{
		padding: 20px 20px;
	}
	
	/* ----------- flow ----------- */
	.flow{
	  padding: 80px 0; 
	}
	.flow_iList>li {
	    font-size: 2rem;
	}
	
	/* ----------- qa ----------- */
	.qa {
		padding: 80px 0;
	}
	
	/* ----------- appply ----------- */
	
	
	/* ----------- information ----------- */
	.information{
	  padding: 80px 0; 
	}
	.contact_form .part_title01 {
	    margin-top: 70px;
	}
}

@media only screen and (max-width: 1023px) {
	/* ----------- reason ----------- */
	.reason-bj1{
		flex-direction: column;
	}
	.reason-bj1:not(:nth-of-type(4)){
	    margin-bottom: 60px;
	}
	.reason-bj1 .cont1{
		width:95%;
		max-width: 600px;
	}
	.reason-bj1 .cont1 p {
	    padding: 10px 20px 25px;
	}
	.reason-bj1 .cont1 p.bg1{
		background: url(../img/reason_bg03.png) no-repeat center bottom;
		text-align: center;
	}
	.reason-bj1 .cont1 p.bg2{
		background: url(../img/reason_bg03.png) no-repeat center bottom;
		text-align: center;
	}
	.reason-bj2{
		padding-left: 0;
		width:95%;
		max-width: 600px;
		margin-top: 10px;
	}
	
	/* ----------- flow ----------- */
	.flow_list>ul>li:nth-of-type(2n+1){
		padding: 0px 30px 0px 135px;
	}
	.flow_list>ul>li:nth-of-type(2n){
		padding: 0px 160px 0px 30px;
	}
	.flow_list>ul>li .tu img{
		width: 90%;
	}
	
	/* ----------- qa ----------- */
	
	.qa .part_title .part_phone a{
		font-size: 6rem;
	}
	.qa .part_title .phoneNumber div p{
		font-size: 1.6rem;
	}
}

@media only screen and (max-width: 768px) {
	/* ----------- mv ----------- */
	
	.mv_btn a {
	    width: 40vw;
	    font-size: 2.4vw;
	    padding: 2.5vw 1.0vw 2.4vw;
	    letter-spacing: 0px;
		max-width: 100%;
	}
	
	.mv_btn a img {
	    width: 1.6vw;
	}
	.mv_btn a::after{
		width: 8px;
		height: 14px;
		right: 2.5vw;
	}
	
	/* ----------- reason ----------- */
	.reason-bj1:not(:nth-of-type(4)){
	    margin-bottom: 50px;
	}
	.reason-bj1:nth-of-type(2){
	    margin-top: 35px;
	}
	.reason_btn {
	    padding-top: 30px;
	}
	.reason-bj1 .cont1 p{
		font-size: 2rem;
	}
	.reason-bj2 .zi p{
		font-size: 2.4rem;
	}
	.reason-bj2 .zi p span{
		font-size: 2.8rem;
	}
	.reason-bj2 .tu{
		margin-right: 20px;
	}
	
	
	/* ----------- flow ----------- */
	.flow_list {
	    margin-top: 80px;
	}
	.flow_title span{
	    font-size: 2.5rem;
	}
	.flow_table{
		padding: 70px 0 30px;
	}
	.flow_table .point{
		top: -15px;
	}
	.flow_table .point img{
		width: 80%;
	}
	.flow_iList>li {
	    font-size: 1.6rem;
	}
	.flow_list>ul>li:nth-of-type(2n+1){
		padding: 0px 30px 0px 115px;
	}
	.flow_list>ul>li:nth-of-type(2n){
		padding: 0px 145px 0px 30px;
	}
	.flow_list>ul>li:nth-of-type(2n+1) .tu{
		top: -40px;
	}
	.flow_list>ul>li:nth-of-type(2n) .tu{
		top: -40px;
	}
	
	/* ----------- qa ----------- */
	.qa .desc .p1{
	    padding: 5px 10px;
		font-size: 1.8rem;
	}
	.qa .desc .p2{
	    font-size: 1.6rem;
	}
	
	/* ----------- information ----------- */
	.information {
	    
	}
	.information_content {
	    padding-top: 30px;
	}
	
	.information_title {
	    font-size: 1.6rem;
	}
	.information_list li {
	    margin-top: 8px;
	}
	.information_list {
	    font-size: 1.6rem;
	    line-height: 2.6rem;
	}
	.information_list li:nth-child(1) div:nth-child(1) img {
		width: 14px;
	    top: -0px;
	}
	.information_list li:nth-child(2) div:nth-child(1) img {
		width: 18px;
	    top: 3px;
	}
	.information_list li div:nth-child(1) {
	    padding-right: 5px;
	}
	
	.contact_form .part_title h2{
		font-size: 3rem;
	}
	.contact_form .part_title01{
		margin-bottom: 30px;
	}
}

@media only screen and (max-width: 767px) {
	/* ----------- qa ----------- */
	.qa .part_title{
		align-items: center;
		flex-direction: column;
		justify-content: center;
	}
	.qa .part_title .phoneNumber{
		margin-left: 0px;
	}
	.qa .part_title .phoneNumber div{
		display: block;
		text-align: left;
		/* padding-right: 0px; */
	}
	.qa .part_title .phoneNumber div p{
		display: inline-block;
		font-size: 1.4rem;
	}
	.qa .part_title .part_phone a{
		font-size: 5rem;
	}
	.qa .part_title .pn .part_titleIco img{
		height: 45px;
	}
	
	/* ----------- flow ----------- */
	.flow_list>ul>li{
		margin-bottom: 80px;
	}
	.flow_list>ul>li:nth-of-type(2n+1){
		margin-left: 0px;
		padding: 0px 40% 0px 25px;
	}
	.flow_list>ul>li:nth-of-type(2n+1) .tu{
		left: 62%;
		top: -45px;
		z-index: 3;
	}
	.flow_list>ul>li:nth-of-type(2n){
		margin-right: 0;
		padding: 0px 40% 0px 25px;
	}
	.flow_list>ul>li:nth-of-type(2n) .tu{
		right: 0%;
		left: 62%;
		top: -45px;
		z-index: 3;
	}
	
	
}

@media only screen and (max-width: 480px) {
	
	/* ----------- mv ----------- */
	.mv_box {
	    height: 85vw;
	    padding: 10.5vw 0 10.5vw;
		background-position: 65% center;
	    overflow: hidden;
	    position: relative;
	}

	.mv_btn a {
	    width: 70%;
	    font-size: 4.0vw;
	    padding: 4.0vw 1.0vw 3.8vw;
		margin-left: 0;
	}
	.mv_btn a img {
	    width: 2.6vw;
	}
	.mv_btn a::after{
		right: 3.5vw;
	}
	
	
	/* ----------- reason ----------- */
	.reason-bj1 .cont1 p{
		font-size: 1.6rem;
		padding: 15px 20px 15px;
	}
	.reason-bj2 .zi p{
		font-size: 2.0rem;
	}
	.reason-bj2 .zi p span{
		font-size: 2.2rem;
	}
	.reason_btn {
	    padding-top: 20px;
	}
	.reason_btn a {
	    width: 100%;
	}
	.reason-bj2 .tu{
	    margin-right: 0px;
		width: 15%;
	}
	.reason-bj2 .tu img{
	    width: 80%;
	}
	.reason-bj1:nth-of-type(2) {
	    margin-top: 25px;
	}
	.reason-bj1:not(:nth-of-type(4)) {
	    margin-bottom: 40px;
	}
	
	/* ----------- flow ----------- */
	.flow_list {
	    margin-top: 50px;
	}
	.flow_list>ul>li {
		
	}
	.flow_inner {
		display: block;
		padding-top: 10px;
	}
	.flow_title{
		margin-right: 35%;
	}
	.flow_title span{
	    font-size: 2rem;
	}
	.flow_iList>li {
	    font-size: 1.4rem;
	}
	.flow_table{
		padding: 45px 0 20px;
	}
	.flow_table .point {
	    top: -13px;
	}
	.flow_table .point img {
	    width: 70%;
	}
	.flow_list>ul>li:nth-of-type(2n+1){
		padding: 0px 25px;
	}
	.flow_list>ul>li:nth-of-type(2n){
		padding: 0px 25px;
	}
	.flow_list>ul>li:last-of-type{
		margin-bottom: 10px;
	}
	
	/* ----------- qa ----------- */
	.qa .part_title .pn .part_phone{
		padding-left: 10px;
	}
	.qa .part_title .part_phone a{
		font-size: 3.8rem;
	}
	.qa .part_title .phoneNumber div p{
		font-size: 1.2rem;
	}
	.qa .part_title .phoneNumber{
		margin-left: 10px;
	}
	.qa .part_title .pn .part_titleIco img{
		height: 35px;
	}
	
	
	/* ----------- information ----------- */
	.information {
		
	}
	.information_content {
	    padding-top: 25px;
	}
	.information_title {
	    font-size: 1.4rem;
	}
	.information_list li {
		font-size: 1.4rem;
		line-height: 2.4rem;
	    margin: 8px auto 0 0;
	}
	.information_list li div:nth-child(1) {
	    width: 20px;
	}
	
	/* ----------- contact ----------- */
	.contact_form .part_title h2{
		font-size: 2.4rem;
	}
	
	
}






