@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700;900&display=swap");
:root {
	--fontFamily_sansSerif : "Noto Sans JP", "Helvetica Neue", "Segoe UI", "Hiragino Kaku Gothic ProN", "Hiragino Sans", meiryo, sans-serif;
	--color_dark : #262626;
	--color_light : #ffffff;
	--color_main : #f5f5f3;
	--color_sub : #cccccc;
	--color_sub2 : #f5f5f3;
	--color_acc : #ed7c02;
	--fz_h1 : 52px;
	--fz_xs : 15px;
	--fz_sm : 16px;
	--fz_md : 18px;
	--fz_lg : 24px;
	--fz_xl : 36px;
	--fw_sm : 400;
	--fw_md : 700;
	--fw_lg : 900;
	--lh_sm : 1.25;
	--lh_md : 1.667;
	--lh_lg : 2;
	--lh_xl : 2.25;
}
@media screen and (max-width: 768px) {
	:root {
		--fz_h1 : 26px;
		--fz_xs : 12px;
		--fz_sm : 14px;
		--fz_md : 16px;
		--fz_lg : 18px;
		--fz_xl : 22px;
		--lh_sm : 1.25;
		--lh_md : 1.5;
		--lh_lg : 1.667;
		--lh_xl : 2;
	}
}

main {
	overflow : hidden;
}

section.mv {
	width : 100%;
	height : 100%;
	margin : 0 auto;
	padding : 50px 0 0;
}
@media screen and (max-width: 768px) {
	section.mv {
		padding : 30px 0 0;
	}
}
section.mv >.inner {
	position : relative;
	z-index : 2;
	width : 90%;
	max-width : 1200px;
	margin : 0 auto;
}
section.mv >.inner p {
	font-size : var(--fz_xl);
	font-weight : 900;
	position : absolute;
	top : 20px;
	left : 0;
}
@media screen and (max-width: 1024px) {
	section.mv >.inner p {
		position : relative;
		top : 0;
	}
}
@media screen and (max-width: 768px) {
	section.mv >.inner p {
		font-size : 20px !important;
	}
}
section.mv >.inner p span {
	font-size : var(--fz_h1);
	color : var(--color_acc);
}
section.mv .circle_area {
	width : 100%;
	max-width : 1600px;
	height : 100%;
	aspect-ratio : 2/1;
	margin : 0 auto;
}
@media screen and (max-width: 1024px) {
	section.mv .circle_area {
		margin : 20px auto 0;
	}
}
section.mv .circle_area .inner {
	position : relative;
	z-index : 1;
	width : 100%;
	height : 100%;
}
section.mv .circle_area .inner .img_box {
	position : absolute;
	display : -webkit-box;
	display : -ms-flexbox;
	display : flex;
	overflow : hidden;
	-webkit-box-align : center;
	align-items : center;
	-ms-flex-align : center;
	-webkit-box-pack : center;
	-ms-flex-pack : center;
	justify-content : center;
	aspect-ratio : 1/1;
	border-radius : 50%;
}
section.mv .circle_area .inner .img_box img {
	position : absolute;
	width : 100%;
	height : auto;
	margin : auto;
	opacity : 0;
	border-radius : 50%;

	inset : 0;
}
section.mv .circle_area .inner .img_box img:nth-child(n+2) {
	-webkit-transition : all 0.8s ease;
	transition : all 0.8s ease;
}
section.mv .circle_area .inner .img_box img:nth-child(1) {
	opacity : 1;
}
section.mv .circle_area .inner .img_box img.show {
	opacity : 1;
}
section.mv .circle_area .inner .img_box:nth-of-type(1) {
	top : 0;
	right : -6%;
	width : 53.33%;
}
section.mv .circle_area .inner .img_box:nth-of-type(2) {
	top : 24.24%;
	left : 23.33%;
	width : 23.33%;
}
section.mv .circle_area .inner .img_box:nth-of-type(3) {
	bottom : 0;
	left : -3.67%;
	width : 26.67%;
}
section.mv .circle_area .inner .img_box:nth-of-type(4) {
	top : 72.73%;
	left : 38%;
	width : 13.33%;
}

section.company {
	width : 100%;
	height : auto;
	margin : 100px auto 0;
}
@media screen and (max-width: 768px) {
	section.company {
		margin : 70px auto 0;
	}
}
section.company .inner {
	width : 90%;
	max-width : 1000px;
	height : auto;
	margin : 0 auto;
}
section.company .inner .ttl_box {
	width : 100%;
	height : auto;
}
section.company .inner .ttl_box h1 {
	font-size : var(--fz_xl);
	font-weight : var(--fw_md);
	line-height : var(--lh_md);
	color : var(--color_dark);
}
@media screen and (max-width: 768px) {
	section.company .inner .ttl_box h1 {
		font-size : 22px;
	}
}
section.company .inner .ttl_box h1 span {
	font-weight : var(--fw_md);
	color : var(--color_acc);
}
@media screen and (max-width: 768px) {
	section.company .inner .ttl_box h1 span {
		font-size : 24px;
	}
}
section.company .inner .txt_box {
	width : 100%;
	height : auto;
	margin : 20px auto 0;
}
@media screen and (max-width: 768px) {
	section.company .inner .txt_box {
		margin : 30px auto 0;
	}
}
section.company .inner .txt_box p {
	font-size : var(--fz_sm);
	font-weight : var(--fw_sm);
	line-height : var(--lh_md);
	color : var(color_dark);
}
section.company .inner .btn_box {
	width : 250px;
	height : auto;
	margin : 40px auto 0;
	margin-left : 0;
}
@media screen and (max-width: 768px) {
	section.company .inner .btn_box {
		width : 230px;
		margin : 50px auto 0;
		margin-left : 0;
	}
}

section.info_area {
	position : relative;
	display : -webkit-box;
	display : -ms-flexbox;
	display : flex;
	-webkit-box-pack : justify;
	-ms-flex-pack : justify;
	justify-content : space-between;
	height : 800px;
	margin : 125px auto 0;
}
@media screen and (max-width: 1024px) {
	section.info_area {
		height : 100%;
	}
}
section.info_area .bg_area {
	position : absolute;
	top : 0;
	left : 0;
	width : 100%;
	height : 100%;
}
section.info_area .bg_area >div {
	position : absolute;
	top : 0;
	height : 100%;
	background : var(--color_sub2);
}
section.info_area .bg_area >div:nth-child(1) {
	left : 0;
	width : 76.67%;
	border-radius : 0 30px 30px 0;
}
@media screen and (max-width: 1024px) {
	section.info_area .bg_area >div:nth-child(1) {
		width : 66.67%;
	}
}
section.info_area .bg_area >div:nth-child(1) .icon {
	position : absolute;
	z-index : 2;
	top : 0;
	right : 0;
	-webkit-transform : translate(50%, -50%);
	transform : translate(50%, -50%);
}
@media screen and (max-width: 768px) {
	section.info_area .bg_area >div:nth-child(1) .icon svg {
		max-width : 127px;
		max-height : 127px;
	}
}
section.info_area .bg_area >div:nth-child(2) {
	right : 0;
	width : 12.3%;
	border-radius : 30px 0 0 30px;
}
@media screen and (max-width: 768px) {
	section.info_area .bg_area >div:nth-child(2) {
		width : 22.67%;
	}
}
section.info_area .contents_area {
	position : relative;
	display : -webkit-box;
	display : -ms-flexbox;
	display : flex;
	-webkit-box-align : center;
	align-items : center;
	-ms-flex-align : center;
	-webkit-box-pack : start;
	-ms-flex-pack : start;
	justify-content : flex-start;
	width : 100vw;
	height : auto;

	gap : 0 5%;
}
@media screen and (max-width: 1024px) {
	section.info_area .contents_area {
		-webkit-box-orient : vertical;
		-webkit-box-direction : normal;
		-ms-flex-direction : column;
		flex-direction : column;
		padding : 80px 0;

		gap : 0;
	}
}
section.info_area .contents_area .img_box {
	position : relative;
	z-index : 3;
	overflow : hidden;
	width : 41.33%;
	height : 600px;
	border-radius : 0 30px 30px 0;
}
@media screen and (max-width: 1024px) {
	section.info_area .contents_area .img_box {
		width : 86.67%;
		height : auto;
		aspect-ratio : 13/10;
		margin : 0 auto;
		margin-left : 0;
	}
}
section.info_area .contents_area .img_box img {
	width : 100%;
	height : 100%;
	object-fit : cover;

	-o-object-fit : cover;
}
section.info_area .contents_area .inner {
	width : 540px;
	height : auto;
}
@media screen and (max-width: 1024px) {
	section.info_area .contents_area .inner {
		width : 90%;
		margin : 30px auto 0;
	}
}
section.info_area .contents_area .inner .ttl_box h2 {
	font-size : var(--fz_xl);
	font-weight : var(--fw_md);
	color : var(--color_dark);
}
section.info_area .contents_area .inner .ttl_box h2 span {
	font-size : var(--fz_xl);
	font-weight : var(--fw_md);
	color : var(--color_acc);
}
section.info_area .contents_area .inner .txt_box {
	margin : 20px auto 0;
}
@media screen and (max-width: 1024px) {
	section.info_area .contents_area .inner .txt_box {
		margin : 30px auto 0;
	}
}
section.info_area .contents_area .inner .txt_box p {
	font-size : var(--fz_sm);
	line-height : var(--lh_lg);
}
section.info_area .contents_area .inner .btn_box {
	display : -webkit-box;
	display : -ms-flexbox;
	display : flex;
	-webkit-box-align : center;
	align-items : center;
	-ms-flex-align : center;
	-webkit-box-pack : justify;
	-ms-flex-pack : justify;
	justify-content : space-between;
	width : 100%;
	height : auto;
	margin : 40px auto 0;
}
@media screen and (max-width: 1024px) {
	section.info_area .contents_area .inner .btn_box {
		-webkit-box-align : start;
		align-items : flex-start;
		-ms-flex-align : start;
		-webkit-box-orient : vertical;
		-webkit-box-direction : normal;
		-ms-flex-direction : column;
		flex-direction : column;
		margin : 50px auto 0;

		gap : 10px 0;
	}
}
/*# sourceMappingURL=layout.css.map */
