@charset "utf-8";

/*------------------------------------------------------------

------------------------------------------------------------*/
.downLoad {
	padding-top: 140px;
}

.headLine h2 {
	font-size: 34px;
	text-align: center;
	letter-spacing: 2.4px;
	font-weight: 400;
}

.conHeadLine {
	margin-bottom: 52px;
}

.conWord {
	margin-bottom: 50px;
}

.conWord .conWord01 {
	font-size: 14px;
	text-align: center;
	line-height: 1.85;
	letter-spacing: .7px;
}

.conWord .conWord02 {
	margin-top: 6px;
	font-size: 12px;
	text-align: center;
	letter-spacing: 1px;
}

.must {
	color: #2e6c9b;
}

.formPage {
	padding-top: 12px;
	margin: 0 auto 88px;
	width: 800px;
}

.formPage input.wid01 {
	width: 450px;
}

.formPage input.postal01 {
	width: 75px;
	float: left;
}

.formPage input.postal02 {
	width: 100px;
	float: left;
}

.formPage span.line {
	width: 35px;
	height: 40px;
	display: block;
	float: left;
	position: relative;
}

.formPage span.line:after {
	width: 15px;
	height: 1px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	content: "";
	background: #aabcc2;
}

.formPage span.postalHint {
	margin-left: 20px;
	margin-top: 2px;
	font-size: 11px;
	float: left;
	line-height: 1.7;
	letter-spacing: .5px;
}
/*------------------------------------------------------------
	form
------------------------------------------------------------*/
.formPage {
	padding-top: 12px;
	margin: 0 auto 98px;
	width: 800px;
}

.formPage input[type = "text"],
.formPage input[type = "tel"],
.formPage input[type = "email"],
.formPage input[type = "num"],
.formPage select,
.formPage textarea {
	width: 100%;
	border-radius: 0;
	border: 0;
	font-size: 14px;
	-webkit-appearance: none;
	border-radius: 0;
	font-family: source-han-sans-japanese, sans-serif;
	font-weight: 400;
	box-sizing: border-box;
	background: #eef2f3;
}

.formPage input[type = "text"],
.formPage input[type = "tel"],
.formPage input[type = "email"],
.formPage input[type = "num"],
.formPage select {
	padding: 0 16px;
	height: 40px;
}

.must01 {
	position: relative;
}

.must {
	color: #2e6c9b;
}

.formPage textarea {
	padding: 10px 16px;
	height: 300px;
	resize: none;
}

.formPage .formList {
	padding-bottom: 72px;
}

.formPage dl {
	margin-bottom: 45px;
}

.formPage dl:nth-child(4) {
	margin-bottom: 61px;
}

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

.formPage dl::after {
    height: 0;
    visibility: hidden;
    content: ".";
    display: block;
    clear: both;
}

.formPage dt {
	padding-top: 6px;
	width: 217px;
	float: left;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.85;
	text-align: right;
	letter-spacing: .7px;
	padding-right: 7px;
	box-sizing: border-box;
}

.formPage dt.pdt {
	margin-top: -5px;
	padding-top: 0;
}

.formPage dt.textPdt {
	padding-top: 0;
	margin-top: -6px;
}

.formPage dd {
	margin-left: 242px;
	font-weight: 400;
	position: relative;
}

.formSelect {
	position: relative;
}

.formSelect p {
	padding: 0 19px;
	height: 40px;
	line-height: 40px;
	box-sizing: border-box;
	letter-spacing: 1px;
	background: #eef2f3 url(/img/download/img_select_icon.png) no-repeat center right 15px;
	background-size: 14px 7px;
	font-size:14px;
	min-width: 100%;
}

.formSelect select {
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
}

.agree {
	margin-bottom: 11px;
	font-size: 14px;
}

.agree span {
	padding-left: 5px;
	letter-spacing: .7px;
	font-size: 14px;
}

.agreeLink {
	font-size: 12px;
	text-align: left;
	letter-spacing: .4px;
}

.agreeLink.agreeSite a {
	padding-right: 22.5px;
	background: url(../img/common/img_site.png) no-repeat center right 5px;
	background-size: 12.5px 10px;
}

.agreeLink a {
	font-size: 12px;
}

.agreeLink  img {
	margin: 5px 5px 0 5px;
	width: 12.5px;
}

.submit {
	text-align: center;
}

/*
.mailForm .submit {
	padding-left: 190px;
}
*/

.submit li {
    display: inline-block;
	background: #2e6c9b;
}

.formPage dt span.again {
	font-size: 12px;
}

.submit li input {
	width: 480px;
	height: 60px;
	font-size: 14.5px;
	font-family: source-han-sans-japanese, sans-serif;
	font-weight: 400;
	color: #fff;
	letter-spacing: 1.5px;
	cursor: pointer;
	transition: background .6s ease;
	-webkit-appearance: none;
	border-radius: 0;
	border: 0;
	background: none;
}

.submit li input:hover {
	background: rgba(8,46,94,.5);
}

.formPage .error input,
.formPage .error select,
.formPage .error textarea,
.formPage .error .formSelect p {
	border: 1px solid #ff3333;
}

.errorWord {
	font-size: 12px;
	color: #ff3333;
	position: absolute;
	left: 0;
	bottom: -24px;
	letter-spacing: .7px;
}

.errorWord01 {
	width: 190px;
	left: 27px;
	top: -2px;
	text-align: left;
	font-weight: 400;
}

.agreeLink + .errorWord {
	bottom: -28px;
}

.confirmPage dl {
	padding: 28.5px 0;
	margin-bottom: 0;
	overflow: hidden;
	border-bottom: 1px solid #aabcc2;
}

.confirmPage dl:first-child {
	padding-top: 18px;
}

.confirmPage dl:last-child {
	border-bottom: 0;
}

.confirmPage dt {
	padding-top: 0;
	width: 170px;
	line-height: 1.85;
}

.confirmPage .formList {
	padding-bottom: 66px;
}

.confirmPage dd {
	margin-left: 236px;
	font-size: 14px;
	line-height: 1.85;
	letter-spacing: .9px;
}

.confirmPage dl:nth-child(4) {
	margin-bottom: 0;
}

.confirmPage .submit {
	padding-left: 0;
	margin: 0 -65px;
}

.submit li.correction {
	float: left;
}

.submit li.correction input {
	color: #000;
	transition: background .6s ease,border .6s ease;
	border: 1px solid #aabcc2;
	background: #fff;
}

.submit li.correction input:hover {
	opacity: 1;
	border: 1px solid #d9e1e3;
	background: #d9e1e3;
}

.confirmPage .submit li input {
	width: 400px;
}

.finInfo {
	margin: -11px auto 76px;
	width: 800px;
}

.finP1 {
	margin-bottom: 34px;
	font-size: 14px;
	line-height: 2.15;
	text-align: center;
	letter-spacing: .8px;
}

.finP2 {
	font-size: 12px;
	line-height: 1.75;
	text-align: center;
	letter-spacing: .7px;
}

.finLink {
	margin-bottom: 145px;
	text-align: center;
}

.finLink a {
	padding: 18px 20px 19px;
	min-width: 435px;
	display: inline-block;
	font-size: 14px;
	letter-spacing: 1.3px;
	transition: background .6s ease,border .6s ease;
	box-sizing: border-box;
	border: 1px solid #aabcc2;
}

.finLink a:hover {
	background: #d9e1e3;
	border-color: #d9e1e3;
}

.headLineEn h2 {
	font-size: 32px;
	letter-spacing: 0;
}

.formPage.formPageEn dt {
	padding-top: 8px;
	width: 157px;
	font-size: 13px;
	font-family: 'Roboto', sans-serif;
	font-weight: 700;
	letter-spacing: .3px;
	-moz-hyphens: auto;
	-ms-hyphens: auto;
	-webkit-hyphens: auto;
	hyphens: auto;
}

.formPage.formPageEn dt.addrEn {
	padding-top: 0;
	line-height: 1.4;
}

.formPageEn.formPage dd {
	font-family: 'Roboto', sans-serif;
}

.formPage.formPageEn input[type="text"],
.formPage.formPageEn input[type="tel"],
.formPage.formPageEn input[type="email"],
.formPage.formPageEn input[type="num"],
.formPage.formPageEn select,
.formPage.formPageEn textarea {
	font-size: 13px;
	font-family: 'Roboto Condensed', sans-serif;
	letter-spacing: .3px;
}

.formPageEn .formSelect p {
	letter-spacing: .2px;
}

.formPage.formPageEn dt span.again {
    font-size: 13px;
}

.formPageEn .agree {
	font-size: 13px;
}

.formPageEn .agreeLink {
	font-size: 13px;
	letter-spacing: .3px;
	-moz-hyphens: auto;
	-ms-hyphens: auto;
	-webkit-hyphens: auto;
	hyphens: auto;
}

.formPageEn .submit li input {
	font-size: 14px;
	font-family: 'Roboto Condensed', sans-serif;
	letter-spacing: 1px;
}

.formPageEn .errorWord {
	font-size: 12px;
	letter-spacing: .2px;
}

.confirmPageEn.confirmPage dt {
	padding-top: 0;
	font-weight: 500;
	line-height: 21px;
	letter-spacing: .3px;
}

.confirmPageEn.confirmPage dd {
	line-height: 21px;
	font-weight: 400;
	font-size: 13px;
	letter-spacing: .3px;
}

.finInfoEn .finP1 {
	font-size: 16px;
	line-height: 1.65;
	letter-spacing: .3px;
}

.finInfoEn .finP2 {
	font-size: 14px;
	line-height: 24px;
	letter-spacing: .3px;
}

.finLinkEn a {
	font-size: 14px;
    font-family: 'Roboto Condensed', sans-serif;
    letter-spacing: 1px;
}

.formPage .formListRadio {
	margin-bottom: 65px;
}

.formPage .formListRadio dt {
	width: 100%;
	margin-bottom: 25px;
	text-align: center;
	float: none;
	letter-spacing: .9px;
}

.formPage .formListRadio dd {
	width: 100%;
	margin-left: 0;
	float: none;
}

.formListRadio dd .listRadioLeft {
	width: 330px;
	padding-right: 22px;
	float: left;
	border-right: 1px solid #d4dde0;
	position: relative;
}

.listRadioLeft .agree input {
	margin: 0 1px 0 3px;
}

.formListRadio dd .listRadioRight {
	width: 330px;
	float: right;
	position: relative;
}

.formPage .formListRadio .agree {
	margin-bottom: 22px;
}

.listRadioRight .agree input {
	margin: 0 1px 0 1px;
}

.listRadioRight .agree span {
	letter-spacing: .8px;
}

.formListRadio .formSelect p {
	padding-right: 25px;
	letter-spacing: 0px;
	overflow: hidden;
	text-overflow:ellipsis;
	white-space: nowrap;
}

.formPageEn .formListRadio .formSelect p {
	letter-spacing: .2px;
}

.formListRadio .formSelect p.selectText {
    letter-spacing: .2px;
}
/*---------------------------
追加部分
----------------------------*/
.footCon .pageBtnList {
    justify-content: center;
}
.formPage dl:nth-child(4) {
	margin-bottom: 45px;
}
.formPage dl:nth-child(5) {
	margin-bottom: 61px;
}

@media all and (min-width: 0) and (max-width: 767px) {
		.headLine h2 {
	    font-size: 26px;
	    letter-spacing: 2.2px;
		}

	.formPage {
		margin-bottom: 39px;
		padding: 11px 25px 1px;
		width: auto;
	}

	.formPage dl {
		margin-bottom: 29px;
	}

	.formPage dl::after {
		display: none;
	}

	.formPage .error.reSpec {
		margin-bottom: 35px;
	}

	.formPage dt {
		padding-top: 0;
		margin-bottom: 10px;
		width: auto;
		float: none;
		font-size: 13px;
		text-align: left;
	}

	.formPage dd {
		margin-left: 0;
	}

	.formPage input,
	.formPage select,
	.formPage textarea {
		font-size: 13px;
	}

	.formPage input[type = "text"],
	.formPage input[type = "tel"],
	.formPage input[type = "email"],
	.formPage input[type = "num"],
	.formPage select {
		padding: 0 11px;
		height: 45px;
	}

	.formPage textarea {
		height: 250px;
	}

	.formPage dt.pdt {
		margin-top: 0;
	}

	.formPage dt span.again {
		font-size: 11px;
	}

	.formPageEn .submit li input {
		font-family: 'Roboto', sans-serif;
		letter-spacing: .3px;
	}

	.formSelect p {
    	padding: 0 14px;
		height: 45px;
		line-height: 45px;
	}

	.formPageEn .formSelect p {
		letter-spacing: .3px;
	}

	.agree {
    	margin-bottom: 8px;
	}

	.formPageEn .agree span {
		letter-spacing: .3px;
	}

	.agreeLink {
		letter-spacing: 0;
	}

	.mailForm .submit {
		padding-left: 0;
	}

	.submit li {
		margin: 0 0 25px;
		display: block;
	}

	.submit li input {
		width: 100%;
		height: 50px;
		font-size: 13px;
		letter-spacing: 1px;
	}

	.submit li input:hover {
		background: none;
	}

	.errorWord {
		font-size: 11px;
		bottom: -20px;
	}

	.errorWord01 {
		position: static;
		margin-top: -3px;
		margin-left: 2px;
	}

	.formListRadio .listRadioLeft.error {
		margin-bottom: 34px;
	}

	.agreeLink + .errorWord {
		bottom: -26px;
	}

	.confirmPage {
		padding-top: 9px;
	}

	.confirmPage .formList {
		padding-bottom: 34px;
	}

	.confirmPage dl {
		padding: 19px 0;
		margin-bottom: 0;
	}

	.confirmPage dl:first-child {
		padding-top: 0;
	}

	.confirmPage dt {
		margin-bottom: 9px;
	}

	.confirmPage dd {
		font-size: 13px;
		line-height: 1.78;
	}

	.confirmPage .submit {
		margin: 0;
	}

	.confirmPage .submit li input {
		width: 100%;
	}

	.submit li input:hover {
		opacity: 1;
	}

	.submit li.correction {
		float: none;
	}

	.submit li.correction input:hover {
		border: 1px solid #aabcc2;
		background: #fff;
	}

	.finInfo {
		margin: 0 0 60px;
		padding: 0 25px;
		width: auto;
	}

	.finP1 {
		margin-bottom: 25px;
		font-size: 13px;
		text-align: left;
		line-height: 1.75;
	}

	.finP2 {
		font-size: 11px;
		text-align: left;
	}

	.finInfoEn .finP1 {
		font-size: 15px;
		line-height: 23px;
		letter-spacing: .3px;
	}

	.finInfoEn .finP2 {
		font-size: 13px;
		line-height: 21px;
		letter-spacing: .3px;
	}

	.finLink {
		margin-bottom: 58px;
		padding: 0 25px;
	}

	.finLink a {
		padding: 14px 20px 15px;
		min-width: 100%;
		font-size: 13px;
	}

	.finLink a:hover {
		background: none;
		border-color: #aabcc2;
	}

	.headLineEn h2 {
		font-size: 29px;
	}

	.formPage.formPageEn dt {
		padding-top: 0;
		width: auto;
	}

	.confirmPageEn.confirmPage dt {
		font-weight: 700;
	}

	.finLinkEn a {
		font-size: 14px;
	}

	.formPageEn .errorWord {
		letter-spacing: .3px;
	}

	.formPage .formListRadio {
		margin-bottom: 28px;
	}

	.formPage .formListRadio dt {
		margin-bottom: 12px;
		text-align: left;
	}

	.formListRadio dd .listRadioLeft {
		margin-bottom: 17px;
		padding-right: 0;
		border: none;
		width: 100%;
		float: none;
	}

	.formListRadio dd .listRadioRight {
		width: 100%;
		float: none;
	}

	.listRadioRight .agree input {
		margin: 0 1px 0 3px;
	}

	.formListRadio .formSelect p {
	    padding: 0 25px 0 16px;
	}

	.formListRadio dd .agree span{
		letter-spacing: -.3px;
	}

	.formPage .formListRadio .agree {
		margin-bottom: 13px;
	}

	.formListRadio .formSelect p {
   	   letter-spacing: 1px;
	}

	.formListRadio .formSelect p.selectText {
	   letter-spacing: -1px;
	}

}

@media all and (min-width: 0) and (max-width: 767px) {
	.conHeadLine {
		margin-bottom: 38px;
	}

	.conWord {
		margin-bottom: 49px;
		padding: 0 25px;
	}

	.conWord .conWord01 {
		font-size: 13px;
		line-height: 1.77;
		text-align: left;
	}

	.conWord .conWord02 {
		margin-left: -2px;
		text-align: left;
	}

	.formPage input.wid01 {
		width: 100%;
	}

	.formPage input.postal01 {
		width: 29.23%;
	}

	.formPage input.postal02 {
		width: 35.38%;
	}

	.formPage span.line {
		width: 13.84%;
		height: 45px;
	}

	.formPage span.line::after {
		width: 33.3333%;
	}

	.formPage span.postalHint {
		margin: 10px 0 0;
		display: block;
	}

/*---------------------------
追加部分
----------------------------*/
	.formSelect p {
	overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
	}
	.footCon .pageBtnList {
	display: block;
	}
	.formSelect p {
    padding: 0 28px 0 16px;
	}
	
}
