/* ------------------------------テキストボックス横幅 ------------------------------*/

body{}

img {
    margin: 0;
    padding: 0;
    vertical-align: top;
    border: none;
}

@media screen and (max-width:735px){
body {
    margin-top:0;
    height: 100%;
    margin-bottom:0;
    margin-left:auto;
    margin-right:auto;
    font: normal 12px;
}
img {
    max-width: 100%;
}
}


.ssmall_text {
    width: 70px;
}
.small_text {
    width: 120px;
}
.middle_text {
    width: 250px;
}
.long_text {
    width: 400px;
}
.max_text {
    width: 90%;
}
@media screen and (max-width:735px){
.ssmall_text {
width: 20%;
}
.small_text {
width: 30%;
}
.middle_text {
width: 80%;
}
.long_text {
width: 97%;
}
.max_text {
    width: 100%;
}
}    



#main {
    width: 100%;
}
#cont_area {
    width: 90%;
    margin: 0 auto;
}
#cont_box {
    width: 900px;
    margin: 0 auto;
}
.form_cont{
	padding:80px 0;
}

@media screen and (max-width:735px){
.main{
    padding:0 10px;
}
#cont_box{
    width: 100% !important;
    margin:10px auto;
    padding:20px 0px 50px;
}
.form_cont{
	width:94%;
	padding:60px 0;
	margin:0 auto;
}
}



.btform1 {
    width: 900px;
    font-size: 90%;
    margin: 0 auto;
    clear:both;
    padding-top:30px;
}
.btform1 p{
	font-size:16px;
	line-height:1.7;
	margin-bottom:20px;
}

.btform1 table,
#sendbutton_block {
    width: 100%;
    background-color: #f9f9f9;
    border-collapse: collapse;
}

#sendbutton_block {
    background-color: #ffffff;
    text-align: center;
}

/* ------------------------------フォーム内テーブル ------------------------------*/

.btform1 th {
    width: 30%;
    padding: 10px;
    background-color: #EBF6F6;
    text-align: left;
    font-size: 16px;
    font-weight:  bold;
    border: 1px #c0c0c0 solid;
}

.btform1 td {
    padding: 10px 5px 7px;
    background-color: #ffffff;
    border: 1px #c0c0c0 solid;
    font-size: 16px;
}
.btform1 td span{
    font-size: 14px;
}
.btform1 tr:first-child td span{
    display: inline-block;
    margin-bottom: 10px;
}
.btform1 td span .space{
	padding-left:100px;
}
table:last-child td{
    border: none;
}
@media screen and (max-width:735px){
.btform1 td span br{
    display:none;
}
.btform1 td span .space{
    padding-left:0;
}
.btform1 table,
.btform1 th,
.btform1 td,
.btform1 tr{
    border: none;
}

.btform1 table{
    background-color: #fff;
}

.btform1 th,
.btform1 td {
    display: list-item;
    width:97%;
    padding: 10px 0;
    list-style: none;
    border-collapse: collapse;
    /*スマホで勝手に文字が大きくなる対策*/
    max-height: 999999px;
}
.btform1 td table.noborder td {
    display: inline !important;
    padding: 10px 0;
    list-style: none;
    border-collapse: collapse;
    /*スマホで勝手に文字が大きくなる対策*/
    max-height: 999999px;
}

.btform1 th {
    line-height: 1.3;
    background-color: #eee;
    color: #666666;
    padding:8px 0 7px 17px;
    text-align:left;
    font-weight:bold;
    border-radius: 5px;
}
.btform1 th br{
    display:none;
}
.btform1 td {
    padding: 10px 0px 20px 5px;
    text-align: left;
    vertical-align: top;
    white-space: normal;
}
.btform1 td td{
    padding-left:0;
}
td span{
    width:100% !important;
}
}



.btform1 .required {
    width: 30px;
    padding: 10px 3px;
    background-color: #f9f9f9;
    text-align: center;
}

.btform1 .optional {
    width: 30px;
    padding: 10px 3px;
    background-color: #f9f9f9;
    text-align: center;
}

.btform1 input,
.btform1 select,
.btform1 textarea {
    margin: 7px;
    padding: 10px;
    font-size: 110%;
    border: solid 1px;
    border-radius: 5px;
}

.btform1 .button {
    margin: 25px 0px;
    text-align: center;
}

.required_input {
    background-color: #e0f8ff;
}

.confirmation_value {
    font-size: 110%;
    margin: 10px 10px;
}

.error_text {
    display:block;
    margin: 0px 7px;
    color: #BB0000;
    font-size: 105%;
}

.critical_error_text {
    margin: 10px;
    color: #CC0000;
    font-size: 150%;
    font-weight: bold;
    display: block;
}

.explanation_text {
    margin: 5px;
    display: block;
    font-size: 90%;
    font-weight: bold;
    color: #228B22;
}


/* ------------------------------ラベル関連------------------------------*/

.required_label {
    display: inline-block;
}
.ok_label {
    display: none;
}

.label {
    width:30px;
    height: 18px;
    font-size:12px;
    text-align:center;
    margin: 0px 5px 0px 0px;
    color: #fff;
    border: 1px solid #000;
    border-radius:3px;
    font-weight:normal;
}

.label-success{
    background-color: #5cb85c;
    border-color: #4cae4c;
}

.label-danger{
    background-color: #d9534f;
    border-color: #d43f3a;
}

.label-info{
    background-color: #5bc0de;
    border-color: #46b8da;
}



.btn-primary {
    width:35%;
    text-align:center;
    color: #333;
    line-height: 1.5;
    background-color: #ebf6f6;
    border: #ccc 1px solid;
    border-radius:5px;
    margin:0 auto;
    transition: all  0.3s ease;
}
.btn-primary:hover {
    color: #FFF;
    background-color: #5bc0de;
}

.btn-sm {
    text-align:center;
    font-size: 12px;
    line-height: 1.5;
    background-color: #eee !important;
    border: #ccc 1px solid !important;
    border-radius: 5px !important;
}
.btn-sm:hover {
    color: #FFF;
    background-color: #aaa !important;
}

label, input[type='checkbox'] {
    cursor: pointer;
}

/* ------------------------------見出し------------------------------*/

.form_title {
    margin: 10px 0 10px 0;
    padding: 5px 0 0 10px;
    text-align: left;
    height: 30px;
    width: 100%;
    border-left: 5px #000066 solid;
    border-bottom: 1px #CCCCCC dotted;
    font-size: 22px;
    font-weight: bold;
}

.gtitle  {
    margin: 10px 0 10px 0;
    padding: 5px 0 0 10px;
    text-align: left;
    height: 30px;
    width: 100%;
    border-left: 5px #000066 solid;
    border-bottom: 1px #CCCCCC dotted;
    font-size: 14px;
    font-weight: bold;
}



.info {
    font-size: 14px;
    margin-top: 15px;
    line-height: 18px;
}
.info strong {
    color: #F00;
}
.info_title{
    float:left;
    width:67%;
    display:block;
    color:#000066;
    font-size:24px;
    font-weight:bold;
    padding-bottom:25px;
    line-height:110%;
}
.info_body{
    float:left;
    width:67%;
    display:block;
    line-height:170%;
}
.info_image{
    float:right;
    width:33%;
    display:block;
    margin-top:-60px;
}
.info_image img{
    width:100%;
}


.normal_text {
    font-size: 12px
}

#img_pagetop {
    text-align: right;
    width: 100%;
}

#bottom_text02{
    display:block !important;
    text-align: center;
}
#bottom_text03{
    display:none !important;
}

.title_form_inq {
    padding-top:15px;
    border-bottom:dotted 1px #dddddd;
    border-top:dotted 1px #dddddd;
    margin-bottom:5px;
}


/* -----------------------------フロー------------------------------*/

#form_flow {
    text-align: left;
    margin-top: 25px;
}


.red {
    color: #FF0000;
}

.thanks{
	width:90%;
	margin:100px auto;
	text-align:center;
}
.thanks p{
	font-size:16px !important;
	line-height:1.8 !important;
}


/* ------------------------------画面の横幅が735px以下 (スマホ) ------------------------------*/
@media screen and (max-width:735px){

.btn-primary {
    width:60%;
}

.thanks{
	width:90%;
	margin:50px auto;
	text-align:center;
}
.thanks br{
	display:none;
}

.btform1,
#sendbutton_block {
    width: 100% !important;
    border: none !important;
    border-collapse: collapse;
    text-align: left;
    padding-top:0px;
}

input{
    border-radius:7px;
    margin: 5px 0px !important;
}
textarea{
    border-radius:7px;
}

#img_pagetop {
    float: right;
    width: 100px;
}

#bottom_text02{
    display:none !important;
}
#bottom_text03{
    display:block !important;
    width:95% !important;
    text-align: center;
    margin:0 auto;
}

.info_title{
    float:none !important;
    width:100% !important;
    display:block;
    color:#000066;
    font-size:20px;
    font-weight:bold;
    padding-bottom:25px;
    line-height:110%;
}
.info_body{
    float:none !important;
    width:100% !important;
    display:block;
    line-height:170%;
}
.info_image{
    float:none !important;
    width:50% !important;
    display:block;
    margin:0 auto;
}
.btform1 input,
.btform1 select,
.btform1 textarea {
    margin: 7px auto;
}
}
