/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*    common                                        */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */




/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*    お問い合わせフォーム                          */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
#ContactFormBlock{

}
    /* 必須・任意 */
    #ContactFormBlock .FormTable .Optional,
    #ContactFormBlock .FormTable .Necessary{
      display: inline-block;
      font-size: 87.5%;
      padding: 0 0.5em;
      letter-spacing: 1px;
      border-radius: 2px;
      line-height: 1.5;
      vertical-align: middle;
    }
    #ContactFormBlock .FormTable .Optional{
      background: #6d69b9;
      color: #fff;
    }
    #ContactFormBlock .FormTable .Necessary{
      background: #f00;
      color: #fff;
    }
    #ContactFormBlock .FormTable th .Optional,
    #ContactFormBlock .FormTable th .Necessary{
      float: right;
    }
    #ContactFormBlock .FormTable td .TextItem{
      position: relative;
    }
    #ContactFormBlock .FormTable td .TextItem .Optional,
    #ContactFormBlock .FormTable td .TextItem .Necessary{
      position: absolute;
      right: 100%;
      margin-right: 25px;
      white-space: nowrap;
    }

    /* フォーム
    -------------------------------------- */
    #ContactFormBlock .FormTable{
      
    }
    #ContactFormBlock .FormTable th{
      padding: 1.5em 0;
      padding-left: 10px;
    }
    #ContactFormBlock .FormTable td{
      padding: 1.5em 25px;
      text-align: left;
    }
        #ContactFormBlock .FormTable td .TextItem{
          margin: 0.5em 0;
        }
        #ContactFormBlock .FormTable td .TextItem:first-child{
          margin-top: 0;
          margin-bottom: 1em;
        }
        #ContactFormBlock .FormTable td .FormItem +  .TextItem{
          padding-top: 1em;
          margin-top: 1em;
          border-top: 1px dotted #ccc;
        }
        #ContactFormBlock .FormTable td ul.FormItem{
          list-style: none;
          margin: 0.5em 1em;
        }
        #ContactFormBlock .FormTable td ul.FormItem li{
          margin: 0.25em 0;
        }
            /* フォーム部品 */
            #ContactFormBlock .FormTable td input,
            #ContactFormBlock .FormTable td textarea{
              border-radius: 4px;
              background: #fff;
              border: 1px solid #65db97;
            }
            #ContactFormBlock .FormTable td input[type="checkbox"]{
              margin-right: 5px;
            }
            #ContactFormBlock .FormTable td textarea{
              width: 100%;
            }

    /* 備考
    -------------------------------------- */
    #ContactFormBlock .Remarks{
      font-size: 75%;
      margin: 1.5em auto 0;
      padding: 1em 25px 0;
      border-top: 1px dotted #ccc;
    }
    #ContactFormBlock .Remarks > li{
      margin: 0.5em 0;
    }
    #ContactFormBlock .Remarks ul{
      margin: 0.5em 0 0 4em;
    }

    /* ボタン
    -------------------------------------- */
    #ContactFormBlock .ButtonBox{
      margin: 2em 0;
    }
    
    
    /* メッセージ
    -------------------------------------- */
    #ContactFormBlock .MessageBox{
      margin: 0 auto 25px;
      border: 3px solid #0fc8d9;
      padding: 25px;
      border-radius: 15px;
    }
        #ContactFormBlock .MessageBox .Heading{
          border-bottom: 1px solid #eee;
          padding-bottom: 0.5em;
          margin-bottom: 0.5em;
        }
        #ContactFormBlock .MessageBox .Heading::before{
          content: "●";
          color: #0fc8d9;
        }
        #ContactFormBlock .MessageBox .DetailText{
          font-size: 87.5%;
        }
        
        /* エラー用 */
        #ContactFormBlock .MessageBox.Error{
          border-color: #f00;
        }
        #ContactFormBlock .MessageBox.Error .Heading::before{
          color: #f00;
        }