@charset "UTF-8";

/* ------------------------------------------------
                    TOP
--------------------------------------------------- */
/*---------- Page Title ----------*/
.sec-page-ttl {
	width: 100%;
	margin-bottom: 100px;
	padding: 110px 0 140px;
	text-align: center;
	background: url("../../img/common/bg_page_ttl.jpg") top center no-repeat;
	background-size: cover;
	position: relative;
	z-index: 1;
}
.page-ttl-logo {
	width: 80%;
	max-width: 380px;
	margin: 0 auto;
}

.page-ttl {
	margin-top: 40px;
	font-size: 5.8rem;
	font-weight: 700;
	line-height: 1.4;
}

@media (max-width: 1050px) {
	.page-ttl {
		font-size: 5.0vw;
	}
}

@media (max-width: 768px) {
	.sec-page-ttl {
		width: 100%;
		margin-bottom: 14vw;
		padding: 12vw 0;
	}
	.page-ttl {
		margin-top: 4vw;
		font-size: 5.8vw;
	}
    
}

/*---------- title ----------*/
.sec-ttl-en {
	margin-bottom: 40px;
	font-size: 7.4rem;
	line-height: 1;
}

.sec-ttl-txt {
	font-size: 3.0rem;
	font-weight: 700;
	line-height: 1;
}


@media (max-width: 768px) {
	.sec-ttl-en {
		margin-bottom: 8vw;
		font-size: 12.8vw;
	}

	.sec-ttl-txt {
		font-size: 5.4vw;
	}
    
}



/*---------- Introduction ----------*/
.sec-introduction {
	width: 100%;
	margin-bottom: 100px;
	padding: 80px 0;
	position: relative;
}
.sec-introduction::before {
	content: '';
	width: 70%;
	height: 100%;
	background: url("../../img/download/bg_download.jpg") center center no-repeat;
	background-size: cover;
	border-radius: 40px 0 0 40px;
	position: absolute;
	top: 0;
	right: 0;
	z-index: 1;
}
.sec-introduction .cont-inn {
	position: relative;
	z-index: 2;
}


/* intro */
.introduction-lead-txt {
	width: 100%;
	margin-bottom: 70px;
	font-size: 2.4rem;
	font-weight: 700;
	line-height: 2.2;
}

.introduction-txt-wrap {
	width: 586px;
	margin-right: auto;
}
.introduction-txt {
	margin-bottom: 60px;
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 2;
}

.introduction-list-wrap {
	width: 100%;
	max-width: 380px;
	padding: 0 40px 40px;
	background: #fff;
	border: 2px solid #141d1d;
	border-radius: 20px;
	position: relative;
}

.introduction-list-ttl {
	display: inline-block;
	padding: 12px 40px;
	background: #141d1d;
	border-radius: 20px;
	color: #fff;
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 1;
	position: relative;
	top: -20px;
	
}
.introduction-list li {
	margin-bottom: 12px;
	padding-left: 25px;
	position: relative;
	font-weight: 700;
	line-height: 1.2;
}
.introduction-list li:last-child {
	margin-bottom: 0;
}
.introduction-list li.is-checked::before {
	content: '';
	width: 17px;
	height: 15px;
	background: url("../../img/download/icon_check_checked.svg") center center no-repeat;
	background-size: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

.introduction-img-wrap {
	width: calc(96% - 586px);
}


@media (max-width: 1200px) {
	

	.introduction-txt-wrap {
		width: 55%;
		margin-right: auto;
	}
	.introduction-txt {
		font-size: 1.8vw;
	}

	.introduction-img-wrap {
		width: 40%;
	}
}


@media (max-width: 768px) {
	.sec-introduction {
		width: 100%;
		margin-bottom: 8vw;
		padding: 12vw 0;
		position: relative;
	}
	.sec-introduction::before {
		content: '';
		width: 80%;
		height: 100%;
		border-radius: 8vw 0 0 8vw;
	}


	/* intro */
	.introduction-lead-txt {
		width: 100%;
		margin-bottom: 6vw;
		font-size: 4.8vw;
	}

	.introduction-txt-wrap {
		width: 100%;
		margin-right: auto;
		margin-bottom: 8vw;
	}
	.introduction-txt {
		margin-bottom: 14vw;
		font-size: 3.8vw;
	}

	.introduction-list-wrap {
		width: 100%;
		max-width: initial;
		padding: 0 8vw 5vw;
		border-radius: 4vw;
		position: relative;
		text-align: center;
	}

	.introduction-list-ttl {
		display: inline-block;
		padding: 2.2vw 8vw;
		background: #141d1d;
		border-radius: 6vw;
		color: #fff;
		font-size: 3.6vw;
		top: -4vw;

	}
	.introduction-list li {
		margin-bottom: 2.2vw;
		padding-left: 5vw;
		text-align: left;
	}
	.introduction-list li:last-child {
		margin-bottom: 0;
	}
	.introduction-list li.is-checked::before {
		content: '';
		width: 3.2vw;
		height: 4vw;
		background: url("../../img/download/icon_check_checked.svg") center center no-repeat;
		background-size: 100%;
		position: absolute;
		top: 0;
		left: 0;
	}

	.introduction-img-wrap {
		width: 100%;
	}
}






/*---------- form----------*/
.sec-form {
	width: 100%;
	margin: 100px auto;
	padding: 100px 0;
	background: #f3f8f6;
	position: relative;
}
.form-wrap {
	width: 100%;
	position: relative;
}


@media (max-width: 768px) {
	.sec-form {
		width: 100%;
		margin: 16vw auto;
		padding: 12vw 0;
	}
	
	.form-wrap {
		width: 100%;
		position: relative;
	}
}
@media (max-width: 400px) {
	.form-wrap {
	}
}