@charset "utf-8";
/* CSS Document */

.main {
	margin-top: 120px;
	font-size: 14px;
	color: #333;
}

.main h2 {
	font-size: 28px;
	margin-bottom: 50px;
	color: #333333;
	text-align: center;
	font-weight: 400;
}

.contact__wrapper {
	width: 960px;
	margin: 0 auto 200px;
  padding: 0;
  line-height: 1.5;
}

.mainFormWrap {
	width: 640px;
	margin: 0 auto;
	padding-top: 60px;
}

/* お問い合わせフォーム */
.container {
	width: 100%;
	padding: 0 auto;
	margin: 0 auto;
}

.col-md-8 {
	margin: 0 auto 40px;
	position: relative;
	width: 100%;
	padding-right: 15px;
	padding-left: 15px;
}

.card {
	position: relative;
	display: flex;
	flex-direction: column;
	min-width: 0;
	word-wrap: break-word;
	background-color: #fff;
	background-clip: border-box;
	border-radius: 0.25rem;
	border: none;
}

.card-body {
	flex: 1 1 auto;
	padding: 1.25rem;
}

.card-body input {

	overflow:visible;
}

.registedTxt {
	text-align: center;
	margin-bottom: 60px;
}

.registedTxt  p {
	margin-bottom: 60px;
}

.col-md-4 {
	width: auto;
	max-width: fit-content;
	padding-right: 15px;
	position: relative;
}

.col-md-4:after {
	content: "必須";
	display: inline-block;
	background: #ff0000;
	color: #fff;
	padding: 1px 5px;
	border-radius: 18px;
	top: -2px;
	position: relative;
	font-size: 10px;
	margin-left: 5px;
}

.col-md-6 {
	max-width: 100%;
	padding-right: 0;
	padding-left: 0;
	position: relative;
	width: 100%;
}

.form-group {
	margin-bottom: 30px;
}

.form-group label {
	display: inline-block;
}

.row {
	display: block;
	margin-right: -15px;
	margin-left: -15px;
}

.justify-content-center {
  justify-content: center !important;
}

.col-sm-5 {
	width: 45%;
	margin: 0 5%;
}
.col-sm-10 {
	width: 100%;
}

.col-form-label {
	width: 100%;
	font-size: 13px;
	color: #707070;
	font-weight: 400;
	padding-top: calc(1rem + 1px);
	padding-bottom: 0;
	padding-left: 0;
	margin-bottom: 5px;
	line-height: 1.6;
}

input:-webkit-autofill {
	-webkit-box-shadow: 0 0 0px 1000px #fff inset;!important
}

.form-control.detail {
	height: calc(1.6em * 4);
	line-height: 1.6em;
	padding: 10px 15px;
}

.col-md-6 a {
	color: #e82212;
	text-decoration: underline;
}

.btn-group {
	width: 100%;
	margin-top: 60px;
}

.btn {
	display: block;
	width: 260px;
	max-width: 100%;
	height: 70px;
	padding: 19px 0;
	text-align: center;
	font-size: 20px;
	font-weight: bold;
	margin: 0 auto;
	border: none;
	border-radius: 40px;
	color: #fff;
	background-color: #333;
	-webkit-box-shadow: none;
	box-shadow: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

.btn:hover {
	color: #fff;
	cursor: pointer;
	opacity: 0.8;
	text-decoration: none;
}

.btn-primary {
	background: #e82212;
	border-color: #e82212;
	transition: all 0.3s linear;
}

.btn-primary.focus,
.btn-primary:focus {
	box-shadow: none;
}

.btn-primary.disabled,
.btn-primary:disabled {
	color: #fff;
	background-color: #e82212;
	border-color: #e82212;
}

.btn-primary:not(:disabled):not(.disabled).active,
.btn-primary:not(:disabled):not(.disabled):active,
.show>.btn-primary.dropdown-toggle {
	color: #fff;
	background-color: #e82212;
	border-color: #e82212;
}

.btn-primary:not(:disabled):not(.disabled).active:focus,
.btn-primary:not(:disabled):not(.disabled):active:focus,
.show>.btn-primary.dropdown-toggle:focus {
	box-shadow: none;
}

p.complete-text {
	font-size: 13px;
	text-align: center;
}

@media (min-width: 769px) {
	.container {
		max-width: 720px;
	}

	.col-md-8 {
		flex: 0 0 66.6666666667%;
		max-width: 66.6666666667%;
	}

	.text-md-left {
		text-align: left !important;
	}

	.col-md-4 {
		flex: 0 0 33.3333333333%;
	}

	.col-md-6 {
		flex: 0 0 50%;
	}

	.btn-group.pc {
		display: flex;
		justify-content: space-around;
	}
}

@media (min-width: 992px) {
	.container {
		max-width: 960px;
	}
}

@media (min-width: 1200px) {
	.container {
		max-width: 1140px;
	}
}

@media only screen and (max-width: 959px) {
	.contact__wrapper {
		width: 90%;
}

@media screen and (max-width: 768px) {
	.btn-group .btn {
		margin: 30px auto;
	}

	.form-group label[for="privacy-sp"] {
		line-height: 40px;
		width: 100%;
  }
}
