@charset "UTF-8";

.info {
	padding-top: 20px;
}

.info_tb caption span.-req {
	text-align: center;
	color: #FFF;
	background: #FF223C;
	font-size: 13px;
	line-height: 1;
	font-weight: 500;
	border-radius: 3px;
	padding: 3px 5px;
	position: absolute;
	top: 0;
	right: 15px;
	margin-top: 1.7em;
	display: block;
}

.info_tb > span.-txt {
	display: block;
	background: red;
}

.info_tb caption:before {
	background: #009F74;
}

body.-error .info_tb td .info_tb_file br {
	display: none;
}

.info_tb td input[type="file"] {
	margin-top: 2px;
}

.info_tb td input[type="file"]::focus {
	outline: none;
}

.info_tb_list.-col2 {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-left: 5px;
}

.info_tb_list.-col2 span.mwform-radio-field {
	width: 48%;
}

.info_tb_list.-col2 span.mwform-radio-field:first-child {
	margin-left: 10px;
}

.info_btn input {
	display: block;
	padding: 25px 30px 25px 20px;
	color: #FFF;
	border-radius: 50px;
	transition: opacity 0.4s;
	width: 100%;
	background: #469C77;
	border: none;
	font-size: 17px;
}

.info_btn input:hover {
	opacity: 0.8;
}

.info_btn input:focus {
	outline: none;
}

body.-confirm .info_btn {
	max-width: 300px;
}

body.-send .info_btn {
	margin-top: 60px;
}

body.-send .info_btn a {
	background: #469C77;
}

.date {
	display: flex;
}

body.-error .date {
	padding-bottom: 20px;
}

.date_item {
	width: 105px;
	position: relative;
}

.date_item input {
	width: 65px;
}

.date_item span {
	padding: 0 10px;
}

body.-error .date_item span.error {
	position: absolute;
	bottom: -22px;
	left: 0;
	padding: 0;
}

body.-confirm .date_item {
	width: 65px;
}

body.-error .info_tb_zip span.error {
	position: absolute;
	top: 5px;
	left: 185px;
}

body.-confirm .info_tb td .info_tb_zip:before {
	display: none;
}

.date_item.-year {
	position: relative;
	width: 190px;
}

.date_item.-year:before {
	content: "西暦";
	position: absolute;
	top: 50%;
	left: 10px;
	margin-top: -0.5em;
	display: inline-block;
	line-height: 1;
	font-size: 14px;
}

.date_item.-year input[type="text"] {
	padding-left: 45px;
	width: 150px;
}

body.-confirm .date_item.-year {
	width: 78px;
}

body.-confirm .date_item.-year:before {
	display: none;
}

.gen_list {
	justify-content: flex-start !important;
	margin-top: 3px;
}

.gen_list span.mwform-radio-field {
	width: 40px !important;
	margin-right: 30px;
}

body.-error .gen_list span.error {
	margin: 2px 0 0 -22px;
}

.scholarship {
	background-image: url(/student/common/img/img-grid.png);
	background-repeat: repeat;
	background-size: 10px 10px;
	background-position: center;
	text-align: center;
}

.scholarship_hd {
	display: inline-block;
	position: relative;
	padding: 50px 20px 50px 140px;
	color: #009F74;
	text-align: center;
	font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
}

.scholarship_hd:before {
	content: "";
	background-image: url(/student/campaign/img/scholarship/img-hero_hd_item_10th.png);
	background-repeat: no-repeat;
	background-size: 100% auto;
	background-position: center;
	width: 123px;
	height: 123px;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
}

.scholarship_hd_ttl {
	font-size: 32px;
	letter-spacing: 4px;
}

.scholarship_hd_ttl span {
	font-size: 50px;
}

.scholarship_hd_limited {
	font-size: 18px;
	background: #FFF45C;
	letter-spacing: 2px;
	padding: 6px;
	margin: 0 10px;
}

.scholarship_form {
	font-size: 25px;
	font-weight: 500;
	color: #FFF;
	background: #006C4F;
	padding: 20px 15px;
}

.shape {
	margin-top: 45px;
}

.shape_hd {
	display: flex;
}

.shape_hd_ttl,
.terms_ttl {
	font-size: 17px;
	font-weight: 400;
	line-height: 1;
	display: inline-block;
	position: relative;
	padding-left: 12px;
	margin-bottom: 12px;
	position: relative;
}

.shape_hd_ttl:before,
.terms_ttl:before {
	content: "";
	width: 5px;
	height: 20px;
	background: #009F74;
	position: absolute;
	bottom: 0;
	left: 0;
}

.shape_hd_ttl span.-req,
.terms_agree span.-req {
	text-align: center;
	color: #FFF;
	background: #FF223C;
	font-size: 13px;
	line-height: 1;
	font-weight: 500;
	border-radius: 3px;
	padding: 3px 5px;
	margin: 0 15px;
}

.terms_agree span.-req {
	position: absolute;
	top: 3px;
	left: 140px;
}

.shape_hd_note {
	margin: -2px 0 0 10px;
}

.shape .info_tb {
	margin-top: 45px;
}

.shape .info_tb:first-of-type {
	margin-top: 0;
}

.shape .info_tb th span.-txt {
	display: block;
	font-weight: normal;
	margin-top: 5px;
}

.shape_list {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.shape_list_ttl {
	width: 60%;
	margin-left: 17px;
}

.shape_list_item {
	width: 38%;
}

.shape_list_item input {
	width: 100%;
}

.shape_list_ttl.-row2 label input[type="checkbox"] + span::before,
.shape_list_ttl.-row2 label input[type="checkbox"] + span::after {
	top: -10px;
}

.terms {
	margin-top: 48px;
}

.terms_ttl {
}

.terms_note {
}

.terms_cnt {
	background: #FFF;
	height: 200px;
	padding: 0 30px;
	border: 1px solid #ccc;
	margin-top: 14px;
	overflow-y: scroll;
}

.terms_cnt::-webkit-scrollbar {
	width: 10px;
	padding: 20px;
}

.terms_cnt::-webkit-scrollbar-track {
	border-radius: 10px;
	background: #FFF;
}

.terms_cnt::-webkit-scrollbar-thumb {
	border-radius: 10px;
	background: #3C3C3C;
}

.terms_txt {
	margin-top: 30px;
}

.terms_txt:last-child {
	margin-bottom: 40px;
}

.terms_agree {
	margin: 15px 0 0 18px;
	position: relative;
}

.send {
	padding-top: 80px;
	text-align: center;
}

.send_ttl {
	font-size: 35px;
}

.send_txt {
	margin-top: 20px;
}

input[type="submit"] {
	-webkit-box-sizing: content-box;
	-webkit-appearance: button;
	appearance: button;
	border: none;
	box-sizing: border-box;
	cursor: pointer;
}

input[type="submit"]::-webkit-search-decoration {
	display: none;
}

input[type="submit"]::focus {
	outline-offset: -2px;
}

/* All SP & Tablet */
@media screen and (max-width:1030px) {
}

/* All SP */
@media screen and (max-width:640px) {
	.info {
		padding-top: 0;
	}

	.info_tb caption span.-req {
	}

	.info_tb > span.-txt {
	}

	.info_tb caption:before {
	}

	.info_tb td.-date input.-year {
	}

	.info_tb_list.-col2 {
	}

	.info_tb_list.-col2 span.mwform-radio-field {
		width: 45%;
	}

	.info_tb td span.mwform-checkbox-field label,
	.info_tb td span.mwform-radio-field label {
		font-size: 13px;
	}

	.info_btn {
	}

	body.-send .info_btn {
		margin-top: 30px;
	}

	.date {
	}

	.date_item {
		width: 90px;
	}

	.date_item.-year {
		width: 175px;
	}

	.date_item.-year:before {
	}

	.date_item.-year input[type="text"] {
		width: 132px;
	}

	.date_item input {
		width: 53px;
	}

	.date_item span {
		padding: 0 6px;
	}

	body.-confirm .date_item {
		width: 55px;
	}

	body.-confirm .date_item.-year {
		width: 70px;
	}

	.gen_list {
	}

	.status_list,
	.pre_list {
		display: block !important;
	}

	.status_list span.mwform-radio-field,
	.pre_list span.mwform-radio-field {
		width: 100% !important;
		display: block;
	}

	.scholarship_hd {
		padding: 40px 10px;
	}

	.scholarship_hd:before {
		width: 80px;
		height: 80px;
		top: 27px;
		left: auto;
		right: 0px;
		transform: translate(0, 0);
	}

	.scholarship_hd_ttl {
		font-size: 22px;
		line-height: 1.4;
		letter-spacing: 2px;
		text-align: left;
	}

	.scholarship_hd_ttl span {
		font-size: 33px;
		display: block;
	}

	.scholarship_hd_limited {
		font-size: 15px;
		letter-spacing: 1px;
		padding: 6px 10px;
		margin: 10px 0 0;
	}

	.scholarship_form {
		font-size: 20px;
		padding: 17px 15px;
	}

	.shape {
		margin-top: 22px;
	}

	.shape_hd {
		display: block;
	}

	.shape_hd_ttl,
	.terms_ttl {
		background: #F2F2F2;
		width: 100%;
		text-align: left;
		padding: 10px 10px 10px 15px;
		font-size: 15px;
		margin-bottom: 3px;
	}

	.shape_hd_ttl:before,
	.terms_ttl:before {
		height: 100%;
	}

	.shape_hd_ttl span.-req {
	}

	.shape_hd_note {
		font-size: 14px;
		margin: 5px 0 0 0;
	}

	.shape .info_tb {
		margin-top: 15px;
	}

	.shape .info_tb:first-of-type {
	}

	.shape .info_tb th span.-txt {
		font-size: 14px;
		margin-top: 0;
	}

	.shape_list {
		display: block;
	}

	.shape_list_ttl {
		width: 100%;
		padding: 15px 15px 0 0;
		font-size: 13px;
	}

	.shape_list_item {
		width: 100%;
		padding-top: 5px;
	}

	.shape_list_item input {
	}

	.shape_list_ttl.-row2 label input[type="checkbox"] + span::before,
	.shape_list_ttl.-row2 label input[type="checkbox"] + span::after {
	}

	.terms {
		margin-top: 30px;
	}

	.terms_note {
		font-size: 14px;
		margin-top: 10px;
	}

	.send {
		padding-top: 25px;
	}

	.send_ttl {
		font-size: 28px;
	}

	.send_txt {
		margin-top: 12px;
	}

}

@media screen and (max-width:520px) {
	.shape_list_ttl br {
		display: none;
	}

}
