@charset "utf-8";
@import url(../css/reset.css);
@import url(../css/base.css);
@import url(../css/common.css);

.res_reqnote {
	text-align: left;
	padding-left: 1em;
	margin-top: .5em;
}

.res_table_thTit {
	padding-top: 0.5em;
}

.res_bg_ly {
	background-color: #fff8dc;
    padding: 0.5em 0.5em;
    width: 100%;
    display: inline-block;
}

input[type="text"] {
	width: 90%;
	padding-top: 0;
	padding-bottom: 0;
}

input[type="text"]::placeholder {
	color: #ccc;
}

input[type="checkbox"] {
	width: 0.7em;
	height: 0.7em;
	margin-right: 0.25em;
}

.res-checkbox_nowrap {
	display: block;
	padding-bottom: 0.5em;
}

/*===============================================
画面の横幅が320px以下に適用
===============================================*/
@media screen and (max-width: 320px){
	.res_button {
		font-size: 12px;
	}
}

/*===============================================
	画面の横幅が480px以下に適用
===============================================*/
@media screen and (max-width: 480px){
	.res_select{
		font-size:13px;
	}
	.res_table_thTit {
		padding-top: 1em;
	}
	.res-checkbox_nowrap {
		padding-bottom: 0;
	}
}

/*===============================================
	画面の横幅が320px以上に適用
===============================================*/
@media screen and (min-width: 320px){

	/** common **/
	.wrap{
		font-size: 1.5em;
	}

	/** reserve **/
	.reserve_box{
		width: 94%;
		margin: 0 auto 40px auto;
		padding-top: 30px;
	}
	.reserve_box h2{
		font-weight: bold;
		font-size: 1.5em;
	}
	.res_inner{
		width: 94%;
		margin: 0 auto 40px auto;
		padding-top: 30px;
	}
    .res_form{
		width: 88%;
		margin: 0 auto 10px auto;
    }
    .res_form table{
		font-size: 1.0em;
	}
	.res_table{
		margin: 1.75em auto 0 auto;
	}
	.res_policy_box {
		font-size: 1em;
	}
	.res_policy_link {
		font-size: 0.8em;
	}
	.res_buttonWrap {
		padding-top: 20px;
		text-align: center;
	}
	.res_button {
		font-size: 15px;
	}

	/** footer **/
	footer{
		margin-top: 0;
		padding-top: 40px;
	}
}

/*===============================================
	画面の横幅が640px以上に適用
===============================================*/
@media screen and (min-width: 640px){
    .res_form table{
		font-size: 1.0em;
	}
	.res_buttonWrap {
		padding-top: 20px;
		text-align: center;
	}
	.res_form table tr:nth-child(even) td{
		padding-bottom: 20px;
	}
	.res_button {
		font-size: 18px;
	}
}

/*===============================================
	画面の横幅が768px以上に適用
===============================================*/
@media screen and (min-width: 768px){
	.res_form table{
		font-size: 1.5em;
		width: 90%;
	}
	.res_form table th{
		width: 1em;
		padding-bottom: 10px;
	}
	.res_form table td{
		padding: 0 0 10px 10px;
	}
	.res_form table td.res_table_tdData {
		padding-left: 20px;
	}
	.res_policy_box {
		font-size: 1.25em;
	}
	.res_policy_link {
		margin-bottom: 0.5em;
		font-size: 0.9em;
	}
	.res_button {
		font-size: 20px;
	}
	input[type="text"] {
		width: 60%;
		padding: 0.1em;
	}
}

/*===============================================
	画面の横幅が1024px以上に適用
===============================================*/
@media screen and (min-width: 1024px){

	/** reserve **/
	.reserve_box{
		width: 980px;
	}
	.reserve_box h2{
		font-size: 2.0em;
	}
	.res_policy_box {
		font-size: 1.5em;
	}
	.res_policy_link {
		margin-bottom: 0.75em;
		font-size: 0.8em;
	}
	.res_button {
		font-size: 24px;
	}
	input[type="text"] {
		padding: 0.2em;
	}
}

a.res_err_link {
	color: blue;
}

/** common **/
.res_section {
	margin-top: 20px;
	margin-bottom: 20px;
}
.res_red{
	color: red;
}
.res_blue{
	color: blue;
}
.res_table{
	border-collapse: collapse;
}
.res_policy_box {
	text-align: center;
	margin: 1em auto 0.5em;
}
.res_policy_link a {
	color: blue;
	font-weight: bold;
}
.res_button {
	display       : inline-block;
	border-radius : 12px;       /* 角丸       */
	text-align    : center;      /* 文字位置   */
	cursor        : pointer;     /* カーソル   */
	padding       : 12px 34px;   /* 余白       */
	background    : #ffff4d;     /* 背景色     */
	color         : #330033;     /* 文字色     */
	line-height   : 1em;         /* 1行の高さ  */
	transition    : .3s;         /* なめらか変化 */
	box-shadow    : 7px 7px 8px #666666;  /* 影の設定 */
	border        : 2px solid #ffff4d;    /* 枠の指定 */
}
.res_button:hover {
	box-shadow    : none;        /* カーソル時の影消去 */
	color         : #ffff4d;     /* 背景色     */
	background    : #330033;     /* 文字色     */
}

.res_button--send {
	padding       : 12px calc(2.5em + 34px);   /* 余白       */
}

.res_button--back {
	padding       : 12px 44px;   /* 余白       */
	background-color: #ffffff;
}

.res_button--top {
	text-align: center;
	margin-top: 30px;
}

.itemError {
	color: #ff0000;
	font-size: 0.8em;
	padding-left: 1em;
	padding-top: 0.25em;
}

#formErrorInner {
	background-color: #ffdada;
	color: #ff0000;
	margin: 2em auto; 0;
	padding: 0.5em 1em;
}
#formErrorInner ul {
	padding-left: 2em;
}
