@charset 'UTF-8';

/* #malform
------------------------------*/
#mailform {
	margin-top: 50px;
	background: #F1F1F1;
	padding: 40px 85px 100px;
}
#mailform .row01{
	display: none;
}
#mailform .row01 th{
	letter-spacing: 0;
}

.section table {
	width: 100%;
	color: #222222;
	line-height: 1.8;
}
.section table th,
.section table td {
	vertical-align: middle;
	padding: 20px 0px;
}
.section table th {
	width: 260px;
	background: none;
	text-align: left;
	vertical-align: middle;
	font-size: 1.4rem;
	font-weight: bold;
}
.section table tr{
	border-bottom: 0;
}
.section table tr.radio th,
.section table tr.radio td{
	padding: 21px 20px 21px;
}
.section table tr.textarea  td{
	padding: 21px 20px 10px;
}
#mailform th .req {
	font-size: 1rem;
	display: inline-block;
	margin-left: 7px;
	background: #DDDDDD;
	padding: 0 3px;
}
#mailform th .att{
	color: #222222;
	font-size: 1.2rem;
	line-height: 1.83;
	display: block;
	margin-top: 5px;
}
#mailform td .example {
	display: block;
	margin-bottom: 4px;
	font-size: 1.4rem;
	line-height: 1.857;
}
#mailform td .example01{
	display: inline-block;
	margin-right: 10px;
}
#mailform td .example02{
	font-size: 1.6rem;
	display: block;
	margin-bottom: 4px;
}
#mailform td .example03{
	font-weight: bold;
}
#mailform input[type='text'] {
	width: 100%;
	height: 42px;
	background: #FFFFFF;
	padding: 5px 20px;
}
#mailform input.short {
	width: 260px;
	max-width: 100%;
}
#mailform input.postage {
	width: 260px;
	margin-bottom: 20px;
	max-width: 100%;
}
#mailform input.middle {
	width: 100%;
	max-width: 100%;
}
#mailform input.long{
	margin-bottom: 15px;
}
#mailform input[type='radio'] {
	display: none;
}
#mailform input[type='radio'] + label {
	display: inline-block;
	position: relative;
	padding-left: 40px;
	margin-right: 25px;
	cursor: pointer;
	font-size: 1.4rem;
}
#mailform input[type='radio'] + label::before {
	content: '';
	position: absolute;
	top: 50%;
	left: 0;
	width: 30px;
	height: 30px;
	background: #E5E5E5;
	margin-top: -15px;
}
#mailform input[type='radio'] + label::after {
	content: '';
	display: none;
	position: absolute;
	top: 50%;
	left: 7px;
	width: 16px;
	height: 16px;
	background: #000;
	margin-top: -7px;
}
#mailform input[type='radio']:checked + label::after {
	display: block;
}


#mailform input[type='checkbox'] {
	display: none;
}
#mailform input[type='checkbox'] + label {
	display: inline-block;
	position: relative;
	padding-left: 25px;
	margin-right:25px;
	cursor: pointer;
}
#mailform input[type='checkbox'] + label::before {
	content: '';
	position: absolute;
	top: 50%;
	left: 0;
	width: 16px;
	height: 16px;
	background: #FFF;
	border: 1px solid #B3B3B3;
	margin-top: -8px;
}
#mailform input[type='checkbox'] + label::after {
	content: "\2713";
	/*text-shadow: 1px 1px 1px rgba(0, 0, 0, .2);*/
	font-size: 20px;
	color: #000;
	text-align: center;
	line-height: 17px;
	display: none;
}
#mailform input[type='checkbox']:checked + label::after {
	display: block;
	position: absolute;
	top: 7px;
	left: -2px;
}
#mailform .select {
	overflow: hidden;
	position: relative;
	width: 400px;
	max-width: 100%;
	height: 38px;
	margin-top: 20px;
}

#mailform .select select {
	color: #222;
	font-weight: normal;
	width: 100%;
	max-width: 400px;
	height: 38px;
	background: #F2F2F2 url(../image/icon_select.jpg) right center no-repeat;
	border: none;
	outline: none;
	border-radius: 0;
	padding: 5px 20px;
	margin: 0;
	vertical-align: bottom;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	cursor: pointer;
}
#mailform textarea {
	width: 100%;
	min-height: 200px;
	background: #fff;
	padding: 5px;
	font-family: inherit;
	font-size: inherit;
}
#mailform p.submit {
	margin-top: 40px;
	text-align: center;
}
#mailform p.submit button {
	border: 0;
	width: 250px;
	display: block;
	background: #000;
	text-decoration: none;
	color: #fff;
	margin: 0 auto;
	padding: 2px  30px 0;
	line-height: 50px;
	text-align: left;
	font-family: 'Roboto', sans-serif;
	letter-spacing: 0.15em;
    -webkit-transition: 1.0s ;
    -o-transition: 1.0s ;
    transition: 1.0s ;
}

#mailform p.submit :hover{
    opacity: 0.6;
}

/*-------------------------*/
.section.privacy{
	font-size: 1.4rem;
}

.privacy .box:last-child {
	margin-bottom: 0;
}
.privacy .text {
	margin-bottom: 20px;
}
.privacy .policy > li {
	padding-left: 10px;
	margin: 0 0 20px 15px;
	list-style: decimal outside;
}
.privacy .policy > li:last-child {
	margin-bottom: 0;
}
.privacy .policy .list li {
	position: relative;
	padding-left: 15px;
}
.privacy .policy .list li::before {
	content: '・';
	position: absolute;
	top: 0;
	left: 0;
}

::-webkit-input-placeholder {
	color: #CBCBCB;
	opacity: 1;
}

:-moz-placeholder {
	color: #CBCBCB;
	opacity: 1;
}

::-moz-placeholder {
	color: #CBCBCB;
	opacity: 1;
}

:-ms-input-placeholder {
	color: #CBCBCB;
	opacity: 1;
}