/* 推奨CSS *****************************************/

/* 必須項目
-------------------------*/
.notice {
  display: inline-block;
  font-size: 12px;
  font-weight: 700;
  color: #F06;
}

/* エラーメッセージ
-------------------------------------------------*/
.formLayout .errmsg,
.formLayout #errorMessage {
  box-sizing: border-box;
  width: 100%;
  background: #FFF;
  border: 3px solid #f00;
  padding: 10px;
  margin: 0 auto 10px auto;
  color: #F00;
  list-style: none;
}

.formLayout .errmsg a,
.formLayout #errorMessage a {
  color: #F00;
}


/* 画面別表示/非表示
-------------------------------------------------*/
.formLayout.input_now .display_check,
.formLayout.check_now .display_input {
  display: none;
}


/* 送信ボタンまわり
-------------------------------------------------*/
.formLayout .submit {
  padding: 1.5em 30px;
  text-align: center;
  background: #F7F7F7;
  margin-top: 15px;
}

.formLayout .submit p {
  text-align: left;
  padding-bottom: 1em;
}

.formLayout .submit input {
  width: 120px;
  float: none;
  display: inline;
}

.formLayout .submit .submit_left,
.formLayout .submit .submit_right {
  width: 49%;
  text-align: center;
}

.formLayout .submit .submit_left {
  float: left;
}

.formLayout .submit .submit_right {
  float: right;
}


/* 任意CSS *****************************************/
.formLayout {
  background-color: #fafafa;
  background: #FFF;
  margin: 0 auto;
  max-width: 1000px;
}

optgroup {
  font-style: normal;
}

/*-------------------------------------------------*/



/* tableレイアウト 必須CSS *****************************************/
.formLayout table,
.formLayout th,
.formLayout td {
  border: 1px solid #A1A1A1;
}

.formLayout th,
.formLayout td {
  padding: 5px;
}

.formLayout table {
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
}

.formLayout th {
  width: 25%;
  background: #f3fafb;
  font-weight: bold;
  text-align: left;
}

.formLayout td {}

/* レスポンシブ用CSS
--------------------------------------*/
@media screen and (max-width: 768px) {
  .formLayout {
    max-width: 98%;
  }

  .formLayout table,
  .formLayout tbody,
  .formLayout tr,
  .formLayout th,
  .formLayout td {
    display: block;
    width: 100%;
    box-sizing: border-box;
  }

  .formLayout th {
    border-top: none;
    border-right: none;
    border-left: none;
  }

  .formLayout td {
    border-top: none;
    border-right: none;
    border-left: none;
  }

  .formLayout tr:last-of-type td {
    border-bottom: none;
  }

  .formLayout input[type='text'],
  .formLayout input[type='tel'],
  .formLayout input[type='email'],
  .formLayout textarea,
  .formLayout select {
    max-width: 100%;
    font-size: 16px;
    box-sizing: border-box;
  }

  .formLayout .zip1,
  .formLayout .zip2,
  .formLayout .tel1,
  .formLayout .tel2,
  .formLayout .tel3 {
    width: 28%;
  }

  .formLayout .submit input {
    -webkit-appearance: none;
    background: #00A2E9;
    font-size: 16px;
    padding: 10px;
    width: auto;
    color: #fff;
    border-radius: 10px;
    border: none;
  }

  .formLayout .submit input#retouchBtn {
    background: #666;
  }
}






/* divレイアウト 必須CSS *****************************************/
.formLayout p.ttl {
  width: 30%;
  float: left;
  text-align: left;
  padding-right: 20px;
}

.formLayout p.small {
  font-size: 85%;
}

.formLayout p.data {
  width: 65%;
  float: left;
}

.formLayout br {
  clear: left;
}

.clearfix:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}

.clearfix {
  min-height: 1px;
}

* html .clearfix {
  height: 1px;
  /*\*/
  /*/
  height: auto;
  overflow: hidden;
  /**/
}

.none {
  display: none;
}

/* 行間の確保
-------------------------------------------------*/
.formLayout div.group {
  border-top: 1px solid #e7e7e7;
  padding-top: 1em;
  padding-bottom: 0.5em;
  padding-left: 10px;
}

.formLayout div.label {
  background: #CCFFEC;
  padding-top: 0.5em;
  padding-bottom: 0.5em;
  padding-left: 10px;
}

.formLayout div.unit {
  padding-bottom: 0.5em;
}


.comment {
  font-size: 0.8em;
  margin: 5px 0;
}

.comment:last-child {
  margin-bottom: 0;
}

.policy {
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  flex-direction: column;
  margin-bottom: 15px;
}

.policy>p {
  margin-bottom: 5px;
}



/* ページレイアウト--------------------------------- */
#wrapper {
  margin: 0 auto;
  max-width: 1000px;
}

header h1 {
  font-size: 1.4em;
  text-align: center;
  color: #00A2E9;
}

.informationArea {
  margin-bottom: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid #ccc;
}

.informationArea .copy {
  text-align: center;
}

.informationArea .borderbox {
  border: 2px solid #00A2E9;
  padding: 0 20px;
}

.informationArea .borderbox li {
  margin: 10px 0;
}

.informationArea .thanks {
  text-align: center;
  margin-top: 20px;
}

footer {
  text-align: center;
  font-size: 0.8em;
}

.toiawase {
  background: #fff;
  border: 1px solid #ddd;
  text-align: center;
  padding: 20px;
}

.toiawase h3 {
  font-size: 120%;
  font-weight: bold;
  margin: 0;
  margin-bottom: 10px;
}

.toiawase h4 {
  font-weight: bold;
  margin: 0;
  margin-bottom: 10px;
}

.toiawase p {
  margin: 0;
}



.destinationBox {
  border: 1px solid #00A2E9;
  border-radius: 10px;
  padding: 10px;
  margin-bottom: 10px;
}

.destinationBox:last-of-type {
  margin-bottom: 0;
}

.destinationBox h4 {
  font-weight: bold;
  font-size: 1.2em;
  margin: 0 0 10px;
}


#vl001,
#vl002 {
  color: #000;
  border: none;
  background: transparent;
}

.dp-flex {
  display: flex;
}

.dp-flex div:first-child {
  margin-right: 15px;
}

@media screen and (max-width: 768px) {
  .dp-flex {
    width: 100%;
  }

  .dp-flex div {
    width: 45%;
  }
}