@charset "utf-8";


/* --------------------------------------------

Contact

---------------------------------------------- */ 
.form-stepBar {
  position: relative;
  margin: 5em auto;
	max-width: 860px;
  text-align: center;
  overflow: hidden;
	font-size: 14px; font-size: 1.4rem;
	color: #828282;
  *zoom: 1;
}
.form-stepBar .step {
  position: relative;
  float: left;
  display: inline-block;
	width: 33.33%;
	white-space: nowrap;
  line-height: 40px;
  padding: 0 0em 0 0em;
  background-color: #eee;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.form-stepBar .step:before, 
.form-stepBar .step:after {
  position: absolute;
  left: -6px;
  display: block;
  content: '';
  background-color: #eee;
  border-left: 2px solid #fff;
  width: 10px; height: 20px;
}
.form-stepBar .step:after {
  top: 0;
  -moz-transform: skew(30deg);
  -ms-transform: skew(30deg);
  -webkit-transform: skew(30deg);
  transform: skew(30deg);
}
.form-stepBar .step:before {
  bottom: 0;
  -moz-transform: skew(-30deg);
  -ms-transform: skew(-30deg);
  -webkit-transform: skew(-30deg);
  transform: skew(-30deg);
}
.form-stepBar .step:first-child {
  -moz-border-radius-topleft: 4px;
  -webkit-border-top-left-radius: 4px;
  border-top-left-radius: 4px;
  -moz-border-radius-bottomleft: 4px;
  -webkit-border-bottom-left-radius: 4px;
  border-bottom-left-radius: 4px;
}
.form-stepBar .step:first-child:before, 
.form-stepBar .step:first-child:after {
  content: none;
}
.form-stepBar .step:last-child {
  -moz-border-radius-topright: 4px;
  -webkit-border-top-right-radius: 4px;
  border-top-right-radius: 4px;
  -moz-border-radius-bottomright: 4px;
  -webkit-border-bottom-right-radius: 4px;
  border-bottom-right-radius: 4px;
}
.form-stepBar .step.current {
  color: #FFF;
  background-color: #424242;
}
.form-stepBar .step.current:before, 
.form-stepBar .step.current:after {
  background-color:  #424242;
}


@media screen and (max-width:768px){
.form-stepBar {
	font-size: 10px; font-size: 1rem;
}
.form-stepBar .step {
  line-height: 20px;
}

.form-stepBar .step:before, 
.form-stepBar .step:after {
  left: -3px;
  width: 10px; height: 10px;
}
}






.form-inner__text {
	width: 95%;
	margin: 0 auto 2em;
	font-size: 18px; font-size: 1.8rem;
	text-align: center;
}
@media screen and (max-width:768px){
.form-inner__text {
	font-size: 16px; font-size: 1.6rem;
	text-align: left;
}
}

p.hissu {
	text-align: center;
	font-weight: bold;
	color: #db4421; 
}

.form-inner__attention {
	box-sizing: border-box;
	width: 95%;
	max-width: 800px;
	margin: 0 auto 4em;
	border: 1px solid #c8c8c8;
}

.form-inner__attention p {
	width: 95%;
	margin: 1em auto;
	text-align: center;
}

.form-inner__attention  .form-detail__link {
	margin: 0.5em auto;
}


.form-inner__attention span:nth-of-type(1) {
	display: block;
	padding: 0.2em 2%;
	text-align: center;
	border-bottom: 1px solid #c8c8c8;
}
.form-inner__attention span:nth-of-type(2) {
	display: block;
	padding: 1em 5% 1em;
	font-size: 14px; font-size: 1.4rem;
	text-align: center;
}
@media screen and (max-width:768px){
.form-inner__attention span:nth-of-type(2) {
	text-align: left;
}
}

.form-inner__attention span:nth-of-type(2) b {
	margin: 0 1%;
	font-size: 16px; font-size: 1.6rem;
}

.form-detail {
	width: 95%;
	margin: 0 auto 5em;
}

.form-detail__text {
	margin-bottom: 1em;
	text-align: center;
}

.form-detail__link {
	display: block;
	width: 80%;
	max-width: 250px;
	margin: 0 auto 2em;
	padding: 0.5em 0;
	font-size: 14px;
	font-size: 1.4rem;
	text-align: center;
	border: 1px solid #c8c8c8;
	transition: 0.3s;
}
.form-detail__link:hover {
	color: #fff;
	background: #000;
}

.form__text {
	margin-bottom: 3em;
	text-align: center;
	color: #db4421;
}

.form__text span {
	display: inline-block;
	margin: 0 0.5em 0 0;
	padding: 0 0.25em;
	font-size: 13px;
	font-size: 1.3rem;
	border: 1px solid #db4421;
}

.form__list {
	max-width: 980px;
	margin: 0 auto 4.5em;
}
.form__list dt {
	float: left;
	width: 180px;
	padding: 0.5em 0;
	font-size: 15px;
	font-size: 1.5rem;
	font-weight: 600;
}
@media screen and (max-width:768px){
.form__list dt {
	float: none;
}
}

.form__list dd {
	overflow: hidden;
	margin-bottom: 2em;
	padding: 0 0 0.5em;
}


/* ------------------------------------
個人情報入力エリア
------------------------------------ */
.form__listPrivacy {
	max-width: 980px; 
	margin: 0 auto 4.5em;
	border: 3px solid #DCDCDC;
	padding: 1.5em 6% 1em;
}
.form__listPrivacyCoution {
	margin: 0 auto 1em -1.5em;
	color: #db4421; 
}
.form__listPrivacy dt {
	padding: 0.5em 0;
}
.form__listPrivacy dd {
	margin-bottom: 0.5em;
	padding: 0 0 0.0em;
}
/* ------------------------------------ */



.form__list dt::before {
	display: inline-block;
	content: "任意";
	margin: 0 0.5em 0 0;
	padding: 0 0.15em 0.15em;
	font-size: 11px;
	font-size: 1.1rem;
	font-weight: normal;
	vertical-align: middle;
	color: #000; 
	border: 1px solid #c8c8c8;
	background: rgba(200,200,200,0.2);
}

.form__list .form__list-required::before {
	display: inline-block;
	content: "必須";
	color: #db4421; 
	border: 1px solid #db4421;
	background: rgba(219,68,33,0.2);
}

.form__list.form__list-check dt::before {
	display: inline-block;
	content: "";
	color: #db4421; 
	border: none;
	background: none;
}

.form__list dd p {
	font-size: 14px; font-size: 1.4rem;
}

.form__list dd input[type="text"],
.form__list dd input[type="tel"],
.form__list dd input[type="email"],
.form__list dd input[type="password"],
.form__list dd select,
.form__list dd textarea {
	display: inline-block;
	width: 100%;
	padding: 0 0.5em;
	border: 1px solid #c8c8c8;
	background: rgba(200,200,200,0.2);
	margin: 0 0% 0.6em 0;
}

.form__list dd input[type="text"],
.form__list dd input[type="tel"],
.form__list dd input[type="email"],
.form__list dd nput[type="password"],
.form__list dd select {
	height: 50px;
	line-height: 50px;
}

.form__list dd input[type="text"] + input[type="text"],
.form__list dd input[type="tel"] + input[type="text"],
.form__list dd input[type="password"] + input[type="text"],
.form__list dd select + input[type="text"],
.form__list dd span:nth-of-type(2) {
	/*margin-top: 1em;*/
}

.form__list dd p {
	margin-bottom: 1em;
}

.form__list dd .form__attention {
	margin: 0;
	padding: 0.5em 0;
	font-size: 13px;
	font-size: 1.3rem;
	color: #db4421;
}

.form__list dd span {
	display: block;
}

.form__list dd span input[type="tel"] {
	display: inline-block;
	width: 84%;
}

input[type="radio"]{
	-webkit-appearance:radio;
}
input[type="checkbox"]{
	-webkit-appearance:checkbox;
}
.form__list dd input[type="radio"],
.form__list dd input[type="checkbox"] {
	/*display: none;*/
	width: 0.5em;
}
.form__list dd .checkType,
.form__list dd .checkSize,
.form__list dd .checkTag,
.form__list dd .checkUp,
.form__list dd .checkTag {
	display: block;
	float: left;
	margin: 1em 0.5em 0;
	margin-left: 0.5em;
	white-space: nowrap;
}
.form__list dd input[type="radio"] + label,
.form__list dd input[type="checkbox"] + label {
	height: 30px;
	margin-left: -1em;
	padding: 0.5em;
	cursor: pointer;
	/*background: #fff;
	border: 1px solid #fff;*/
	background: #F1F1F1;
	border: 1px solid #D7D7D7;
	transition: 0.3s;
}
.form__list dd input[type="radio"] + label:hover,
.form__list dd input[type="checkbox"] + label:hover {
	background: #f5f5f5;
	border: 1px solid #ddd;
}
@media screen and (max-width:768px){
.form__list dd input[type="radio"] + label,
.form__list dd input[type="checkbox"] + label {
	width: 100%;
}
}
@media screen and (max-width:599px){
}

.form__list dd input[type="radio"]:checked + label,
.form__list dd input[type="checkbox"]:checked + label {
	/*background: #f5f5f5;
	border: 1px solid #ddd;*/
	background: #BDBDBD;
	border: 1px solid #ddd;
}

.form__list dd .checkTag input[type="radio"] + label::before,
.form__list dd .checkTag input[type="checkbox"] + label::before {
	display: inline-block;
	content: "#";
}

.form__list dd input[type="radio"]:checked + label::before,
.form__list dd input[type="checkbox"]:checked + label::before {
}

.form__list .form__list-required + dd input[type="text"],
.form__list .form__list-required + dd input[type="tel"],
.form__list .form__list-required + dd input[type="email"],
.form__list .form__list-required + dd input[type="password"],
.form__list .form__list-required + dd select,
.form__list .form__list-required + dd input[type="radio"] + label,
.form__list .form__list-required + dd input[type="checkbox"] + label,
.form__list .form__list-required + dd input[type="radio"]:checked + label,
.form__list .form__list-required + dd input[type="checkbox"]:checked + label {
}


#map-canvas {
	width: 100%;
	height: 300px;
	background: #F1F1F1;
	border: 1px solid #D7D7D7;
	margin-bottom: 0.5em;
}



.fileBox {
	border: 1px solid #ddd;
	padding: 0.5em 0.5em 0;
}

.fileBox .fileButton {
	display: block;
	margin-bottom: 0.5em;
}

.form-detai__conf {
	width: 95%; max-width: 800px;
	margin: 2.5em auto;
	border: 1px solid #ddd;
}

.form-detai__conf > p {
	margin-bottom: 2em;
	padding: 0.5em 0;
	text-align: center;
	border-bottom: 1px solid #ddd;
}

.form-detai__conf ul {
	width: 96%;
	margin: 0 auto 2em;
}

.form-detai__conf ul li {
	margin-bottom: 0.8em;
	padding-left: 2em;
	text-indent: -2em;
}

.form-detai__conf ul li:last-child {
	font-size: 0;
}

.form-detai__conf ul li:last-child:before {
	font-size: 14px;
	content: ""
}

.form-detai__conf ul li a {
font-size: 0;
}

.form-detai__conf ul li a:before  {
font-size: 16px;
text-decoration: none;
content: "その他、利用規約についてご一読いただいてから、確認ボタンにチェックして下さい。";
}

.form-detai__conf ul li::before {
	display: inline-block;
	content: "";
	width: 30px;
	height: 30px;
	vertical-align: middle;
	background: url("../img/form/radio_on.png") top center no-repeat;
	background-size: contain;
}

.form-detai__conf ul li::before {
	display: inline-block;
	content: "";
	width: 30px;
	height: 30px;
	vertical-align: middle;
	background: url("../img/form/radio_on.png") top center no-repeat;
	background-size: contain;
}

.form-detai__conf input[type="checkbox"] {
	display: block;
	width: 0.5em; max-width: 150px;
	margin: 0 auto;
}
.form-detai__conf input[type="checkbox"] + label {
	display: block;
	width: 90%; max-width: 16em;
	margin: -1em auto 3em;
	padding: 0.5em 0;
	cursor: pointer;
	font-size: 15px;
	font-size: 1.5rem;
	text-align: center;
	border: 1px solid #ddd;
	background: #fff;
}
.form-detai__conf input[type="checkbox"] + label::before {
	display: inline-block;
	content: "";
	width: 50px;
	height: 50px;
	vertical-align: middle;
	background: url("../img/form/radio_off.png") top center no-repeat;
	background-size: contain;
}
.form-detai__conf input[type="checkbox"]:checked + label::before {
	background: url("../img/form/radio_on.png") top center no-repeat;
	background-size: contain;
}


/* --------------------------------------------

その他入力欄

---------------------------------------------- */
#media_free_detail,
#media_other_detail {
	display: none;
	visibility:hidden;
}
#media_free:checked + label + #media_free_detail,
#media_other:checked + label + #media_other_detail,
#media_free:checked + label + div + #media_free_detail,
#media_other:checked + label + div + #media_other_detail{
	display: block;
	visibility: visible;
}





.form__list dd select {
	cursor: pointer;
}

.form__list dd textarea {
	height: 450px;
	resize: vertical;
}

.form__button {
	display: block;
	width: 14em;
	margin: 0 auto 5em;
	font-size: 16px;
	font-size: 1.6rem;
	text-align: center;
	border: 1px solid #000;
	background: #fff;
	cursor: pointer;
	transition: 0.5s;
}
.form__button input[type="submit"] {
	display: block;
	width: 100%;
	padding: 1em 0;
	border: none;
	background: none;
	cursor: pointer;
}
@media screen and (max-width:768px){
}

.form__button:hover {
	background: #000;
}

.form__button:hover input[type="submit"] {
	color: #fff;
}


.form__button-back {
	width: 10em;
	margin: 2em auto 0;
	text-align: center;
	border: none;
	background: none;
}
.form__button-back::before {
	content: "";
	display: inline-block;
	width: 5px; height: 5px;
	margin: -0.3em 0.6em 0 0;
	vertical-align: middle;
	border: 1px solid #000;
	border-width: 1px 1px 0px 0px ;
	transition: 0.3s;
	transform: rotate(45deg);
}
.form__button-back:hover::before {
	transform: translateX(4px) rotate(45deg);
}

.form__button-back input[type="button"] {
	font-size: 13px;
	font-size: 1.3rem;
	border: none;
	background: none;
	cursor: pointer;
}

.form-detail-conf .form__list dt,
.form-detail-conf .form__list dd {
	padding: 0.5em;
}

.form-detail-conf .form__list dt::before {
	display: none;
}
.form-detail-conf .form__list dd {
	padding: 0.8em 0.5em;
	border: 1px solid #c8c8c8;
	background: rgba(200,200,200,0.2);
}
.form-detail-conf .form__list dd:empty {
	border: none;
	background: none;
}




