.mobmenu-overlay {
    height: 1000%;
}

/*
トップページのInstagramとYouTube
*/

.topInstagram__item-thumb {
	position: relative;
}
.topInstagram__item-thumb img {
	    aspect-ratio: 1/1;
}

.youtube-video-item-bg {
	position: absolute;
	left:0;
	top:0;
	width: 100%;
	height: 100%;
box-shadow: inset 0px 45px 30px rgba(0, 0, 0, .6);
border-radius: 20px;
	color:#fff;
	padding:18px;
text-overflow: ellipsis;
overflow: hidden;
white-space: nowrap;
}

@media (max-width: 767px) {
.youtube-video-item-bg {
border-radius: 10px;
}
}
@media (max-width: 540px) {
.youtube-video-item-bg {
	padding:10px;
}
}

.youtube-video-item-btn {
	position: absolute;
	left: 50%;
	top: 50%;
	margin-left: -34px;
	margin-top: -24px;
	z-index: 1;
}
@media (max-width: 540px) {
.youtube-video-item-btn {
	width: 48px;
	}
}


/*バナー*/
.company__tsr {
	 margin-bottom: 30px;
}

 @media (max-width: 767px) {
	 .company__tsr-ttl {
		 margin-bottom: 10px;
	}
}

/* 水回り */
.reformBusiness .section__ttl-wrap {
	 flex-wrap: wrap;
	 align-items: center;
}
 .reformBusiness .section__ttl {
	 margin-bottom: 20px;
}
 @media (max-width: 767px) {
	 .reformBusiness .section__ttl {
		 margin-bottom: 30px;
	}
}
 @media (max-width: 540px) {
	 .reformBusiness .section__ttl {
		 width: 100%;
	}
}
 .reformBusines__loan {
	 max-width: 580px;
	 width: 50%;
}
 @media (max-width: 767px) {
	 .reformBusines__loan {
		 width: 100%;
		 margin-bottom: 30px;
	}
}
 @media (max-width: 540px) {
	 .reformBusines__loan {
		 width: 100%;
		 max-width: 258px;
		 margin-inline: auto;
	}
}

/*
コンタクトフォーム
*/


    /*確認画面と完了画面を非表示*/
    .confirm_area,
    .thanks_area {
        display: none;
    }

    /*デフォルトのサンクスメッセージを非表示*/
    .wpcf7-response-output{
        display: none;
    }

	/* 確認画面とメッセージ、スピナーを非表示 */
.bl_formConfirm,
.wpcf7-response-output,
.bl_formConfirm .wpcf7-spinner {
  display: none;
}

/* フォーカス時はオリジナルのアウトラインを適用 */
:where(button, input, textarea, select):focus-visible {
  outline: 2px solid #005FCC;
  outline-offset: -2px;
}
/* フォーカス時はlabelタグにアウトラインを適用 */
.bl_form label:has(:where(input[type=radio], input[type=checkbox]):focus-visible) {
  outline: 2px solid #005FCC;
  outline-offset: 2px;
}


/* 確認するボタン
-----------------------------------------------------------------*/
/* ボタンの基本スタイル */
input[type="button"].confirm_button {
	width: 200px;

    appearance: button;
    background-color: #2991d3;
    color: white;
    border: 1px solid #2991d3;
    padding: 1rem 2rem;
    font-size: 16px;
    cursor: pointer;
	border-radius: 0;

    transition: background-color 0.3s ease, transform 0.2s ease;
}

.single-fudo .input_area input[type="button"].confirm_button {
    padding: 1rem 2rem 2.5rem;
}

/* ホバー時のスタイル */
input[type="button"].confirm_button:not(:disabled):hover {
    background-color: #fff;
	color: #2991d3;
}

/* 無効状態のスタイル */
input[type="button"].confirm_button:disabled {
    background-color: #cccccc; /* 無効状態の背景色 */
    color: #666666; /* 無効状態のテキスト色 */
    cursor: pointer; /* 無効状態のカーソル */
    border: 1px solid #666666;
}

/* 戻るボタン
-----------------------------------------------------------------*/
/* 戻るボタンの基本スタイル */
input[type="button"].back_button {
	width: 200px;
    appearance: button;
    background-color: #f0f0f0;
    color: #333;
    border: 1px solid #ccc;
    padding: 1rem 2rem;
    font-size: 16px;
    cursor: pointer;
	border-radius: 0;

    transition: background-color 0.3s ease, transform 0.2s ease, box-shadow 0.3s ease;
}

/* ホバー時のスタイル */
input[type="button"].back_button:hover {
    background-color: #fff;
}

/* アクティブ時のスタイル（クリック中） */
input[type="button"].back_button:active {
    background-color: #fff;
}

/* 送信するボタン
-----------------------------------------------------------------*/
/* 送信ボタンの基本スタイル */
input[type="submit"].wpcf7-submit {
	width: 200px;
    appearance: button;
    background-color: #2991d3;
    color: white;
    border: 1px solid #2991d3;
    padding: 1rem 2rem;
    font-size: 16px;
    cursor: pointer;
	border-radius:0;

    transition: background-color 0.3s ease, transform 0.2s ease, box-shadow 0.3s ease;
}

/* ホバー時のスタイル */
input[type="submit"].wpcf7-submit:hover {
    background-color: #fff;
	color: #2991d3;
}

/* アクティブ時のスタイル（クリック中） */
input[type="submit"].wpcf7-submit:active {
    background-color: #fff;
	color: #2991d3;
}

/* スピナー付きのスタイル（オプション） */
input[type="submit"].wpcf7-submit.has-spinner {
    position: relative;
}

input[type="submit"].wpcf7-submit.has-spinner::after {
    content: "";
    display: inline-block;
    width: 16px;
    height: 16px;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-top-color: white;
    border-radius: 50%;
    animation: spin 1s linear infinite;
    margin-left: 10px;
    vertical-align: middle;
}

@keyframes spin {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}

/* 送信と戻るボタン
-----------------------------------------------------------------*/
.single-fudo .confirm_area-h,
.single-fudo .confirm_area-p {
	margin: 10px auto;
}
.single-fudo .confirm_area .form-listL {
    padding-top: 0;
}
@media (max-width: 1200px) {
	.single-fudo .confirm_area .form-listL {
		width: 200px;
	}
	.single-fudo .confirm_area .form-listR {
		width: calc(100% - 200px);
	}
}

@media (max-width: 767px) {
	.single-fudo .confirm_area .form-listL {
		width: 100%;
	}
	.single-fudo .confirm_area .form-listR {
		width: 100%;
	}
}

/* ボタンコンテナのスタイル */

.--recruitForm.input_area #privacy-check a {
	margin-left:5px;
}

@media (max-width: 767px) {
	.input_area .form-pp-wrap {
		padding-top:10px;
		padding-bottom: 10px;
	}
	.input_area .form-pp-wrap p {
		    margin-bottom: 10px;
    	margin-top: 10px;
	}
}

@media (min-width: 381px) {
.form-pp--disp380 {
	display: none;
}
}
@media (max-width: 380px) {
.form-pp--disp {
	display: none;
}
.--recruitForm.input_area #privacy-check br {
	display: none;
}
.--recruitForm.input_area .form-pp-wrap p {
	margin: 0;
}

.input_area #privacy-check {
	padding: 10px 5px 10px 0px !important;
}
.input_area #privacy-check .wpcf7-list-item {
	margin: .0;
}
}

.submit-btn-wrap p {
    display: flex;
    justify-content: center;;
    align-items: center;
    gap: 10%;
    margin: 0;
    padding: 0;
	width: 100%;
}

	.submit-btn-wrap input[type="button"].back_button,
	.submit-btn-wrap input[type="submit"].wpcf7-submit {
		max-width: 300px;
	}

@media (max-width: 540px) {
	.submit-btn-wrap input[type="button"].back_button,
	.submit-btn-wrap input[type="submit"].wpcf7-submit {
		max-width: none;
		flex: 1;
	}
}

@media (max-width: 460px) {
	.submit-btn-wrap input[type="button"].back_button,
	.submit-btn-wrap input[type="submit"].wpcf7-submit {
		width: 40vw;
	}
}

@media (max-width: 360px) {
	.submit-btn-wrap p {
		gap: 5%;
	}
	.submit-btn-wrap input[type="button"].back_button,
	.submit-btn-wrap input[type="submit"].wpcf7-submit {
		width: 140px;
	}
}

.submit-btn-wrap br,
.submit-btn-wrap .wpcf7-spinner {
	display: none;
}

.submit-btn-wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.form-submit.--confirmation_button {
    display: block;
}


#privacy-check .link-pp {
	margin-left: 5px;
}

@media (max-width: 767px) {
	.single-fudo .input_area .form-submit {
		display: contents;
	}
}
@media (max-width: 540px) {
	.form-submit {
		margin-top: 0;
	}

	.form-name {
		margin: 0;
	}
	.form-input p {
		margin: 0;
	}
	.form-input-occ {
    margin-top: 0;
	}
}
