@charset "UTF-8";
/* ---------------------------------------------------------
   contact.css
----------------------------------------------------------*/


 #contact{
	padding-top: 100px;
	text-align: center;
	position: relative;
	z-index: 999;
}

#contact span{
	color: #ffdc1a;
	letter-spacing: 5px;
}


.contact_attention{
	color: #5d5d5d;
	width: 60%;
	margin: 0 auto;
	text-align: center;
	font-size: 14px;
}

@media screen and (max-width: 767px){
  .contact_attention{
    font-size: 13px;
    width: 80%;
}
}

.error_contact_attention p{
  color: #5d5d5d;
  width: 545px;
  margin: 0 auto;
  text-align: center;
  font-size: 14px;
}

@media screen and (max-width: 767px){
  .error_contact_attention p{
  width: 80%;
  }
}

.step_box{
	width: 40%;
	margin: 50px auto 0 auto;
	display:-webkit-box;
	display:-ms-flexbox;
  display:flex;
}

@media screen and (max-width: 767px){
  .step_box{
    width: 80% !important;
    margin: 50px auto 0 auto;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
  }
}

@media screen and (max-width: 1024px){
  .step_box{
    width: 50%;
    margin: 50px auto 0 auto;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
  }
}
.step_contents{
	margin: 0 auto;
}

@media screen and (max-width: 767px){
  .step_contents{
    display: block;
  }
}
.hissu{
	color: #ff0000;
	font-size: 13px;
  font-weight: bold;
}

.maru {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
  flex-flow: column; 
  vertical-align: top;
}

/* 円の大きさ */
.size_normal{
  width: 34px;
  height: 34px;
}
/* 文字の大きさ */
#number_select{
}
/* 円と文字の色 */
.color_select {
  color: #ffffff;
  background-color: #16a9ab;
}

.step_contents{
  display:block;
  text-align: center;
	margin: 0 auto;
  width: 30%;
	/*width: 200px;*/
}

.step_txt_select{
	color: #16a9ab;
	font-size: 14px;
	margin-top: -7px;
}

@media screen and (max-width: 767px){
  .step_txt_select{
    color: #16a9ab;
    font-size: 12px;
    margin-top: -7px;
  }
}

@media screen and (max-width: 767px){
  .step_txt_select .complete{
    color: #16a9ab;
    font-size: 12px;
    margin-top: 23px;
  }
}

#number{
	font-size: 1em;
  	line-height: 1.5em;
  	color: #5d5d5d;
}

.step_txt{
	color: #5d5d5d;
	font-size: 14px;
	margin: -7px 0 0 10px;
}

@media screen and (max-width: 767px){
  .step_txt{
    color: #5d5d5d;
    font-size: 12px;
    margin: -7px 0 0 0;
  }
}

@media screen and (max-width: 767px){
  .step_txt .complete{
    color: #5d5d5d;
    font-size: 12px;
    margin: 19px 0;
  }
}
.color{
	color: #5d5d5d;
}

.step_arrow_select, .step_arrow{
  position: relative;
  display: inline-block;
  float: left;
  width: 10%;
}

.step_arrow_select::before{
  content: '';
  width: 10px;
  height: 10px;
  border: 0px;
  border-top: solid 1px #16a9ab;
  border-right: solid 1px #16a9ab;
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  margin-top: -10px;
  margin-left: 15px; 
}

@media screen and (max-width: 767px){
  .step_arrow_select::before{
    margin-top: 4px;
    margin-left: 2px;
  }
}

.step_arrow::before{
  content: '';
  width: 10px;
  height: 10px;
  border: 0px;
  border-top: solid 1px #5d5d5d;
  border-right: solid 1px #5d5d5d;
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  margin-top: -10px;
  margin-left: 14px;
}

@media screen and (max-width: 767px){
  .step_arrow::before{
    margin-top: 4px;
    margin-left: 2px;
  }
}

.contact_form{
	margin: 100px auto 0 auto;
	font-size: 14px;
	width: 850px;
}

@media screen and (max-width: 768px){
  .contact_form{
    margin: 50px auto 0 auto;
    font-size: 13px;
    color: #5d5d5d;
    width: 80%;
    box-sizing: border-box;
    display: block;
  }
}

table{
  width: 100%;
  border-spacing: 0;
  border-top: solid 1px #aeaeae;
}

.contact_form 
dl,
dt,
dd {
  box-sizing: border-box;
}

/*.tr_default:before, .tr_default:after {
  content: " ";
  display: table;
}*/

/*.tr_default:after {
  clear: both;
}*/

.contact_form 
tr {
  background: #fff;
  border: solid 1px #aeaeae;
  /*border-right: 1px solid #aeaeae;
  border-left: 1px solid #aeaeae;*/
  border-bottom: 1px solid #aeaeae;
}

tr:first-child{
  border-top: solid 1px #aeaeae;
}

.contact_form 
th{
  padding: 10px 10px 0 10px;
  border-bottom: 1px solid #aeaeae;
  border-left: 1px solid #aeaeae;
}

.contact_form 
td {
  padding: 10px 10px 0 10px;
  border-bottom: 1px solid #aeaeae;
  border-left: 1px solid #aeaeae;
}

.contact_form 
th {
  width: 35%;
  color: #16a9ab;
  font-size: 14px;
  font-weight: bold;
  padding: 20px;
  letter-spacing: 2px;
}

.dt_check, .dd_check{
  padding: 30px !important;

}

@media screen and (max-width: 767px){
  .dt_check, .dd_check{
    padding: 20px 10px !important;
  }
}

@media screen and (max-width: 767px){
  .contact_form
  th {
    box-sizing: border-box;
    font-size: 13px;
    font-weight: bold;
    padding: 25px 20px 10px 20px;
    letter-spacing: 3px;
    border-bottom: 0;
    border-top: 0;
    border-right: solid 1px #aeaeae;
    width: 100%; 
    display: block;
    text-align: left;
  }

}
.contact_form
td {
  background: #fff;
  border-bottom: solid 1px #aeaeae;
  border-right: solid 1px #aeaeae;
  font-size: 14px;
  padding: 30px;
  width: 65%;
}


@media screen and (max-width: 767px){
  .contact_form
  td {
    background: #fff;
    border-left: solid 1px #aeaeae;
    box-sizing: border-box;
    margin-left: 0;
    padding: 10px 10px 25px 10px;
    width: 100%;
    display: block;
  }
}

/*.contact_form
td:after {
  content: '';
  display: block;
  clear: both;
}*/

/*@media screen and (max-width: 767px){*/
/*.contact_form
td:before {
  content: '';
  display: block;
  clear: both;
  }
}*/
.contact_name{
	padding: 10px;
	font-size: 14px;
}

@media screen and (max-width: 767px){
  .contact_name{
    padding: 10px 0 0 0; 
    font-size: 14px;
  }
}

textarea{
	width: 90%;
	height: 200px !important;
	font-size: 14px;
	color: #aeaeae;
	padding-left: 10px;
}

@media screen and (max-width: 767px){
  textarea{
    margin: 10px auto;
    width: 85%;
    height: 200px !important;
  }
}


input[type="text"],
input[type="submit"],
input[type="button"]{
  -webkit-appearance: none;
  border-radius: 0;
  background-color: #fff;
}

.form-control input, .form-control select{
	width: 320px;
	height: 40px;
	font-size: 14px;
	color: #5d5d5d;
	padding-left: 10px;
}

@media screen and (max-width: 767px){
  input, select{
    margin: 0 auto;
    width: 85%;
    height: 40px;
  }
}

input.mailaddress,
select.address01,
input.address02,
input.url,
textarea{
  /*background-color: #fff !important;*/
}

.contact-form td input.mailaddress{
  margin-bottom: 10px;
}

input.mailaddress_confirm{
  margin-bottom: 0;
}

.input_error{
  color: red;
}

/*====================「入力内容を確認する」ボタン====================*/
button{
        background-color: transparent;
        border: none;
        cursor: pointer;
        outline: none;
        padding: 0;
        appearance: none;
}

.check_button{
  margin: 20px auto;
  font-size: 14px;
  color: #16a9ab;
  width: 320px;
  height: 40px;
  border: solid 1px #16a9ab;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  position: relative;
  transition: 0.5s;
}

@media screen and (max-width: 767px){
  .check_button{
    margin: 0 auto;
    font-size: 14px;
    width: 100%;
  }
}

.check_button a{
  text-decoration: none;
}

@media screen and (max-width: 767px){
  .check_button{
    width: 100%;
    height: 40px;
    border: solid 1px #16a9ab;
    margin: 10px auto;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
  }
}

.check_button p{
  margin: auto;
}

.check_button:after {
  content: "";
  display: inline-block;
  width: 6px;
  height: 6px;
  border-top: solid 1px #16a9ab;
  border-right: solid 1px #16a9ab;
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  top: 40%;
  right: 21%;
}

.check_button:hover {
  cursor: pointer;
  background: #16a9ab;
  color: #fff;
  transition: 0.5s;
}

.check_button:hover::after{
  border-top: solid 1px #fff;
  border-right: solid 1px #fff;
  }

@media screen and (max-width: 1024px){
  .check_button:hover {
  color: #16a9ab;
  background-color: #fff;
  } 
  .check_button:hover::after{
  border-top: solid 1px #16a9ab;
  border-right: solid 1px #16a9ab;
  }
  .home_return_button:hover::after{
  border-top: solid 1px #16a9ab;
  border-right: solid 1px #16a9ab;
  }
}

.check{
  margin: 30px auto 60px;
}

.check span{
  font-size: 14px;
  color: #16a9ab;
}

.send p, .check p{
  text-align: center;
  margin: auto;
}

.send a, .check p a{
  text-decoration: none;
  color: #16a9ab;
}

@media screen and (max-width: 767px){
    .send a, .check a{
    text-decoration: none;
  }
}

.check img{
  padding: 4px;
}

.select_form{
	display:-webkit-box;
	display:-ms-flexbox;
  display:flex;
	margin:50px auto 200px auto;
	width: 630px;
	box-sizing: border-box;
  justify-content: space-between;
}

@media screen and (max-width: 767px){
  .select_form{
    width: 80%;
    display: block;
    margin: 30px auto 60px;
  }

  .check>.select_form{
    padding: 0px;
    display: flex;
    flex-direction: column;
    width: 80% !important;
    margin: 28px auto 60px auto;
  }
}

.select_form  a{
  text-decoration: none;
}

.check>.select_form{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  margin:0 auto;
  width: 630px;
  box-sizing: border-box;
  justify-content: space-between;
}
/*====================「戻って編集する」ボタン====================*/
.return_button{
	color: #5d5d5d;
	font-size: 14px;
	width: 300px;
	height: 40px;
	border: solid 1px #5d5d5d;
	margin: 0 auto;
	display:-webkit-box;
	display:-ms-flexbox;
  display:flex;
}

@media screen and (max-width: 767px){
  .return_button{
    width: 100%;
    margin: auto;
  }
}

.return_button p{
  margin: auto;
  position: relative;
}

.return_button p:before{ 
  content: "";
  display: inline-block;
  width: 6px;
  height: 6px;
  border-bottom: solid 1px #5d5d5d;
  border-left: solid 1px #5d5d5d;
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  top: 32%;
  left: -20%;
}

/*====================「送信する」ボタン====================*/

.send_box{
  position: relative;
}

.send_box:after{
  content: "";
  display: inline-block;
  width: 6px;
  height: 6px;
  border-top: solid 1px #16a9ab;
  border-right: solid 1px #16a9ab;
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  top: 35%;
  right: 30%;
}

.send_box:hover:after{
  border-top: solid 1px #fff;
  border-right: solid 1px #fff;
}

.send_button:hover{
  cursor: pointer;
  background: #16a9ab;
  color: #fff;
  transition: 0.5s;
}

@media screen and (max-width: 767px){
    .send_box{
      width: 100%;
      margin: auto;
    }
    .send_box:after{
      top: 42%;
    }
    .send_box:hover{
      background-color: #fff;
    }
    .send_box:hover::after{
      border-top: solid 1px #16a9ab;
      border-right: solid 1px #16a9ab;
    }
}

@media screen and (max-width: 1024px){
    .send_button:hover{
      color: #16a9ab;
      background-color: #fff !important;
    }
    .send_button:hover::after{
      border-top: solid 1px #16a9ab !important;
      border-right: solid 1px #16a9ab !important;
    }
}

@media screen and (max-width: 767px){
  .send_button{
    height: 40px;
    border: solid 1px #16a9ab;
    margin: 10px auto !important;
    width: 100% !important;
  }
}

.send_button{
  color: #16a9ab;
  background: #fff;
  font-size: 14px;
  width: 300px;
  height: 40px;
  border: solid 1px #16a9ab;
  margin: auto;
  font: 400 14px Helvetica !important;
  letter-spacing: 5px;
  transition: 0.5s;
}

.send{
  margin: 0 auto 50px auto;
  font-size: 14px;
  color: #5d5d5d;
}

@media screen and (max-width: 767px){
  .send{
    margin: 5px auto;
    font-size: 14px;
    width: 280px;
    order: 1;
  }
}

/*====================「TOPへ戻る」ボタン====================*/
.home_return{
  margin: 50px auto;
  font-size: 14px;
  color: #5d5d5d;
  width: 312px;
}

@media screen and (max-width: 767px){
  .home_return{
    margin: 0 auto;
    font-size: 14px;
    width: 100%;
  }
}

.home_return a{
  text-decoration: none;
}

.home_return_button{
  color: #16a9ab;
  font-size: 14px;
  width: 312px;
  height: 40px;
  border: solid 1px #16a9ab;
  margin: 0 auto;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  position: relative;
  transition: 0.5s;
}

@media screen and (max-width: 767px){
  .home_return_button{
    width: 100%;
    height: 40px;
    border: solid 1px #16a9ab;
    margin: 10px auto;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
  }
}

.home_return_button p{
  margin: auto;
}

.home_return_button:after{
  content: "";
  display: inline-block;
  width: 6px;
  height: 6px;
  border-top: solid 1px #16a9ab;
  border-right: solid 1px #16a9ab;
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  top: 40%;
  right: 25%;
}

.home_return_button:hover {
  cursor: pointer;
  background: #16a9ab;
  color: #fff;
  transition: 0.5s;
}

.home_return_button:hover::after{
  border-top: solid 1px #fff;
  border-right: solid 1px #fff;
  }

@media screen and (max-width: 1024px){
  .home_return_button:hover {
  color: #16a9ab;
  background-color: #fff;
  }
  .home_return_button:hover::after{
  border-top: solid 1px #16a9ab;
  border-right: solid 1px #16a9ab;
  }
}



/*====================サンクスメッセージ====================*/
.contact_message{
	width: 600px;
	margin: 100px auto 0 auto;
	text-align: center;
	line-height: 28px;
	color: #5d5d5d;
}

@media screen and (max-width: 767px){
  .contact_message{
    width: 280px;
    margin: 50px auto 50px auto;
    text-align: center;
    line-height: 22px;
    color: #5d5d5d;
  }
}

