@charset "utf-8";
* {
    font-family:'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
    margin:0;
    padding:0;
    color:#696969;
    line-height:1.5;
}
html {
    font-family:'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
    text-align:left;
    font-size:13px;
    color:#696969;
    border:0;
    margin:0;
    padding:0;
    line-height:1.5;
}
body {
    font-family:'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
    text-align:left;
    font-size:13px;
    border:0;
    margin:0;
    padding:0;
    line-height:1.5;
    margin: 0 auto;
}
h1, h2, h3, h4, h5, h6, address {
    font-family:'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
    text-align:left;
    margin:0;
    padding:0;
    border:0;
    font-style:normal;
    font-weight:normal;
    font-size: 100%;
}

.container h2 {
	border-bottom: 1px solid #DEDEDE;
	border-left: 5px solid #DEDEDE;
	margin: 15px 10px 10px;
	padding: 2px 7px;
	font-weight: bold;
	font-size: 110%;
}


div, blockquote, pre, ul, ol, li, dl, dt, dd {
    font-family:'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
    text-align:left;
    margin:0;
    padding:0;
    border:0;
    font-size:100%;
    line-height:1.5;
}
p {
    font-family:'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
    text-align:left;
    margin:0;
    padding:0 0 10px;
    border:0;
    font-size:100%;
    line-height:1.5;
    clear:both;
}
table, caption, th, td {
    font-family:'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
    text-align:left;
    margin:0;
    padding:0;
    border:0;
    font-style:normal;
    font-weight:normal;
    font-size:100%;
    line-height:1.5;
}
img {
    border:0;
}
a:link, a:visited {
    color:#397dd0;
    text-decoration:underline;
}
a:active, a:hover {
    color:#397dd0;
    text-decoration:none;
}
input[type="text"], input[type="password"] {
    height:18px;
    width: 90%;
    border: 1px #CCC solid;
}

textarea {
    width: 100%;
    border: 1px #CCC solid;
}

.clear{
    clear:both;
    font-size:0;
    line-height: 0;
    width: 0;
    height: 0;
}
optgroup option {
    padding-left: 10px !important;
}
.txtCenter {
	text-align: center;
}
		  
		  body{background-color: #dcdcdc;}
		  
		  .container{
		  width:100%;
		  max-width:750px;
		  padding-top:48px;
		  background-color: #ffffff;
		  min-height:100vh;}
		  
		  
		  h1 {
	border: #CCC 1px solid;
	-webkit-border-radius: 4px;	/* Safari,Google Chrome用 */
	-moz-border-radius: 4px;   /* Firefox用 */
	-webkit-border-radius: 4px;	/* Safari,Google Chrome用 */
	-moz-border-radius: 4px;   /* Firefox用 */
	padding: 5px 10px;
	margin-left: 10px;
	margin-right: 10px;
}
 h1 span {
	border-left: #4682b4 5px solid;
	padding-left: 10px;
	font-size: 14pt;
	font-weight: bold;
}
		  
		  
		  /*** FORM ***/
#form_table {
	/* border: 1px #E6E6E6 solid; */
	width:100%;
}
#form_table th {
	background: #87cefa;
	padding: 5px 10px;
	font-weight: bold;
	margin: 0;
}
#form_table td {
	padding: 5px 10px;
	margin: 0;
}
		  
		  
		  /*** テンプレ対応 # → . ***/
p.require_sign_wrapper {
	padding: 5px 10px;
}
p.require_sign_wrapper,
span.require_sign_wrapper {
	font-weight: normal !important;
	color: #dd0000;
}
table.form_table {
	width: 100%;
	margin: 0 0 1em;
	border-spacing: 0;
	border-collapse: collapse;
	/*border: 1px #E6E6E6 solid;*/
}
table.form_table th {
	border-top: 1px #E6E6E6 solid;
	border-bottom: 1px #E6E6E6 solid;
	padding: 8px 24px;
	background: #b8e2fc; /*#FCF2B6 93d273;*/
	font-weight: bold;
}
table.form_table th ul.question_wrapper {
	margin: 0;
	padding: 0;
}
table.form_table th ul.question_wrapper li {
	display: table-cell;
	margin: 0;
	padding: 0;
	list-style-type: none;
	text-align: left;
}
table.form_table th ul.question_wrapper li.qnum {
	padding-right: .6em;
	white-space: nowrap;
}
table.form_table th.message_wrapper {
	border: 0 none !important;
	background: transparent !important;
	padding: 0 !important;
}
table.form_table td {
	margin: 0 !important;
	/* border: 1px #E6E6E6 solid; */
	padding: 16px 32px;
}
table.form_table.lnr2sep td {
	width: 50%;
	padding: 0 .5% !important;
}
table.form_table.lnr3sep td {
	width: 33.3%;
	padding: 0 .5% !important;
}
table.form_table.lnr4sep td {
	width: 25%;
	padding: 0 .5% !important;
}
table.form_table.lnr5sep td {
	width: 20%;
	padding: 0 1% !important;
}
table.form_table.lnr6sep td {
	width: 16.6%;
	padding: 0 1% !important;
}
table.form_table.lnr7sep td {
	width: 14.2%;
	padding: 0 1% !important;
}
table.form_table.lnr8sep td {
	width: 12.5%;
	padding: 0 1.5% !important;
}
table.form_table.lnr9sep td {
	width: 11.1%;
	padding: 0 1.5% !important;
}
table.form_table.lnr10sep td {
	width: 10%;
	padding: 0 1.5% !important;
}

input#submit_button,
input#submit_button_GoBack {
	background: #4682b4; /*#339fc3;*/
	-webkit-border-radius: 4px;	/* Safari,Google Chrome用 */
	-moz-border-radius: 4px;   /* Firefox用 */
	text-align: center;
	font-weight: bold;
	color: #FFF;
	padding: 4px 30px;
	border: 1px #E6E6E6 solid;
	cursor: pointer;
	outline: none;
	margin: 10px auto;
}
		  
		  
		  
		  
		  div#progress_block {
	width: 40%;
	border: #C0C0C0 1px solid;
	-webkit-border-radius: 4px;	/* Safari,Google Chrome用 */
	-moz-border-radius: 4px;   /* Firefox用 */
	-webkit-border-radius: 4px;	/* Safari,Google Chrome用 */
	-moz-border-radius: 4px;   /* Firefox用 */
	padding: 0;
	margin:0 16px 16px auto;
	background-color: #EEE;
	position: relative;
	height: 20px;
}
div#progress_bar {
	position: absolute;
	background: url(../img/progress_bar.png) repeat-x left center;
	height: 18px;
}
div#progress_percentage {
	text-align: center;
	font-weight: bold;
	position: absolute;
	width: 100%;
	text-shadow: none;
	color: #696969;
	height:19px;

}
.req{
	color: #DD0000;
}