@charset "UTF-8";

body {
}

.mod_main {
}

@media screen and (max-width:640px) {
	.mod_main {
	}
}


.sec_mv {
	max-width: 160rem;
	margin: 0 auto;
}

.sec_mv > .in {
	display: flex;
	justify-content: space-between;
}

.sec_mv .mv_chach {
	display: flex;
	justify-content: center;
	align-items: center;
}
.sec_mv img {
	vertical-align: bottom;
	width: 100%;
	height: auto;
}

.sec_mv .mv_chach img {
	max-width: 42.7rem;
}

.sec_mv .mv img {
	max-width: 98.2rem;
}

@media screen and (max-width:640px) {

	.sec_mv {
	}

	.sec_mv > .in {
		flex-wrap: wrap;
	}

	.sec_mv .mv_chach {
		order: 2;
		margin: 0 auto;
		position: relative;
	}

	.sec_mv .mv_chach .tit {
		position: relative;
		z-index: 1;
	}

	.sec_mv .mv_chach::before {
		content: "";
		position: absolute;
		left: 0;
		right: 0;
		top: calc(-43 * 100vw / 375);
		margin: auto;
		width: calc(265 * 100vw / 375);
		height: calc(265 * 100vw / 375);
		z-index: 0;
		background-color: #fff;
		border-radius: 50%;
	}

	.sec_mv .mv_chach img {
		width: calc(312 * 100vw / 375);
	}

}




.sec_message {
	max-width: 160rem;
	margin: 0 auto;
	margin-top: 9.7rem;
}

.sec_message > .in {
	display: flex;
	justify-content: space-between;
}

.sec_message .ph_box {
	max-width: 77.4rem;
	width: 100%;
}

.sec_message .txt_box {
	max-width: calc(100% - 77.4rem);
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
}

.sec_message img {
	width: 100%;
	vertical-align: bottom;
	height: auto;
}

.sec_message .ph_box img {
	max-width: 77.4rem;
	width: 100%;
}

.sec_message .txt_box img {
	max-width: 50.1rem;
	width: 100%;
}

@media screen and (max-width:640px) {
	.sec_message {
		margin-top: calc(80 * 100vw / 375);
	}

	.sec_message > .in {
		flex-wrap: wrap;
	}

	.sec_mv .mv_chach img {
		width: calc(312 * 100vw / 375);
	}

	.sec_message .txt_box {
		max-width: none;
		margin-top: calc(48 * 100vw / 375);
	}

	.sec_message .txt_box img {
		max-width: none;
		width: calc(330 * 100vw / 375);
	}
}


.sec_benefits {
	max-width: 136.2rem;
	margin: 0 auto;
	margin-top: 12rem;
}

.sec_benefits > .in {
}

.sec_benefits .ph_box {
}

.sec_benefits img {
	width: 100%;
	vertical-align: bottom;
	height: auto;
}

.sec_benefits .ph_box img {
	max-width: 136.2rem;
	width: 100%;
}

@media screen and (max-width:640px) {
	.sec_benefits {
		margin-top: calc(80 * 100vw / 375);
	}
	.sec_benefits .ph_box {
		text-align: center;
	}
	.sec_benefits .ph_box img {
		max-width: none;
		width: calc(310 * 100vw / 375);
	}
}

.sec_point {
	max-width: 136.2rem;
	margin: 0 auto;
	margin-top: 16rem;
}

.sec_point > .in {
}

.sec_point .ph_box {
}

.sec_point img {
	width: 100%;
	vertical-align: bottom;
	height: auto;
}

.sec_point .ph_box img {
	max-width: 119.6rem;
	width: 100%;
}

@media screen and (max-width:640px) {
	.sec_point {
		margin-top: calc(80 * 100vw / 375);
	}

	.sec_point .ph_box {
		text-align: center;
	}

	.sec_point .ph_box img {
		max-width: none;
		width: calc(350 * 100vw / 375);
	}
}

.sec_images {
	margin-top: 20rem;
	overflow: hidden;
}

.sec_images > .in {
}

.sec_images .ph_box {
	justify-content: center;
	display: flex;
}

.sec_images img {
	width: 100%;
	vertical-align: bottom;
	height: auto;
}

.sec_images .ph_box img {
	max-width: 160rem;
	min-width: 160rem;
	width: 100%;
}

@media screen and (max-width:640px) {
	.sec_images {
		margin-top: calc(104 * 100vw / 375);
	}
	.sec_images .ph_box img {
		max-width: none;
		min-width: auto;
	}
}

.sec_contact {
	margin-top: 20rem;
}

.sec_contact > .in {
}

.sec_contact .contact_area {
	background-color: #F7F7F7;
	max-width: 120rem;
	width: 100%;
	margin: 0 auto;
	border-radius: 0.8rem;
	padding-top: 8.2rem;
	padding-bottom: 8.8rem;
}

.sec_contact img {
	width: 100%;
	vertical-align: bottom;
	height: auto;
}

.sec_contact .ph_box {
	display: flex;
	justify-content: center;
}

.sec_contact .ph_box img {
	width: 100%;
	max-width: 50.1rem;
	margin: 0 auto;
}

.sec_contact .text_box {
	display: flex;
	justify-content: center;
	margin-top: 4.9rem;
}

.sec_contact .text_box img {
	width: 100%;
	max-width: 64.1rem;
	margin: 0 auto;
}

.sec_contact .contact_box {
	display: flex;
	justify-content: space-between;
	width: 100%;
	margin: 0 auto;
	max-width: 79.6rem;
	margin-top: 3.2rem;
}

.sec_contact .contact_box .cb_left img {
	width: 100%;
	margin: 0 auto;
	max-width: 35.6rem;
}

.sec_contact .contact_box .cb_right img {
	width: 100%;
	margin: 0 auto;
	max-width: 35.6rem;
}

@media screen and (max-width:640px) {
	.sec_contact {
		margin-top: calc(80 * 100vw / 375);
	}
	.sec_contact > .in {
		padding-left: calc(20 * 100vw / 375);
		padding-right: calc(20 * 100vw / 375);
		box-sizing: border-box;
	}
	.sec_contact .contact_area {
		border-radius: calc(10 * 100vw / 375);
		padding-top: calc(64 * 100vw / 375);
		padding-bottom: calc(56 * 100vw / 375);
	}

	.sec_contact .ph_box img {
		width: calc(301 * 100vw / 375);
	}

	.sec_contact .text_box {
		margin: 0 auto;
		width: calc(317 * 100vw / 375);
		margin-top: calc(40 * 100vw / 375);
	}

	.sec_contact .contact_box {
		flex-wrap: wrap;
		justify-content: center;
	}

	.sec_contact .contact_box .cb_left {
		position: relative;
		padding-bottom: calc(32 * 100vw / 375);
		margin-bottom: calc(32 * 100vw / 375);
	}

	.sec_contact .contact_box .cb_left::before {
		content: "";
		position: absolute;
		width: calc(303 * 100vw / 375);
		height: 1px;
		bottom: 0;
		left: 0;
		right: 0;
		background-color: rgba(0, 158, 150, 0.4);
	}

	.sec_contact .contact_box .cb_left img {
		width: calc(303 * 100vw / 375);
	}

	.sec_contact .contact_box .cb_right img {
		width: calc(303 * 100vw / 375);
	}
}

