/* CSS Document */
#mv {
		background-image: url("../images/regional/mv.jpg");
}

#mv .mv_icon {
		width: 60px;
}

#sec01 {
		padding: 80px 0;
}
#sec01 .txt00 {
		font-size: 3.6rem;
		font-weight: bold;
		line-height: 1.6;
		text-align: center;
		margin-bottom: 70px;
}
#sec01 .txt01 {
		font-size: 1.8rem;
		font-weight: bold;
		line-height: 1.6;
		text-align: center;
		margin-bottom: 70px;
}

.service_box {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
}
.service_box + .service_box {
		margin-top: 80px;
}

.box_img {
		width: 604px;
		max-width: 100%;
}

.box_txt {
		width: 500px;
		max-width: 100%;
		background-color: rgba(30, 53, 108, 0.9);
		color: #fff;
		margin-left: -145px;
		padding: 30px 40px 50px;
}

.service_ttl {
		font-size: 2.2rem;
		font-weight: bold;
		margin-bottom: 10px;
}

.service_txt {
		font-size: 1.4rem;
		line-height: 2;
}

.service_box:nth-of-type(2n) {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: reverse;
		    -ms-flex-direction: row-reverse;
		        flex-direction: row-reverse;
}
.service_box:nth-of-type(2n) .box_txt {
		margin-right: -145px;
		margin-left: 0;
}

.service_logo {
		margin-top: 15px;
		width: 172px;
}
.service_logo img {
		margin: 0;
}

.service_btn {
		width: 320px;
		height: 48px;
		margin-top: 30px;
		max-width: 100%;
}
.service_btn a {
		display: block;
		border-radius: 5px;
		font-size: 1.6rem;
		font-weight: 500;
		letter-spacing: 0.05em;
		color: #0B318F;
		background-color: #fff;
		width: 100%;
		height: 100%;
		background-image: url("../images/index/social_arr@2x.png");
		background-size: 8px;
		background-repeat: no-repeat;
		background-position: center right 26px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		letter-spacing: 0.05em;
		padding-left: 0;
}

#sec02 {
		background-color: #fff;
		padding: 80px 0;
}

.kyumei {
		background-color: #efefef;
}

.kyumei_img {
		width: 100%;
		max-width: 100%;
}

.kyumei_txt {
		padding: 20px 30px;
}

#sec02 .service_ttl {
		color: #0b318f;
		text-align: center;
		font-size: 2.1rem;
}
#sec02 .other_ttl {
		font-weight: bold;
		font-size: 2.3rem;
		letter-spacing: 0.1em;
		margin-bottom: 55px;
		text-align: center;
}
#sec02 .other-txt {
		font-size: 1.8rem;
		font-weight: 500;
		line-height: 1.5;
		text-align: center;
}

.other-box {
		background-image: url("../images/regional/project_bg.jpg");
		height: 494px;
		background-size: cover;
		background-repeat: no-repeat;
		background-position: center center;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		margin-top: 45px;
}
@media screen and (max-width: 768px) {
		.other-box {
				background-image: url("../images/regional/project_bg_sp.jpg");
				height: 144vw;
				width: 108%;
				margin: 65px -4% 0;
		}
}
#sec02 .service_btn {
		margin: 60px auto auto;
		width: 280px;
}
@media screen and (max-width: 768px) {
		#sec02 .service_btn {
				width: 84%;
				height: 45px;
				margin-top: 50px;
		}
}

.other_flex {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
}
.other_flex .box {
		width: 465px;
		max-width: 100%;
}

.kyumei {
		display: block;
		border-radius: 0;
}

/*------------------------------- sp ----------------------------*/
@media screen and (max-width: 768px) {
		#mv::before {
				background-image: url("../images/regional/mv_sp.jpg");
		}
		#mv .mv_icon {
				width: 32px;
		}

		#sec01, #sec02 {
				padding: 35px 0;
		}

		#sec01 .txt00 {
				font-size: 1.8rem;
				margin-bottom: 25px;
		}
		#sec01 .txt01 {
				font-size: 1.4rem;
				margin-bottom: 35px;
				text-align: center;
				font-weight: bold;
		}

		.service_box {
				display: block;
		}
		.service_box + .service_box {
				margin-top: 35px;
		}

		.box_txt {
				margin: auto;
				padding: 15px 15px 45px;
				width: 100%;
		}

		.service_ttl {
				font-size: 1.8rem;
				margin-bottom: 5px;
		}

		.service_btn {
				margin-top: 36px;
		}

		.service_logo {
				margin: 15px auto auto;
		}
		.service_logo img {
				margin: auto;
				display: block;
		}

		.kyumei_txt {
				width: 100%;
				padding: 10px;
		}

		.other_flex {
				display: block;
		}
		.other_flex .box {
				width: 100%;
		}
		.other_flex .box + .box {
				margin-top: 15px;
		}

		.kyumei_img {
				width: 100%;
		}

		#sec02 {
				padding-bottom: 90px;
				padding-top: 65px;
		}
		#sec02 .other_ttl {
				margin-bottom: 15px;
				font-size: 2.1rem;
		}
		#sec02 .other-txt {
				font-size: 1.7rem;
				line-height: 1.6;
		}
}