/* ===================================================================
CSS information
 file name  :  form.css
 style info :  お申込みフォームcssの定義
=================================================================== */

/*--------------------------------------------------------------------

subscription/apply

--------------------------------------------------------------------*/
.apply_flow{
	text-align:center;
	}
.apply_form {
	width:100%;
	border-top: dotted 1px #000;
	}
.apply_form.inquiry{
	width:100%;
	}
.apply_form th,
.apply_form td {
	line-height: 180%;
	vertical-align: top;
	border-bottom: dotted 1px #000;
	text-align: left;
	font-size: 120%;
	}
.apply_form th {
	width: 140px;
	padding: 9px 20px;
	background: #f8f8f8;
	font-weight: normal;
	}
.apply_form td {
	padding: 15px 0px 8px 30px;
	background: #fff;
	font-size:105%;
	overflow:hidden;
	}


.apply_form.inquiry th{
	border-bottom:1px solid #e5e5e5;
	padding: 9px 20px;
	background: #f8f8f8;
	}
.apply_form.inquiry th span{
	color:#3aa501;
	font-size:120%;
	margin-right:10px;
	font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
	}
.apply_form.inquiry td{
	padding: 15px 30px 8px;
	}
.apply_form tr td.item_inner{
	border-bottom:none;
	padding-top:10px;
	padding-bottom:0;
	}	
.apply_form td.item_inner_first{
	border-bottom:none;
	padding-top:15px;
	padding-bottom:0;
	}	
.apply_form td.item_inner_last{
	border-bottom: dotted 1px #000;
	padding-top:10px;
	padding-bottom:8px;
	}	
.apply_form th span{
	color:#f66666;
	font-weight:bold;
	margin-left:5px;
	}
.apply_form td > div{
	float:left;
	width:100%;
	position:relative;
	overflow:hidden;
	}
.apply_form td > div p{
	float:left;
	line-height:30px;
	position:relative;
	margin-bottom:8px;
	}
.apply_form td > div p + p{
	margin-left:15px;
	float:left;
	}
.apply_form td > p{
	position:relative;
	clear:both;
	margin-bottom:8px;
	}

.apply_form td a{
	color:#3aa501;}

.apply_form select {
	cursor:pointer;
	z-index: 2000;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	height: 30px;
	line-height: 18px;
	margin: 0px;
	padding: 5px 8px 4px;
	font-size: 100%;
	left:0;
	/*float: left;*/
}
.apply_form span.customSelect {
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	border-radius: 3px;
	background: #ffefef url(../images/common/parts.png) right -1100px no-repeat;
	border-top: 1px solid #d5d5d5;
	border-right: none;
	border-bottom: 1px solid #d5d5d5;
	border-left: 1px solid #d5d5d5;
	font-size: 100%;
	line-height: 30px;
	height: 30px;
	padding: 0 0 0 10px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	width: auto;
	position:absolute;
	top: 0;
	left: 0;
	}
.apselect1{
	width:250px;
	}

/*type="text"*/
.apply_form input[type="text"]{
	-webkit-appearance:none;
	border-radius: 3px;
	height: 30px;
	padding: 5px 10px;
	border: 1px solid #d5d5d5;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	font-size:105%;
	background-color:#fff;
	}
.apply_form input[type="text"].apinput1{
	width:240px;
	}
.apply_form input[type="text"].apinput2{
	width:100px;
	}
.apply_form input[type="text"].apinput3{
	width:60px;
	}
.apply_form input[type="text"].apinput4{
	width:100%;
	}
.apply_form input[type="text"].apinput5{
	width:calc(100% - 100px);
	margin-left:15px;
	}
.apply_form input[type="text"].required{
	background-color:#ffefef;
	}
.apply_form input[type="text"].nowrite{
	background-color:#eee;
	}

/*radiobutton*/
.apply_form input[type="radio"]{
	margin-right:5px;
	}

/*checkbox*/
.apply_form input[type="checkbox"]{
	margin-right:10px;
	}


/*textarea*/
.apply_form textarea{
	border:1px solid #d5d5d5;
	background:#fff;
	-webkit-appearance:none;
	border-radius:3px;
	padding:8px;
	width:100%;
	height:120px;
	font-size:105%;
	margin-bottom:8px;
	}


/*paragraph*/
p.appagraph1{
	width:250px;
	height:30px;
	}
p.appagraph2{
	width:75px;
	margin-right:-20px;
	}
p.appagraph3{
	padding: 0 0 0 20px;
	background: url(../images/common/parts.png) no-repeat;
	background-position: 0px -1191px;
	}
p.appagraph4 {
	width: 100%;
	height: 30px;
}




span.required{
	width:67px;
	height:24px;
	padding-left:20px;
	background:url(../images/pages/apply_required.png) no-repeat left top;
	color:#ffffff;
	display:block;
	position:absolute;
	top:4px;
	right:0;
	font-size:96%;
	}

/*button*/
form .btn_area{
	text-align:center;
	display:block;
	overflow:hidden;
}
.btn_area_form_top .btn_blue {
	float:none;
}

input.btn_blue{
	display:inline-block;
	width:315px;
	padding:15px;
	margin-bottom:20px;
	float:right;
	color:#FFFFFF;
	font-size: 130%;
	line-height:100%;
	cursor:pointer;
}
input.btn_grey{
	float:left;
	display:inline-block;
	width:315px;
	padding:15px;
	margin-bottom:20px;
	color:#FFFFFF;
	font-size: 130%;
	line-height:100%;
	border:none;
	cursor:pointer;
}

input.btn_green{
	color:#FFFFFF;
	font-size: 130%;
	line-height:1;
	margin:0 auto;
	margin:0 auto 20px;
	padding-top:-5px;
	width:315px;
	height:50px;
	background: url(../images/common/parts.png) no-repeat;
	background-position: 0px -243px;
	text-decoration:none;
	text-align:center;
	font-weight:bold;
	letter-spacing:0.2em;
	cursor:pointer;
	border:0;
}
input.btn_green:hover{
	background-position: 0px -293px;
	text-decoration:none;
}


a.btn_green{
	display:block;
	color:#FFFFFF;
	font-size: 130%;
	line-height:1;
	margin:0 auto;
	padding-top:13px;
	width:315px;
	height:37px;
	background: url(../images/common/parts.png) no-repeat;
	background-position: 0px -243px;
	text-decoration:none;
	text-align:center;
	font-weight:bold;
	letter-spacing:0.2em;
	cursor:pointer;
	border:0;
}
a.btn_green:hover{
	background-position: 0px -293px;
	text-decoration:none;
}



.apply_form td a.btn_address,a.btn_link{
	color: #FFFFFF;
	display:block;
	width: 189px;
	height: 32px;
	background: url(../images/common/parts.png) no-repeat;
	background-position: 0 -1100px;
	text-decoration: none;
	text-align: center;
	line-height: 26px;
	padding-top: 2px;
	font-size: 12px;
	font-weight: normal;
	}
.apply_form td a.btn_address:hover,a.btn_link:hover{
	background-position: 0 -1134px;
	text-decoration: none;	
	}
a.btn_link{
	position:absolute;
	right:25px;
	top:25px;
	}

h3.apply_confirm_title{
	font-size:160%;
	font-weight:bold;
	margin-bottom:20px;
	}
h3.apply_confirm_title span{
	color:#3aa501;
	font-size:110%;
	font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
	padding-right:10px;
	}

.table_caption{
	font-size:126%;
	margin-bottom:8px;
	font-weight:bold;
	}
.table_caption span{
	color:#f66666;
	}
.table_caption_strong {
	display: inline-block;
	margin: 0 0 0 4px;
	font-size: 32px;
	font-weight: bold;
	color: #F92C2C;
}

.btn_area .subscription_text{
	background:#FFF;
	-webkit-border-radius: 4px;
	border-radius: 4px;
	text-align:center;
	padding:13px;
	margin-left:10px;
	margin-top:0px;
	margin-bottom:15px;
	width:594px;
}
p.apply_error{
	color:#3aa501;
	background:url(../images/pages/apply_arrow.png) no-repeat left 0.7em;
	padding-left:18px;
	padding-bottom:6px;
	font-weight:bold;
	}

.apselectyear{
	width:135px;
}
.apselectdate{
	width:110px;
	margin-left:140px !important;
}

.table_campaign {
	position: absolute;
	top: 30px;
	right: 24px;
	color: #ff0000;
	font-size: 16px;
	font-weight: bold;
}



.contact_campaign_txt {
	margin-bottom: 30px;
	color: #ff0000;
}
.contact_campaign_txt h3 {
	margin-bottom: 20px;
	font-weight: bold;
	font-size: 18px;
}
.contact_campaign_txt p~p {
	margin-top: 10px;
}
.contact_campaign_txt b {
	font-weight: bold;
}


/* 選択できないけどinput風 */
.apply_form_dummy-input {
	display: inline-block;
	width: 240px;
	-webkit-appearance:none;
	border-radius: 3px;
	height: 30px;
	padding: 0 10px;
	border: 1px solid #d5d5d5;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	font-size:105%;
	background-color:#fff;
}

.apply_form_dummy-input__small {
	width: 100px;
}

/* 注意文 */
.apply_form td > div .apply_form_caution-message {
	margin: 0px 0 10px;
	color: #f66666;
	font-weight: bold;
	line-height: 1.7;
	float:none;
	clear:both;
}

.apply_form_table_border {
	border-bottom: none !important;
}

.apply_form td > label {
	position: relative;
	padding-left: 1em;
}

.ml_15 {
	margin-left: 15px;
}

.apply_form td label > input[type="radio"] {
	position: absolute;
	top: 0;
	bottom: 0;
	left: -5px;
	margin: auto;
}


/*-- ■ Media Queries ■ --*/
@media (max-width: 768px) {
	.apply_form tr,
	.apply_form th,
	.apply_form td {
	display:block;
	width: 100%;
}
.apply_form th {
	padding: 9px 10px;
}
.apply_form td {
	padding: 15px 10px;
}
input.btn_blue,
input.btn_grey{
	float:none;
	width:260px;
}

.hidden_sp {
	display: none;
}

.apply_form_table_border {
	border-bottom: dotted 1px #000 !important;
}

}
