@charset "UTF-8";
* {
box-sizing: border-box;
}

table.FormLayout {
border-collapse: collapse;
width: 100%;
margin-bottom: 30px;
}
table.FormLayout th ,
table.FormLayout td {
border: solid 1px #cecece;
padding: 10px 15px;
}
table.FormLayout th {
text-align: left;
background-color: #f9f9f9;
padding-right: 65px;
z-index: -1;
max-width: 30%;
}
table.FormLayout td {
background: #FFF;
border: solid 1px #cecece;
padding: 10px 15px;
}    
aside {
text-align: center;
padding: 15px 30px 30px 30px;
}
input, textarea, select {
border: solid 1px #ddd;
padding: 7px 10px;
margin: 5px 0;
vertical-align: middle;
border-radius: 1px;
font-size: 16px;
}
input {
width: 15em;
}
input:not([type=radio]) ,
input:not([type=checkbox]) {
width: auto;
}
textarea {
width: calc(100% - 35px);
height: 150px;
}
p {
margin: 0;
}
p.desc {
margin-bottom: 20px;
}
.submit {
text-align: center;
margin-top: 30px;
}
.rule {
font-weight: normal;
font-size: 0.8em;
color: #888;
}
.steps {
text-align: center;
padding: 20px 0;
font-size: 20px;
color: #ddd !important;
}
.steps span {
font-size: 20px;
font-weight: bold;
color: #ddd;
}
.steps span.now {
color: #333 !important;
}

/**
* for Mobile (~599px)
* -------------------------------------------------------------------
*/
@media screen and (max-width:599px) {
table.FormLayout th ,
table.FormLayout td {
display: block;
margin-top: -1px;
max-width: 100%;
}
}

/**
* for PC (600px~)
* -------------------------------------------------------------------
*/
@media screen and (min-width:600px) {
table.FormLayout th {
max-width: 50%;
}
}

/**
* for StepForm
* -------------------------------------------------------------------
*/
@media screen and (max-width:599px) {
table.FormLayout th {
width: 100%;
}
}
@media screen and (min-width:600px) {
table.FormLayout th {
width: 40%;
}
}

/** gray out tr **/
table.FormLayout {
	tr.disabled {
		pointer-events: none;
		opacity: 0.2;
		th::after {
			content: none;
		}
	}
}
