@charset "UTF-8";

.contact2__div {
	padding:25px 0;
}

.contact2__div.last {
	margin-bottom:17px;
	padding:25px 0 50px;
	border-bottom:1px solid #E7E7E7;
}

.contact2__table {
	border:2px solid #282828;
	border-spacing:0;
	border-collapse:separate;
	border-radius:10px;
}

.contact2__table thead th {
	padding:0 0 0 80px;
	border-radius:6px 6px 0 0;
	background:url(../img/ico_title_white.png) 40px center no-repeat #282828;
	background-size:25px 40px;
	color:#FFF;
	font-weight:700;
	font-size:28px;
	font-size:2.8rem;
	line-height:65px;
}

.contact2__table tbody th {
	padding:30px;
	width:320px;
	border-right:1px solid #A3AEAE;
	border-bottom:1px solid #A3AEAE;
	vertical-align:middle;
	text-align:right;
	white-space:nowrap;
	font-size:18px;
	font-size:1.8rem;
	line-height:1.4;
}

.contact2__table tbody th span {
	display:inline-block;
	vertical-align:middle;
}

.contact2__table tbody th:after {
	display:inline-block;
	margin-left:10px;
	padding:0 .75em;
	background-color:#1297E4;
	color:#FFF;
	content:"任意";
	vertical-align:middle;
	font-size:70%;
	line-height:1.8;
}

.contact2__table tbody tr.required th:after {
	background-color:#FF4B4B;
	content:"必須";
}

.contact2__table tbody tr:last-child th {
	padding-bottom:32px;
	border-bottom:none;
	border-radius:0 0 0 6px;
}

.contact2__table tbody tr:last-child td {
	padding-bottom:32px;
	border-bottom:none;
	border-radius:0 6px 0 0;
}

.contact2__table tbody td {
	padding:30px;
	border-bottom:1px solid #A3AEAE;
	vertical-align:middle;
	font-size:18px;
	font-size:1.8rem;
}

.contact2__table tbody td.checkbox {
	padding-top:20px;
	padding-bottom:20px;
}

.contact2__table tbody td.checkbox:after {
	display:block;
	clear:both;
	content:'';
}

.contact2__table tbody td > small {
	display:block;
	margin-top:10px;
	margin-left:1em;
	padding:0;
	text-indent:-1em;
	font-size:14px;
	font-size:1.4rem;
	line-height:1.2;
}

.contact2__table tbody td .err {
	clear:both;
	padding-top:1em;
}

.contact2__table tbody td .err span {
	display:block;
	padding:0 1em 0 2.5em;
	border-radius:.25em;
	background:url(../img/ico_warning.png) 1em center no-repeat #FF4B4B;
	background-size:1.2em;
	color:#FFF;
	font-size:14px;
	font-size:1.4rem;
	line-height:2.4;
}

.contact2__table tbody input[type="text"] {
	display:block;
	padding:0 1em;
	width:100%;
	outline:0;
	border:1px solid #646464;
	border-radius:0;
	color:#000;
	vertical-align:middle;
	line-height:50px;
	transition:border-color .2s;
	-webkit-appearance:none;
}

.contact2__table input[type="text"].size_m {
	max-width:24em;
}

.contact2__table tbody input[type="text"].size_s {
	max-width:12em;
}


.contact2__table tbody input[type="email"]:focus,.contact2__table tbody textarea:focus {
	border-color:#FC7421;
}

.contact2__table tbody input[type="email"] {
	display:block;
	padding:0 1em;
	width:100%;
	outline:0;
	border:1px solid #646464;
	border-radius:0;
	color:#000;
	vertical-align:middle;
	transition:border-color .2s;
	-webkit-appearance:none;
	padding:0 .75em;
    font-size:18px;
    /*font-size:1.6rem;*/
    /*line-height:2.6em;*/
    line-height: 50px
}


.contact2__table input[type="email"].size_m {
	max-width:24em;
}

.contact2__table tbody textarea {
	display:block;
	padding:.75em 1em;
	width:100%;
	height:12em;
	outline:0;
	border:1px solid #646464;
	border-radius:0;
	color:#000;
	line-height:1.4;
	transition:border-color .2s;
	-webkit-appearance:none;
}

.contact2__table tbody input[type="text"]:focus,.contact2__table tbody textarea:focus {
	border-color:#FC7421;
}

.contact2__table tbody input::placeholder,.contact2__table tbody textarea::placeholder {
	color:#AAA;
}

.contact2__table tbody label input[type="checkbox"],.contact2__table tbody label input[type="radio"] {
	display:none;
}

.contact2__table tbody label {
	display:block;
	float:left;
	padding:10px 20px 10px 0;
}

.contact2__table tbody label div {
	display:block;
	width:12em;
	border:3px solid #FC7421;
	border-radius:6px;
	background-color:#FFEDE2;
	color:#FC7421;
	text-align:center;
	font-weight:700;
	line-height:3;
	cursor:pointer;
	transition:background-color .2s,color .2s;
}

.contact2__table tbody label input:checked + div {
	background-color:#FC7421;
	color:#FFF;
}

.contact2__table tbody label div span {
	display:inline-block;
	vertical-align:middle;
}

.contact2__table tbody .icon label div span {
	padding-right:2px;
}

.contact2__table tbody .icon label input + div:before {
	display:inline-block;
	margin-right:.25em;
	width:1.4em;
	height:1.4em;
	background:center center no-repeat;
	background-size:1.4em;
	content:"";
	vertical-align:middle;
}

.contact2__table tbody .icon label.icon01 input + div:before {
	background-image:url(../img/icon01.png);
}

.contact2__table tbody .icon label.icon01 input:checked + div:before {
	background-image:url(../img/icon01_on.png);
}

.contact2__table tbody .icon label.icon02 input + div:before {
	background-image:url(../img/icon02.png);
}

.contact2__table tbody .icon label.icon02 input:checked + div:before {
	background-image:url(../img/icon02_on.png);
}

.contact2__table tbody .icon label.icon03 input + div:before {
	background-image:url(../img/icon03.png);
}

.contact2__table tbody .icon label.icon03 input:checked + div:before {
	background-image:url(../img/icon03_on.png);
}

.contact2__table tbody .icon label.icon04 input + div:before {
	background-image:url(../img/icon04.png);
}

.contact2__table tbody .icon label.icon04 input:checked + div:before {
	background-image:url(../img/icon04_on.png);
}

.contact2__table tbody .icon label.icon05 input + div:before {
	background-image:url(../img/icon05.png);
}

.contact2__table tbody .icon label.icon05 input:checked + div:before {
	background-image:url(../img/icon05_on.png);
}

.contact2__table tbody .icon label.icon06 input + div:before {
	background-image:url(../img/icon06.png);
}

.contact2__table tbody .icon label.icon06 input:checked + div:before {
	background-image:url(../img/icon06_on.png);
}

.contact2__table tbody .icon label.icon07 input + div:before {
	background-image:url(../img/icon07.png);
}

.contact2__table tbody .icon label.icon07 input:checked + div:before {
	background-image:url(../img/icon07_on.png);
}

.contact2__table tbody .icon label.icon08 input + div:before {
	background-image:url(../img/icon08.png);
}

.contact2__table tbody .icon label.icon08 input:checked + div:before {
	background-image:url(../img/icon08_on.png);
}

.contact2__table tbody .icon label.icon09 input + div:before {
	background-image:url(../img/icon09.png);
}

.contact2__table tbody .icon label.icon09 input:checked + div:before {
	background-image:url(../img/icon09_on.png);
}

.contact2__table tbody .icon label.icon10 input + div:before {
	background-image:url(../img/icon10.png);
}

.contact2__table tbody .icon label.icon10 input:checked + div:before {
	background-image:url(../img/icon10_on.png);
}

.contact2_btn {
	padding-top:50px;
}

.contact2_btn button {
	display:block;
	margin:0 auto;
	padding-left:.1em;
	width:540px;
	border:none;
	border-radius:6px;
	background-color:#FC7421;
	color:#FFF;
	letter-spacing:.1em;
	font-weight:700;
	font-size:22px;
	font-size:2.2rem;
	line-height:80px;
}

@media screen and (min-width:769px) {
	.contact2_btn button {
		transition:background-color .2s,box-shadow .4s;
	}
	
	.contact2_btn button:hover {
		background-color:#E25800;
		box-shadow:0 2px 10px #AAA;
	}
}

@media screen and (max-width:768px) {
	.contact2__div .contact2__pc {
		display:none;
	}
	
	.contact2__div {
		padding:10px 0;
	}
	
	.contact2__div.last {
		margin-bottom:0;
		padding:10px 0 20px;
		border-bottom:none;
	}
	
	.contact2__table {
		border-radius:6px;
	}
	
	.contact2__table thead th {
		padding:0 0 0 35px;
		border-radius:3px 3px 0 0;
		background-position:15px center;
		background-size:13px 20px;
		font-size:14px;
		font-size:1.4rem;
		line-height:2.5em;
	}
	
	.contact2__table tbody th {
		display:block;
		float:left;
		padding:10px 15px 0;
		width:100%;
		border-right:none;
		border-bottom:none;
		text-align:left;
		font-size:14px;
		font-size:1.4rem;
	}
	
	.contact2__table tbody th:after {
		margin-left:.5em;
	}
	
	.contact2__table tbody tr:last-child th {
		padding-bottom:inherit;
		border-bottom:none;
		border-radius:0 0 0 6px;
	}
	
	.contact2__table tbody tr:last-child td {
		padding-bottom:12px;
		border-bottom:none;
		border-radius:0 6px 0 0;
	}
	
	.contact2__table tbody td {
		display:block;
		float:left;
		padding:10px 15px 15px;
		width:100%;
		font-size:14px;
		font-size:1.4rem;
	}
	
	.contact2__table tbody td.checkbox {
		padding:5px 10px 10px;
	}
	
	.contact2__table tbody td > small {
		margin-top:5px;
		font-size:10px;
		font-size:1rem;
		line-height:1.4;
	}
	
.contact2__table tbody td .err {
	clear:both;
	padding-top:.5em;
}

.contact2__table tbody td .err span {
	font-size:10px;
	font-size:1rem;
}

	.contact2__table tbody input[type="text"] {
		padding:0 .75em;
		font-size:16px;
		font-size:1.6rem;
		line-height:2.6em;
	}
	
	.contact2__table tbody input[type="text"].size_m {
		max-width:100%;
	}

	.contact2__table tbody textarea {
		font-size:16px;
		font-size:1.6rem;
	}
	
	.contact2__table tbody label {
		padding:5px;
		width:50%;
	}
	
	.contact2__table tbody label div {
		width:100%;
		border:2px solid #FC7421;
	}
	
	.contact2_btn {
		padding-top:20px;
	}
	
	.contact2_btn button {
		width:100%;
		font-size:18px;
		font-size:1.8rem;
		line-height:3em;
	}
}

.contact2__thx {
	padding-bottom:250px;
}

.contact2__thx p {
	padding:50px 0 56px;
	border-bottom:6px solid #E7E7E7;
	text-align:center;
}

.contact2__thx p strong {
	display:block;
	margin-bottom:10px;
	font-weight:700;
	font-size:32px;
	font-size:3.2rem;
	line-height:1.2;
}

.contact2__thx p span {
	display:inline-block;
	white-space:nowrap;
}

@media screen and (max-width:768px) {
	.contact2__thx {
		padding-bottom:100px;
	}
	
	.contact2__thx p {
		padding:50px 0 56px;
		border-bottom:6px solid #E7E7E7;
		text-align:center;
	}
	
	.contact2__thx p strong {
		display:block;
		margin-bottom:10px;
		font-weight:700;
		font-size:20px;
		font-size:2rem;
	}
}
