/* pagetype=index 用 css */


html {
	scroll-behavior: smooth;
}
.main__container{
	position:relative;
}
.main__text{
	position:absolute;
	top:0;
	width:100%;
	background:#005CB2;
	line-height:1.6em;
	font-size:5vw;
	text-align:center;
	font-weight:bold;
	color:#fff;
}
.mainCV__time {
	position:absolute;
	left:0;
	right:0;
	top:58%;
	width:100%;
	text-align:center;
	font-size:5vw;
	font-weight:bold;
	color:#f44336;
}
.mainCVbtn{
	position:absolute;
	top:65.5%;
	width:80%;
	left:0;
	right:0;
	margin:auto;
	height: 32.5vw;
	text-decoration:none;
	color:#fff;
	font-size:9vw;
	font-weight:bold;
}
.mainCVbtn__tel{
	position:absolute;
	left:22%;
	top:0;
	bottom:0;
	margin:auto;
	line-height: 3.4em;
}
.easyFormWrapper .form_area{
	margin-bottom:5vw;
}
.tosho_box2{
	display:flex;
	margin:2vw 4vw;
	border: 2px solid #005CB2;
}
.ttl_deco1{
	margin:8vw 4vw 4vw 0;
	background:#005CB2;
	font-size:7vw;
	line-height:1.9em;
	padding-top:.2em;
	text-align:center;
	font-weight:bold;
	color:#fff;
	border-radius:0 3vw 3vw 0;
}
.services1_txt {
	margin:4vw 7vw;
	font-size:3.8vw;
	line-height:1.7em;
}

.ttl_deco2{
	margin:8vw 4vw 4vw 0;
	border:2px solid #005CB2;
	border-left: 0;
	background:#fff;
	font-size:7vw;
	line-height:1.9em;
	padding-top:.2em;
	text-align:center;
	font-weight:bold;
	color:#005CB2;
	border-radius:0 3vw 3vw 0;
}
.services2_txt {
	margin:4vw 7vw 0;
	font-size:3.8vw;
	line-height:1.7em;
}
.cta_tel{
	position:relative;
	margin-top:8vw;
}
.lp_cv_fukidasi {
	width:20vw;
	position:absolute;
	top:-16%;
	right:4%;
	animation: blink 1.0s ease-in-out infinite alternate;
	filter: drop-shadow(2px 2px 3px rgba(0, 0, 0, 0.3));
}

.cta_tel__text {
	position:absolute;
	bottom:2vw;
	right:0;
	left:0;
	margin:auto;
	text-align:center;
	font-weight:bold;
	font-size:4vw;
	color:#fff
}
.cta_tel__tel {
	position:absolute;
	bottom:2vw;
	right:0;
	left:0;
	margin:auto;
	text-align:center;
	font-weight:bold;
	font-size:4vw;
	color:#fff
}
.cta_tel__tel{
	position: absolute;
	bottom: 16%;
	width: 88%;
	font-size: 5.5vw;
	text-decoration: none;
	line-height: 1.3em;
	color: #f00;
	font-weight: bold;
	padding-right: 10%;
	padding-top: 2%;
}
.cta_tel__caption{
	font-size:2.8vw;
	margin:1vw 2vw;
}
.flow_text {
	margin:4vw 7vw;
	font-size:3.8vw;
	line-height:1.7em;
}

.faq__content{
	padding-right:6.7vw;
	padding-left:6.7vw;
}
.faq__content_wrapper{
	border: 2px solid #005CB2;
	border-radius: 2vw;
	margin-bottom:6vw;
}
.faq__contentTitle{
	font-weight:inherit;
}
.faq__contentQ:after{
	content:"";
	position:absolute;
	right:8vw;
	top:0;
	bottom:0;
	margin:auto;
	display: inline-block;
	vertical-align: middle;
	color: #005CB2;
	line-height: 1;
	width: .7em;
	height: .7em;
	border: 0.15em solid currentColor;
	border-left: 0;
	border-bottom: 0;
	box-sizing: border-box;
	transform: translateY(-25%) rotate(135deg);
}

.faq__contentQ.active:after{
	transform: translateY(155%) rotate(315deg);
	top:-1.9em;
}
.faq__contentQ{
	position:relative;
	align-items:center;
	font-size: 4.6vw;
	background:none;
	font-weight:bold;
	color: #005CB2;
	padding: 4vw 17vw 4vw 6vw;
	line-height: 1.5em;
}
.faq__contentA{
	display:none;
	background:none;
	border:none;
	font-size: 4vw;
	line-height: 1.8em;
	padding: 0 8vw 4vw 6vw;
}
.operator{
	position:relative;
	margin-bottom:10vw;
}
.operator_text{
	position:absolute;
	bottom:0;
	padding: 0 4vw;
	width:100%;
}
.formMore{
	background:none;
}
.anchor-link-wrap {
	margin-top: 1em;
}
.anchor-link {
	color: #005CB2;
	font-weight: bold;
	text-decoration: none;
}


/**********************
*	モーダル用CSS
**********************/
#customModalOverlay {
	position: fixed;
	top: 0; left: 0;
	width: 100vw; height: 100vh;
	background: rgba(0,0,0,0.6);
	z-index: 9998;
}

.custom-modal {
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 9999;
	width: 90vw;
	max-width: 500px;
}

.custom-modal__inner {
	text-align: center;
	position: relative;
}

/* 背景画像 */
.modal-bg-container {
	position: relative;
	width: 100%;
}

.glass-bg {
	width: 100%;
	height: auto;
	display: block;
}

/* 上ボタン（10秒） */
.btn-form {
	position: absolute;
	top: 65px;
	left: 49%;
	transform: translate(-50%, -50%);
	width: 95%;
}
.btn-form img { animation:btn_animation  1s infinite; }

/* 下CTAボタン */
.btn-cta {
	position: absolute;
	bottom: 55px;
	left: 50%;
	transform: translate(-50%, 50%);
	width: 92%;
}

/* 閉じるボタン */
.btn-close {
	display: block;
	margin: 40px auto 0;
	width: 50px;
	height: 50px;
	cursor: pointer;
}
.cta_free_dial{
	width: 100%;
	font-size: 2rem;
	color: white;
	font-weight: bold;
	position: absolute;
	bottom: 72px;
	left: 64%;
	transform: translate(-50%, 50%);
	z-index: 9999;
}

.cta_call_status{
	position: absolute;
	width:100%;
	font-size: 2.8vw;
	bottom: 38px;
	left: 50%;
	transform: translate(-50%, 50%);
	z-index: 9999;
}

@keyframes btn_animation {
	0% {transform: translateY(0);}
	10%{transform: translateY(5%);}
	20%{transform: translateY(0);}
	30%{transform: translateY(5%);}
	40%{transform: translateY(0);}
}
.animation{animation: gatagata .3s infinite;scale: 1;}
@keyframes gatagata{
	0%{transform:translateY(0)}
	25%{transform:translate(0px, 1px) rotateZ(1deg)}
	50%{transform:translate(0px, 1px) rotateZ(0deg)}
	75%{transform:translate(1px, 1px) rotateZ(-1deg)}
	100%{transform:translate(0px, 0px) rotateZ(0deg)}
}

.review-card_header_title h4{ line-height:1.4}
span.HeadsUp {
	position: absolute;
	font-size: 3.7vw;
	bottom: 13vw;
	left: 29vw;
	font-weight: bold;
	animation: blinkEffect 2s infinite alternate;
}
@keyframes blinkEffect {
	0% { opacity: 1; }
	70% { opacity: 1; }
	100% { opacity: 0; }
}
