@charset "utf-8";

/*--------------------------------------------------------------
1.0 - TOP
--------------------------------------------------------------*/
.first_view {
	width: 100%;
	margin: 0 auto;
	padding: 0;
	position: relative;
}
.fv_inner {
	width: 30%!important;
	margin: 0 0 0 6%!important;
	padding: 1.3%!important;
	background-color: rgba(0, 0, 0, 0.9);
	border-radius: 0.8vw;
	box-sizing: border-box!important;
}
.fv_boder {
	width: fit-content!important;
	padding: 4% 3% 4.3% 7%!important;
	border: solid 1px #fff;
	box-sizing: border-box!important;
}
.fv_txt {
	margin: 0!important;
	padding: 0!important;
	font-size: 1.6vw!important;
	line-height: 2.1!important;
}
.fv_txt span {
	padding: 0 0.5%!important;
	font-size: 85%!important;
}

.topSection {
	width: 100%;
	margin: 0 auto;
	padding: 6% 0;
	line-height: 1.8;
	letter-spacing: 0.08em;
}

.top_1st {
	text-align: center;
}
.top_1st img {
	width: 24%;
	margin: 0 auto;
	display: block;
}
.top_h2ttl {
	position: relative;
	margin: 3% 0 5% 0;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction : column;
	font-size: 2.1vw;
	font-weight: 700;
	line-height: 1.8;
	letter-spacing: 0.1em;
}
.top_h2ttl span {
	display: block;
	padding-bottom: 0.5%;
	font-size: 70%;
	letter-spacing: 0.08em;
	color: #ccc;
}
.top_h2ttl::after {
	content: '';
	position: absolute;
	display: inline-block;
	width: 1.5px;
	height: 30%;
	bottom: -50%;
	left: 50%;
	transform: translateX(-50%);
	background-color: #ccc;
}
.top_1st .c_copy {
	margin: 0;
	font-size: 1.5vw;
	font-weight: 700;
}
.top_1st .c_copy span {
	padding: 0 0.2% 0 0.3%;
	font-size: 85%;
}
.top_1st p {
	margin: 1.5% 0 0 0;
	font-size: 1.1vw;
	font-weight: 500;
	line-height: 2.0;
}
.feature_col {
	width: 40%;
	margin: 3% auto 3.5%;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
}
.circle {
	width: 26%;
	border-radius: 50%;
	background: #ffcc00;
}
.circle_inner {
	position: relative;
	height: 0;
	padding-top: 100%;
}
.circle_inner .circle_box {
	position: absolute;
	width: 100%;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	text-align: center;
	line-height: 1.5;
}
.circle_inner .box_end {
	transform: translate(-50%, -58%);
}
.circle_inner .circle_box p {
	width: 100%;
	margin: 0;
	padding: 0;
	font-size: 1.5vw;
	font-weight: 700;
	line-height: 1.5;
}
.circle_inner .circle_box p span {
	font-size: 80%;
}
.circle_inner .circle_box .slim {
	font-size: 100%;
	transform: scale(0.8, 1);
	display: inline-block;
}

.top_2nd {
	text-align: center;
	background: #ffd940;
}
.top_2nd h2 {
	margin: 0 0 5% 0;
}
.top_2nd h2 span {
	color: #fff4c6;
}
.top_2nd h2::after {
	background-color: #fff4c6;
}
.trouble_inner {
	width: 85%;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	align-items: start;
	justify-content: start;
}
.trouble_inner .trouble_box {
	width: 30%;
	margin: 0 5% 0 0;
	padding: 0;
	line-height: 1.8;
}
.trouble_inner .box_end {
	margin: 0;
}
.trouble_inner .trouble_box img {
	width: 100%;
	display: block;
	border-radius: 0.8vw;
}
.trouble_inner .trouble_box h3 {
	margin: 4% 0 0 0;
	padding: 0;
	font-size: 1.4vw;
}
.trouble_inner .trouble_box .angle {
	width: 95%;
	aspect-ratio: 40/9;
	margin: 3% auto 4%;
	padding: 0;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
}
.trouble_inner .trouble_box .angle::before,
.trouble_inner .trouble_box .angle::after {
	position: absolute;
	content: '';
	width: 5%;
	aspect-ratio: 2/3;
}
.trouble_inner .trouble_box .angle::before {
	border-left: 3px solid #fcf1c3;
	border-top: 3px solid #fcf1c3;
	top: 0;
	left: 0;
}
.trouble_inner .trouble_box .angle::after {
	border-right: 3px solid #fcf1c3;
	border-bottom: 3px solid #fcf1c3;
	bottom: 0;
	right: 0;
}
.trouble_inner .trouble_box .angle p {
	width: fit-content;
	margin: 0;
	padding: 0;
	font-size: 1.1vw;
	font-weight: 600;
	text-align: center;
}
.trouble_inner .trouble_box p {
	width: 100%;
	margin: 0;
	padding: 0;
	font-size: 0.95vw;
	font-weight: 500;
	text-align: left;
}

.top_3rd {
	padding: 6% 0 8%;
	text-align: center;
}
.top_3rd h2 {
	margin: 0;
	padding: 0 0 2%;
	font-size: 2.1vw;
	font-weight: 700;
	line-height: 1.8;
	letter-spacing: 0.1em;
}
.top_3rd p {
	margin: 0;
	padding: 0;
	font-size: 1.3vw;
	font-weight: 600;
	line-height: 1.8;
}
.if_innner {
	width: 65%;
	margin: 4% auto 0;
	display: flex;
	flex-wrap: wrap;
	align-items: start;
	justify-content: start;
}
.step {
	width: 55%;
	margin: 0 6% 0 0;
	text-align: left;
}
.step .step_wrap {
	position: relative;
	margin: 0 0 4%;
	display: flex;
	flex-wrap: wrap;
	align-items: start;
	justify-content: start;
}
.step .step_wrap .step_number {
	position: relative;
	width: 6%;
	aspect-ratio: 1/1;
	margin: 0 4% 0 0;
	border-radius: 50%;
	background-color: #ffcc00;
}
.step .step_wrap .step_number .step_circle {
	position: absolute;
	content: "";
	top: 50%;
	left: 50%;
	transform: translate(-40%, -55%);
	font-size: 1.2vw;
	font-weight: 600;
}
.step .step_wrap .step_txt {
	width: 90%;
	margin: 0;
	padding: 0;
	font-size: 1.0vw;
	font-weight: 400;
}
.step .step_wrap .step_line {
	width: 1px;
	height: calc(100% + 1em);
	background-color: #ffd940;
	position: absolute;
	top: 1em;
	left: 3%;
	z-index: -1;
}
.step_wrap:last-of-type .step_line:last-of-type {
	display: none;
}
.if_innner img {
	width: 39%;
	margin: 0;
	padding: 0;
	display: block;
}

.top_4th {
	width: 100%;
	padding: 0;
	position: relative;
	box-sizing: border-box;
	background: url(/wp-content/uploads/2025/11/bg_vehicle.jpg) center center no-repeat;
	background-size: cover;
	padding-top: 35.41%;
}
.top_vehicle_box {
	position: absolute;
	width: 40%;
	top: 12%;
	left: 7.8%;
	color: #fff;
}
.top_h2ttl2 {
	width: 100%;
	margin: 0 0 3%;
	padding: 0;
	color: #fff;
	font-size: 1.8vw;
	font-weight: 700;
	letter-spacing: 0.2em;
}
.top_h2ttl2 span {
	position: relative;
	display: block;
	padding: 0 0 0 10%;
	color: #ffcc00;
	font-size: 1.0vw;
	font-weight: 600;
	letter-spacing: 0.1em;
}
.top_h2ttl2 span::before {
	position: absolute;
	content: '';
	width: 7%;
	height: 1px;
	background-color: #ffcc00;;
	top: 45%;
	left: 0;
}
.top_vehicle_box p {
	width: 100%;
	margin: 0;
	padding: 0;
	font-size: 1.0vw;
	font-weight: 400;
	line-height: 2.0;
}

.top_vehicle_btn {
	position: absolute;
	width: 12%;
	bottom: 10%;
	left: 8%;
}
.top_vehicle_btn a {
	width: 100%;
	margin: 0 auto;
	padding: 5.2% 0 6.4% 0;
	border: 1px solid #000;
	background-color: #000;
	color: #fff;
	font-size: 0.9vw;
	font-weight: 600;
	text-align: center;
	transition: 0.8s;
	border-radius: 100vh;
	display: inline-block;
	box-sizing: border-box;
	line-height: 1.2;
}
.top_vehicle_btn a:hover {
	border: 1px solid #000;
	background-color: #ffd940;
	color: #000;
}
.top_vehicle_btn a::after {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: '\f138';
	padding-left: 5%;
	transition: 0.5s;
}

.top_5th {
	padding: 6% 0 8%;
	text-align: center;
}
.top_5th h2 {
	position: relative;
	width: fit-content;
	margin: 0 auto 2%;
	padding: 0 3% 0 3.25%;
	font-size: 1.8vw; 
	font-weight: 700;
	text-align: center;
	letter-spacing: 0.1em;
}
.top_5th h2::before,
.top_5th h2::after {
	position: absolute;
	content: '';
	font-size: 120%;
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: '\f164';
	top: 50%;
	color: #ffcc00;
}
.top_5th h2::before {
	left: 0;
	transform: translateY(-50%) rotateY(180deg);
}
.top_5th h2::after {
	right: 0;
	transform: translateY(-50%);
}
.top_5th p {
	margin: 0 0 3%;
	padding: 0;
	font-size: 1.1vw;
	font-weight: 500;
	line-height: 2.0;
}
.ps_inner {
	width: 75%;
	margin: 2% auto 0;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
}
.ps_inner li {
	margin: 0 2.5%;
	padding: 0;
}
.ps_inner li a {
	transition: 0.5s;
}
.ps_inner li a:hover {
	opacity: 0.7;
}
.ps_inner .mitsui {
	width: 10.5%;
}
.ps_inner .sbi {
	width: 8.5%;
}
.ps_inner .sony {
	width: 9.3%;
}
.ps_inner .axa {
	width: 10.7%;
}
.ps_inner .zurich {
	width: 9.7%;
}
.ps_inner .jaf {
	width: 10.5%;
}
.ps_inner .nexco {
	width: 10.3%;
}
.ps_inner li img {
	width: 100%;
	display: block;
}

.top_6th {
	width: 100%;
	padding: 0;
	position: relative;
	box-sizing: border-box;
	background: url(/wp-content/uploads/2025/11/bg_recruit.jpg) center center no-repeat;
	background-size: cover;
	padding-top: 35.41%;
}
.top_recruit_box {
	position: absolute;
	width: 25%;
	top: 11%;
	right: 15%;
}
.top_recruit_box h2 {
	margin: 0 0 2%;
	color: #111;
}
.top_recruit_box h2 span {
	padding: 0 0 0 10%;
}
.top_recruit_box h2 span::before {
	width: 7%;
	top: 45%;
	left: 0;
}
.top_recruit_box .c_copy {
	margin: 0 0 3%;
	padding: 0;
	font-size: 1.6vw;
	font-weight: 700;
	line-height: 1.8;
	letter-spacing: 0.2em;
	font-feature-settings: "palt";
}
.top_recruit_box p {
	margin: 0 0 3%;
	padding: 0;
	font-size: 1.1vw;
	font-weight: 500;
	line-height: 1.8;
}
.recruit_btn {
	right: 16%;
	left: auto;
	bottom: 9%;
}

.fp_insta {
	width: 85%;
	margin: 0 auto;
	padding: 6% 0 0;
	text-align: center;
}
.fp_insta h2 img {
	width: 12%;
	margin: 0 auto 3%;
	display: block;
}
.fp_insta .sbi {
	padding-bottom: 0!important;
}
.fp_insta .sbi_follow_btn {
	margin: 3% 0 0 0!important;
}
.fp_insta .sbi_follow_btn a {
	margin: 0 auto!important;
	padding: 7px 14px 10px 14px!important;
	transition: 0.5s;
}


.fp_blog {
	padding: 3% 0;
	/*padding: 6% 0;*/
	text-align: center;
}
.fp_blog h2 {
	margin: 0 0 5% 0;
}
.fp_blog ul {
	width: 80%;
	margin: 3% auto 4%;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	align-items: start;
	justify-content: start;
}
.fp_blog ul li {
	width: 22%;
	margin: 0 4% 0 0;
	padding: 0;
	text-align: left;
	line-height: 1.8;
}
.fp_blog ul li:last-child {
	margin: 0;
}
.fp_blog ul li a {
	color: #000;
	transition: 0.5s;
}
.fp_blog ul li a:hover {
	opacity: .6;
}
.fp_blog ul li .fpb_thum {
	width: 100%;
	margin: 0;
	padding: 0;
}
.fp_blog ul li .fpb_thum a {
	width: 100%;
	margin: 0;
	padding: 0;
	display: block;
}
.fp_blog ul li .fpb_thum a img {
	width: 100%;
	height: auto;
	aspect-ratio: 3/2;
	object-fit: cover;
}
.fp_blog ul li h3 {
	margin: 0;
	padding: 1.5% 0;
	font-size: 1.0vw;
	line-height: 1.4;
}
.fp_blog ul li .date {
	margin: 0 0 2%;
	padding: 0;
	font-size: 0.82vw;
	color: #666;
	display: block;
}
.fp_blog ul li p {
	margin: 0;
	padding: 0;
	font-size: 0.9vw;
	color: #333;
	line-height: 1.7;
}
.fp_blog ul li .read-more {
	margin-top: 0.7%;
	font-size: 92%;
	font-weight: 600;
	float: right;
}
.btn_A {
	width: fit-content;
	display: inline;
	margin-top: 0;
	padding: 0.6% 2% 0.8%;
	border: 1px solid #000;
	background-color: #000;
	color: #fff;
	font-size: 0.9vw;
	font-weight: 600;
	text-align: center;
	transition: 0.5s;
	border-radius: 100vh;
}
.btn_A:hover {
	border: 1px solid #000;
	background-color: #fff;
	color: #000;
}
.btn_A::after {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: '\f138';
	padding-left: 1%;
}



/*--------------------------------------------------------------
2.0 - Responsive
--------------------------------------------------------------*/
@media screen and (max-width: 1366px) {
	
	
}

@media screen and (max-width: 1280px) {
	.fv_inner {
		width: 36%!important;
		margin: 0 0 0 5%!important;
		padding: 1.3%!important;
	}
	.fv_txt {
		font-size: 1.9vw!important;
		line-height: 2.0!important;
	}
	
	.top_1st img {
		width: 28%;
	}
	.top_h2ttl {
		margin: 3% 0 5.5% 0;
		font-size: 2.3vw;
	}
	.top_1st .c_copy {
		font-size: 1.7vw;
	}
	.top_1st p {
		font-size: 1.3vw;
	}
	.feature_col {
		width: 50%;
	}
	.circle_inner .circle_box p {
		font-size: 1.7vw;
	}
	
	.top_2nd h2 {
		margin: 0 0 7% 0;
	}
	.trouble_inner {
		width: 92%;
	}
	.trouble_inner .trouble_box {
		width: 31%;
		margin: 0 3.5% 0 0;
	}
	.trouble_inner .box_end {
		margin: 0;
	}
	.trouble_inner .trouble_box img {
		border-radius: 1.0vw;
	}
	.trouble_inner .trouble_box h3 {
		font-size: 1.6vw;
	}
	.trouble_inner .trouble_box .angle {
		width: 100%;
	}
	.trouble_inner .trouble_box .angle p {
		font-size: 1.3vw;
	}
	.trouble_inner .trouble_box p {
		font-size: 1.15vw;
	}
	
	.top_3rd h2 {
		font-size: 2.3vw;
	}
	.top_3rd p {
		font-size: 1.5vw;
	}
	.if_innner {
		width: 75%;
	}
	.step .step_wrap .step_number .step_circle {
		font-size: 1.4vw;
	}
	.step .step_wrap .step_txt {
		font-size: 1.2vw;
	}
	
	.top_vehicle_box {
		width: 45%;
		top: 8.5%;
		left: 5%;
	}
	.top_h2ttl2 {
		margin: 0 0 2.5%;
		font-size: 2.0vw;
	}
	.top_h2ttl2 span {
		font-size: 1.2vw;
	}
	.top_vehicle_box p {
	font-size: 1.2vw;
	line-height: 1.8;
	}
	.top_vehicle_btn {
		width: 13%;
		bottom: 8%;
		left: 5.5%;
	}
	.top_vehicle_btn a {
		font-size: 1.1vw;
	}
	
	.top_5th h2 {
		padding: 0 3.5% 0 3.75%;
		font-size: 2.0vw;
	}
	.top_5th p {
		font-size: 1.3vw;
	}
	.ps_inner {
		width: 90%;
	}
	
	.top_recruit_box {
		width: 28%;
		top: 10%;
		right: 13%;
	}
	.top_recruit_box .c_copy {
		font-size: 1.7vw;
		line-height: 1.7;
	}
	.top_recruit_box p {
		font-size: 1.3vw;
		line-height: 1.7;
	}
	.recruit_btn {
		right: 15%;
		left: auto;
		bottom: 9%;
	}
	
	.fp_insta {
		width: 92%;
		padding: 6% 0 1.6%;
	}
	.fp_insta h2 img {
		width: 14%;
	}
	
	.fp_blog h2 {
		margin: 0 0 6% 0;
	}
	.fp_blog ul {
		width: 90%;
	}
	.fp_blog ul li h3 {
		font-size: 1.2vw;
	}
	.fp_blog ul li .date {
		font-size: 1.02vw;
	}
	.fp_blog ul li p {
		font-size: 1.1vw;
	}
	.btn_A {
		font-size: 1.1vw;
	}
	
	
}

@media screen and (max-width: 1024px) {
	.fv_inner {
		width: 40%!important;
		margin: 0 0 0 3%!important;
	}
	.fv_boder {
		padding: 4% 4% 4.8% 6%!important;
	}
	.fv_txt {
		font-size: 2.2vw!important;
		line-height: 1.9!important;
	}
	
	.top_1st img {
		width: 32%;
	}
	.top_h2ttl {
		margin: 3% 0 6% 0;
		font-size: 2.6vw;
	}
	.top_1st .c_copy {
		font-size: 2.0vw;
	}
	.top_1st p {
		font-size: 1.6vw;
	}
	.feature_col {
		width: 55%;
	}
	.circle_inner .circle_box p {
		font-size: 2.0vw;
	}
	
	.trouble_inner {
		width: 94%;
	}
	.trouble_inner .trouble_box img {
		border-radius: 1.2vw;
	}
	.trouble_inner .trouble_box h3 {
		font-size: 1.9vw;
	}
	.trouble_inner .trouble_box .angle {
		aspect-ratio: 40/11;
	}
	.trouble_inner .trouble_box .angle p {
		font-size: 1.5vw;
		letter-spacing: 0.05em;
	}
	.trouble_inner .trouble_box p {
		font-size: 1.4vw;
		letter-spacing: 0.07em;
	}
	
	.top_3rd h2 {
		font-size: 2.6vw;
	}
	.top_3rd p {
		font-size: 1.8vw;
	}
	.if_innner {
		width: 85%;
	}
	.step {
		width: 54%;
		margin: 0 5% 0 0;
	}
	.step .step_wrap .step_number .step_circle {
		font-size: 1.7vw;
	}
	.step .step_wrap .step_txt {
		font-size: 1.5vw;
	}
	.if_innner img {
		width: 41%;
	}
	
	.top_vehicle_box {
		width: 50%;
		top: 10%;
		left: 3.5%;
	}
	.top_h2ttl2 {
		margin: 0 0 1%;
		font-size: 2.1vw;
	}
	.top_h2ttl2 span {
		font-size: 1.3vw;
	}
	.top_vehicle_box p {
		font-size: 1.3vw;
		line-height: 1.6;
		letter-spacing: 0.18em;
		font-feature-settings: "palt";
	}
	.top_vehicle_btn {
		width: 15%;
		bottom: 9%;
		left: 4%;
	}
	.top_vehicle_btn a {
		font-size: 1.2vw;
	}
	
	.top_5th h2 {
		padding: 0 3.5% 0 3.75%;
		font-size: 2.3vw;
	}
	.top_5th p {
		font-size: 1.6vw;
	}
	.ps_inner {
		width: 100%;
	}
	.ps_inner li {
		margin: 0 2%;
	}
	
	.top_recruit_box {
		width: 35%;
		top: 9%;
		right: 8%;
	}
	.top_recruit_box .c_copy {
		margin: 0 0 2%;
		font-size: 1.9vw;
		line-height: 1.6;
	}
	.top_recruit_box p {
		font-size: 1.6vw;
		line-height: 1.6;
	}
	.recruit_btn {
		right: 11%;
		left: auto;
		bottom: 9%;
	}
	
	.fp_insta {
		padding: 6% 0 2.8%;
	}
	.fp_insta h2 img {
		width: 16%;
	}
	
	.fp_blog h2 {
		margin: 0 0 7% 0;
	}
	.fp_blog ul {
		width: 92%;
	}
	.fp_blog ul li h3 {
		font-size: 1.5vw;
	}
	.fp_blog ul li .date {
		font-size: 1.32vw;
	}
	.fp_blog ul li p {
		font-size: 1.4vw;
	}
	.btn_A {
		font-size: 1.4vw;
	}
	
	
	
	
	
	
}

@media screen and (max-width: 800px) {
	.fp_insta {
		width: 85%;
		padding: 7% 0 2.8%;
	}
	.fp_insta h2 img {
		width: 22%;
	}
	
}


@media screen and (max-width: 768px) {
	.fv_inner {
		width: 60%!important;
		margin: 5% 0 0 0!important;
		padding: 1.8%!important;
		background-color: rgba(0, 0, 0, 0.8);
		border-radius: 1.0vw;
	}
	.fv_boder {
		padding: 4% 0 5% 0!important;
	}
	.fv_txt {
		font-size: 2.8vw!important;
		line-height: 1.8!important;
	}
	
	.topSection {
		padding: 7% 0;
	}
	.top_1st img {
		width: 38%;
	}
	.top_h2ttl {
		margin: 3% 0 7.5% 0;
		font-size: 3.2vw;
	}
	.top_1st .c_copy {
		font-size: 2.6vw;
	}
	.top_1st p {
		font-size: 2.2vw;
		font-weight: 500;
		line-height: 1.9;
	}
	.feature_col {
		width: 70%;
		margin: 4% auto 4.5%;
	}
	.circle_inner .circle_box p {
		font-size: 2.6vw;
	}
	
	.top_2nd h2 {
		margin: 0 0 9% 0;
	}
	.trouble_inner {
		width: 70%;
		display: block;
	}
	.trouble_inner .trouble_box {
		width: 100%;
		margin: 0 0 8% 0;
		padding: 0 0 7% 0;
		border-bottom: dotted 3px #fcf1c3;
	}
	.trouble_inner .box_end {
		margin: 0;
		padding: 0;
		border-style: none;
	}
	.trouble_inner .trouble_box img {
		border-radius: 2.2vw;
	}
	.trouble_inner .trouble_box h3 {
		margin: 3% 0 0 0;
		font-size: 2.6vw;
	}
	.trouble_inner .trouble_box .angle {
		width: fit-content;
		aspect-ratio: auto;
		margin: 3% auto;
		padding: 3% 8%;
	}
	.trouble_inner .trouble_box .angle::before {
		border-left: 2px solid #fcf1c3;
		border-top: 2px solid #fcf1c3;
	}
	.trouble_inner .trouble_box .angle::after {
		border-right: 2px solid #fcf1c3;
		border-bottom: 2px solid #fcf1c3;
	}
	.trouble_inner .trouble_box .angle p {
		font-size: 2.3vw;
		letter-spacing: 0.08em;
	}
	.trouble_inner .trouble_box p {
		font-size: 2.0vw;
		letter-spacing: 0.08em;
	}
	
	.top_3rd {
		padding: 7% 0 9%;
	}
	.top_3rd h2 {
		font-size: 3.2vw;
	}
	.top_3rd p {
		font-size: 2.4vw;
	}
	.if_innner {
		width: 70%;
		display: flex;
	}
	.step {
		width: 100%;
		margin: 0 0 2%;
	}
	.step .step_wrap .step_number .step_circle {
		font-size: 2.3vw;
	}
	.step .step_wrap .step_txt {
		font-size: 2.1vw;
		font-weight: 500;
	}
	.if_innner img {
		width: 100%;
	}
	
	.top_4th {
		background: url(/wp-content/uploads/2025/11/spbg_vehicle.jpg) center center no-repeat;
		background-size: cover;
		padding-top: 114.58%;
	}
	.top_vehicle_box {
		width: 70%;
		top: 7%;
		left: 6%;
	}
	.top_h2ttl2 {
		margin: 0 0 3%;
		font-size: 2.9vw;
	}
	.top_h2ttl2 span {
		font-size: 2.1vw;
	}
	.top_vehicle_box p {
		width: 68%;
		font-size: 2.1vw;
		line-height: 2.2;
		letter-spacing: 0.08em;
		font-feature-settings: normal;
	}
	.top_vehicle_btn {
		width: 24%;
		bottom: 4%;
		left: 6.5%;
	}
	.top_vehicle_btn a {
		font-size: 2.0vw;
	}
	
	.top_5th {
		padding: 7% 0 9%;
	}
	.top_5th h2 {
		padding: 0 5% 0 5.25%;
		font-size: 2.9vw;
	}
	.top_5th p {
		width: 82%;
		margin: 0 auto;
		font-size: 2.2vw;
		text-align: left;
	}
	.ps_inner {
		width: 85%;
		margin: 4% auto 0;
	}
	.ps_inner .mitsui {
		width: 16.5%;
		margin: 0 4% 4% 4%;
	}
	.ps_inner .sbi {
		width: 14.5%;
		margin: 0 4% 4% 4%;
	}
	.ps_inner .sony {
		width: 15.3%;
		margin: 0 4% 4% 4%;
	}
	.ps_inner .axa {
		width: 16.7%;
		margin: 0 4% 4% 4%;
	}
	.ps_inner .zurich {
		width: 15.7%;
		margin: 0 4%;
	}
	.ps_inner .jaf {
		width: 17.5%;
		margin: 0 4%;
	}
	.ps_inner .nexco {
		width: 17.3%;
		margin: 0 4%;
	}
	
	.top_6th {
		background: url(/wp-content/uploads/2025/11/spbg_recruit.jpg) center center no-repeat;
		background-size: cover;
		padding-top: 108.07%;
	}
		.top_recruit_box {
		width: 48%;
		top: 7%;
		right: 5%;
	}
	.top_recruit_box .c_copy {
		margin: 0 0 3%;
		font-size: 2.5vw;
		letter-spacing: 0.15em;
		line-height: 2.0;
	}
	.top_recruit_box p {
		font-size: 2.2vw;
		line-height: 2.0;
	}
	.recruit_btn {
		right: 9.5%;
		left: auto;
		bottom: 4%;
	}
	
	.fp_insta {
		width: 85%;
		padding: 7% 0 2.8%;
	}
	
	.fp_blog {
		padding: 4% 0 6%;
		/*padding: 7% 0 9%;*/
	}
	.fp_blog h2 {
		margin: 0 0 8% 0;
	}
	.fp_blog ul {
		width: 85%;
		margin: 3% auto 0;
	}
	.fp_blog ul li {
		width: 47%;
	}
	.fp_blog ul li:last-child {
		margin: 0 0 8% 0;
	}
	.fp_blog ul li:nth-child(odd) {
		margin: 0 6% 8% 0;
	}
	.fp_blog ul li:nth-child(even) {
		margin: 0 0 8% 0;
	}
	.fp_blog ul li h3 {
		font-size: 2.1vw;
	}
	.fp_blog ul li .date {
		font-size: 1.92vw;
	}
	.fp_blog ul li p {
		font-size: 2.0vw;
	}
	.btn_A {
		padding: 0.8% 3% 1.0%;
		font-size: 2.0vw;
	}
	
	
	
	
}

@media screen and (max-width: 580px) {
	.fv_inner {
		width: 68%!important;
		margin: 4% 0 0 0!important;
		padding: 2%!important;
		border-radius: 1.2vw;
	}
	.fv_boder {
		padding: 4% 0 5% 0!important;
	}
	.fv_txt {
		font-size: 3.4vw!important;
		line-height: 1.7!important;
	}
	
	.topSection {
		padding: 8% 0;
	}
	.top_1st img {
		width: 42%;
	}
	.top_h2ttl {
		margin: 4% 0 9% 0;
		font-size: 3.8vw;
	}
	.top_1st .c_copy {
		width: 100%;
		font-size: 3.2vw;
		text-align: center;
	}
	.top_1st p {
		width: 88%;
		margin: 0 auto;
		font-size: 2.8vw;
		line-height: 1.8;
		text-align: left;
	}
	.feature_col {
		width: 85%;
		margin: 5% auto 5.5%;
	}
	.circle {
		width: 28%;
	}
	.circle_inner .circle_box p {
		width: 100%;
		font-size: 3.2vw;
		text-align: center;
	}
	
	.top_2nd h2 {
		margin: 0 0 11% 0;
	}
	.trouble_inner {
		width: 85%;
	}
	.trouble_inner .trouble_box {
		border-bottom: dotted 2px #fcf1c3;
	}
	.trouble_inner .box_end {
		border-style: none;
	}
	.trouble_inner .trouble_box img {
		border-radius: 3.1vw;
	}
	.trouble_inner .trouble_box h3 {
		margin: 3% 0 0 0;
		font-size: 3.4vw;
	}
	.trouble_inner .trouble_box .angle {
		padding: 2% 6%;
	}
	.trouble_inner .trouble_box .angle p {
		font-size: 3.1vw;
	}
	.trouble_inner .trouble_box p {
		font-size: 2.8vw;
	}
	
	.top_3rd {
		padding: 8% 0 10%;
	}
	.top_3rd h2 {
		padding: 0 0 3%;
		font-size: 3.8vw;
	}
	.top_3rd p {
		font-size: 3.0vw;
	}
	.if_innner {
		width: 85%;
		margin: 5% auto 0;
	}
	.step {
		margin: 0 0 2%;
	}
	.step .step_wrap .step_number .step_circle {
		font-size: 2.9vw;
	}
	.step .step_wrap .step_txt {
		margin-top: -0.6%;
		font-size: 2.7vw;
	}
	.step .step_wrap .step_line {
		height: calc(100% + 0.7em);
		top: 0.7em;
	}
	
	.top_4th {
		background: url(/wp-content/uploads/2025/11/spbg_vehicle.jpg) center center no-repeat;
		background-size: cover;
		padding-top: 114.58%;
	}
	.top_vehicle_box {
		top: 6%;
		left: 7%;
	}
	.top_h2ttl2 {
		margin: 0 0 3%;
		font-size: 3.5vw;
	}
	.top_h2ttl2 span {
		font-size: 2.7vw;
	}
	.top_vehicle_box p {
		width: 64%;
		font-size: 2.7vw;
		line-height: 1.7;
		letter-spacing: 0.18em;
		font-feature-settings: "palt";
	}
	.top_vehicle_btn {
		width: 29%;
		bottom: 4%;
		left: 7%;
	}
	.top_vehicle_btn a {
		padding: 3.2% 0 4.4% 0;
		font-size: 2.6vw;
	}
	
	.top_5th {
		padding: 8% 0 10%;
	}
	.top_5th h2 {
		padding: 0 6.5% 0 6.75%;
		font-size: 3.5vw;
	}
	.top_5th p {
		width: 93%;
		font-size: 2.8vw;
		font-feature-settings: "palt";
		line-height: 1.8;
	}
	.ps_inner {
		width: 100%;
		margin: 5% auto 0;
	}
	.ps_inner .mitsui {
		width: 19%;
		margin: 0 3% 4% 3%;
	}
	.ps_inner .sbi {
		width: 17%;
		margin: 0 3% 4% 3%;
	}
	.ps_inner .sony {
		width: 17.8%;
		margin: 0 3% 4% 3%;
	}
	.ps_inner .axa {
		width: 19.2%;
		margin: 0 3% 4% 3%;
	}
	.ps_inner .zurich {
		width: 18.2%;
		margin: 0 3%;
	}
	.ps_inner .jaf {
		width: 20%;
	}
	.ps_inner .nexco {
		width: 19.8%;
	}
	
	.top_6th {
		background: url(/wp-content/uploads/2025/11/spbg_recruit.jpg) center center no-repeat;
		background-size: cover;
		padding-top: 108.07%;
	}
	.top_recruit_box {
		width: 58%;
		top: 6%;
		right: 0;
	}
	.top_recruit_box .c_copy {
		margin: 0 0 3%;
		font-size: 3.1vw;
		letter-spacing: 0.15em;
		line-height: 1.9;
	}
	.top_recruit_box p {
		font-size: 2.8vw;
		letter-spacing: 0.06em;
		line-height: 1.9;
	}
	.recruit_btn {
		right: 9%;
		left: auto;
		bottom: 3%;
	}
	
	.fp_insta {
		width: 88%;
		padding: 8% 0 4.8%;
	}
	.fp_insta h2 img {
		width: 30%;
	}
	
	.fp_blog {
		padding: 5% 0 7%;
		/*padding: 8% 0 10%;*/
	}
	.fp_blog h2 {
		margin: 0 0 9% 0;
	}
	.fp_blog ul {
		width: 90%;
	}
	.fp_blog ul li {
		width: 47.5%;
	}
	.fp_blog ul li:last-child {
		margin: 0 0 8% 0;
	}
	.fp_blog ul li:nth-child(odd) {
		margin: 0 5% 8% 0;
	}
	.fp_blog ul li:nth-child(even) {
		margin: 0 0 8% 0;
	}
	.fp_blog ul li h3 {
		font-size: 2.7vw;
	}
	.fp_blog ul li .date {
		font-size: 2.52vw;
	}
	.fp_blog ul li p {
		font-size: 2.6vw;
	}
	.btn_A {
		padding: 0.8% 4% 1.4%;
		font-size: 2.6vw;
	}
	
	
	
	
}

@media screen and (max-width: 390px) {
	.fv_inner {
		width: 78%!important;
		margin: 2% 0 0 0!important;
	}
	.fv_txt {
		font-size: 3.9vw!important;
		line-height: 1.6!important;
	}
	
	.top_1st img {
		width: 50%;
	}
	.top_h2ttl {
		margin: 4% 0 10% 0;
		font-size: 4.3vw;
	}
	.top_1st .c_copy {
		font-size: 3.7vw;
	}
	.top_1st p {
		width: 90%;
		font-size: 3.3vw;
	}
	.feature_col {
		width: 90%;
	}
	.circle {
		width: 30%;
	}
	.circle_inner .circle_box p {
		font-size: 3.7vw;
	}
	
	.top_2nd h2 {
		margin: 0 0 11% 0;
	}
	.trouble_inner {
		width: 90%;
	}
	.trouble_inner .box_end {
		border-style: none;
	}
	.trouble_inner .trouble_box img {
		border-radius: 3.6vw;
	}
	.trouble_inner .trouble_box h3 {
		font-size: 4.0vw;
	}
	.trouble_inner .trouble_box .angle p {
		font-size: 3.7vw;
	}
	.trouble_inner .trouble_box p {
		font-size: 3.4vw;
	}
	
	.top_3rd h2 {
		padding: 0 0 3%;
		font-size: 4.3vw;
	}
	.top_3rd p {
		font-size: 3.5vw;
		letter-spacing: 0.13em;
		font-feature-settings: "palt";
	}
	.if_innner {
		width: 85%;
		margin: 5% auto 0;
	}
	.step {
		margin: 0 0 2%;
	}
	.step .step_wrap .step_number .step_circle {
		font-size: 3.4vw;
	}
	.step .step_wrap .step_txt {
		margin-top: -0.8%;
		font-size: 3.2vw;
	}
	.step .step_wrap .step_line {
		height: calc(100% + 0.5em);
		top: 0.5em;
	}
	
	.top_vehicle_box {
		top: 6%;
	}
	.top_h2ttl2 {
		font-size: 3.7vw;
		line-height: 1.6;
	}
	.top_h2ttl2 span {
		font-size: 2.9vw;
	}
	.top_vehicle_box p {
		width: 70%;
		font-size: 2.9vw;
		line-height: 1.6;
	}
	.top_vehicle_btn {
		width: 33%;
		bottom: 4%;
		left: 6%;
	}
	.top_vehicle_btn a {
		font-size: 2.8vw;
	}
	
	.top_5th h2 {
		padding: 0 7% 0 7.25%;
		font-size: 4.0vw;
	}
	.top_5th p {
		width: 75%;
		font-size: 3.3vw;
		font-feature-settings: normal;
	}
	.ps_inner {
		width: 90%;
	}
	.ps_inner .mitsui {
		width: 25%;
		margin: 0 5% 4% 5%;
	}
	.ps_inner .sbi {
		width: 23%;
		margin: 0 5% 4% 5%;
	}
	.ps_inner .sony {
		width: 23.8%;
		margin: 0 5% 4% 5%;
	}
	.ps_inner .axa {
		width: 25.2%;
		margin: 0 5% 4% 5%;
	}
	.ps_inner .zurich {
		width: 24.2%;
		margin: 0 5%;
	}
	.ps_inner .jaf {
		width: 25%;
		margin: 0 6%;
	}
	.ps_inner .nexco {
		width: 24.8%;
		margin: 0 6%;
	}
	
	.top_recruit_box {
		width: 58%;
		top: 5%;
	}
	.top_recruit_box .c_copy {
		margin: 0 0 2%;
		font-size: 3.5vw;
		letter-spacing: 0.18em;
		line-height: 1.6;
	}
	.top_recruit_box p {
		font-size: 3.2vw;
		letter-spacing: 0.04em;
		line-height: 1.6;
	}
	.recruit_btn {
		right: 9%;
		left: auto;
		bottom: 3%;
	}
	
	.fp_blog h2 {
		margin: 0 0 10% 0;
	}
	.fp_blog ul {
		width: 85%;
	}
	.fp_blog ul li {
		width: 100%;
		padding-bottom: 6%;
		border-bottom: dotted 2px #ccc;
	}
	.fp_blog ul li:last-child {
		margin: 0 0 5% 0!important;
	}
	.fp_blog ul li:nth-child(odd) {
		margin: 0 0 8% 0;
	}
	.fp_blog ul li:nth-child(even) {
		margin: 0 0 8% 0;
	}
	.fp_blog ul li h3 {
		padding: 0 0 1.5% 0;
		font-size: 3.2vw;
	}
	.fp_blog ul li .date {
		margin: 0 0 1.5%;
		font-size: 3.02vw;
	}
	.fp_blog ul li p {
		font-size: 3.1vw;
	}
	.btn_A {
		padding: 0.8% 4% 1.4%;
		font-size: 3.1vw;
	}
	
	
	
	
}