@charset "utf-8";
main {
		/* background-position: 0 0;
		background-size: 476px;
		background-image: url("../images/top_cont_bg3_pc.jpg"); */
}
.about_section {
		min-height: 500px;
		background-repeat: no-repeat;
		background-position: center bottom;
		background-size: 1810px;
		background-image: url("../images/top_action_bg_pc.png")
}
@media(min-width: 1810px) {
		.about_section {
				background-size: 100%;
		}
}
@media(max-width: 767px) {
		.about_section {
				background-size: 100%;
				background-image: url("../images/top_action_bg_sp.png")
		}
}
/* =============== */
.action_figure_wrap {
		max-width: 925px;
		max-width: 800px;
		margin: 0 auto;
		padding-bottom: 100px;
		padding-top: 250px;
}
@media(max-width: 1600px) {
		.action_figure_wrap {
				padding-top: 12vw;
		}
}
.action_hd {
		font-size: 54px;
		font-weight: 700;
		color: #282828;
		line-height: 1.3;
		margin: 0 0 30px;
		text-align: center;
}
.action_sb {
		text-align: center;
		color: #48A63F;
		font-size: 24px;
		font-weight: 700;
		margin-bottom: 50px;
}
.action_figure {
		position: relative;
}
.action_figure div {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
}
.action_figure img {
		width: 100%;
		height: auto
}
@media(max-width: 960px) {
		.action_figure_wrap {
				max-width: 700px;
				padding-bottom: 100px;
				padding-top: 100px;
		}
		.action_hd {
				font-size: 40px;
		}
		.action_sb {
				font-size: 20px;
				margin-bottom: 50px;
		}
}
@media(max-width: 767px) {
		.action_figure_wrap {
				max-width: 700px;
				padding-bottom: 100px;
				padding-top: 100px;
		}
		.action_hd {
				font-size: 24px;
				margin: 0 0 20px;
		}
		.action_sb {
				font-size: 18px;
				margin-bottom: 30px;
		}
}
/* =========== */
.cont_wrap {
		max-width: 1220px;
		margin: 0 auto;
		padding: 170px 30px 160px;
		min-height: 500px;
}
.top_col {
		background-repeat: repeat;
		background-position: center center;
		background-size: 400px;
		background-image: url("../images/top_col_bg.jpg");
		min-height: 500px;
		border-radius: 50px;
		margin: 0 0 145px;
		padding-bottom: 60px;
}
.cont_wrap .top_col:last-of-type {
		margin-bottom: 0;
}
.top_title {
		margin: 0 auto -90px;
		position: relative;
		display: flex;
		justify-content: center;
		align-items: center;
		width: 750px;
		height: 225px
}
.top_title img {
		width: 100%;
		height: auto;
}
.top_title.title_1 {
		top: -112px;
}
.top_title.title_2 {
		top: -96px;
}
.top_title h2 {
		position: relative;
		z-index: 5;
		text-align: center;
		font-size: 54px;
		font-weight: 700;
}
.top_title div {
		position: absolute;
		width: 100%;
		top: 0;
		left: 0;
		pointer-events: none
}
@media(max-width: 1700px) {
		.top_title {
				margin: 0 auto -70px;
				width: 600px;
				height: 180px
		}
		.top_title.title_1 {
				top: -90px;
		}
		.top_title.title_2 {
				top: -90px;
		}
		.top_title h2 {
				font-size: 40px;
		}
		.top_title div {
				position: absolute;
				width: 100%;
				top: 0;
				left: 0;
				pointer-events: none
		}
}
@media(max-width: 960px) {
		.top_title {
				margin: 0 auto -70px;
				width: 600px;
				height: 180px
		}
		.top_title.title_1 {
				top: -90px;
		}
		.top_title.title_2 {
				top: -90px;
		}
		.top_title h2 {
				font-size: 40px;
		}
		.top_title div {
				position: absolute;
				width: 100%;
				top: 0;
				left: 0;
				pointer-events: none
		}
}
@media(max-width: 767px) {
		.top_title {
				margin: 0 auto -48px;
				width: 350px;
				height: 96px
		}
		.top_title.title_1 {
				top: -48px;
		}
		.top_title.top_title.title_2 {
				top: -61px;
				height: 123px;
				margin-bottom: -71px;
		}
		.cont_wrap {
				padding: 90px 20px 120px;
		}
		.top_col {
				padding-bottom: 40px;
				margin-bottom: 100px;
				border-radius: 40px;
		}
		.cont_wrap .top_col:last-of-type {
				padding-bottom: 20px;
		}
		.top_title h2 {
				font-size: 20px;
		}
}
@media(max-width: 400px) {
		.top_title {
				margin: 0 auto -46px;
				width: 330px;
				height: 92px
		}
		.top_title.title_1 {
				top: -46px;
		}
		.top_title.top_title.title_2 {
				top: -58px;
				height: 116px;
				margin-bottom: -68px;
		}
}
/* =============== */
.top_col_flex {
		display: flex;
		justify-content: space-between;
		max-width: 920px;
		margin: 0 auto 10px;
		padding: 0 30px;
}
.top_col_item {
		width: 400px;
		text-align: center;
		position: relative;
}
.top_col_flex .top_col_item.first:after {
		content: '';
		display: block;
		position: absolute;
		top: calc(calc(50% - 25px) + 15px);
		right: -87px;
		width: 50px;
		height: 50px;
		background-repeat: no-repeat;
		background-position: center center;
		background-size: 50px;
		background-image: url("../images/top_kakeru.png");
		opacity: 0;
		transition: opacity 0.4s;
		transition-delay: 0.3s
}
.top_col_flex.isActive .top_col_item.first:after {
		opacity: 1 !important;
}
.top_col_hd {
		color: #48A63F;
		font-size: 22px;
		font-weight: 700;
		margin: 0 0 20px;
		line-height: 1.6;
}
.top_col_item_cont {
		height: 430px;
		background-repeat: no-repeat;
		background-position: center center;
		background-size: cover;
		background-image: url("../images/top_col_figure_bg.jpg");
		border-radius: 80px;
		overflow: hidden;
		position: relative;
}
.top_col_figure {
		padding: 20px 0 0;
		width: 310px;
		margin: 0 auto 15px;
}
.top_col_figure.wide {
		width: 335px;
		padding-top: 30px;
		margin-bottom: 30px;
}
.top_col_figure img {
		width: 100%;
		height: auto;
}
.top_col_caption {
		height: 4em;
		display: flex;
		justify-content: center;
		align-items: center;
}
.top_col_caption p {
		font-weight: 700;
		line-height: 1.6;
		text-align: center;
}
.top_arw_center {
		display: flex;
		justify-content: center;
		margin: 0 0 35px;
}
.top_arw {
		width: 55px;
}
.top_arw img {
		width: 100%;
		height: auto
}
.top_total_hd {
		text-align: center;
		font-size: 24px;
		font-weight: 700;
		margin: 0 0 10px;
}
.top_total {
		text-align: center;
		font-family: "Montserrat", sans-serif;
		font-optical-sizing: auto;
		font-size: 100px;
		font-weight: 600;
		font-style: normal;
		color: #48A63F;
		line-height: 1;
		margin: 0 0 30px
}
.top_total span.comma {
		font-size: 80%;
}
.countUp {
		width: 180px;
		display: inline-block
}
.top_total sup {
		font-size: 40px;
}
.top_rich {
		font-size: 52px;
		font-weight: 700;
		color: #48A63F;
		text-align: center;
		margin: 0 0 40px;
}
@media(max-width: 1700px) {
		.cont_wrap {
				max-width: 1000px;
				margin: 0 auto;
		}
		.top_col_flex {
				padding-left: 60px;
				padding-right: 60px;
		}
		.top_col_item {
				width: calc(50% - 40px);
		}
		.top_col_figure, .top_col_figure.wide {
				width: calc(100% - 60px);
				padding-top: 25px;
				margin-bottom: 25px;
		}
		.top_col_hd {
				font-size: 17px;
		}
		.top_col_item_cont {
				height: auto;
				border-radius: 50px;
				padding-bottom: 35px;
		}
		.top_col_caption p {
				font-size: 15px;
				padding-left: 30px;
				padding-right: 30px;
				text-align: left;
		}
		.top_col_caption p br {
				display: none
		}
		.top_col_flex .top_col_item.first:after {
				top: calc(calc(50% - 15px) + 15px);
				right: -55px;
				width: 30px;
				height: 30px;
				background-size: 30px;
		}
		.top_rich {
				font-size: 40px;
		}
		.top_total {
				font-size: 90px;
		}
		.top_total sup {
				font-size: 18px;
		}
}
@media(max-width: 1200px) {
		.top_col_flex {
				padding-left: 40px;
				padding-right: 40px;
		}
}
@media(max-width: 960px) {
		.top_total {
				font-size: 80px;
		}
		.countUp {
				width: 148px;
		}
		.top_col_item_cont {
				border-radius: 40px;
		}
}
@media (max-width: 767px) {
		.top_total {
				font-size: 40px;
		}
		.countUp {
				width: 72px;
		}
		.top_rich {
				font-size: 24px;
				line-height: 1.6;
				margin: 0 0 20px
		}
		.top_col_hd {
				font-size: 16px;
				margin-bottom: 15px;
		}
		.top_col_flex {
				display: block;
				padding: 0 20px;
				margin-bottom: 25px;
		}
		.top_col_item {
				width: 100%
		}
		.top_col_flex .top_col_item.first {
				margin-bottom: 50px;
		}
		.top_col_flex .top_col_item.first:after {
				top: inherit;
				right: inherit;
				left: calc(50% - 9px);
				bottom: -38px;
				width: 18px;
				height: 18px;
				background-size: 30px;
		}
		.top_col_item_cont {
				height: auto !important;
				border-radius: 20px;
				padding: 25px 0;
		}
		.top_col_figure, .top_col_figure.wide {
				width: 100%;
				padding-top: 0;
				margin-bottom: 15px;
		}
		.top_col_caption {
				height: inherit;
		}
		.top_arw_center {
				margin: 0 0 15px;
		}
		.top_arw {
				width: 30px;
		}
}
/* ================ */