@charset "utf-8";

@font-face {
  font-family: 'Yu Gothic';
  src: local('Yu Gothic'), local('Yu Gothic Medium');
  font-weight: 300;
}
@font-face {
  font-family: 'Yu Gothic';
  src: local('Yu Gothic'), local('Yu Gothic Medium');
  font-weight: 500;
}
@font-face {
  font-family: 'Yu Gothic';
  src: local('Yu Gothic'), local('Yu Gothic Bold');
  font-weight: bold;
}

body {
  font-family: 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN',
    '游ゴシック体', 'Yu Gothic', YuGothic, Verdana, 'メイリオ', Meiryo,
    Helvetica, 'ＭＳ Ｐゴシック', sans-serif;
  font-size: 14px;
  color: #333;
  line-height: 1.6;
  -webkit-text-size-adjust: none;
}

/* IE10以上 */
@media all and (-ms-high-contrast: none) {
  body {
    font-family: Verdana, Meiryo, sans-serif;
  }
}

@media all and (-ms-high-contrast: active) {
  body {
    font-family: Verdana, Meiryo, sans-serif;
  }
}

a {
  color: #5a8fc6;
}
a:hover {
  color: #5a8fc6;
  text-decoration: none;
}
a:link {
  color: #5a8fc6;
}
a:visited {
  color: #5a8fc6;
}

.wrapp {
  width: 960px;
  margin-left: auto;
  margin-right: auto;
}

#copyright {
  font-family: Verdana, 'メイリオ', Meiryo, Helvetica, 'ＭＳ Ｐゴシック',
    sans-serif;
  font-size: 14px;
}

/* 入力欄 */
.heading_01_01 {
  font-size: 28px;
  font-weight: bold;
}
.heading_01_02 {
  padding-bottom: 24px;
}

.table_01 {
  border-top: 1px solid #ddd;
  border-left: 1px solid #ddd;
  width: 100%;
}
.table_01 td {
  border-right: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
  padding: 20px;
}
.table_01_02 {
  width: 200px;
}
.table_01_03 {
  background: #6391c1;
  color: #fff;
  font-weight: bold;
  border-bottom: 1px solid #ddd;
  position: relative;
}
input,
select,
textarea {
  font-size: 100%;
  padding: 3px;
}

/* 必須 */
.hissu {
  background-attachment: scroll;
  background-clip: border-box;
  background-color: #d23a65;
  background-image: none;
  background-origin: padding-box;
  background-position: 0 0;
  background-repeat: repeat;
  background-size: auto auto;
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
  color: #fff;
  float: right;
  font-size: 11px;
  font-weight: normal;
  margin-left: 5px;
  padding-bottom: 2px;
  padding-left: 6px;
  padding-right: 4px;
  padding-top: 2px;
  letter-spacing: 3px;
}

/* 任意 */
.opt {
  background-attachment: scroll;
  background-clip: border-box;
  background-color: #0077b5;
  background-image: none;
  background-origin: padding-box;
  background-position: 0 0;
  background-repeat: repeat;
  background-size: auto auto;
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
  color: #fff;
  float: right;
  font-size: 11px;
  font-weight: normal;
  margin-left: 5px;
  padding-bottom: 2px;
  padding-left: 6px;
  padding-right: 4px;
  padding-top: 2px;
  letter-spacing: 3px;
}
.ex {
  color: #426b97;
  font-size: 12px;
}
textarea {
  font-size: 12px;
  resize: vertical;
  line-height: 1.5em;
  padding: 5px !important;
}
.txt_sml {
  font-size: 12px;
  padding: 0 0 5px 0 !important;
}
.note {
  color: #e81747;
  padding: 0 0;
  margin-left: 10px;
  margin-bottom: 10px;
  font-size: 12px;
}
.radio {
  float: left;
  padding-right: 10px;
  padding-top: 12px;
}
.comment {
  font-size: 12px;
}

.purpose {
  font-size: 12px;
}

/* プライバシーポリシー */
.pp01 {
  background: #f5f5f5;
  padding: 24px;
  margin-bottom: 24px;
}
.pp02 {
  text-align: center;
  font-weight: bold;
  font-size: 20px;
  padding-bottom: 14px;
}
.pp03 {
  padding-bottom: 14px;
}
.pp04 {
  border: 1px solid #ddd;
  background: #e9eff5;
  padding: 14px;
  font-weight: bold;
  margin-bottom: 14px;
}
.pp05 {
  color: #e84d5c;
}
.pp06 {
  padding-bottom: 7px;
}
.pp07 {
  text-align: center;
  font-weight: bold;
  font-size: 16px;
  padding-bottom: 14px;
}
.pp08 {
  padding-top: 24px;
  padding-bottom: 24px;
}
.pp09 {
  text-align: center;
  margin-bottom: 48px;
}
.pp10 {
  text-align: center;
}
.pp__submit {
  text-align: center;
  padding-top: 20px;
}

/* その他 */
.a01 {
  padding-bottom: 14px;
}
.a02 {
  padding-bottom: 24px;
}
.tablemg01 {
  margin-bottom: 1px;
}

/* caption */
.cap_01 {
  font-size: 11px;
  color: #666;
}
.cap_02 {
  font-size: 14px;
  font-weight: bold;
  color: #f00;
  margin-bottom: 15px;
}

/* error message */
.errorMsg {
  color: #f00;
}

.step--block {
  margin-bottom: 10px;
}

.notice {
  margin-bottom: 5px;
  font-size: 11px;
}
.red {
  color: #e81747;
  padding-bottom: 10px;
}

.radio {
  float: left;
  padding-right: 10px;
  padding-top: 12px;
}

/* CF */
.cf::before,
.cf::after {
  content: '';
  display: block;
  overflow: hidden;
}
.cf::after {
  clear: both;
}
.cf {
  zoom: 1;
}

/* ---------- 確認画面 ------------ */
.pre--cap {
  margin-bottom: 10px;
}

/* ボタン */
.preBtn02 {
  padding-left: 70px;
}
div.submit-block {
  margin: 0 0 40px;
  text-align: center;
}
div.submit-block p.submit-notice {
  margin: 0 0 10px;
  font-size: 116%;
  font-weight: bold;
}
div.submit-block p.submit-button input {
  vertical-align: bottom;
}

/* ---------- 完了 ------------ */
.doc--end {
  background: #f5f5f5;
  padding: 24px;
  margin-bottom: 24px;
  text-align: center;
}
.doc--title__end {
  font-size: 19px;
  font-weight: bold;
  color: #111;
  margin-bottom: 10px;
}
.doc--end__cap {
  background: #fff;
  padding: 30px;
  margin: 20px auto;
  width: 75%;
}
.mgb10 {
  margin-bottom: 10px;
}