@charset "utf-8";
.sectiontitle{
    font-weight: bold;
    font-size: 2.3rem;
    line-height: 3.2rem;
}
.titletext{
    border-top: 1px solid #000;
    display: inline-block;
    padding-top: 0.5rem;
    padding-bottom: 2rem;
    margin-top: 1rem;
}
.form_box{
    padding: 40px;
}
.formtable{
	width: 100%;
	border-top: 3px solid rgba(0,0,0,0.05);
	border-bottom: 3px solid rgba(0,0,0,0.05);
}
.formtable tr:nth-child(even){
	background: rgba(0,0,0,0.05);
}
.formtable th{
	font-weight: bold;
	width: 300px;
}
.formtable th,.formtable td{
	padding: 20px;
	line-height: 1.6;
	margin: 0;
	box-sizing: border-box;
	vertical-align: top;
	text-align: left;
}
.formtable span {
    background: red;
    font-size: 0.6em;
    padding: 0.3em 0.5em;
    display: inline-block;
    margin-left: 0.5em;
    border-radius: 0.5em;
    color: #fff;
    line-height: 1;
    vertical-align: middle;
}
.overfrow_y {
    overflow-y: scroll;
    height: 200px;
    font-size: 0.8em;
    line-height: 1.6;
    padding: 10px 15px;
    border: 1px solid #aaa;
    border-radius: 0.3em;
    margin-bottom: 15px;
}

.errtext {
    font-size: 0.8em;
    line-height: 1;
    font-weight: bold;
    color: red;
    margin-top: 0.5em;
}
.input_l,.input_m,.input_s{
	box-sizing: border-box;
}
.input_l{
	width: 100%;
}
.input_m{
	width: 120px;
}
.input_s{
	width: 60px;
}
textarea{
	width: 100%;
	box-sizing: border-box;
}

/* チェックボックス */
input[type=checkbox] {
    display: none;
}
.checkcss {
    box-sizing: border-box;
    cursor: pointer;
    display: inline-block;
    padding: 0 0 0 1.5em;
    position: relative;
    width: auto;
	margin-right: 1em;
}
.checkcss::before {
	content: '';
    background: #fff;
    border: 1px solid #555;
    display: block;
    height: 1em;
	width: 1em;
	position: absolute;
    left: 0;
    top: 0.35em;
    box-sizing: border-box;
}
.checkcss::after {
    content: '';
    border-right: 3px solid #005BAC;
    border-bottom: 3px solid #005BAC;
    display: block;
    height: 0.8em;
    width: 0.4em;
    position: absolute;
    left: 0.3em;
    top: 0.35em;
	transform: rotate(45deg);
    opacity: 0;
}
input[type=checkbox]:checked + .checkcss::after {
    opacity: 1;
}

/* ラジオボタン */
input[type=radio] {
    display: none;
}
.radiocss {
    box-sizing: border-box;
    cursor: pointer;
    display: inline-block;
    padding: 0 0 0 1.3em;
    position: relative;
    width: auto;
	margin-right: 1em;
}
.radiocss::before {
    content: '';
    display: block;
    background: #fff;
    border: 1px solid #555;
    border-radius: 50%;
    position: absolute;
    left: 0;
    top: 0.3em;
    height: 1em;
    width: 1em;
    box-sizing: border-box;
}
.radiocss::after {
    content: '';
    display: block;
    background: #005BAC;
    border-radius: 50%;
    position: absolute;
    left: 0.2em;
    top: 0.5em;
    height: 0.6em;
    width: 0.6em;
    opacity: 0;
}
input[type=radio]:checked + .radiocss::after {
    opacity: 1;
}

  .btnarea{
    margin-top: 20px;
  }
  .btn, a.btn, button.btn {
    color: #ffffff!important;
    font-weight: bold;
}
@media only screen and (max-width: 768px) {
    .form_box{
        padding: 0;
    }
	.formtable th, .formtable td{
        padding: 15px 20px 20px;
		display: block;
		width: 100%;
	}
	.formtable th{
		padding-bottom: 0;
	}
	.formtable td{
		padding-top: 10px;
	}
}
