body {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "ＭＳ Ｐゴシック", sans-serif;
    font-size: 14px;
    line-height: 18px;
    color: rgb(51, 51, 51);
    background-color: rgb(255, 255, 255);
    margin: 0px;
}

.row {
    margin-left: 10px;
    margin-right: 12px;
}

.freetext {
    margin-bottom: 40px;
    margin-top: 20px;
    color: #221815;
    font-size: 14px !important;
}

div {
    display: block;
}

label.radio, label.checkbox {
    margin-bottom: 2px;
    padding-bottom: 5px;
    cursor: pointer;
}

.radio, .checkbox {
    padding-left: 0;
    margin-right: 10px;
    min-height: 18px;
}

.check {
    margin-left:1em;
}

.text.medium {
    width: 360px;
}


label, input, button, select, textarea {
    font-size: 14px;
    font-weight: normal;
    line-height: 18px;
}

.answer {
    float: left;
    padding-left: 25px;
    margin-bottom: 40px;
    width: 95%;
}

.question {
    float: left;
    width: 100%;
    margin: 10px 0 15px 5px;
    line-height: 22px;
    border-bottom: #58c1e5 solid 2px;
    padding-bottom: 10px;
}

.question .question-no {
    float: left;
    margin-right: 10px;
    font-weight: bold;
    line-height: 22px;
}

.question .question-text {
    float: left;
    width: 90%;
    font-weight: normal;
    line-height: 22px;
    font-size: 16px;
}

.container {
    width: 900px;
    background-color: #fcf8eb;
}

.container {
    margin-right: auto;
    margin-left: auto;
    *zoom: 1;
}

label {
    display: block;
    margin-bottom: 5px;
}

label, input, button, select, textarea {
    font-size: 14px;
    font-weight: normal;
    line-height: 18px;
}

label {
    display: block;
    margin-bottom: 5px;
}

.radio input.radio, .checkbox input.radio, .radio input.checkbox, .checkbox input.checkbox {
    float: left;
    margin-left: 0;
    margin-right: 5px;
    min-height: 0;
}

.textarea.medium {
    width: 360px;
    height: 80px;
}


input, textarea, .uneditable-input {
    margin-left: 0;
}

textarea {
    resize: both;
}

.footer {
    text-align: center;
    background: #fcf8eb;
    padding: 15px;
}

.action-btn {
    margin-top: 40px;
    margin-bottom: 30px;
    text-align: center;
}

.action-btn .btn {
    padding-left: 40px;
    padding-right: 40px;
    margin-left: 10px;
    margin-right: 10px;
}




.btn {
    display: inline-block;
    *display: inline;
    *zoom: 1;
    padding: 4px 10px 4px;
    margin-bottom: 0;
    font-size: 14px;
    line-height: 18px;
    *line-height: 20px;
    color: #333333;
    text-align: center;
    text-shadow: 0 1px 1px rgb(255 255 255 / 75%);
    vertical-align: middle;
    cursor: pointer;
    background-color: #f5f5f5;
    background-image: -moz-linear-gradient(top, #ffffff, #e6e6e6);
    background-image: -ms-linear-gradient(top, #ffffff, #e6e6e6);
    background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), to(#e6e6e6));
    background-image: -webkit-linear-gradient(top, #ffffff, #e6e6e6);
    background-image: -o-linear-gradient(top, #ffffff, #e6e6e6);
    background-image: linear-gradient(top, #ffffff, #e6e6e6);
    background-repeat: repeat-x;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#e6e6e6', GradientType=0);
    border-color: #e6e6e6 #e6e6e6 #bfbfbf;
    border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
    *background-color: #e6e6e6;
    filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
    border: 1px solid #cccccc;
    *border: 0;
    border-bottom-color: #b3b3b3;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    *margin-left: .3em;
    -webkit-box-shadow: inset 0 1px 0 rgb(255 255 255 / 20%), 0 1px 2px rgb(0 0 0 / 5%);
    -moz-box-shadow: inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05);
    box-shadow: inset 0 1px 0 rgb(255 255 255 / 20%), 0 1px 2px rgb(0 0 0 / 5%);
}


.btn-primary {
    background-color: #C91B1D;
    background-image: -moz-linear-gradient(top, #0088cc, #0055cc);
    background-image: -ms-linear-gradient(top, #0088cc, #0055cc);
    background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#0088cc), to(#0055cc));
    background-image: -webkit-linear-gradient(top, #0088cc, #0055cc);
    background-image: -o-linear-gradient(top, #0088cc, #0055cc);
    background-image: linear-gradient(top, #0088cc, #0055cc);
    background-repeat: repeat-x;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#0088cc', endColorstr='#0055cc', GradientType=0);
    border-color: #0055cc #0055cc #003580;
    border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
    *background-color: #0055cc;
    filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
}

.btn-primary, .btn-primary:hover, .btn-warning, .btn-warning:hover, .btn-danger, .btn-danger:hover, .btn-success, .btn-success:hover, .btn-info, .btn-info:hover, .btn-inverse, .btn-inverse:hover {
    color: #ffffff;
    text-shadow: 0 -1px 0 rgb(0 0 0 / 25%);
}

.alert-danger, .alert-error {
    background-color: #f2dede;
    border-color: #eed3d7;
    color: #b94a48;
}

ul {
    display: block;
    list-style-type: disc;
    margin-block-start: 1em;
    margin-block-end: 1em;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
    padding-inline-start: 40px;
}

li {
    display: list-item;
    text-align: -webkit-match-parent;
}

.required {
    display: inline-block;
    background-image: url(../img/required.jpg);
    background-repeat: no-repeat;
    width: 25px;
    height: 16px;
    margin-left: 5px;
    margin-right: 5px;
}

.alert {
    padding: 8px 35px 8px 14px;
    margin-bottom: 18px;
    text-shadow: 0 1px 0 rgb(255 255 255 / 50%);
    background-color: #fcf8e3;
    border: 1px solid #fbeed5;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
}

body {
    font-size: 14px;
    margin-top: 30px;
    margin-bottom: 50px;
}

.row:before, .row:after {
    display: table;
    content: "";
}

.row:before, .row:after {
    display: table;
    content: "";
}

.row:after {
    clear: both;
}

.errorp {
    display: inline-block;
    vertical-align: 8px;
}

.errormsg {
	margin-top: 30px;
    text-align: center;
    display:block;
    
}

.error {
    display: inline-block;
    background-image: url(../img/error.jpg);
    background-repeat: no-repeat;
    width: 30px;
    height: 30px;
    margin-left: 5px;
    margin-right: 5px;
    margin-top: 10px;
}

@media screen and (max-width: 640px) {
	img {
        	max-width: 100%;
        }
    .text.medium {
        width: 100%;
        margin-left: 5px;
        margin-top: 1px;
    }
    .textarea.medium {
        width: 100%;
        height: 80px;
        margin-left: 5px;
        margin-top: 1px;
    }
    .answer {
    	float: left;
    	padding-left: 0px;
    	margin-bottom: 40px;
    	width: 95%;
	}
    .container {
        width: 100%;
	}
	body {
    margin-top: 0px;
    margin-bottom: 0px;
    }
    .question .question-text {
    float: none;
    width: 100%;
    font-weight: normal;
    line-height: 22px;
    font-size: 16px;
    }
    .radio input.radio, .checkbox input.radio, .radio input.checkbox, .checkbox input.checkbox {
    float: left;
    margin-left: 5px;
    margin-right: 5px;
    min-height: 0;
   }
}