input,
select,
textarea {
	font: inherit;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	outline: none;
}

/* PAGE form module */

.form__item {
	margin-bottom: 12px;
}

.form__item:last-of-type {
	border-bottom: 1px solid #e5e5e5;
}

.form__label {
	display: block;
	background: #ffe000;
	padding: 0 5.35vw;
	width: 100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	height: 48px;
}

.form__label__text {
	white-space: nowrap;
	-ms-flex-negative: 0;
	flex-shrink: 0;
}

.form__must {
	color: #FFF;
	background: #2c6b8f;
	font-size: 1.0rem !important;
	padding: 4px 6px;
	display: inline-block;
	line-height: 1;
	margin-left: 10px;
}

.form__content {
	padding: 20px 5.35vw;
}

.form__content--flex {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.form__item--confirm .form__content {
	line-height: 2;
	padding: 18px 5.35vw 15px;
}

.form__name {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	width: 47%;
}

.form__name:not(:last-child) {
	margin-right: 6%;
}

.form__name__label {
	width: 3em;
}

.form__address {
	display: block;
}

.form__address:not(:last-child) {
	margin-bottom: 20px;
}

.form__address__label {
	display: block;
	margin-bottom: 14px;
}

.form__confirm-mail {
	display: block;
	margin-top: 20px;
}

.form__confirm-mail__label {
	display: block;
	margin-bottom: 10px;
}

.form__graduate {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	width: 190px;
}

.form__graduate__unit {
	margin-left: 0.5em;
}

.form__birth {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

.form__birth__unit {
	padding: 0 0.7em;
}

.form__birth__unit:last-child {
	padding-right: 0;
}

.form__course__item:not(:last-child) {
	margin-bottom: 22px;
}

.form__course__detail {
	margin-top: 14px;
	padding-left: 24px;
}

.form__course__detail__item {
	margin-top: 6px;
}

.form__channel {
	padding: 0 3.3%;
}

.form__annouce {
	text-align: center;
	color: #ff3333;
	padding-bottom: 5px;
	-webkit-transition: 0.4s;
	-o-transition: 0.4s;
	transition: 0.4s;
}

.form__annouce + .button {
	margin-top: 0;
}

.form__annouce.is-hide {
	opacity: 0;
}

.form__buttons {
	border-top: 1px solid #e5e5e5;
	padding-top: 26px;
	margin-top: 30px;
}

.form__buttons .button--submit {
	margin-top: 25px;
}

.input {
	border: 2px solid #dbdbdb;
	background: #FFFFFF;
	width: 100%;
	-webkit-box-shadow: none;
	box-shadow: none;
	padding: 0 10px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	height: 40px;
	font-size: 1.4rem;
	border-radius: 0;
}

.input::-webkit-input-placeholder {
	color: #808080;
}

.input:-ms-input-placeholder {
	color: #808080;
}

.input::-moz-placeholder {
	color: #808080;
}

.input::-ms-input-placeholder {
	color: #808080;
}

.input::placeholder {
	color: #808080;
}

.input--textarea {
	width: 100%;
	height: 300px;
	resize: none;
	padding-top: 10px;
}

.input.is-error {
	background: #ffcccc;
	border-color: #ff8d8d;
}

.radio {
	position: relative;
	padding-left: 30px;
	cursor: pointer;
}

.radio:not(:last-child) {
	margin-right: 40px;
}

.radio__input {
	opacity: 0;
	width: 0;
	height: 0;
	position: absolute;
}

.radio__input:checked + .radio__text:after {
	opacity: 1;
}

.radio__text {
	display: inline-block;
	padding: 3px 0;
}

.radio__text:before,
.radio__text:after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	border-radius: 50%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

.radio__text:before {
	width: 20px;
	height: 20px;
	border: 2px solid #c1c1c1;
}

.radio__text:after {
	width: 8px;
	height: 8px;
	background: #2c6b8f;
	margin: 6px 0 0 6px;
	opacity: 0;
}

.checkbox {
	position: relative;
	padding-left: 22px;
	cursor: pointer;
}

.checkbox__input {
	opacity: 0;
	width: 0;
	height: 0;
	position: absolute;
}

.checkbox__input:checked + .checkbox__text:before {
	background: #2c6b8f;
	border-color: #2c6b8f;
}

.checkbox__input:checked + .checkbox__text:after {
	opacity: 1;
}

.checkbox__text {
	display: inline-block;
	padding: 10px 0;
}

.checkbox__text:before,
.checkbox__text:after {
	content: "";
	display: block;
	position: absolute;
	top: 3px;
	left: 0;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

.checkbox__text:before {
	width: 16px;
	height: 16px;
	border: 2px solid #cccccc;
}

.checkbox__text:after {
	width: 6px;
	height: 10px;
	border-right: 2px solid #FFFFFF;
	border-bottom: 2px solid #FFFFFF;
	margin: 1px 0 0 5px;
	opacity: 0;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

.select {
	border: 2px solid #dbdbdb;
	width: 100%;
	-webkit-box-shadow: none;
	box-shadow: none;
	padding: 0 30px 0 14px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	height: 40px;
	background: url(../img/icon_selecttag.svg) no-repeat right 14px center, #FFFFFF;
}

.select::-ms-expand {
	display: none;
}

.select--gray {
	background-color: #f5f5f5;
	border: none;
	height: 50px;
	background-position: right 20px center;
	background-image: url(../img/icon_selecttag_black.svg);
	padding: 0 30px 0 20px;
}

.select.is-error {
	background-color: #ffcccc;
	border-color: #ff8d8d;
}

.select--address {
	width: 115px;
}

.select--4digits {
	width: 115px;
}

.select--2digits {
	width: 61px;
}

.day-select {
	padding: 0 10px;
}

.day-select__item {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	flex-wrap: wrap;
}

.day-select__item:not(:last-child) {
	margin-bottom: 20px;
}

.day-select__date {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
	width: 90px;
}

.day-select__day {
	font: 500 2.4rem "Roboto", sans-serif;
}

.day-select__week {
	font-size: 1.26rem;
	color: #FFFFFF;
	width: 22px;
	height: 22px;
	display: inline-block;
	line-height: 22px;
	text-align: center;
	margin-left: 7px;
}

.day-select__week--day {
	background: #B29D17;
}

.day-select__week--sun {
	background: #e06ea1;
}

.day-select__week--sat {
	background: #44a9ad;
}

.day-select__content {
	padding-left: 16px;
	width: calc(100% - 90px);
}

.day-select__content:not(:first-of-type) {
	margin-left: 90px;
	margin-top: 5px;
}





@media screen and (max-width: 680px) {
	.form__content__flexbox:not(:first-of-type) { margin-top: 10px; }
	.form__content__flexbox__date { display: block; }
	.form__content__flexbox__item { display: block; }
}
@media screen and (min-width: 681px) {

.form { /* md */
}

.form__item:last-of-type { /* md */
	margin-bottom: 50px;
}

.form__item { /* md */
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin-bottom: 0;
	border-bottom: 1px solid #e5e5e5;
}

.form__item:first-child {
	border-top: 1px solid #e5e5e5;
}

.form__label { /* md */
	padding: 40px 20px;
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
	height: auto;
	width: 31%;
}

.form__item--confirm .form__label { /* md */
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	padding: 30px 0 30px 28px;
	width: 310px;
}

.form__must { /* md */
	font-size: 1.0rem !important;
}

.form__content { /* md */
	padding: 30px 0 30px 20px;
	max-width: 564px;
	width: 69%;
}

.form__content--lg { /* md */
	max-width: 100%;
}

.form__item--confirm .form__content { /* md */
	width: calc(100% - 210px);
	padding: 22px 30px 22px;
}
.form__content__flexbox { display: flex; }
.form__content__flexbox__date {  }
.form__content__flexbox__item { flex: 1; }

.form__address { /* md */
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

.form__address__label { /* md */
	width: 148px;
	-ms-flex-negative: 0;
	flex-shrink: 0;
	margin-bottom: 0;
}

.form__channel { /* md */
	padding: 0 2%;
}

.form__channel-list { /* md */
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.form__channel-list__item { /* md */
	width: 50%;
}

.form__buttons { /* md */
	border-top: none;
	padding-top: 50px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	-ms-flex-direction: row-reverse;
	flex-direction: row-reverse;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.form__buttons .button { /* md */
	width: 300px;
	margin-left: 0;
	margin-right: 0;
}

.form__buttons .button--submit { /* md */
	margin-top: 0;
	margin-right: 40px;
}

.input--textarea { /* md */
	height: 250px;
}

.input#zip { /* md */
	width: 220px;
}

.input#tel { /* md */
	width: 235px;
}

.input#school { /* md */
	width: 235px;
}

.radio { /* md */
	padding-top: 7px;
	padding-bottom: 7px;
}

.radio__text:before,
.radio__text:after { /* md */
	top: 7px;
}

.select--address { /* md */
	width: 145px;
}

.select--4digits { /* md */
	width: 145px;
}

.select--2digits { /* md */
	width: 75px;
}

.select#state { /* md */
	width: 235px;
}

.day-select { /* md */
	padding: 0 8.5% 0 5%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.day-select__item { /* md */
	margin-bottom: 20px;
	width: 48%;
}

.day-select__date { /* md */
	width: 115px;
}

.day-select__day { /* md */
	font-size: 3.0rem;
}

.day-select__week { /* md */
	font-size: 1.4rem;
	width: 24px;
	height: 24px;
	margin-left: 10px;
}

.day-select__content { /* md */
	padding-left: 20px;
	width: calc(100% - 115px);
}

.day-select__content:not(:first-of-type) { /* md */
	margin-left: 115px;
	margin-top: 10px;
}



}

@media screen and (min-width: 1100px) {

.form__label { /* lg */
	padding-left: 30px;
}

.form__content { /* lg */
	padding: 30px 30px;
}

.form__name__label { /* lg */
	width: 3.5em;
}

.form__graduate { /* lg */
	width: 166px;
}

.form__birth__unit { /* lg */
	padding: 0 2.3em 0 1em;
}

.form__channel-list__item { /* lg */
	width: 33.333333%;
}

}

/************************
	個別相談会（来校&オンライン） Added 20231219
************************/
.cons-wrap.day-select {  }
.select--cont--time { display: none; }
@media screen and (max-width: 680px) {
	.cons:not(:last-of-type) { margin-bottom: 15px; }
}
@media screen and (min-width: 681px) {
	.cons-wrap { display: flex; justify-content: space-between; }
	.cons { width: calc(33.333% - 15px); }
}



.sp-only { display: none !important; }
.pc-only { display: block !important; }
@media screen and (max-width: 680px) {
	.sp-only { display: block !important; }
	.pc-only { display: none !important; }
}

.thanks-ttl { display: block; background: #45aace; margin-bottom: 17px; padding: 17px 0 19px; font-size: 24px; font-weight: 700; line-height: 1; text-align: center; color: #fff; }
.thanks-notice { margin-top: 13px; font-size: 18px; font-weight: 700; line-height: 1.5; text-align: center; color: #B10002; }
.thanks-note { margin: 20px 0 35px; line-height: 2; }

@media screen and (min-width: 681px) {
	.thanks-ttl { max-width: 600px; margin: 0 auto 41px; padding: 19px 0 21px; font-size: 40px; }
	.thanks-note { text-align: center; }
	.thanks-notice { margin-top: 52px; font-size: 18px; line-height: 2; }
	.thanks-note { margin-top: 30px; }
}


/************************
	対象テキスト分離 Added 20250526
************************/
._fc--red { color: #950002; }
.txt-target { border-bottom: 1px dotted #ccc; margin-bottom: 30px; padding: 0 20px 15px; font-size: 1.6rem; font-weight: 700; line-height: 1.5; }
.txt-target ._notice { font-size: 1.4rem; font-weight: 500; }
@media screen and (min-width: 681px) {
	.txt-target { font-size: 1.8rem; }
	._tel { pointer-events: none; }
}
