@charset "utf-8";

.c-red {
	color: #DA5555;
}
.block__ttl02.block__ttl02--navy {
	height: auto;
	padding-block: 5px;
	background-color: #00335F;
}
.lcl-form__error {
  border: 1px solid #DA5555 !important;
}
.lcl-form__lead {
	margin-bottom: 20px;
  font-weight: 700;
	font-size: 20px;
	line-height: 1;
	letter-spacing: 0;
}

.grouplist:not(:first-of-type) {
	margin-top: 40px;
} /* :not(:first-of-type) ------------ */

.txt-small {
	font-weight: 500;
	font-size: 12px;
	line-height: 1.7;
	letter-spacing: 0;
}

.lcl-header {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	gap: 80px;
	width: 100%;
	height: 90px;
	background-color: #4c5670;
	color: #fff;
	padding: 0 0 0 30px;
	position: relative;
}
.lcl-header__logo {
	display: block;
	width: 320px;
}
.lcl-header__logo img {
	display: block;
}
.lcl-header__ttl {
	font-size: 24px;
	line-height: 1;
	letter-spacing: 0.05em;
	font-weight: bold;
}
/*============================ #main ============================*/
#main {
	margin-top: 0;
}
/*------------------------------------------------
contact
------------------------------------------------*/
.lcl-contact {
	padding: 100px 0 150px;
}
.lcl-contact__in {
	width: 1000px;
	margin-right: auto;
	margin-left: auto;
}
/*------------ stepbar ------------*/
.lcl-stepbar {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	margin: 0 auto;
}
.lcl-stepbar__item {
	width: 220px;
	height: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	flex-wrap: wrap;
	position: relative;
	background-color: #f5f5f5;
	color: #ccc;
}
.lcl-stepbar__num {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	border: 1px solid currentColor;
	background-color: #fff;
	color: inherit;
	font-weight: 700;
	font-size: 10px;
	line-height: 1;
	letter-spacing: 0;
}
.lcl-stepbar__item:not(:last-child) {
	margin-right: 25px;
}
.lcl-stepbar__item::after {
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 5.5px 0 5.5px 10px;
	border-color: transparent transparent transparent #ccc;
	position: absolute;
	right: -10px;
	top: 0;
	bottom: 0;
	margin: auto;
}
.lcl-stepbar__item.current {
	color: #009fe8;
	background-color: #fff;
	border: 1px solid #009fe8;
}
.lcl-stepbar__item.current::after {
	border-color: transparent transparent transparent #009fe8;
}
.lcl-stepbar__item:last-child::after {
	content: none;
}
.lcl-note {
	color: #DA5555;
	font-weight: 500;
	font-size: 15px;
	line-height: 1.65;
	letter-spacing: 0.05em;
}
/*------------ form ------------*/
.lcl-form {
	width: 100%;
	margin: 40px auto 0;
}
/* form__block ------------*/
.lcl-form__block {
	display: flex;
	align-items: stretch;
	justify-content: center;
	flex-wrap: wrap;
	border-top: 1px solid #f5f5f5;
}
/* .lcl-form__block[data-toggle="false"] {
	display: none;
} */
.lcl-form__block:last-child {
	border-bottom: 1px solid #f5f5f5;
}
.lcl-form__block.lcl-form__block--hidden {
	display: none;
}
.lcl-form__block.lcl-form__block--show {
	display: flex;
}
.lcl-form__ttl {
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
	flex-wrap: wrap;
	padding: 10px 70px 10px 25px;
	background-color: #eaf8fb;
	width: 260px;
	min-height: 60px;
	font-weight: bold;
	position: relative;
	letter-spacing: 0.05em;
	border-bottom: 1px solid #fff;
}
.lcl-form__note {
	margin-top: 5px;
	color: #DA5555;
	font-weight: 500;
	font-size: 11px;
	line-height: 1.3;
	letter-spacing: 0;
}
/* 必須 ------------*/
.lcl-require::after {
	content: "必須";
	position: absolute;
	right: 20px;
	top: 17px;
	margin: auto;
	width: 35px;
	height: 17px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	color: #fff;
	font-size: 10px;
	background-color: #e24e4e;
	border-radius: 5px;
}
/* 任意 ------------*/
.lcl-any::after {
	content: "任意";
	position: absolute;
	right: 20px;
	top: 17px;
	margin: auto;
	width: 35px;
	height: 17px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	color: #333333;
	font-size: 10px;
	background-color: #D3D3D3;
	border-radius: 5px;
}
/* form__item ------------*/
.lcl-form__item {
	width: 740px;
	padding: 10px 30px;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	flex-wrap: wrap;
	word-break: break-all;
}
.lcl-form__item--full {
	display: block;
}

.lcl-form__cnt {
	display: block;
	width: 100%;
}
.lcl-form__cnt.lcl-form__cnt--toggle {
	display: none;
}
.lcl-form__sep {
	display: flex;
	align-items: center;
	gap: 10px;
	width: 100%;
}
.lcl-form__cnt:not(:first-of-type) {
	margin-top: 10px;
} /* :not(:first-of-type) ------------ */
.lcl-form__label {
	width: 85px;
	font-weight: 400;
	font-size: 15px;
	line-height: 1;
	letter-spacing: 0;
}
.lcl-form__check {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	gap: 5px;
}
.lcl-form__area {
	flex: 1;
}
/* ---------------------- option ---- */
.lcl-form-radio {
	display: block;
}
/* ---------------------- option ---- */
.lcl-form-chk-btn {
	margin-right: 10px;
}
/* error ------------*/
.lcl-top-error {
	text-align: center;
	margin: 40px 0;
	color: #ff3035;
}
.lcl-error-comment {
	width: 100%;
	margin-top: 3px;
}
.lcl-error-comment span {
	width: auto;
	line-height: 1;
	color: #ff3035;
	display: inline-block;
}
.lcl-policy-e {
	text-align: center;
}
/* textarea ------------*/
.lcl-textarea {
	width: 600px;
	height: 130px;
	background-color: #f5f5f5;
	padding: 15px;
}
.lcl-textarea.lcl-textarea--full {
	width: 100%;
}
/* input ------------*/
.lcl-form__input {
	width: 400px;
	height: 30px;
	height: auto;
	background-color: #f5f5f5 !important;
	padding: 6px;
	border-radius: 5px;
}
.lcl-form__input.lcl-form__input--full {
	width: 100%;
}
.lcl-form__input::placeholder {
	color: #BBBBBB;
}
.lcl-textarea::placeholder {
	color: #BBBBBB;
}
.lcl-form-select{
	width: 300px;
	position: relative;
}
.lcl-form-select.lcl-form-select--age{
	width: 60px;
}
.lcl-form__age {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	gap: 5px;
}
.lcl-form-select::after {
	content: "\f107";
	font-family: fontawesome;
	display: block;
	position: absolute;
	right: 10px;
	top: 50%;
	transform: translateY(-50%);
	pointer-events: none;
	background: none;
	width: auto;
	font-size: 1em;
}
.lcl-form-select select{
	width: 100%;
  -webkit-appearance: none;
	padding: 10px;
	border: 1px solid #ccc !important;
	border-radius: 5px !important;
	font-size: 15px;
	cursor: pointer;
	background: #fff;
	color: #000;
}
.lcl-form-select select::-ms-expand {
	display: none;
}
/* ---------------------- 希望日 ---- */
.lcl-visit {
}
.lcl-visit-item {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	flex-wrap: wrap;
}
.lcl-visit-item:not(:last-child) {
	margin-bottom: 10px;
}
.lcl-visit-item .js__picker {
	width: 150px;
	height: 30px;
	border-radius: 5px;
	background-color: #f5f5f5;
	margin-right: 10px;
}
.lcl-visit-item dt {
	font-weight: bold;
}
.lcl-visit-item__days {
}
.lcl-visit-item__time .lcl-form__input--s {
	margin-right: 5px;
}
/* ---------------------- option ---- */
.lcl-form__input--birth01 {
	width: 80px;
}
.lcl-form__input--birth02 {
	width: 60px;
}
.lcl-form__input--min01 {
	width: 45px;
}
.lcl-form__item--birth-txt {
}
/* 住所 ------------*/
.lcl-form__item-sbs {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	flex-wrap: wrap;
}
.lcl-form__input--postal {
	width: 100px;
	margin-right: 20px;
}
.lcl-form__postal-txt {
	font-size: 13px;
}
.lcl-form__comment{
	font-size: 11px;
	line-height: 1.2;
	color: #767676;
}
/* policy ------------*/
.lcl-policy {
	margin-top: 30px;
	text-align: center;
}
.lcl-policy__link {
	color: #009fe8;
	text-decoration: underline;
}
/* button-area ------------*/
.lcl-button-area .linkbtn {
	cursor: pointer;
	margin: 40px 0 0;
	width: 250px;
	height: 60px;
	border-radius: 5px;
	font-size: 15px;
	justify-content: center;
	background-color: #009fe8;
}
@media screen and (min-width: 768px) {
	.lcl-button-area .linkbtn:hover {
		background-color: #00335f;
	}
}
/*------------------------------------------------
確認ページ
------------------------------------------------*/
.lcl-button-area {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	/*margin-top: 40px;*/
}
.lcl-button-area--edit {
	flex-direction: row-reverse;
}
.lcl-button-area--edit .linkbtn--edit {
	width: 190px;
	height: 40px;
	margin-right: 20px;
	background-color: #333;
}
.lcl-button-area--edit .linkbtn--edit.linkbtn::after {
	content: "\f137";
	right: auto;
	left: 15px;
}
/*------------------------------------------------
サンクスページ
------------------------------------------------*/
.lcl-thanks {
	padding-top: 60px;
}
.lcl-thanks__ttl {
	color: #00335F;
	font-size: 28px;
	font-weight: 500;
	text-align: center;
	line-height: 1.6;
	letter-spacing: 0.05em;
	margin-bottom: 15px;
}
.lcl-thanks__lead {
	text-align: center;
	margin: 0 auto 65px;
	padding: 20px 0;
	background: #EBF3F5;
}
.lcl-thanks-lead__txt {
	color: #00335F;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.7;
}
.lcl-thanks-lead__address {
	color:#DA5555;
	font-size: 20px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.7;
	letter-spacing: 0.01em;
	margin-top: 10px;
}
.lcl-thanks-lead__link {
}

.lcl-button-area--close {
	position: relative;
}

.lcl-sec {
	padding-bottom: 60px;
}
.lcl-sec__txt {
	color: #DA5555;
	font-weight: 700;
}
.lcl-sec__txt02 {
	font-weight: 700;
}
.lcl-sec__smalltxt {
	font-size: 13px;
	font-weight: 500;
	line-height: 1.7;
	letter-spacing: 0.007px;
}

/*------------------------------------------------
lcl-sec__main
------------------------------------------------*/
.lcl-sec__main {
	margin-top: 20px;
	margin-bottom: 30px;
	padding: 40px;
	border-radius: 5px;
	background: #FEE;
}
.lcl-sec-main__set:not(:last-child) {
	margin-bottom: 30px;
}
.lcl-sec-main-set__head {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	flex-wrap: wrap;
	gap: 0 10px;
}
.lcl-sec-main-set-head__num {
	color: #fff;
	font-size: 20px;
	font-weight: 700;
	line-height: 1;
	width: 40px;
	aspect-ratio: 1;
	background: #DA5555;
	border-radius: 100vmax;
	display: flex;
	align-items: center;
	justify-content: center;
}
.lcl-sec-main-set-head__ttl {
	font-weight: 700;
}
.lcl-sec-main-set__body {
	padding-left: 50px;
}
.lcl-sec-main-set-body__txt {
	letter-spacing: 0;
}
.lcl-sec__telnum {
	width: 320px;
	height: 60px;
	background-color: #66bdd4;
	color: #fff;
	font-size: 30px;
	font-weight: bold;
	line-height: 1.1;
	border-radius: 5px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 10px 0;
}



/*============================ #visiting ============================*/
.lcl-visiting__cnt {
	margin-top: 40px;
}
.lcl-visiting-list {
	margin-top: 10px;
}
.lcl-visiting-list__item {
	position: relative;
	background-color: #EBF3F5;
	padding: 25px 30px 30px;
}
.lcl-visiting-list__item:not(:last-child) {
	margin-bottom: 25px;
}
.lcl-visiting-list__item:not(:last-child)::after {
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 15px 17.5px 0 17.5px;
	border-color: #66bdd4 transparent transparent transparent;
	position: absolute;
	bottom: -15px;
	right: 0;
	left: 0;
	margin: auto;
}
.lcl-visiting-list__ttl {
	font-size: 20px;
	font-weight: 700;
	line-height: 1;
	display: flex;
	align-items: center;
}
.lcl-visiting-list__num {
	font-size: 20px;
	width: 40px;
	height: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	background-color: #FFFFFF;
	border-radius: 50px;
	border: 2px solid #66bdd4;
	color: #66bdd4;
	margin-right: 15px;
	flex-shrink: 0;
}
.lcl-visiting-list__main {
	padding-left: 55px;
}
.lcl-visiting-list__txt {
	margin-top: 5px;
}
.lcl-visiting-list__kome {
	color: #DA5555;
	font-size: 12px;
	font-weight: 700;
	line-height: 1.7;
	letter-spacing: 0.006px;
	margin-top: 10px;
}



/*------------ lcl-btn--close ------------*/
.lcl-btn--close {
	width: 190px;
	height: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	position: relative;
	margin-right: auto;
	margin-left: auto;
	border: 1px solid #002e72;
	color: #fff;
	font-size: 13px;
	padding-right: 15px;
	transition: 0.5s ease;
	background-color: #333;
}
.lcl-btn--close-arw {
	width: 19px;
	height: 1px;
	position: absolute;
	right: 20px;
	background: #fff;
	transform: rotate(45deg);
	transition: 0.5s ease;
	top: 0;
	bottom: 0;
	margin: auto;
}
.lcl-btn--close-arw::before {
	display: block;
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 19px;
	height: 1px;
	background: #fff;
	transition: 0.5s ease;
	transform: rotate(90deg);
}
/* pc-only ------------*/
@media screen and (min-width: 768px) {
	.lcl-btn--close:hover {
		border: 1px solid #002e72;
		color: #fff;
		background-color: #002e72;
	}
	.lcl-btn--close:hover .lcl-btn--close-arw,
	.lcl-btn--close:hover .lcl-btn--close-arw::before {
		background: #fff;
	}
}
/* /pc-only -----------*/
/*============================ #recruit_btm ============================*/
.ft_btm .container {
	justify-content: center;
}
#footer .ft_btm ul,
.recruit_btm,
.footer-in {
	display: none;
}

@media screen and (max-width: 767px) {
	/* ---------------------------------------------------------------- SP ---- */
	/*------------------------------------------------
	variable
	------------------------------------------------*/
	.lcl-note {
		font-size: 12px;
	}
	.lcl-note__wrap {
		padding-inline: 15px;
	}
	.lcl-header {
		gap: 10px;
		height: 50px;
		padding: 0 15px;
	}
	.lcl-header__logo {
		width: 120px;
		left: 10px;
	}
	.lcl-header__ttl {
		font-size: 13px;
		letter-spacing: 0;
	}

	.lcl-form__lead {
		margin-bottom: 15px;
		padding-inline: 15px;
		font-size: 18px;
	}
	.lcl-form__label {
		width: 70px;
		font-size: 13px;
	}
	/*------------------------------------------------
	top
	------------------------------------------------*/

	.lcl-top {
		width: 100%;
		height: 250px;
	}

	/*------------------------------------------------
	contact
	------------------------------------------------*/
	.lcl-contact {
		padding: 25px 0;
	}
	.lcl-contact__in {
		width: 100%;
	}
	/*------------ lead ------------*/
	.lcl-lead {
		text-align: left;
		margin-bottom: 30px;
		padding: 0 15px;
	}
	.lcl-lead__txt {
		font-size: 13px;
		line-height: 1.5666;
	}
	/*------------ stepbar ------------*/
	.lcl-stepbar {
		width: 100%;
		padding: 0 10px;
	}
	.lcl-stepbar__item {
		display: flex;
		justify-content: center;
		align-items: center;
		flex-direction: column;
		gap: 5px;
		width: 60px;
		height: 85px;
		color: #cccccc;
		font-weight: 500;
		font-size: 16px;
		line-height: 1.2;
		letter-spacing: 0;
	}
	.lcl-stepbar__num {
		width: 20px;
		height: 20px;
		font-size: 10px;
	}
	.lcl-stepbar__item:not(:last-child) {
		margin-right: 15px;
	}
	.lcl-stepbar__item::after {
		border-width: 5px 0 5px 8px;
		right: -8px;
	}
	/*------------ form ------------*/
	.lcl-form {
		width: 100%;
		margin: 30px auto 40px;
	}
	/* form__block ------------*/
	.lcl-form__block {
		display: block;
	}
	.lcl-form__block:last-child {
		border-bottom: 0px solid #ddd;
	}
	.lcl-form__ttl {
		align-items: center;
		font-size: 14px;
		padding: 0 25px 0;
		width: 100%;
		min-height: 50px;
	}
	/* form__item ------------*/
	.lcl-form__item {
		width: 100%;
		padding: 15px 15px;
	}
	/* ---------------------- option ---- */
	.lcl-form__item-joblist .lcl-form-chk-btn {
		margin-right: 0;
		width: 50%;
	}
	/* error ------------*/
	.lcl-top-error {
		margin: 30px 0;
	}
	.lcl-error-comment span {
		display: block;
	}
	/* textarea ------------*/
	.lcl-textarea {
		width: 100%;
		height: 200px;
		font-size: 16px;
		line-height: 1.7;
	}
	/* input ------------*/
	.lcl-form__input {
		width: 100%;
		font-size: 16px;
	}
	.lcl-form-select{
		width: 100%;
	}
	.lcl-form__input--postal {
		width: 130px;
	}
	/* 住所 ------------*/
	.lcl-form__item-sbs {
		display: block;
	}
	.lcl-form__postal-txt {
		font-size: 11px;
		margin-top: 10px;
	}
	/* ---------------------- option ---- */
	.lcl-form__input--birth01 {
		width: 80px;
	}
	.lcl-form__input--birth02 {
		width: 60px;
	}
	.lcl-form__input--min01 {
		width: 50px;
	}
	/* policy ------------*/
	.lcl-policy {
		margin-top: 45px;
		padding: 0 15px;
	}
	/* button-area ------------*/
	.lcl-button-area .linkbtn {
		margin: 25px auto 0;
	}
	/*------------------------------------------------
	確認ページ
	------------------------------------------------*/
	.lcl-button-area--edit {
		display: block;
		margin-top: 30px;
	}
	.lcl-button-area--edit .linkbtn--edit {
		width: 180px;
		height: 40px;
	}
	/*------------------------------------------------
	サンクスページ
	------------------------------------------------*/
	.lcl-thanks {
		margin: 0px 0 40px;
		padding: 30px 15px 0;
		text-align: left;
	}
	.lcl-thanks__ttl {
		font-size: 20px;
		text-align: center;
	}
	.lcl-thanks__lead {
		margin: 0 auto 30px;
		padding: 15px;
	}
	.lcl-thanks-lead__txt {
		font-size: 13px;
	}
	.lcl-thanks-lead__address {
		font-size: 13px;
		margin-top: 10px;
	}
	.lcl-thanks-lead__link {
		font-size: 20px;
	}
	.lcl-sec {
		padding-bottom: 40px;
	}
	.lcl-sec__txt02 {
		text-align: center;
	}
	.lcl-sec__smalltxt {
		font-size: 11px;
		line-height: 1.5;
		text-align: center;
		letter-spacing: 0.007px;
	}
	/*------------------------------------------------
	lcl-sec__main
	------------------------------------------------*/
	.lcl-sec__main {
		margin-top: 10px;
		margin-bottom: 20px;
		padding: 40px 25px;
	}
	.lcl-sec-main__set:not(:last-child) {
		margin-bottom: 15px;
	}
	.lcl-sec__telnum {
		width: 260px;
		height: 50px;
		font-size: 24px;
		margin: 15px auto 10px;
	}
	.lcl-btn--close {
		width: 175px;
		height: 45px;
		font-size: 13px;
		padding-right: 15px;
		letter-spacing: 0.1em;
	}
	.lcl-btn--close-arw {
		width: 15px;
		right: 15px;
	}
	.lcl-btn--close-arw::before {
		left: 0;
		width: 15px;
	}
	/*============================ #header ============================*/
	#footer .footer-in {
		display: none;
	}

		/*============================ #visiting ============================*/
	.lcl-visiting__cnt {
		margin-top: 40px;
	}
	.lcl-visiting-list__item {
		padding: 20px 20px;
	}
	.lcl-visiting-list__item:not(:last-child) {
		margin-bottom: 20px;
	}
	.lcl-visiting-list__ttl {
		font-size: 16px;
	}
	.lcl-visiting-list__num {
		font-size: 13px;
		width: 30px;
		height: 30px;
		border-radius: 15px;
		margin-right: 10px;
	}
	.lcl-visiting-list__main {
		padding-left: 40px;
	}
	.lcl-visiting-list__txt {
		margin-top: 5px;
	}
	.lcl-visiting-list__kome {
		margin-top: 10px;
	}
}
