﻿@charset "UTF-8";
/******************** 口座振替受付フォーム ********************/
.kouzaform .form {
	background: #ebf6f7;
	border-radius: 8px;
	padding: 10px 30px 40px;
	margin-top: 24px;
}
.kouzaform .form dt {
	display: flex;
	align-items: center;
	padding: 15px 10px 0;
}
.kouzaform .form dt label,
.kouzaform .form dt .label {
	font-weight: bold;
}
.kouzaform .form dt .att {
	display: inline-block;
	margin-left: 10px;
	padding: 2px 6px;
	background: #bc2d33;
	border-radius: 3px;
	color: #fff;
	font-size: 75%;
}
.kouzaform .form dd {
	padding: 12px 10px 20px;
	border-bottom: 2px dashed #66c9c5;
}
.kouzaform .form dd .memo {
	margin: 0 0 10px;
}
#body.kouzaform .form dd input[type="text"] {
	padding: 10px;
	border: 1px solid #333;
	border-radius: 5px;
	font-size: 100%;
	letter-spacing: .1em;
}
.kouzaform .form dd select {
	width: 100%;
	padding: 10px;
	border: 1px solid #333;
	border-radius: 5px;
	font-size: 100%;
	letter-spacing: 0.1em;
}

/**** 児童番号 ****/
.kouzaform .form dd input.txtBill_JidouNo {
	width: 200px;
	margin-left: 8px;
}

/**** 姓名 ****/
.kouzaform .form .fullname {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.kouzaform .form .fullname .name_box {
	width: calc(50% - 10px);
}
.kouzaform .form .fullname .name_box label {
	display: inline-block;
	width: 100%;
	margin-bottom: 5px;
}
.kouzaform .form .fullname .name_box input {
	width: 100%;
}

/**** 生年月日 ****/
.kouzaform .form dd select.selBirthY {
	width: 380px;
	margin-right: 8px;
}
.kouzaform .form dd select.selBirthM,
.kouzaform .form dd select.selBirthD {
	width: 200px;
	margin: 0 10px 0 8px;
}
/**** 個人情報保護方針 ****/
.kouzaform .form dd .policy {
	display: flex;
	align-items: flex-start;
}
.kouzaform .form dd .policy input[type="checkbox"] {
	margin: 5px 10px 0 7px;
}

/**** ボタン ****/
.kouzaform .input_btn {
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	margin-top: 30px;
}
#body.kouzaform .input_btn button {
	background: #66C9C5;
	border: 0;
	border-radius: 5px;
	color: #fff;
	font-size: 100%;
	font-weight: bold;
	text-shadow: 1px 1px 1px #157773, -1px 1px 1px #157773, 1px -1px 1px #157773, -1px -1px 1px #157773, 1px 0 1px #157773, 0px 1px 1px #157773, -1px 0 1px #157773, 0 -1px 1px #157773;
	letter-spacing: .3em;
	padding: 12px 30px;
}
#body.kouzaform .input_btn button:hover {
	background: #77d9d4;
}

@media only screen and (max-width: 1100px){
    .kouzaform .form dd select.selBirthM,
	.kouzaform .form dd select.selBirthD {
		width: 150px;
        margin-top: 12px;
        margin-left: 0px
	}
    .kouzaform .form .Datebr{
        display: block;
    }
    
}
@media only screen and (max-width: 900px) {
	.kouzaform .form .fullname .name_box {
		width: 100%;
	}
	.kouzaform .form .fullname .name_box:last-of-type {
		margin-top: 12px;
	}
	.kouzaform .form dd select.selBirthM,
	.kouzaform .form dd select.selBirthD {
		width: 150px;
	}
}
@media only screen and (max-width: 768px) {
	.kouzaform .form {
		padding: 10px 15px 40px;
	}
	.kouzaform .form dd select.selBirthM,
	.kouzaform .form dd select.selBirthD {
		width: 100px;
	}
}
@media only screen and (max-width: 550px) {
    .kouzaform .form dd select.selBirthY {
        width: calc(100% - 50px);
	}
	.kouzaform .form dd select.selBirthM,
	.kouzaform .form dd select.selBirthD {
		width: calc(100% - 50px);
	}
}
@media only screen and (max-width: 400px) {
	.kouzaform .form {
		margin-top: 20px;
		padding: 5px 10px 30px;
	}
	.kouzaform .form dt {
		padding: 13px 0 0;
	}
	.kouzaform .form dd {
		padding: 12px 0 15px;
	}
	.kouzaform .form .input_btn {
		margin-top: 25px;
	}
}
@media only screen and (max-width: 345px) {
	.kouzaform .form dd select {
		padding: 10px 0 10px 10px;
	}
}

/**** 口座振替受付フォーム  エラー ****/
.kouzaform .form_error {
	margin: 20px 0 0;
	padding: 12px 16px 15px;
	background: #fff2f2;
	border: 3px solid #ffa88e;
	border-radius: 2px;
	color: #a90000;
}
.kouzaform .form_error p {
	position: relative;
	margin: 5px 0 10px;
	padding: 8px 0 8px 25px;
	border-bottom: none;
	font-size: 120%;
}
.kouzaform .form_error p::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 12px;
	height: 100%;
	background: #ffa88e;
	border-radius: 2px;
}
.kouzaform .form_error ul {
	padding: 0 4px;
}
.kouzaform .form_error li {
	border-bottom: 2px dashed #ffa88e;
	padding: 5px 0 5px 22px;
	margin: 0 0 5px 0;
}
.kouzaform .form_error li::before {
	display: inline-block;
	top: 11px;
	left: 5px;
	border-color: #a90000;
	background: #ffa88e;
}

@media only screen and (max-width: 400px) {
	.kouzaform .form_error {
		padding: 10px;
	}
	.kouzaform .form_error p {
		margin-top: 0;
	}
}

/**** 口座振替受付フォーム  確認 ****/
.kouzaform .check_form {
	background: #ebf6f7;
	border-radius: 8px;
	padding: 10px 30px 40px;
	margin-top: 24px;
}
.kouzaform .check_list dt {
	display: flex;
	align-items: center;
	padding: 20px 10px 0;
	font-weight: bold;
}
.kouzaform .check_list dt .att {
	display: inline-block;
	margin-left: 10px;
	padding: 2px 6px;
	background: #bc2d33;
	border-radius: 3px;
	color: #fff;
	font-size: 75%;
}
.kouzaform .check_list dd {
	padding: 12px 10px 20px;
	border-bottom: 2px dashed #66c9c5;
}
#body.kouzaform .input_btn button.back {
	position: absolute;
	top: calc(50% - 18px);
	left: 0;
	padding: 8px 15px;
	background: #ddd;
	color: #000;
	font-size: 87.5%;
	font-weight: normal;
	text-shadow: none;
	letter-spacing: .1em;
}
#body.kouzaform .input_btn button.back:hover {
	background: #ccc;
}

@media only screen and (max-width: 768px) {
	.kouzaform .check_form {
		padding: 10px 15px 40px;
	}
}
@media only screen and (max-width: 500px) {
	#body.kouzaform .input_btn button.back {
		position: relative;
		margin-right: 20px;
		padding: 6px 8px;
	}
}
@media only screen and (max-width: 400px) {
	.kouzaform .check_form {
		margin-top: 20px;
		padding: 5px 10px 30px;
	}
	.kouzaform .check_list dt {
		padding: 15px 5px 0;
	}
	.kouzaform .check_list dd {
		padding: 10px 5px 15px;
	}
}
