@charset "UTF-8";

/* ----------------------------------------------------------------
Contact
---------------------------------------------------------------- */

label {
	cursor:pointer;
}

.contact-style input,
.contact-style textarea,
.contact-style select {
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	vertical-align: middle;
	padding: 5px;
	font-size: 14px;
}

.contact-style h2 {
	color: #683C12;
	background-color: #F7EEE6;
	padding: 5px;
	font-weight: 700;
}

.contact-style h3 {
	width: 95%;
	margin: 15px auto;
	border: 1px #F1E2D6 solid;
	color: #683C12;
	background-color: #FFF6F7;
	padding: 5px;
	box-sizing: border-box;
	font-weight: 700;
	text-align: center;
}

h3.contact {
	width: 95%;
	margin: 0px auto;
	border: 1px #F1E2D6 solid;
	color: #683C12;
	background-color: #FFF6F7;
	padding: 5px;
	box-sizing: border-box;
	font-weight: 700;
}

.contact-style h4 {
	margin: 15px auto; 
	width: 95%;
	border: 1px #F1E2D6 solid;
	color: #683C12;
	background-color: #FFF6F7;
	padding: 5px;
	box-sizing: border-box;
	text-align: center;	
}

.contact-style ul#ad_info {
	line-height: 15px;
	font-size: 14px;
	margin: 0px;
	padding: 10px;
	text-align: center;
	line-height: 1.8;
}

.contact-style ul.text_app {
	width: 89%;
	margin: 0px auto 20px;
	line-height: 15px;
	font-size: 14px;
	text-align: center;
	line-height: 1.8;
}

li.text_link {
	display: inline-block;
}

.contact-style ul li.app_btn_info {
	margin: 10px auto;
	width: 90%;
	display: block;
	background: -moz-linear-gradient(top,#FFAA44, #FFAA44 50%,#FF9933 50%,#FF9933);
	background: -webkit-gradient(linear, left top, left bottom, from(#FFAA44), color-stop(0.5,#FFAA44), color-stop(0.5,#FF9933), to(#FF9933));
	color: #FFF;
	border-radius: 4px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	border: 1px solid #FC0;
	font-weight: bold;
}

.contact-style ul li.app_btn_info a{
	display: block;
	color: #FFF;
	padding: 10px;
}

.contact-style table.con_notice {
	width: 90%;
	margin: 10px auto;
	padding: 5px;
	font-size: 12px;
}

.contact-style table.ad_input {
	width: 95%;
	margin: 10px auto;
	padding: 5px;
	font-size: 12px;
	background-color: #F3F3F3;
}

.contact-style table.con_ad_input {
	width: 95%;
	margin: 10px auto;
	padding: 5px;
	font-size: 12px;
	background-color: FFF;
	border: 1px solid #ddd;
	border-radius: 5px;
}

.contact-style table.ad_input tr.contact_row {
	display: none;
}

.contact-style tr.ad_title {
	width: 90%;
	height: 22px;
	margin: 10px auto;
	padding: 5px;
	line-height: 22px;
	font-size: 12px;
}

.choice {
	padding-left: 5px;
	margin-bottom: 5px;
	border-bottom:1px dotted;
}

.contact-style td.radio_posi {
	width: 90%;
	height: 18px;
	margin: 5px auto;
	line-height: 18px;
	font-size: 12px;
	vertical-align:middle;
} 

.contact-style td.ad_list {
	width: 90%;
	height: 22px;
	margin: 10px auto;
	padding-left: 5px;
	line-height: 22px;
	font-size: 12px;
	background-color: #F3F3F3;
}

.contact-style td.con_ad_list {
	width: 90%;
	height: 22px;
	margin: 10px auto;
	padding-left: 5px;
	line-height: 22px;
	font-size: 12px;
	border-bottom: 1px dotted #ddd;
}

.types {
	color: #630;
	font-size: 11px;
}

.contact-style table tr{
	width: 90%;
	margin: 0 auto;
	padding: 5px;
	font-size: 12px;
}

.contact-style ul.con_info {
	width: 85%;
	margin: 0px auto;
	padding: 5px;
	font-size: 12px;
	text-indent: -1em;
	line-height: 140%;
}

.text-field,
.text-field-message,
.confirm_td {
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	width: 100%;
	background-color: #fff;
	border: 1px solid #ddd;
	padding: 8px;
	border-radius: 5px;
	font-size: 14px;
}

.con-text-field,
.con-text-field-message,
.con-confirm_td {
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	width: 100%;
	padding: 8px;
	font-size: 14px;
	height: 32px;
}

.text-field-message {
	height: 130px;
}

td.confirm_td {
	height: 32px;
}

.text-field:focus {
	background-color: #fffaf5;
}

.select-icon {
	background-image: url(../img/select_icon@2x.png);
	background-repeat: no-repeat;
	background-position: 98% 50%;
	background-size: 8px 6px;
}

.text-field {
	height: 36px;
}

table span.rq_mark {
	display: inline-block;
	width: 27px;
	height: 12px;
	line-height: 12px;
	text-align: center;
	font-size: 11px;
	background-color: #FA8EC2;
	color: #fff;
	padding: 3px 3px 1px 5px; 
	margin-left: 3px;
	border-radius: 3px;        /* CSS3草案 */  
	-webkit-border-radius: 3px;    /* Safari,Google Chrome用 */  
	-moz-border-radius: 3px;   /* Firefox用 */  
}

#ad_submit {
	margin: 20px auto;
	width: 50%;
	height: 48px;
	display: block;
	border: 1px solid #CC6600;
	border-radius: 4px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	text-align: center;
	background: #FF9900;
	color: #FFF;
	font-weight: bold;
}

#ad_submit:hover {
	margin: 20px auto;
	width: 50%;
	height: 48px;
	display: block;
	border: solid 1px #0099CC;
	border-radius: 4px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	background-color: #FFF3E8;
	border-color: #FFC68C;
	color: #683C12;
	font-weight: bold;
}

.policy {
	width: 93%;
	margin: 10px auto;
	font-size: 12px;
	line-height: 1.6;
	text-align: center;
	border: 1px #CCC solid;
	padding: 15px;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
}

/* ---------------------------------------- */


p.error {
	color: #FA8EC2;
	font-size: 12px;
	margin-bottom: 5px;
	height: 15px;
	line-height: 15px;
	/*
	text-indent: 20px;
	background-color: #FFF6F7;
	background-image: url(../img/navi/ex.png);
	background-repeat: no-repeat;
	*/
}

div.submit_error {
	margin: 15px;
	line-height: 160%;
	padding: 10px;
	background-color: #FFF6F7;
	border: 2px solid #EB6DA5;
	color: #660000;
}

/* ---------------------------------------- */

p.coution {
	margin: 15px;
	text-align: center;
	color: #CC0000;
	font-size: 14px;
	font-weight: bold;
}

/* ---------------------------------------- */

#ad_contents h3.complete{
	background-color: #FFF;	
	text-align: center;
	color: #CC0000;
	font-size: 14px;
	font-weight: bold;
}

div#ad_contents {
	margin: 5px auto;
}

div#ad_contents p.complete_text {
	text-align: center;
	line-height: 180%;
	margin-bottom: 0;
}

p.back_btn {
	text-align: center;
	margin-top: 30px;
	margin-bottom: 0;
}

/* ---------------------------------------- */

.sm_radio input[type=radio],
.sm_radio input[type=checkbox] {
	display: inline-block;
	margin-right: 6px;
}

.sm_radio input[type=radio] + label,
.sm_radio input[type=checkbox] + label {
	position: relative;
	display: inline-block;
	margin-right: 12px;
	font-size: 14px;
	line-height: 28px;
	cursor: pointer;
}

@media (min-width: 1px) {
.sm_radio input[type=radio],
.sm_radio input[type=checkbox] {
	display: none;
	margin: 0;
}

.sm_radio input[type=radio] + label,
.sm_radio input[type=checkbox] + label {
	padding: 0 0 0 24px;
}

.sm_radio input[type=radio] + label::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	display: block;
	width: 18px;
	height: 18px;
	margin-top: -9px;
	background: #FFF;
}

.sm_radio input[type=checkbox] + label::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	display: block;
	width: 18px;
	height: 18px;
	margin-top: -9px;
	background: #FFF;
}

.sm_radio input[type=radio] + label::before {
	border: 2px solid #ccc;
	border-radius: 30px;
}

.sm_radio input[type=checkbox] + label::before {
	border: 2px solid #FA8EC2;

}

.sm_radio input[type=radio]:checked + label::after,
.sm_radio input[type=checkbox]:checked + label::after {
	content: "";
	position: absolute;
	top: 50%;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	display: block;
}

.sm_radio input[type=radio]:checked + label::after {
	left: 5px;
	width: 8px;
	height: 8px;
	margin-top: -4px;
	background: #E71063;
	border-radius: 8px;
}

.sm_radio input[type=checkbox]:checked + label::after {
	left: 3px;
	width: 16px;
	height: 8px;
	margin-top: -8px;
	border-left: 3px solid #000;
	border-bottom: 3px solid #000;
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

@media screen and (max-width : 320px){
    .policy_text label{ font-size: 12px!important;}
}
