/*-------------------------------
	form
-------------------------------*/

.Contact-block {
	display: flex;
	-webkit-flex-wrap:wrap;
	flex-wrap:wrap;
}

.Contact-block dt,
.Contact-block dd {
	position:relative;
}

.Contact-block dt {
	width:30rem;
	padding:3rem 0em 3rem 0rem;
	font-size:1.8rem;
	line-height:1.5;
	border-top:1px solid #888;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}
.Contact-block.Contact-block--comment dt{
	border-bottom: 1px solid #888;
}
.Contact-block:first-of-type dt {
	padding:2.2rem 0;
}

.Contact-block dd {
	font-size:1.8rem;
	line-height:1.5;
	width:calc(100% - 30rem);
	padding:2rem 0em 2rem 8%;
	border-top:1px solid #888;
}
.Contact-block.Contact-block--comment dd{
	border-bottom: 1px solid #888;
}

.Contact-block dd label {
	cursor: pointer;
}

.Contact-block dd label:not(:last-of-type) {
	margin-bottom:0.8rem;
	display: block;
}

.error {
	color:#ee7800;
}

/* 装飾を削除 */
input[type="text"],
input[type="email"],
input[type="number"],
button,
input[type="submit"],
textarea  {
	border-radius: 0;
	border:none;
	-webkit-appearance: none;
}


input[type="text"],
input[type="email"],
input[type="number"] {
	background:#fff;
	width:100%;
	max-width:75rem;
	font-size:1.8rem;
	line-height:2;
	height: 3.5em;
	padding:0 1em;
	border-radius: 0px;
	border:1px solid #a6a6a6;
}

@-moz-document url-prefix() {
  /* Firefoxのみに適用 */
input[type="text"],
input[type="email"],
input[type="number"] {
}
}

/*-------------------------------
	placeholder
-------------------------------*/

input::placeholder,
textarea::placeholder {
  color: #b6b6b6;
  font-size:1.8rem;
  line-height:2;
  letter-spacing: 0.15em;
  font-weight:300;
}

/* IE */
input:-ms-input-placeholder,
textarea:-ms-textarea-placeholder {
	color: #b6b6b6;
	font-size:1.8rem;
	line-height:2;
	letter-spacing: 0.15em;
	font-weight:300;
  }

/* Edge */
input::-ms-input-placeholder,
textarea::-ms-textarea-placeholder {
	color: #b6b6b6;
	font-size:1.8rem;
	line-height:2;
	letter-spacing: 0.15em;
	font-weight:300;
  }



/*-------------------------------
	radio
-------------------------------*/


input[type="radio"],
input[type="checkbox"] {
    display: none;
}

input[type="radio"] + span,
input[type="checkbox"] + span {
    padding-left: 1.5em;
    position: relative;
	font-size:1.8rem;
	font-weight:300;
}

input[type="radio"] + span::before,
input[type="checkbox"] + span::before {
	content: "";
    display: block;
	/*
    width: 1em;
    height: 1em;
	*/
	width:2.2rem;
	height:2.2rem;
	border: 2px solid #a6a6a6;
	background:#fff;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto 0;
    border-radius: 0%;
	box-sizing: border-box;
}

input[type="radio"]:checked + span::before,
input[type="checkbox"]:checked + span::before {
	content: "";
	border: 2px solid #ee7800;
	background:#ee7800;
}


input[type="radio"]:checked + span::after,
input[type="checkbox"]:checked + span::after {
    content: "";
    display: block;
	width:1rem;
	height:1rem;
	background: #fff;
    position: absolute;
    top: 0;
    left: 0.6rem;
    bottom: 0;
    margin: auto 0;
	border-radius:0%;
	box-sizing: border-box;
}

/*-------------------------------
	textarea
-------------------------------*/


textarea {
	resize: vertical;
	background:#fff;
	width:100%;
	max-width:75rem;
	font-size:1.8rem;
	line-height:2;
	height: 25rem;
	padding:0.5em 1em;
	border:1px solid #a6a6a6;
    overflow: auto;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: none;
	border-radius: 0px;
}

/*-------------------------------
	submit
-------------------------------*/


.Contact__button-wrap {
	margin:10rem 0 2rem 0;
}

.Contact__button-wrap button,
.Contact__button-wrap .thanks_button {
	width:100%;
	max-width:27rem;
	margin:0 auto;
}

.Contact__button-wrap button span,
.Contact__button-wrap .thanks_button a {
	color:#fff;
	font-size:2.2rem;
	letter-spacing: 0.2em;
	font-weight:500;
}

.Contact__button-wrap button::after {
	right:5rem;
}

/*-------confirmページ*/
.confirm .Contact__button-wrap{
	display: flex;
		justify-content: center;
		align-items: center;
}
	.confirm .Contact__button-wrap .Contact__Button:not(:last-of-type){
		margin-right: 3rem;
	}
.Contact__Button--back .btn {
    position: relative;
    transition: all .2s;
    padding: 0 5.5rem 0 1.5rem;
    opacity: 1;
}
.Contact__Button--back .btn::after {
    right: 2rem;
}

/*-------------------------------
	required
-------------------------------*/


.required {
	position:relative;
	font-size:1.4rem;
	line-height:1.25;
	color:#fff;
	padding:0.4em 1em;
	letter-spacing: 0.3em;
	display: inline-block;
	background: rgb(243,151,0);
	background: linear-gradient(144deg, rgba(236,109,0,1) 0%, rgba(243,151,0,1) 100%);

}

/*-------------------------------
	responsive
-------------------------------*/

@media screen and (max-width:960px) {

.Contact-block dt {
	width:25rem;
}

.Contact-block dd {
	width:calc(100% - 25rem);
	padding:2rem 0em 2rem 4rem;
}


} /* end 960px */

/*-------------------------------
	ver. smart phone
-------------------------------*/

@media screen and (max-width:768px) {

/*-------------------------------
	form
-------------------------------*/

.Contact-block dt {
	width:100%;
	padding:1.5rem 1em 1.5rem 1rem;
	font-size:1.6rem;
	background:#f0f0f0;
}

.Contact-block.Contact-block--comment dt{
	border-bottom: unset;
}
.Contact-block:first-of-type dt {
	padding:1.5rem 1em 1.5rem 1rem;
}

.Contact-block dd {
	font-size:1.6rem;
	width:100%;
	padding:2rem 0em 2rem 0rem;
}

input[type="text"],
input[type="email"],
input[type="number"] {
	max-width:100%;
	font-size:1.6rem;
}

/*-------------------------------
	placeholder
-------------------------------*/

input::placeholder,
textarea::placeholder {
	font-size:1.4rem;
}

/* IE */
input:-ms-input-placeholder,
textarea:-ms-textarea-placeholder {
	font-size:1.4rem;
}

/* Edge */
input::-ms-input-placeholder,
textarea::-ms-textarea-placeholder {
	font-size:1.4rem;
}

/*-------------------------------
	radio
-------------------------------*/


input[type="radio"] + span,
input[type="checkbox"] + span {
	font-size:1.6rem;
}

input[type="radio"] + span::before,
input[type="checkbox"] + span::before {
	width:1.8rem;
	height:1.8rem;
}

input[type="radio"]:checked + span::after,
input[type="checkbox"]:checked + span::after {
	width:0.8rem;
	height:0.8rem;
    top: 0;
    left: 0.5rem;
}

/*-------------------------------
	textarea
-------------------------------*/

textarea {
	max-width:100%;
	font-size:1.6rem;
	height: 22.3rem;
}

/*-------------------------------
	submit
-------------------------------*/


.Contact__button-wrap {
	margin:4rem 0 4rem 0;
}

.Contact__button-wrap button {
	max-width:100%;
}

.Contact__button-wrap button span {
	font-size:2rem;
}


.Contact__button-wrap button::after {
	right:5rem;
}

/*-------confirmページ*/
.confirm .Contact__button-wrap{
	display: block;
}
	.confirm .Contact__button-wrap .Contact__Button:not(:last-of-type){
		margin-right: unset;
		margin-bottom: 3rem;
	}

/*-------------------------------
	required
-------------------------------*/


.required {
	position:relative;
	font-size:1.2rem;
	line-height:1.25;
	color:#fff;
	padding:0.35em 0.9em;
	display: inline-block;
	background: rgb(243,151,0);
	background: linear-gradient(144deg, rgba(236,109,0,1) 0%, rgba(243,151,0,1) 100%);

}


} /* end 768px */

