@charset "utf-8";
form#mail_form {
	width : 960px;
	margin : 20px auto;
}
form#mail_form table {
	width : 100%;
	margin : 0 auto;
	border-collapse: collapse;
}
form#mail_form table th {
	padding : 12px;
	text-align : left;
	border : 1px solid #cccccc;
	background: #f2f3f0;
	vertical-align: middle !important;
	white-space: nowrap;
	width: 30%;
	font-weight: normal;
}
form#mail_form table td {
	padding : 10px 10px;
	border : 1px solid #cccccc;
}
/* 注釈 */

form#mail_form table span.subtext1 {
	display : block;
	font-size : 14px;
	color : #cc0022;
}
form#mail_form table span.subtext2 {
	display : block;
	font-size : 85%;
	color : #666666;
}
/* あと○文字 */
form#mail_form table .subtext3 {
	font-size : 85%;
	color : #cc0022;
	padding: 0;
}
/* -- 入力エリアの幅 -------------------------------------------------------------------------------- */

form#mail_form textarea {
	display : block;
	width : 94%;
	padding : 2px 1%;
	resize : vertical;
	border : 1px solid #cccccc;
	border-radius : 3px;
	background : #fafafa;
	-webkit-appearance : none;
	font-size : 92%;
	font-family : inherit;
	line-height: 18px;
}
/*氏名、フリガナ*/
form#mail_form input.name, form#mail_form input.read, form#mail_form input#schedule {
	width : 30%;
}
/*年齢、電話番号、郵便番号*/
form#mail_form select.age, form#mail_form input.phone, form#mail_form input.postal {
	width : 13%;
}
/*西暦（生まれ、学歴）*/
form#mail_form table select.year {
	width : 16%;
}
/*月日（生まれ、学歴）*/
form#mail_form table select.month_day {
	width : 11%;
	margin-left: 10px;
}
/*住所、PC用メールアドレス、学校名、学科名*/
form#mail_form input#address, form#mail_form input#mail_address, form#mail_form input#school, form#mail_form input#undergraduate {
	width : 99%;
}
/*希望するCSOプログラムの幅*/
form#mail_form table select.program_cso {
	width : 94%;
}
/*活動時間帯、学年*/
form#mail_form table select.time, form#mail_form table select#schoolyear {
	width: 13%;
}
/*学歴欄の学校名*/
form#mail_form table input.background_highschool {
	width: 94%;
	margin-top: 3px;
	margin-bottom: 10px;
}

@media only screen and (max-width: 989px) {
form#mail_form textarea {
	width : 100%;
}
/*氏名、フリガナ*/
form#mail_form input.name, form#mail_form input.read, form#mail_form input#schedule {
	width : 46%;
}
/*年齢、電話番号、郵便番号*/
form#mail_form select.age, form#mail_form input.phone, form#mail_form input.postal {
	width : 18%;
}
/*西暦（生まれ、学歴）*/
form#mail_form table select.year {
	width : 26%;
}
/*月日（生まれ、学歴）*/
form#mail_form table select.month_day {
	width : 18%;
}
/*活動時間帯、学年*/
form#mail_form table select.time, form#mail_form table select#schoolyear {
	width : 18%;
}
}
form#mail_form input[type="text"], form#mail_form input[type="email"], form#mail_form input[type="tel"] {
	height : 2em;
	padding : 2px 1%;
	border : 1px solid #cccccc;
	border-radius : 3px;
	background : #fafafa;
	-webkit-appearance : none;
	font-size : 100%;
	font-family : inherit;
}
form#mail_form input[type="text"]:focus, form#mail_form input[type="email"]:focus, form#mail_form input[type="tel"]:focus, form#mail_form textarea:focus {
	box-shadow : 0px 0px 5px #55ccff;
	border : 1px solid #55ccff;
	background : #ffffff;
}
form#mail_form ul li input[type="radio"], form#mail_form ul li input[type="checkbox"] {
	position:relative;
	top:2px;
	margin-top : 7px;
}
form#mail_form ul li:first-child input[type="radio"], form#mail_form ul li:first-child input[type="checkbox"] {
	margin-top : 0px;
}
form#mail_form select {
	font-size : 95%;
	margin-top : 5px;
	padding: 2px;
	font-family : "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", Verdana, Arial, sans-serif;
	color: #333333;
	border: 1px solid #cccccc;
	border-radius: 3px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background: url(../images/arrow01.png) right 50% no-repeat;
	background-size: 20px, 100%;
}
 form#mail_form select::-ms-expand {
 display: none;
}
/*説明会フォームの日程選択枠*/
form#mail_form table.description_table .schedule label {
	cursor: pointer;
	width: 40%;
	padding: 5px;
	border: 1px solid #dddddd;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	margin: 0 10px 8px 0;
	display: inline-block;
}

@media only screen and (max-width: 989px) {
form#mail_form table.description_table .schedule label {
	width: 90%;
}
}
form#mail_form ul {
	list-style-type : none;
	padding: 0;
	margin: 0;
}
form#mail_form ul li label:hover {
	cursor : pointer;
}
form#mail_form p#form_submit, #form_back {
	width : 90%;
	margin : 20px auto;
	padding : 15px 0;
	text-align: center;
}
form#mail_form input[type="submit"], form#mail_form button {
	padding : 20px 60px;
	width: 80%;
	vertical-align : middle;
	line-height : 1;
	background : #cc0022;
	border-style: none;
	color : #ffffff;
	font-family : inherit;
	-webkit-appearance : none;
	font-size : 110%;
	border-radius: 30px;
	-webkit-border-radius: 30px;
	-moz-border-radius: 30px;
}
form#mail_form.form-confirm button {
	width: 80%;
	margin-bottom:40px;
}
form#mail_form input[type="submit"]:hover, #form_back input:hover {
	cursor : pointer;
	filter: alpha(opacity=50);
	-moz-opacity: 0.5;
	opacity: 0.5;
}
/*戻るボタン*/
#form_back input {
	width: 80%;
	margin: 0 auto;
	padding : 20px 60px;
	width: 50%;
	vertical-align : middle;
	line-height : 1;
	background : #9b9b9b;
	border-style: none;
	color : #ffffff;
	font-family : inherit;
	-webkit-appearance : none;
	font-size : 110%;
	border-radius: 30px;
	-webkit-border-radius: 30px;
	-moz-border-radius: 30px;
}
/* -- 必須/任意アイコン -------------------------------------------------------------------------------- */
form#mail_form table th span.required, form#mail_form table th span.optional {
	display : inline-block;
	float : right;
	color : #ffffff;
	font-size: 11px;
	padding : 2px 7px 1px 7px;
}
/*必須アイコン*/
form#mail_form table th span.required {
	background : #cc0022;
	font-weight: normal;
}
/*任意アイコン*/
form#mail_form table th span.optional {
	background : #a4c9eb;
	font-weight: normal;
}
/* -- 個人情報同意ボックス -------------------------------------------------------------------------------- */
.agreeBoxarea {
	width: 86%;
	margin: 0 auto;
	padding-bottom: 10px;
}
.agreeBox .agreecheck {
	width: 50%;
	background: #f2f3f0;
	border: 1px solid #dadcdc;
	font-size: 14px;
	text-align: center;
	margin: 10px auto;
	padding: 5px 10px;
}
.agreeBox p {
	width: 90%;
}
/* エラーコメント */
.agreeBox .alert-warning {
	text-align: center;
}

@media only screen and (max-width: 989px) {
.agreeBoxarea {
	width: 98%;
}
}

/* --responsive table----------------------------------------------------------------------------------------------------------------- */


@media only screen and (max-width: 989px) {
form#mail_form {
	width: 100%;
}
form#mail_form table.cso_table, form#mail_form .description_table {
	width: 100%;
	border-top: 1px solid #cccccc;
}
form#mail_form table.cso_table th, form#mail_form table.cso_table td, form#mail_form .description_table th, form#mail_form .description_table td {
	width: 100%;
	display: block;
	border-top: none;
}
form#mail_form table.cso_table th {
	padding : 9px;
}
}
/*================================================
　　　　
* 通常お問い合わせフォーム

================================================*/
/*団体名*/
table.contact_table input#group {
	width : 99%;
}
/*電話番号、FAX*/
table.contact_table input.tel, table.contact_table input.fax {
	width : 50%;
}
.conf {
	margin: 0 auto;
	width: 70%;
}

@media only screen and (max-width: 989px) {
table.contact_table {
	border-top: 1px solid #cccccc;
}
table.contact_table th, table.contact_table td {
	width: 100% !important;
	display: block;
	border-top: none !important;
}
}
/*================================================
　　　　
* CSOテーブル追記CSS

================================================*/
/* エラーコメント */

.alert {
	color : #cc0022;
}
