@charset "utf-8";

/* form
----------------------------------------------------------------------- */
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="number"],
select,
textarea {
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  border: none;
  outline: none;
	width: 100%;
	min-height: 60px;
  padding: 16px 20px;
  border-radius: 6px;
  background-color: #F7F7F7;
  box-shadow: 0 0 6px rgba(0,0,0,.05);
  letter-spacing: .1em;
/*  line-height: normal;*/
	font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;
  cursor: pointer;
  color: #052448;
}
@media(min-width: 769px){
	input[type="text"],
	input[type="email"],
	input[type="tel"],
	input[type="number"],
	select,
	textarea {
		min-height: 60px;
		width: 640px;
 	 	font-size: 1.4rem;
	}
}
@media(max-width: 768px){
	input[type="text"],
	input[type="email"],
	input[type="tel"],
	input[type="number"],
	select,
	textarea {
		min-height: 60px;
		font-size: 1.6rem;
	}
}

textarea {
  height: 160px;
  line-height: calc(30 / 14);
}
@media(min-width: 769px){
	textarea {
	  height: 160px;
	}
}
@media(max-width: 768px){
	textarea {
		height: 100px;
	}

}

input[type="text"]::placeholder,
input[type="email"]::placeholder,
input[type="tel"]::placeholder,
input[type="number"]::placeholder,
textarea::placeholder,
input:disabled,
select:invalid {
/*	line-height: normal;*/
  letter-spacing: .1em;
  font-size: 1.4rem;
  color: #969696;
	font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;
}
@media(min-width: 769px){
	input[type="text"]::placeholder,
	input[type="email"]::placeholder,
	input[type="tel"]::placeholder,
	input[type="number"]::placeholder,
	textarea::placeholder,
	input:disabled,
	select:invalid {
	  letter-spacing: .1em;
	}
}
@media(max-width: 768px){
	input[type="text"]::-webkit-input-placeholder,
	input[type="email"]::-webkit-input-placeholder,
	input[type="tel"]::-webkit-input-placeholder,
	input[type="number"]::-webkit-input-placeholder {
		position: relative;
	  bottom: .2em;
	  padding: 0;
	  letter-spacing: .1em;
/*	  line-height: normal;*/
	}
}

input:is([type="button"], [type="submit"], [type="reset"]) {
	font-size: 1.4rem;
	font-weight: bold;
}

:disabled {
	color: red;
}


input:-internal-autofill-selected {
	background-color: #fff;
}
input:-webkit-autofill {
	transition: background-color 5000s ease-in-out 0s !important;
}

.type-radio,
.check-privacy {
	position: relative;
}

input[type="radio"],
input[type="checkbox"] {
  position: absolute;
  top: 6px;
  left: 6px;
  opacity: 0;
}

input[type="radio"] + label,
input[type="checkbox"] + label {
	position: relative;
	display: flex;
	align-items: center;
	padding-left: 30px;
	cursor: pointer;
}

input[type="radio"] + label:before,
input[type="checkbox"] + label:before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
  display: inline-block;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  border: solid 2px #052448;
  background-color: #fff;
  font-size: 0;
  vertical-align: middle;
  box-sizing: border-box;
}
input[type="checkbox"] + label:before {
	border-radius: 0;
}

input[type="radio"] + label:after,
input[type="checkbox"] + label:after {
	content: "";
	position: absolute;
	top: 50%;
	left: 5px;
	transform: translateY(-50%);
	display: inline-block;
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background-color: #052448;
	opacity: 0;
}
input[type="checkbox"] + label:after {
	border-radius: 0;
}

input[type="radio"]:checked + label:after,
input[type="checkbox"]:checked + label:after {
	opacity: 1;
}

select {
	width: auto;
	margin-right: 0;
  padding: 0 50px 0 20px;
	background-image: url(../img/common/icn-select_arrow.png);
	background-repeat: no-repeat;
	background-position: right 10px center;
	background-size: 12px auto;
	color: #969696;
	line-height: 60px;
}
@media(min-width: 769px){
	select {
		box-sizing: content-box;
	}
}
@media(max-width: 768px){
	select {
		display: inline-flex;
 		padding: 0 40px 0 20px;
	}
}

.form-select span {
	display: inline-flex;
	align-items: center;
	height: 100%;
	margin-left: 6px;
}

.form-select + .form-select {
	margin-left: 20px;
}

@media(max-width: 320px){
	select {
 		padding: 0 30px 0 20px;
	}

	.form-select span {
		margin-left: 5px;
	}

	.form-select + .form-select {
		margin-left: 10px;
	}
}

.select-year select {
	min-width: 4em;
}

.check-privacy {
	display: flex;
	align-items: center;
	height: 20px;
	line-height: 1;
	font-weight: bold;
	font-size: 1.4rem;
	color: #052448;
}

.check-privacy label {
	height: 20px;
}

@media(max-width: 768px){
	.check-privacy {
		flex-wrap: wrap;
	}

	.check-privacy label {
		margin-top: 10px;
		width: 100%;
		letter-spacing: 0;
	}

}



input[type="submit"] {
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  border: none;
  outline: none;
  background: transparent;
	width: 100%;
	height: 100%;
	color: #fff;
	cursor: pointer;
	box-shadow: 0 0 10px rgba(0,0,0,.16);
}


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