/* --------------------------------------------------
  privacyArea
-------------------------------------------------- */
.privacyArea {
	margin: 78px auto 0;
	width: 900px;
	padding: 27px 90px 36px;
}

.privacyArea__txt {
	margin: 0;
}

@media screen and (max-width: 767px) {
	.privacyArea {
		width: 100%;
		margin: 7vw 0 0;
		padding: 3vw 8vw;
	}
}
/* --------------------------------------------------
  contactForm
-------------------------------------------------- */
.contactForm {
	margin-top: 65px;
	font-size: 2.1rem;
	font-weight: 500;
	line-height: 1;
	padding-bottom: 197px;
}
.contactForm input, .contactForm select, .contactForm button, .contactForm textarea {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
	outline: none;
	font-family: inherit;
	font-size: inherit;
	font-weight: inherit;
}
.contactForm select::-ms-expand {
	display: none;
}
.contactForm textarea {
	resize: vertical;
	width: 100%;
	border: 1px solid #000000;
	padding: 8px 10px;
	height: 270px;
	font-size: 1.6rem;
	line-height: 2;
}
.contactForm button, .contactForm input[type=submit], .contactForm select {
	cursor: pointer;
}
.contactForm input[type=text],
.contactForm input[type=tel],
.contactForm input[type=email] {
	width: 100%;
	border: 1px solid #000000;
	padding: 6px 10px;
	line-height: 1;
	font-size: 1.6rem;
}
.contactForm input[type=text].-half,
.contactForm input[type=tel].-half,
.contactForm input[type=email].-half {
	width: 203px;
}
.contactForm input[type=text].-half + .contactForm__inputText.-half,
.contactForm input[type=tel].-half + .contactForm__inputText.-half,
.contactForm input[type=email].-half + .contactForm__inputText.-half {
	margin-left: 28px;
}
.contactForm input[type=text].-full,
.contactForm input[type=tel].-full,
.contactForm input[type=email].-full {
	width: 440px;
}
.contactForm input[type=text]::-webkit-input-placeholder, .contactForm input[type=tel]::-webkit-input-placeholder, .contactForm input[type=email]::-webkit-input-placeholder {
	color: #999999;
}
.contactForm input[type=text]::-moz-placeholder, .contactForm input[type=tel]::-moz-placeholder, .contactForm input[type=email]::-moz-placeholder {
	color: #999999;
}
.contactForm input[type=text]:-ms-input-placeholder, .contactForm input[type=tel]:-ms-input-placeholder, .contactForm input[type=email]:-ms-input-placeholder {
	color: #999999;
}
.contactForm input[type=text]::-ms-input-placeholder, .contactForm input[type=tel]::-ms-input-placeholder, .contactForm input[type=email]::-ms-input-placeholder {
	color: #999999;
}
.contactForm input[type=text]::placeholder,
.contactForm input[type=tel]::placeholder,
.contactForm input[type=email]::placeholder {
	color: #999999;
}
.contactForm input[type=text]::-ms-input-placeholder,
.contactForm input[type=tel]::-ms-input-placeholder,
.contactForm input[type=email]::-ms-input-placeholder {
	color: #999999;
}
.contactForm input[type=text]:-ms-input-placeholder,
.contactForm input[type=tel]:-ms-input-placeholder,
.contactForm input[type=email]:-ms-input-placeholder {
	color: #999999;
}

.safari .contactForm input[type=text],
.safari .contactForm input[type=tel],
.safari .contactForm input[type=email] {
	line-height: normal;
}

.contactForm__checkbox {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	border: 0;
	overflow: hidden;
	padding: 0;
	clip: rect(0, 0, 0, 0);
}
.contactForm__checkbox + label {
	display: inline-block;
	position: relative;
	padding-left: 68px;
	cursor: pointer;
}
.contactForm__checkbox + label:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 28px;
	height: 28px;
	border: 1px solid #000;
}
.contactForm__checkbox:checked + label:after {
	content: "";
	position: absolute;
	top: 6px;
	left: 6px;
	width: 19px;
	height: 15px;
	background: url(../img/contact/icon_check.svg) no-repeat left top/contain;
}

.contactForm__txt {
	margin: 0;
}
.contactForm__txt.-txt2 {
	margin-top: 79px;
}

.contactFormBox1 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	margin: 63px 0 0;
}
.contactFormBox1 dt {
	width: 348px;
}
.contactFormBox1 dd {
	width: calc(100% - 348px);
}
.contactFormBox1.-box2 {
	margin-top: 88px;
}

.contactForm__ttl {
	margin: 0;
	padding-top: 7px;
}

.contactFormBox2 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	margin: 80px 0 0;
}
.contactFormBox2 dt {
	width: calc(100% - 345px);
}
.contactFormBox2 dd {
	width: 345px;
}
.contactFormBox2 dt:nth-of-type(n+2),
.contactFormBox2 dd:nth-of-type(n+2) {
	margin-top: 91px;
}

.contactForm__agree {
	margin-top: 89px;
}

.contactForm__submit {
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	font-weight: 500;
	font-size: 1.6rem;
	line-height: 1;
	letter-spacing: 0.02em;
	text-align: center;
	width: 345px;
	height: 52px;
	margin: 130px auto 0;
	color: #fff;
}
.contactForm__submit:after {
	content: "";
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%) rotate(45deg);
	        transform: translateY(-50%) rotate(45deg);
	right: 20px;
	width: 12px;
	height: 12px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
}
.contactForm__submit input {
	display: block;
	width: 100%;
	height: 100%;
	color: inherit;
	background: #79b197;
}

.contactForm__flex .error {
	display: inline-block;
	width: 203px;
}
.contactForm__flex .error + .error {
	margin-left: 28px;
}

.contactForm__agree .error {
	margin-top: 22px;
}

@media screen and (min-width: 768px) {
	.contactFormBox1 dt:nth-of-type(n+2),
.contactFormBox1 dd:nth-of-type(n+2) {
		margin-top: 53px;
	}
}
@media screen and (max-width: 767px) {
	.contactForm {
		margin-top: 3vw;
		font-size: 3.39vw;
		padding-bottom: 5vw;
	}
	.contactForm textarea {
		padding: 1vw;
		height: 49vw;
	}
	.contactForm input[type=text],
.contactForm input[type=tel],
.contactForm input[type=email] {
		padding: 1vw;
	}
	.contactForm input[type=text].-half,
.contactForm input[type=tel].-half,
.contactForm input[type=email].-half {
		width: 39vw;
		display: block;
	}
	.contactForm input[type=text].-half + .contactForm__inputText.-half,
.contactForm input[type=tel].-half + .contactForm__inputText.-half,
.contactForm input[type=email].-half + .contactForm__inputText.-half {
		margin-left: 0;
	}
	.contactForm input[type=text].-full,
.contactForm input[type=tel].-full,
.contactForm input[type=email].-full {
		width: 100%;
	}

	.contactForm__checkbox + label {
		padding-left: 13vw;
	}
	.contactForm__checkbox + label:before {
		top: 50%;
		-webkit-transform: translateY(-50%);
		        transform: translateY(-50%);
		left: 3vw;
		width: 6vw;
		height: 6vw;
	}
	.contactForm__checkbox:checked + label:after {
		top: 50%;
		-webkit-transform: translateY(-50%);
		        transform: translateY(-50%);
		left: 4.5vw;
		width: 4vw;
		height: 3vw;
	}

	.contactForm__txt {
		margin: 0;
		line-height: 2;
		padding-left: 11vw;
	}
	.contactForm__txt.-txt2 {
		margin-top: 2vw;
		padding-left: 0;
	}

	.contactFormBox1 {
		margin-top: 4vw;
	}
	.contactFormBox1 dt {
		width: 100%;
	}
	.contactFormBox1 dd {
		width: 100%;
		margin-top: 3vw;
	}
	.contactFormBox1 dd + dt {
		margin-top: 5vw;
	}
	.contactFormBox1.-box2 {
		margin-top: 7vw;
	}

	.contactForm__ttl {
		padding-top: 0;
	}

	.contactForm__flex {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
	}

	.contactFormBox2 {
		margin-top: 5vw;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
	}
	.contactFormBox2 dt {
		width: calc(100% - 23.5vw);
		font-size: 3.911vw;
		line-height: 1.26;
	}
	.contactFormBox2 dd {
		width: 23.5vw;
	}
	.contactFormBox2 dt:nth-of-type(n+2),
.contactFormBox2 dd:nth-of-type(n+2) {
		margin-top: 5.5vw;
	}

	.contactFormBox2__btn a {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		width: 23.5vw;
		height: 11vw;
		background: #9a9a9b;
		color: #fff;
		font-size: 3.52vw;
	}

	.contactForm__agree {
		margin-top: 8vw;
	}
	.contactForm__agree .contactForm__checkbox + label {
		padding-left: 9vw;
	}
	.contactForm__agree .contactForm__checkbox + label:before {
		left: 0;
	}
	.contactForm__agree .contactForm__checkbox:checked + label:after {
		left: 1.5vw;
	}

	.contactForm__submit {
		font-size: 3.911vw;
		width: 100%;
		height: 12.7vw;
		margin: 11vw auto 0;
	}
	.contactForm__submit:after {
		right: 5vw;
		width: 3vw;
		height: 3vw;
	}

	.contactForm__flex .error {
		display: block;
		width: 39vw;
	}
	.contactForm__flex .error + .error {
		margin-left: 0;
	}

	.contactForm__agree .error {
		margin-top: 4vw;
	}
}
/* --------------------------------------------------
  p-confirm
-------------------------------------------------- */
.p-confirm .contactForm {
	margin-top: 106px;
	padding-bottom: 225px;
}
.p-confirm .contactForm__ttl {
	padding-top: 0;
}
.p-confirm .contactForm__ttl .font__green {
	display: none;
}
.p-confirm .contactForm__ddTxt {
	margin: 0;
}
.p-confirm .contactFormBox1 {
	margin: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
}
.p-confirm .contactFormBox1 dt {
	width: 280px;
}
.p-confirm .contactFormBox1 dd {
	width: calc(100% - 280px);
}
.p-confirm .contactFormBox1.-box1 dt:last-of-type,
.p-confirm .contactFormBox1.-box1 dd:last-of-type {
	display: none;
}
.p-confirm .questionArea {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin-top: 43px;
	line-height: 1.4;
}
.p-confirm .contactForm__txt.-txt2 {
	margin-top: 0;
	width: 280px;
}
.p-confirm .contactForm__txt.-txt2 .font__green, .p-confirm .contactForm__txt.-txt2 .confirm_hide {
	display: none;
}
.p-confirm .contactFormBox2 {
	margin-top: 0;
	width: calc(100% - 280px);
}
.p-confirm .contactFormBox1.-box2 {
	margin-top: 23px;
	display: block;
}
.p-confirm .contactFormBox1.-box2 dt, .p-confirm .contactFormBox1.-box2 dd {
	width: 100%;
}
.p-confirm .contactFormBox1.-box2 dd {
	margin-top: 44px;
	padding-right: 260px;
	line-height: 2.3;
}
.p-confirm .contactForm__agree {
	display: none;
}
.p-confirm .contactForm__btnArea {
	width: 773px;
	margin: 125px auto 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}
.p-confirm .contactForm__back {
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	font-weight: 500;
	font-size: 1.6rem;
	line-height: 1;
	letter-spacing: 0.02em;
	text-align: center;
	width: 345px;
	height: 52px;
	margin: 0;
}
.p-confirm .contactForm__back:after {
	content: "";
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%) rotate(45deg);
	        transform: translateY(-50%) rotate(45deg);
	left: 20px;
	width: 12px;
	height: 12px;
	border-bottom: 1px solid #17335a;
	border-left: 1px solid #17335a;
}
.p-confirm .contactForm__back button {
	display: block;
	width: 100%;
	height: 100%;
	color: inherit;
	border: 1px solid #17335a;
}
.p-confirm .contactForm__submit {
	margin: 0;
}

@media screen and (min-width: 768px) {
	.p-confirm .contactFormBox1 dt:nth-of-type(n+2),
.p-confirm .contactFormBox1 dd:nth-of-type(n+2) {
		margin-top: 42px;
	}
}
@media screen and (max-width: 767px) {
	.p-confirm .contactForm {
		margin-top: 15vw;
		padding-bottom: 8vw;
	}
	.p-confirm .contactFormBox1 {
		line-height: 1.4;
	}
	.p-confirm .contactFormBox1 dt {
		width: 31vw;
	}
	.p-confirm .contactFormBox1 dd {
		width: calc(100% - 31vw);
	}
	.p-confirm .contactFormBox1 dd:first-of-type {
		margin-top: 0;
	}
	.p-confirm .contactFormBox1 dt:nth-of-type(n+2),
.p-confirm .contactFormBox1 dd:nth-of-type(n+2) {
		margin-top: 3.5vw;
	}
	.p-confirm .questionArea {
		margin-top: 3.5vw;
	}
	.p-confirm .contactForm__txt.-txt2 {
		width: 31vw;
	}
	.p-confirm .contactFormBox2 {
		width: calc(100% - 31vw);
	}
	.p-confirm .contactFormBox1.-box2 {
		margin-top: 3.5vw;
	}
	.p-confirm .contactFormBox1.-box2 dd {
		margin-top: 4vw;
		padding-right: 0;
	}
	.p-confirm .contactForm__agree {
		margin-top: 3.5vw;
	}
	.p-confirm .contactForm__btnArea {
		width: 100%;
		margin: 17vw auto 0;
	}
	.p-confirm .contactForm__back {
		font-size: 3.911vw;
		width: 40vw;
		height: 12.7vw;
	}
	.p-confirm .contactForm__back:after {
		left: 5vw;
		width: 3vw;
		height: 3vw;
	}
	.p-confirm .contactForm__submit {
		margin: 0;
		width: 40vw;
	}
}
/* --------------------------------------------------
  p-complete
-------------------------------------------------- */
.p-complete .completeArea {
	padding: 176px 0 110px;
}
.p-complete .completeArea__ttl {
	font-size: 6rem;
	font-weight: normal;
	letter-spacing: 0.04em;
	text-align: center;
	line-height: 1;
	margin: 0;
}
.p-complete .completeArea__txt1 {
	font-weight: 500;
	font-size: 2.4rem;
	color: #79b59b;
	letter-spacing: 0.07em;
	text-align: center;
	margin: 20px 0 0;
}
.p-complete .completeArea__txt2 {
	width: 566px;
	margin: 91px auto 0;
	font-weight: 500;
	font-size: 1.6rem;
	line-height: 2.5;
}

@media screen and (max-width: 767px) {
	.p-complete .completeArea {
		padding: 56vw 0 8vw;
	}
	.p-complete .completeArea__ttl {
		font-size: 8.73vw;
	}
	.p-complete .completeArea__txt1 {
		font-size: 4.43vw;
		margin: 4vw 0 0;
	}
	.p-complete .completeArea__txt2 {
		width: 100%;
		margin: 14vw auto 0;
		font-size: 3.39vw;
		line-height: 2;
	}
}
/*# sourceMappingURL=contact.css.map */