@charset "UTF-8";

.gosick {
	font-family: BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
}

#container {
	overflow-x: hidden;
}

#main-area {
	position: relative;
}

#main {
	background-image: url(https://hakenkoushin.info/wp-content/themes/hakenkousin/audit/images/fv.jpg);
	background-position: right top;
	background-repeat: no-repeat;
	background-size: cover;
	margin: 150px auto 0;
	width: 100%;
	min-height: 630px;
	max-height: 630px;
	min-width: 1240px;
}

#main .catch {
	position: absolute;
	top: 5%;
	left: 5%;
	z-index: 0;
	height: 600px;
	max-height: 600px;
}

#main h1 {
	font-size: clamp(24px, 2.5vw, 36px);
	font-weight: 400;
	line-height: 1.6;
	margin-block: clamp(20px, 2vw, 30px);
}

#main h1 .fv-title__highlight {
	font-size: clamp(28px, 2.9vw, 42px);
	font-weight: 900;
	color: #00326e;
	position: relative;
	margin-right: clamp(10px, 1.4vw, 20px);
}

#main h1 .fv-title__highlight::before {
	content: "";
	width: 100%;
	height: clamp(12px, 1.4vw, 20px);
	background-color: #FFF472;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: -1;
}

#main h1 .fv-title__procedure {
	font-size: clamp(32px, 3.3vw, 48px);
}

#main h1 .fv-title__urgent {
	font-size: clamp(32px, 3.3vw, 48px);
	font-weight: 600;
}

#main .sp .fv-badge {
	width: 100%;
	padding: 0 15px;
	margin-bottom: 15px;
}

#main .sp .fv-badge img {
	display: block;
	width: 100%;
}

#main-ex {
	position: relative;
	padding: 20px 0;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
}

.main-ex-inner {
	padding: 0 15px;
}

#main-ex p {
	font-size: 18px;
	font-weight: 700;
	line-height: 1.8;
	color: #00326e;
}

#main-ex p .pc {
	display: inline;
}

.emphasis {
	color: #e40e18;
}

.emphasis .small {
	font-size: 70%;
	color: #00326e;
}

#page_top.page_top_lp {
	bottom: 20px;
	right: 90px;
}

@media (min-width:1400px) {
	#main {
		background-image: url(https://hakenkoushin.info/wp-content/themes/hakenkousin/audit/images/fv.jpg);
		background-position: right top;
		background-repeat: no-repeat;
		background-size: cover;
		margin: 150px auto 0;
		width: 100%;
		min-height: 720px;
		max-height: 720px;
		min-width: 1240px;
		max-width: 1800px;
	}

	#main .catch {
		position: absolute;
		top: 5%;
		left: 5%;
		z-index: 0;
		height: 46vw;
		max-height: 680px;
	}
}

@media (max-width:834px) {
	#main {
		background-image: url(https://hakenkoushin.info/wp-content/themes/hakenkousin/audit/images/fv.jpg);
		background-position: right top;
		background-repeat: no-repeat;
		background-size: cover;
		margin: 150px auto 0;
		width: 100%;
		min-height: 600px;
		max-height: 600px;
		min-width: 1240px;
	}

	#main .catch {
		position: absolute;
		top: 5%;
		left: 5%;
		z-index: 0;
		height: 600px;
		max-height: 600px;
	}

	#main-ex p {
		font-size: 12px;
	}

	#main h1 {
		font-size: clamp(18px, 3.6vw, 36px);
		line-height: 1.5;
		margin-block: clamp(12px, 3vw, 30px);
		padding-inline: 15px;
	}

	#main h1 .fv-title__highlight {
		font-size: clamp(22px, 4.2vw, 42px);
		margin-right: clamp(5px, 2vw, 20px);
		margin-bottom: 15px;
		display: inline-block;
	}

	#main h1 .fv-title__highlight::before {
		height: clamp(8px, 2vw, 20px);
		bottom: 5px;
	}

	#main h1 .fv-title__procedure,
	#main h1 .fv-title__urgent {
		font-size: clamp(22px, 4.8vw, 48px);
	}

	#main-ex p .pc {
		display: none;
	}

	#hkb-btn {
		bottom: 18vw !important;
	}
}

@media (min-width:1800px) {
	#main {
		min-height: 900px;
		max-height: 900px;
		min-width: 1240px;
		max-width: 2200px;
	}

	#main .catch {
		max-height: 820px;
	}
}

#main .catch img {
	text-align: left;
	height: 100%;
}

.pc {
	display: block;
}

.sp {
	display: none;
}

@media print,
(max-width:834px) {
	.pc {
		display: none;
	}

	.sp {
		display: block;
	}

	.img-responsive {
		width: 100%;
	}

	#main {
		background-image: none;
		width: 100%;
		min-height: auto;
		max-height: 100%;
		min-width: 100%;
		margin: 0;
		padding: 30px 0 0;
	}

	#main .catch {
		display: none;
	}

	#container {
		padding: 68px 0 0;
	}
}

/* bar */
#bar {
	width: 100%;
	background: linear-gradient(to bottom, #0051b1 0%, #00295a 100%);
	z-index: -2;
}

#bar.is-fixed {
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 2;
}

#bar.is-stop {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 100%;
}

.bar-inner {
	max-width: 1000px;
	margin: 0 auto;
}

.bar-box {
	width: 100%;
	padding: clamp(16px, 2.2vw, 30px) 20px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	color: #fff;
}

.bar-content {
	width: 25%;
	text-align: center;
}

.bar-content p {
	color: #fff;
	font-size: clamp(16px, 1.5vw, 20px);
	font-weight: 700;
	line-height: 1.6;
}

.bar-content p span {
	font-size: clamp(26px, 2.4vw, 32px);
	position: relative;
	z-index: 0;
	line-height: 1.2;
}

.bar-content p span::before {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: clamp(8px, 0.8vw, 10px);
	background: #e40e18;
	z-index: -1;
}

.bar-ex {
	width: 100%;
}

.bar-ex p {
	margin-top: 10px;
	font-size: 10px;
	line-height: 1.6;
	text-align: center;
	color: #fff;
}

/* ==========================
   Tablet / SP
========================== */

@media (max-width: 834px) {
	.bar-box {
		flex-direction: column;
		gap: 16px;
		padding: 20px 15px;
	}

	.bar-content {
		width: 100%;
	}

	.bar-content p {
		font-size: clamp(14px, 3vw, 20px);
	}

	.bar-content p span {
		font-size: clamp(22px, 5vw, 32px);
	}

	.bar-content p span::before {
		height: 10px;
	}

	.bar-ex p {

		text-align: left;
	}

}

/*==================================================
support
==================================================*/

#support {
	padding: 100px 0;
	background: #fff;
}

#support h2 {
	margin-bottom: 35px;
	text-align: center;
	font-size: 48px;
	font-weight: 700;
	line-height: 1.4;
	color: #00295a;
}

#support .lead {
	margin: 0 auto 70px;
	text-align: center;
	font-size: 24px;
	line-height: 2;
}

#support .lead u {
	font-weight: bold;
}

#support .area-box {
	max-width: 1200px;
	margin: 0 auto;
}

#support .area-box>div[id^="support"] {
	width: calc((100% - 60px) / 3);
	float: left;
	margin-right: 30px;
}

#support .area-box>div[id^="support"]:last-child {
	margin-right: 0;
}

#support .ph-box {
	height: 100%;
}

#support .inbox {
	height: 100%;
	padding: 45px 30px;
	background: #fff;
	border-radius: 12px;
	border: 1px solid #e8edf3;
	box-shadow: 0 8px 24px rgba(0, 0, 0, .05);
	text-align: center;
	transition: .3s;
}


#support .support-icon {
	width: 90px;
	height: 90px;
	margin: 0 auto 25px;
	display: flex;
	align-items: center;
	justify-content: center;
}

#support .support-icon img {
	width: 100%;
	height: auto;
	display: block;
}

#support .heading {
	margin: 0;
	font-size: 28px;
	font-weight: 700;
	line-height: 1.5;
	color: #00295a;
}

#support::after,
#support .area-box::after {
	content: "";
	display: block;
	clear: both;
}


/*==================================================
Responsive
==================================================*/

@media (max-width: 834px) {

	#support {
		padding: 70px 0;
	}

	#support h2 {
		font-size: 34px;
		margin-bottom: 25px;
	}

	#support .lead {
		font-size: 16px;
		line-height: 1.9;
		margin-bottom: 40px;
		padding: 0 15px;
	}

	#support .area-box>div[id^="support"] {
		width: 100%;
		float: none;
		margin: 0 0 20px;
	}

	#support .area-box>div[id^="support"]:last-child {
		margin-bottom: 0;
	}

	#support .inbox {
		padding: 30px 20px;
	}

	#support .support-icon {
		width: 70px;
		height: 70px;
		margin-bottom: 20px;
	}

	#support .heading {
		font-size: 22px;
	}

}

#case-before-after {
	padding: 100px 0;
	max-width: 900px;
	margin: 0 auto;
}

#case-before-after .area-box {
	max-width: 1200px;
	margin: auto;
}

.ba-box {
	position: relative;
	border: 1px solid #d9e3ef;
	padding: 100px 50px 45px;
	margin-bottom: 60px;
	background: #fff;
	box-shadow: 0 10px 30px rgba(0, 50, 110, 0.05);
}

.ba-label {
	position: absolute;
	top: 0;
	left: 0;
	background: #00295a;
	color: #fff;
	font-size: 24px;
	font-weight: 700;
	padding: 15px 40px;
	line-height: 1.2;
}

.ba-flex {
	display: flex;
	align-items: stretch;
	justify-content: space-between;
	gap: 25px;
}

.ba-item {
	flex: 1;
	border: 2px solid #d9e3ef;
	position: relative;
	background: #fff;
	padding: 50px 20px;
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
}

.ba-item.before {
	background: #fff;
}

.ba-item.after {
	border-color: #00295a;
	border-width: 3px;
}

.ba-head {
	position: absolute;
	top: 0;
	left: 20px;
	transform: translate(0, -50%);
	padding: 8px 30px;
	font-size: 22px;
	font-weight: 700;
	letter-spacing: .05em;
}

.before .ba-head {
	background: #f1f3f7;
}

.after .ba-head {
	background: #00295a;
	color: #fff;
}

.ba-item p {
	font-size: 20px;
	line-height: 1.6;
	color: #00326e;
	font-weight: 500;
	margin: 0;
}

.before p {
	color: #000;
}

.ba-arrow {
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 50px;
	color: #00326e;
	flex: none;
	font-weight: 700;
}

.ba-note {
	margin-top: 35px;
	background: #f2f7ff;
	border-left: 5px solid #00326e;
	padding: 25px 30px;
	font-size: 18px;
	line-height: 1.8;
	color: #333;
}

.ba-caption {
	text-align: left;
	font-size: 14px;
	color: #888;
	margin-top: 30px;
	line-height: 1.6;
}

/* ---------- Responsive ---------- */

@media(max-width:834px) {

	#case-before-after {
		padding: 60px 0;
	}

	.ba-box {
		padding: 60px 15px 30px;
		margin-bottom: 40px;
	}

	.ba-label {
		font-size: 18px;
		padding: 10px 25px;
	}

	.ba-flex {
		flex-direction: column;
		gap: 40px;
	}

	.ba-arrow {
		transform: rotate(90deg);
		font-size: 40px;
		margin: -10px 0;
	}

	.ba-item {
		min-height: auto;
		padding: 40px 15px;
		width: 100%;
	}

	.ba-head {
		font-size: 18px;
		padding: 6px 25px;
	}

	.ba-item p {
		font-size: 20px;
		line-height: 1.5;
	}

	.ba-note {
		font-size: 15px;
		padding: 20px;
		line-height: 1.7;
		margin-top: 25px;
	}

	.ba-caption {
		font-size: 12px;
	}
}
/*==================================================
ご用意いただく書類
==================================================*/

.cv-ex {
	margin: 50px auto;
}

.cv-ex h2 {
	margin-bottom: 35px;
	text-align: center;
	font-size: 42px;
	font-weight: 700;
	line-height: 1.5;
	color: #00295a;
}

.cv-ex-box {
	max-width: 700px;
	margin: 0 auto;
}

.cv-ex-box ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.cv-ex-box li {
	padding: 22px 30px;
	margin-bottom: 15px;
	border: 1px solid #d9e3ef;
	border-radius: 8px;
	background: #f8fbff;
	font-size: 22px;
	font-weight: 700;
	line-height: 1.6;
	color: #00326e;
}

.cv-ex-box:last-child {
	margin-top: 35px;
}

.cv-ex-box:last-child p {
	margin: 0;
	font-size: 18px;
	line-height: 1.8;
}
@media (max-width:834px) {

	.cv-ex {
		margin: 60px 15px;
		padding: 40px0;
	}

	.cv-ex h2 {
		font-size: 22px;
		margin-bottom: 25px;
		line-height: 1.5;
	}

	.cv-ex-box li {
		padding: 18px;
		font-size: 18px;
	}

	.cv-ex-box:last-child {
		margin-top: 25px;
		padding: 18px;
	}

	.cv-ex-box:last-child p {
		font-size: 15px;
		line-height: 1.7;
	}
}

#footer .txt-box p a {
	color: #fff;
}