/* ===================================
基本設定
=================================== */
html {
  overflow-y: scroll;
  }
  
  html, body, div, span, applet, object, iframe,
  h1, h2, h3, h4, h5, h6, p, blockquote, pre,
  a, abbr, acronym, address, big, cite, code,
  del, dfn, em, font, img, ins, kbd, q, s, samp,
  small, strike, strong, sub, sup, tt, var,
  b, u, i, center,
  dl, dt, dd, ol, ul, li,
  fieldset, form, label, legend,
  table, caption, tbody, tfoot, thead, tr, th, td, input,textarea {
  margin: 0;
  padding: 0;
  font-weight: normal;
  font-style: normal;
  box-sizing: border-box;
  }
  
  li {
  list-style: none;
  }
  
  /* ===================================
  共通
  =================================== */
  /* フォント */
  body,footer,select, input, button, textarea {
  font-family: 游ゴシック, "Yu Gothic", 游ゴシック体, YuGothic, YuGothic, Avenir, Verdana, Arial, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", メイリオ, Roboto, Meiryo, sans-serif;
  }
  img{
  width: 100%;
  height: auto;
  }
  
  /* ===================================
  画面全体のレイアウト
  =================================== */
  /* 画面全体の表示設定 */
  body {
  color: rgb(62, 58, 57);
  line-height: 1.75;
  font-size: 16px;
  background: #F2F2F2; /* 背景色 */
  /*text-align: center; !* フォームエリアを中央に表示 *!*/
  }
  
  /* フォームエリア全体の設定 */
  .container {
  position: relative;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  margin: 0 auto;
  padding: 0;
  }
  .section,header,footer{
  position: relative;
  display: block;
  width: 100%;
  height: auto;
  }
  
  
  /* ===================================
  ヘッダー
  =================================== */
  #header{
  background-color: white;
  }
  #headerWrapper{
  margin: 0 auto;
  border-bottom: solid 3px #d4da54;
  position: relative;
  z-index: 9999;
  width: 100%;
  height: 67px;
  }
  .logoWrap{
  position: relative;
  top:-5px;
  display: flex;
  align-items: center;
  height: 100%;
  width: 1000px;
  margin: 0 auto;
  }
  #header .logo{
  width: 146px;
  height: auto;
  }
  
  
  /* ===================================
  フッター
  =================================== */
  #footerWrapper{
  background-color: #ffffff;
  padding: 60px 0 45px;
  }
  #footerAddress{
  display: flex;
  justify-content:space-between;
  }
  #copyrightWrap {
  padding: 20px 0 45px;
  background: #000;
  border-top: solid 2px #b23031;
  color: #666;
  font-size: 12px;
  text-align: center;
  }
  
  /* 【注意】　送信完了ページで設問を表示しない場合のみ　*/
  #frm_formthanks footer{
  margin-top: 60px
  }
  
  /* ===================================
  設問エリアのレイアウト
  =================================== */
  .titleWrapper{
  background-color: #ffffff;
  }
  .pageTitle{
  display: inline-block;
  color: #3e3a39;
  font-size: 36px;
  letter-spacing: -0.025em;
  line-height: 1.25;
  padding: 74px 0;
  }
  .titleExplan {
  display: block;
  margin: 8px 0 18px;
  letter-spacing: 0;
  line-height: 1;
  color: #3E3A39;
  font-size: 18px;
  font-weight: normal;
  }
  #mainContent{
  padding-top: 50px;
  }
  .read{
  padding-bottom:60px;
  letter-spacing: -.05em;
  text-align: center;
  }
  .formWrapper{
  margin-bottom: 80px;
  padding: 40px 60px 60px;
  background-color:#ffffff;
  }
  
  /* お問い合わせ */
  .contactWrapper{
  display: flex;
  align-items:center;
  margin-top: 50px;
  padding:30px 0;
  border:1px solid #cccccc;
  background-color: #f8f8f8;
  }
  .contactTitle{
  font-size: 18px;
  font-weight: bold;
  width: 240px;
  text-align: center;
  border-right: 1px solid #cccccc;
  }
  .contactBody{
  padding-left: 40px;
  }
  .contactStaff{
  
  }
  .contactMethod{
  display: flex;
  }
  .contactTel{
  margin-right: 1.5em;
  }
  
  
  
  
  
  /* 設問エリア全体の設定 */
  .wrapper {
  position: relative;
  width: 100%;
  margin: 0 auto;
  
  }
  .contentSize{
  width: 1000px;
  }
  
  /* 設問の表 */
  table.items {
  border:none;
  width: 100%;
  margin-bottom: 2.5em;
  }
  
  /* 設問の行 */
  tr.item {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  }
  tr.pinfo {
  display: table-cell;
  }
  .items tbody {
    display: flex;
  flex-wrap: wrap;
  }
  
  /* 個人情報入力欄のタイトル */
  #tabel-ttl td {
  display: block;
  }
  .ttl-personal-info{
  font-size: 1.5em;
  line-height: 1;
  text-align: center;
  margin-bottom: 1.5em;
  }
  
  /* 必要であれば行のデザインを設定することができます */
  
  /*設問名のセルのデザイン */
  
  th.label {
  box-sizing: border-box;
  padding: 1em 24px;
  border:1px solid #f2f2f2;
  font-weight: bold;
  vertical-align: middle; /* ラベルの配置 セルの上部に表示したい場合は top */
  background: #e5f3f7;
  }
  
  .item th.label{
  width: 100%;
  display: block;
  text-align: left;
  }
  .item.pinfo th.label{
  width: 240px;
  display: table-cell;
  }
  
  /* 設問の入力セルおよび表示セルのデザイン */
  td.value {
  padding: 30px 40px;
  border:1px solid #f2f2f2;
  background: #f8f8f8;
  }
  
  .item td.value {
  width: 100%;
  display: block;
  }
  .item.pinfo td.value {
  width: 640px; /* 入力コントロールの幅に合わせて調整してください */
  display: table-cell;
  }
  
  .item td.value input{
  margin-right: 1em;
  }
  
  /* 設問の入力例/説明セルのデザイン */
  td.comment {
  display: none;
  }
  
  /* 入力時の補足説明文 */
  .commentText{
  padding-bottom:1em;
  font-weight: bold;
  font-size: 0.85em;
  }
  
  /* 入力セルの「氏」「名」の文字のデザイン */
  span.label_name {
  padding-right: 1em;
  }
  
  
  /* 入力確認画面、完了画面の入力された文字のデザイン */
  p.value {
  font-size: 100%;
  }
  
  /* ボタンの表示エリアの設定 */
  .button_area {
  margin: 40px auto 0; /* 中央に表示、上下に10pxの余白 */
  padding: 0; /* ボタンとの上下の隙間のサイズ */
  text-align: center; /* 中央にボタンを表示 */
  }
  #frm_formconfirm .button_area{
  display: flex;
  flex-direction:column-reverse;
  }
  /* 【注意】　送信完了ページで設問を表示しない場合のみ　*/
  #frm_formthanks .button_area{
  margin-top:0;
  }
  /*　グレーボタンの設定　*/
  #lf_form_submit_button.unchecked {
  background-color: #ccc;
  }
  #lf_form_submit_button.unchecked:hover {
  background: #ccc;
  }
  
  /* 青　ボタンの設定　*/
  #lf_form_submit_button{
  /* ios対策 */
  appearance: none;
  -webkit-appearance: none;
  }
  #lf_form_submit_button,
  #button_confirm_submit,
  #frm_formthanks input[type=submit] {
  background-color: #0086af;
  color: #fff;
  }
  #lf_form_submit_button.checked{ 
  background-color: #0086af;
  }
  /*ホバー*/
  #lf_form_submit_button.checked:hover,
  #button_confirm_submit:hover,
  frm_formthanks input[type=submit] {
  background: #005198;
  }
  
  
  
  /* ゴーストボタン設定 */
  #button_confirm_back{
  background-color: #fff;
  color: #0086af;
  border: 1px solid #0086af;
  }
  
  /*　プライバシーポリシー　*/
  .privacy_policy {
  margin: 0;
  }
  
  
  /* 入力エラーメッセージのデザイン */
  .message {
  padding: 5px 10px 5px 10px; /* メッセージテキストと背景色の隙間のサイズ */
  margin: 10px 13px 10px 13px; /* 上 右 下 左 の隙間のサイズ */
  font-size: 14px;
  font-weight: bold;
  color: #c00;
  background: LightYellow;
  }
  
  /* 公開終了メッセージのデザイン */
  .finished-message {
  padding: 5px 10px 5px 10px; /* メッセージテキストと背景色の隙間のサイズ */
  margin: 10px 13px 10px 13px; /* 上 右 下 左 の隙間のサイズ */
  font-size: 14px;
  font-weight: bold;
  color: #c00;
  background: MistyRose;
  }
  
  /* ===================================
  入力コントロールのデザイン
  =================================== */
  /* 確認／送信／戻る／登録ボタン */
  input[type=submit] {
  /*display: block;*/
  min-width: 400px;
  max-width: 880px;
  margin: 0.5em auto;
  font-size: 16px;
  font-weight: bold;
  text-align: center;
  line-height: normal;
  padding: 1em; /* ボタンの文字の 上 右 下 左 の隙間のサイズ */
  border: none; /* ボタンに枠線をつけたい場合は、ここを設定してください */
  color: white; /* 文字の色 */
  outline: none;
  box-shadow: 0 0 0.5em #ccc;
  -webkit-transition: .3s;
  transition: .3s;
  }
  
  input[type=submit]:hover {
  cursor: pointer;
  }
  
  
  input[type=text], textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  -o-appearance: none;
  appearance: none;
  padding: 1em;
  border: none;
  width: 100%;
  background: #fff;
  box-shadow: 0 0 0.5em #ccc;
  line-height: normal;
  }
  input[name="person_name_last"],input[name="person_name_first"]{
  width: 174px;
  }
  input[name="person_name_last"]{
  margin-right: 1em;
  }
  
  
  /* 入力中のフィールドの背景色 */
  /* それぞれの入力フィールドにカーソルが移動したときに背景の色が変わります。不要な場合は削除してください。 */
  /* テキストボックス */
  input[type="text"]:focus {
  background-color: LightYellow;
  }
  /* プルダウン */
  select:focus {
  background-color: LightYellow;
  }
  select{
  width: 14em;
  height: 2.5em;
  line-height: normal;
  padding: 0 0 0 1em;
  background: #fff;
  }
  option[value*='index0']{
  display: none;
  }
  
  /* ////////////ここの一列削除//////////// セレクトボックスから2021年11月18日(木) 9:00〜17:00を削除する場合！  ////////////ここの一列削除////////////
  
  option[value*='index1'] {
  display: none;
  }
  
  ////////////ここの一列削除//////////// セレクトボックスから2021年11月18日(木) 9:00〜17:00を削除する場合！ ////////////ここの一列削除//////////// */
  
  
  
  /* テキストエリア */
  textarea:focus {
  background-color: LightYellow;
  }
  
  
  textarea {
  resize: none;
  height:auto
  }
  
  
  
  
  /* ===================================
  必須項目、任意項目のマークおよびメッセージなど
  =================================== */
  /* 必須項目、任意項目の共通マーク */
  span.optional,
  span.required{
  display: inline-block;
  /*float: right;*/
  margin-left: 0.5em;
  font-weight: bold;
  color: #fff;
  font-size:.7em;
  padding: 0.3em 0.5em 0.1em;
  /*background: #c00;*/
  }
  /* 必須項目マーク */
  span.required {
  background: #c00;
  }
  
  span.required:after {
  /* ここを編集することで表示されるマークを変更できます */
  content: "必須";
  }
  
  /* 任意項目のマーク */
  span.optional{
  background: #024293;
  }
  
  /* 必須項目についての説明文 */
  p.required_msg {
  text-align: right;
  padding: 1em 0;
  margin-right: 4px;
  font-size: 80%;
  font-weight: bold;
  color: #c00;
  }
  
  p.required_msg:after {
  /* ここを編集することで表示されるマークを変更できます */
  content: "「必須」となっている項目は必ず入力してください。";
  }
  
  
  
  
  /* メールアドレスの再入力メッセージ */
  p.label_mail {
  margin: 5px 0;
  }
  
  p.label_mail:after {
  /* ここを編集することで表示されるメッセージを変更できます */
  content: "確認のため、もう一度メールアドレスを入力してください";
  }
  
  .spOnly{
  display: none;
  }
  
  
  
  
  
  /* ===================================
  スマートフォン表示用のレイアウト
  =================================== */
  /* スマートフォンとして認識する画面の横幅のサイズ */
  @media screen and ( max-width: 640px ) {
  .spOnly{
    display: block;
  }
  img {
    width: 100%;
    height: auto;
  }
  /* ===================================
  ヘッダー
  =================================== */
  .logoWrap,.wrap{
    width: 100%;
    justify-content:center;
  }
  .logoWrap{
    top: -0.125em;
  }
  #header .logo{
    width: 43.2%;
  }
  
  .pageTitle{
    font-size: 6.25vw;
    padding-top: 7.8125%;
    padding-bottom: 7.8125%;
  }
  
  /*名前の入力フォームの調整*/
  .item td.value input[name='person_name_first'],
  .item td.value input[name='person_name_last']{
    margin-right: 0;
  }
  
  /* ===================================
  フッター
  =================================== */
  
  /* 【注意】　送信完了ページで設問を表示しない場合のみ　*/
  #frm_formthanks footer{
    margin-top: 10%;
  }
  
  #footerWrapper{
    background-color: #ffffff;
    padding: 5% 0 6.6666666667%;
    width: 100%;
  
  }
  #footerAddress{
    display: flex;
    justify-content:center;
    position: relative;
    width: 100%;
  }
  #footerAddress .logo{
    width: 53.3333333333%;
    margin: 0 auto;
    display: block;
  }
  .privacyIcon{
    margin: 0;
    position: absolute;
    top: 3.5em;
    right: 3.125%;
    width: 12%;
    font-size: 3.125vw;
  }
  .privacyIcon a {
    display: inline-block;
  }
  
  /* ===================================
  設問エリアのレイアウト
  =================================== */
  /* フォームエリア全体の設定 */
  .container {
    width: 100%;
  }
  .contentSize{
    width: 100%;
    padding-left:3.125%;
    padding-right:3.125%;
  }
  
  /* 設問エリア全体の設定 */
  .wrapper {
  }
  
  #mainContent{
    padding-top:1.5em;
  }
  .read{
    text-align: left;
    padding-bottom: 1.5em;
  }
  .formWrapper{
    padding: 10% 3.3333333333% 10%;
  }
  
  /* 設問の表 */
  table.items {
    width: 100%;
  }
  
  /*設問名のセルのデザイン */
  .item th.label {
  /*float: left;*/
    display: block;
    width: 100%;
    padding: .75em 7.1428571429%;
    font-size: 4.6875vw;
    line-height: 1.2;
  }
  
  /* 必須項目のマーク */
  span.required,span.optional {
    float: initial;
  }
  
  /* 設問の入力セルおよび表示セルのデザイン */
  .item td.value {
  /*float: left;*/
    display: block;
    width: 100%; /* 入力コントロールの幅に合わせて調整してください */
    padding: 1em;
    border-top: solid 2px #fff;
  }
  .item.pinfo th.label,
  .item.pinfo td.value{
    width: 100%;
    display: block;
  }
  
  /* 設問の入力例/説明セルのデザイン */
  td.comment {
    display: none;
  }
  
  /* 入力セルの「氏」「名」の文字のデザイン */
  span.label_name {
    padding-left: 0.5em;
  }
  
  /* 設問の入力例/テキストボックス */
  input[type="text"] {
  }
  
  /* 設問の入力例/テキストエリア */
  textarea {
  }
  
  /* privacy policy */
  
  .button_area {
    margin: 2em auto 0;
    padding: 0;
  }
  /* お問い合わせ */
  .contactWrapper{
    flex-direction: column;
    margin-top: 2em;
    padding:1em;
  }
  .contactTitle{
    width: 100%;
    text-align: center;
    border-right: none;
    padding-bottom: 0.5em;
  }
  .contactBody{
    padding-left: 0px;
  }
  .contactStaff{
    /*letter-spacing: -0.05em;*/
  }
  .contactMethod{
    flex-direction: column;
  }
  .contactTel{
    margin-right: 0em;
  }
  
  /* ボタンの表示エリアの設定 */
  .button_area {
  }
  
  /* 確認／送信／戻る／登録ボタン */
  input[type=submit] {
    width: 100%;
    min-width: auto;
    max-width: none;
    height: auto;
    line-height: normal;
    padding: .5em 0;
  }
  
  /* 青　ボタンの設定　*/
  /* ゴーストボタン設定 */
  #lf_form_submit_button,
  #button_confirm_submit,
  #button_confirm_back,
  #frm_formthanks input[type=submit] {}
  
  input[name="person_name_last"],input[name="person_name_first"]{
    width: 85%;
  }
  input[name="person_name_last"]{
    margin-right: 0em;
    margin-bottom: 1em;
  }
  .button_area p {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column-reverse;
  }
  }
  /*SMPform*/
  #ss_stage {
    width: 100%;
  }
  .ss_upComment {
      padding-bottom: 1em;
      font-weight: bold;
      font-size: 0.85em;
  }
  #ss_header {
    width: auto;
  }
  