@charset "utf-8";
.s_pc_view,
.s_pc_view02 {
	display: block !important; /*改行にのみ使用*/
}
.s_tab_view,
.s_sp_view {
	display: none !important; /*改行にのみ使用*/
}
.s_mat0 {
	margin-top: 0;
}
.s_mat5 {
	margin-top: 5px;
}
.s_mat10 {
	margin-top: 10px;
}
.s_mat20 {
	margin-top: 20px;
}
.s_mat30 {
	margin-top: 30px;
}
.s_mat40 {
	margin-top: 40px;
}
.s_mat50 {
	margin-top: 50px;
}

.s_mab0 {
	margin-bottom: 0;
}
.s_mab5 {
	margin-bottom: 5px;
}
.s_mab10 {
	margin-bottom: 10px;
}
.s_mab20 {
	margin-bottom: 20px;
}
.s_mab30 {
	margin-bottom: 30px;
}
.s_mab40 {
	margin-bottom: 40px;
}
.s_mab50 {
	margin-bottom: 50px;
}
.s_mab60 {
	margin-bottom: 60px;
}
.s_mab70 {
	margin-bottom: 70px;
}
.s_mab80 {
	margin-bottom: 80px;
}
.s_mab100 {
	margin-bottom: 100px;
}

.s_auto {
	margin-inline: auto;
}
.s_mar_auto {
	margin: 0 auto;
}

.s_al_center,
.aligncenter {
	text-align: center;
}
.s_al_right,
.alignright {
	text-align: right;
}
.s_al_left,
.alignleft {
	text-align: left;
}
.s_vl_top {
	vertical-align: top;
}
.s_vl_middle {
	vertical-align: middle;
}
.s_vl_bottom {
	vertical-align: bottom;
}

.s_f_left {
	float: left;
}
.s_f_right {
	float: right;
}
.is_f_clear {
	float: none;
	text-align: center;
}

.s_red {
	color: #f00;
}
.s_black {
	color: #000;
}
.s_white {
	color: #fff;
}
.s_navy {
	color: #1e3379;
}
.s_green {
	color: #1e7c41;
}

.s_bold {
	font-weight: bold;
}
.s_indent {
	text-indent: 1em;
}
.s_kome,
.s_kome li {
	text-indent: -1em;
	margin-left: 1em;
}
.s_underline {
	text-decoration: underline;
}
.s_fw_normal {
	font-weight: normal;
}
.s_inline {
	display: inline-block;
}

.s_fs_sm {
	font-size: 1.2rem;
}
.s_fs_lg {
	font-size: 1.8rem;
}
.s_txt_sm {
	font-size: 0.8em;
}
.s_txt_lg {
	font-size: 1.3em;
}

.s_img_floatL {
	float: left;
	margin-right: 20px;
	margin-bottom: 10px;
}
.s_img_floatR {
	float: right;
	margin-left: 20px;
	margin-bottom: 10px;
}

.s_fs11 {
	font-size: 1.1rem !important;
}
.s_fs12 {
	font-size: 1.2rem !important;
}
.s_fs13 {
	font-size: 1.3rem !important;
}
.s_fs14 {
	font-size: 1.4rem !important;
}
.s_fs15 {
	font-size: 1.5rem !important;
}
.s_fs16 {
	font-size: 1.6rem !important;
}
.s_fs17 {
	font-size: 1.7rem !important;
}
.s_fs18 {
	font-size: 1.8rem !important;
}
.s_fs19 {
	font-size: 1.9rem !important;
}
.s_fs20 {
	font-size: 2rem !important;
}
.s_fs21 {
	font-size: 2.1rem !important;
}
.s_fs22 {
	font-size: 2.2rem !important;
}
.s_fs23 {
	font-size: 2.3rem !important;
}
.s_fs24 {
	font-size: 2.4rem !important;
}
.s_fs25 {
	font-size: 2.5rem !important;
}
.s_fs26 {
	font-size: 2.6rem !important;
}
.s_fs27 {
	font-size: 2.7rem !important;
}
.s_fs28 {
	font-size: 2.8rem !important;
}

.s_w10p {
	width: 10%;
}
.s_w20p {
	width: 20%;
}
.s_w30p {
	width: 30%;
}
.s_w40p {
	width: 40%;
}
.s_w50p {
	width: 50%;
}
.s_w60p {
	width: 60%;
}
.s_w70p {
	width: 70%;
}
.s_w80p {
	width: 80%;
}
.s_w90p {
	width: 90%;
}
.s_w100p {
	width: 100%;
}

.s_disable {
	pointer-events: none;
}

.s_lh16 {
	line-height: normal;
}

.s_txt_line {
	border-bottom: 1px solid var(--gray-color);
	padding-bottom: 0.5rem;
	margin-bottom: 1rem;
}

.s_attention {
	font-weight: 600;
	color: var(--rd-color);
	background: var(--wh-color);
	border: 2px solid var(--rd-color);
	padding: 0.5rem;
	margin: 2rem auto;
}

.s_subttl_bg {
	font-weight: 600;
	color: var(--wh-color);
	background: var(--bk-color);
	padding: 0.5rem;
}

@media screen and (max-width: 960px) {
	.s_mat20 {
		margin-top: 10px;
	}
	.s_mat30 {
		margin-top: 15px;
	}
	.s_mat40 {
		margin-top: 20px;
	}
	.s_mat50 {
		margin-top: 25px;
	}

	.s_mab20 {
		margin-bottom: 10px;
	}
	.s_mab30 {
		margin-bottom: 15px;
	}
	.s_mab40 {
		margin-bottom: 20%;
	}
	.s_mab50 {
		margin-bottom: 25px;
	}
	.s_mab60 {
		margin-bottom: 30px;
	}
	.s_mab100 {
		margin-bottom: 50px;
	}
}
@media screen and (max-width: 1100px) {
	.s_tab_view {
		display: block !important; /*改行にのみ使用*/
	}
	.s_pc_view {
		display: none !important; /*改行にのみ使用*/
	}
}
@media screen and (max-width: 768px) {
	.s_f_left.is_sp_f_clear {
		float: left;
	}
	.s_f_right.is_sp_f_clear {
		float: right;
	}
}
@media screen and (max-width: 850px) {
	.s_pc_view02 {
		display: none !important; /*改行にのみ使用*/
	}
	.s_sp_view {
		display: block !important; /*改行にのみ使用*/
	}
}

/*----------------------------------------------
	common
---------------------------------------------*/
.s_common_wrapper {
	padding: 200px 20px 150px;
	text-align: center;
}
.s_top_about_txt.s_common_lead {
	margin-bottom: 3rem;
	text-align: center;
}

/*----------------------------------------------
	top
---------------------------------------------*/
/*  .s_top_hero
---------------------------------------------*/
.s_top_hero {
	width: 100%;
	position: relative;
}

/*  .s_top_mv
---------------------------------------------*/
.s_top_mv {
	position: relative;
	display: flex;
	justify-content: space-between;
	width: 100%;
	padding-top: 120px;
	padding-bottom: 60px;
}
.s_top_mv_img {
	width: 100%;
	max-height: 710px;
}
.s_top_mv_item {
	width: fit-content;
	height: fit-content;
	margin-left: 10rem;
	text-align: left;
	z-index: 2;
}
.s_top_mv_copy {
	font-size: 8.6rem;
	font-weight: 600;
	color: var(--bl-color);
	text-align: left;
	line-height: 1.4;
	margin: 3rem 0 2rem;
}
.s_top_mv_txt {
	font-size: 2rem;
	font-weight: 700;
}
.s_top_mv_accent {
	position: relative;
	width: fit-content;
	font-size: 2.2rem;
	font-weight: 700;
	color: var(--bl-color);
	padding: 1rem 4rem;
	border: 3px solid var(--bl-color);
	border-radius: 4px;
	margin: 0 auto 2rem;
}
.s_top_mv_accent::before {
	content: "";
	position: absolute;
	bottom: -5px;
	left: 50%;
	width: 15px;
	height: 15px;
	box-sizing: border-box;
	background-color: var(--wh-color);
	rotate: 135deg;
	translate: -50%;
}
.s_top_mv_accent::after {
	content: "";
	position: absolute;
	bottom: -8px;
	left: 50%;
	width: 15px;
	height: 15px;
	box-sizing: border-box;
	border: 3px solid;
	border-color: var(--bl-color) var(--bl-color) transparent transparent;
	rotate: 135deg;
	translate: -50%;
}
.s_top_mv_accent_sp {
	display: none;
}
.s_top_mv_btnbox {
	margin: 2rem 0 0;
	width: fit-content;
}

@media (max-width: 1600px) {
	.s_top_mv {
		gap: 2rem;
		align-items: center;
	}
	.s_top_mv_item {
		margin-left: 5rem;
	}
	.s_top_mv_copy {
		font-size: 6rem;
	}
}
@media (max-width: 1300px) {
}
@media (max-width: 1100px) {
	.s_top_mv {
		flex-wrap: wrap;
	}
	.s_top_mv_item {
		width: fit-content;
		margin: 0 auto;
	}
	.s_top_mv_img {
		width: 100%;
		max-height: fit-content;
	}
	.s_top_mv_btnbox {
		display: none;
	}
	.s_top_mv_copy {
		font-size: 8rem;
	}
	.s_top_mv_accent_sp {
		display: block;
		margin: 2rem 0 0;
	}
	.s_top_mv_accent.s_top_mv_accent_sp::before {
		rotate: 314deg;
		top: -5px;
		bottom: 0;
	}
	.s_top_mv_accent.s_top_mv_accent_sp::after {
		top: -8px;
		bottom: 0;
		rotate: 314deg;
	}
}
@media (max-width: 850px) {
	.s_top_mv {
		padding-top: 60px;
		padding-bottom: 0;
	}
	.s_top_mv_copy {
		font-size: 6rem;
	}
	.s_top_mv_txt {
		font-size: 2.4rem;
	}
}
@media (max-width: 650px) {
	.s_top_mv_copy {
		font-size: 4rem;
	}
	.s_top_mv_txt {
		font-size: 1.4rem;
	}
	.s_top_mv_accent_sp {
		margin: 2rem auto 0;
	}
}

/*  .s_title_bg
---------------------------------------------*/
.s_title_bg {
	position: relative;
	background-image: url(../images/title_bg.png);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	width: 100%;
	height: 380px;
}
.s_title_bg_ttl {
	font-size: 6rem;
	font-weight: 700;
	position: absolute;
	bottom: 3rem;
	left: 0;
	right: 0;
	margin: auto;
	text-align: center;
}
.s_title_bg_subttl {
	display: block;
	width: fit-content;
	margin: 0 auto;
	padding: 0 1rem;
	font-size: 2.6rem;
	color: var(--wh-color);
	background: var(--bl-color);
}
@media (max-width: 850px) {
	.s_title_bg {
		height: 180px;
	}
	.s_title_bg_ttl {
		font-size: 2.8rem;
		bottom: 4.5rem;
		line-height: normal;
	}
	.s_title_bg_subttl {
		font-size: 1.6rem;
	}
}

/*  .s_cta
---------------------------------------------*/
.s_cta {
	position: relative;
	background: var(--base-color);
	padding: 6rem 2rem 0;
}
.s_cta_wrap {
	display: flex;
	justify-content: center;
	align-items: end;
}
.s_cta_box {
	text-align: center;
}
.s_cta_ttl {
	font-size: 4rem;
	font-weight: 600;
	color: var(--bl-color);
}
.s_cta_txt {
	font-size: 2.8rem;
	font-weight: 600;
}
.s_cta_btnbox {
	display: flex;
	gap: 2rem;
	margin: 2rem auto 0;
}
.s_cta_bottom {
	padding: 6rem 2rem 4rem;
}
.s_cta_sp_image {
	display: none;
}
@media (max-width: 1300px) {
	.s_cta_box {
		width: 75%;
	}
}
@media (max-width: 1150px) {
	.s_cta_ttl {
		font-size: 3rem;
	}
}
@media (max-width: 850px) {
	.s_cta_btnbox {
		flex-wrap: wrap;
		gap: 0;
		justify-content: center;
	}
	.s_cta_wrap {
		flex-wrap: wrap;
		width: 100%;
	}
	.s_cta_ttl {
		font-size: 2.4rem;
	}
	.s_cta_txt {
		font-size: 1.4rem;
	}
	.s_cta_box {
		width: 100%;
	}
	.s_cta_sp_image {
		display: grid;
		grid-template-columns: 1fr 1fr;
		align-items: end;
	}
	.s_cta_sp_image img {
		height: 140px;
		margin: 0 auto;
	}
}

/*  .s_top_about
---------------------------------------------*/
.s_top_about {
	position: relative;
	padding: 150px 0 0;
}
.s_top_brooklyn_inner {
	position: relative;
	z-index: 2;
}
.s_top_about_copy {
	text-align: center;
	margin: 0 auto 12rem;
}
.s_top_about_ttl {
	font-size: 4rem;
	letter-spacing: 3.6px;
}
.s_top_about_ttl_bl {
	font-size: 7rem;
	color: var(--bl-color);
}
.s_top_about_txt {
	font-size: 2rem;
	font-weight: 600;
	margin: 2rem auto 0;
}
.s_top_about_txt_bl {
	font-size: 2.6rem;
	font-weight: 600;
	color: var(--bl-color);
	margin: 2rem auto 0;
}
.s_top_about_item {
	display: grid;
	grid-template-columns: 1fr 2.5fr 5fr;
	padding: 8rem 0 6rem;
	border-bottom: 6px solid var(--bl-color);
}
.s_top_about_item:last-child {
	border-bottom: none;
}
.s_top_about_num {
	width: fit-content;
	height: fit-content;
	font-family: "Montserrat", sans-serif;
	font-size: 7rem;
	font-weight: 700;
	color: #ffffff;
	text-shadow: 1px 1px 0 #1448e5, -1px -1px 0 #1448e5, -1px 1px 0 #1448e5,
		1px -1px 0 #1448e5, 0px 1px 0 #1448e5, 0 -1px 0 #1448e5, -1px 0 0 #1448e5,
		1px 0 0 #1448e5;
	line-height: 1;
}
.s_top_about_subttl {
	line-height: 1.6;
}
.s_top_about_subttl span {
	width: fit-content;
	font-size: 4.2rem;
	color: var(--wh-color);
	background: var(--bl-color);
}
.s_top_about_subttl span.s_top_about_subttl_sm {
	font-size: 2.2rem;
}
.s_top_about_lead {
	font-size: 1.8rem;
	margin-bottom: 2rem;
}
span.s_top_about_lead_bl {
	color: var(--bl-color);
	font-size: 2.4rem;
	font-weight: 700;
	display: block;
}
.s_top_about_flex {
	display: flex;
	flex-wrap: wrap;
	gap: 2rem;
	margin-bottom: 2rem;
}
.s_top_about_price {
	font-size: 2rem;
	font-weight: 600;
	color: var(--bl-color);
}
.s_top_about_price_sm {
	display: block;
	font-size: 1.8rem;
}
.s_top_about_price_num {
	font-size: 4rem;
	font-weight: 800;
}
li.s_top_about_li {
	font-size: 2rem;
	font-weight: 600;
	color: var(--bl-color);
	list-style-type: disc;
	margin-left: 3rem;
}
li.s_top_about_li::marker {
	color: var(--bl-color);
	font-size: 3rem;
	line-height: 1;
}
@media (max-width: 1300px) {
	.s_top_about {
		padding: 50px 0 0;
	}
}
@media (max-width: 1100px) {
	.s_top_about_item {
		grid-template-columns: 1fr;
		gap: 2rem;
	}
}
@media (max-width: 850px) {
	.s_top_about_ttl_bl {
		font-size: 3.4rem;
	}
	.s_top_about_ttl {
		font-size: 2rem;
		letter-spacing: 1.8px;
	}
	.s_top_about_txt {
		font-size: 1.4rem;
	}
	.s_top_about_txt_bl {
		font-size: 1.8rem;
	}
	.s_top_about_copy {
		margin: 0 auto 6rem;
	}
	.s_top_about_subttl span {
		font-size: 3.2rem;
	}
	.s_top_about_lead {
		font-size: 1.4rem;
		margin-bottom: 2rem;
	}
	.s_top_about_price {
		font-size: 1.6rem;
	}
	span.s_top_about_lead_bl {
		font-size: 2rem;
	}
	li.s_top_about_li {
		font-size: 1.6rem;
		margin-left: 2rem;
	}
	li.s_top_about_li::marker {
		font-size: 1.6rem;
	}
	.s_top_about_price_num {
		font-size: 3rem;
		padding: 0 0.5rem;
	}
	.s_top_about_item {
		padding: 4rem 0 2rem;
		border-bottom: 3px solid var(--bl-color);
	}
	.s_top_about_lead.s_top_about_lead_mab {
		margin-bottom: 0rem;
	}
}

/*  .s_age
---------------------------------------------*/
.s_top_age {
	position: relative;
	padding: 150px 0 0;
}
.s_age_btnbox {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	justify-content: center;
	background: var(--ligray-color);
	border-radius: 50px;
}
.s_age_btn {
	font-size: 2.4rem;
	font-weight: 700;
	color: var(--gray-color);
	text-align: center;
	text-decoration: none;
	padding: 2rem;
	background: var(--ligray-color);
	border-radius: 50px;
}
.s_age_btn_young {
	color: var(--wh-color);
	background: var(--yl-color);
}
.s_age_btn_young:hover {
	color: var(--wh-color);
}
.s_age_btn_middle {
	color: var(--wh-color);
	background: var(--rd-color);
}
.s_age_btn_middle:hover {
	color: var(--wh-color);
}
.s_age_btn_senior {
	color: var(--wh-color);
	background: var(--nv-color);
}
.s_age_btn_senior:hover {
	color: var(--wh-color);
}
.s_age_btn_rd:hover {
	color: var(--rd-color);
}
.s_age_btn_nv:hover {
	color: var(--nv-color);
}
.s_age_btn_yl:hover {
	color: var(--yl-color);
}

.s_age_border {
	width: 100%;
	height: 20px;
}
.s_age_border_yl {
	background: var(--yl-color);
}
.s_age_border_rd {
	background: var(--rd-color);
}
.s_age_border_nv {
	background: var(--nv-color);
}
.s_age_head {
	margin: 10rem 0;
}
.s_age_head_area {
	position: relative;
}
.s_age_ttl_img {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	max-width: 240px;
}
.s_age_subttl {
	font-size: 5rem;
	text-align: center;
	margin: 0 auto 2rem;
}
.s_age_txt {
	font-size: 1.8rem;
	text-align: center;
	margin: 0 auto 6rem;
}
.s_age_circle {
	width: 940px;
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	justify-content: center;
	align-items: center;
	gap: 2rem;
	margin: 0 auto 10rem;
}
.s_age_circle_txt {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 300px;
	height: 300px;
	border-radius: 50%;
	font-size: 2rem;
	text-align: center;
	color: var(--wh-color);
	background: var(--yl-color);
}
.s_age_circle_txt_lg {
	font-size: 3.2rem;
}
.s_age_square {
	display: grid;
	grid-template-columns: 1fr 1fr;
	justify-content: center;
	align-items: center;
	gap: 2rem;
	margin: 0 auto 10rem;
}
.s_age_square_txt {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 180px;
	border-radius: 24px;
	font-size: 2rem;
	padding: 3rem 2rem;
	text-align: center;
	line-height: 1.5;
	color: var(--wh-color);
	background: var(--rd-color);
}
.s_age_square_nv .s_age_square_txt {
	background: var(--nv-color);
}
.s_age_square_txt_lg {
	font-size: 3.2rem;
}
.s_age_voice {
	position: relative;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	padding: 10rem 0;
}
.s_age_voice_young {
	background-image: url(../images/young_bg.png);
}
.s_age_voice_middle {
	background-image: url(../images/middle_bg.png);
}
.s_age_voice_senior {
	background-image: url(../images/senior_bg.png);
}
.s_age_voice_img {
	display: block;
	width: 250px;
	text-align: center;
	margin: 0 auto 6rem;
}
.s_age_voice_box {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 3rem;
}
.s_age_voice_item {
	background: var(--wh-color);
	padding: 4rem 3rem;
	border-radius: 24px;
	text-align: center;
}
.s_age_voice_item_yl {
	border: 3px solid var(--yl-color);
}
.s_age_voice_item_rd {
	border: 3px solid var(--rd-color);
}
.s_age_voice_item_nv {
	border: 3px solid var(--nv-color);
}
.s_age_voice_profile {
	font-size: 2rem;
	font-weight: 600;
	margin: 1rem auto;
}
.s_age_voice_lead {
	text-align: left;
}
@media (max-width: 1100px) {
	.s_age_ttl_img {
		max-width: 150px;
	}
}
@media (max-width: 850px) {
	.s_top_age {
		padding: 80px 0 0;
	}
	.s_age_btn {
		font-size: 1.3rem;
		padding: 1rem;
	}
	.s_age_head {
		margin: 4rem 0;
	}
	.s_age_border {
		height: 10px;
	}
	.s_age_ttl_img {
		max-width: 70px;
	}
	.s_age_subttl {
		font-size: 2.4rem;
	}
	.s_age_txt {
		font-size: 1.4rem;
		text-align: left;
		margin: 0 auto 3rem;
	}
	.s_age_circle {
		width: fit-content;
		grid-template-columns: 1fr;
		gap: 1rem;
		margin: 0 auto 6rem;
	}
	.s_age_circle_txt {
		font-size: 1.6rem;
		width: 200px;
		height: 200px;
	}
	.s_age_circle_txt_lg {
		font-size: 2.4rem;
	}
	.s_age_voice {
		padding: 4rem 0;
	}
	.s_age_voice_img {
		width: 150px;
		margin: 0 auto 2rem;
	}
	.s_age_voice_box {
		grid-template-columns: 1fr;
		gap: 2rem;
	}
	.s_age_square {
		grid-template-columns: 1fr;
		gap: 1rem;
		margin: 0 auto 6rem;
	}
	.s_age_square_txt_lg {
		font-size: 2.4rem;
	}
	.s_age_square_txt {
		font-size: 1.4rem;
		padding: 3rem 2rem;
		height: fit-content;
		border-radius: 15px;
	}
}

/*  .s_top_flow
---------------------------------------------*/
.s_top_flow {
	position: relative;
	padding: 0 0 150px;
}
.s_top_flow_item {
	position: relative;
	display: inline-block;
	margin: 1.5em 0;
	padding: 3rem 4rem;
	width: 100%;
	color: #555;
	font-size: 1.8rem;
	background: var(--wh-color);
	border: solid 3px var(--bl-color);
	border-radius: 24px;
	box-sizing: border-box;
}
.s_top_flow_item:before {
	content: "";
	position: absolute;
	bottom: -44px;
	left: 50%;
	margin-left: -25px;
	border: 23px solid transparent;
	border-top: 22px solid #fff;
	z-index: 2;
}
.s_top_flow_item:after {
	content: "";
	position: absolute;
	bottom: -50px;
	left: 50%;
	margin-left: -27px;
	border: 25px solid transparent;
	border-top: 24px solid var(--bl-color);
	z-index: 1;
}
.s_top_flow_item:last-child::before,
.s_top_flow_item:last-child::after {
	display: none;
}
.s_top_flow_ttlbox {
	position: relative;
	margin-bottom: 2rem;
}
.s_top_flow_ttl {
	width: 100%;
	height: fit-content;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	text-align: center;
	font-size: 3rem;
	color: var(--bl-color);
}
.s_top_flow_num {
	height: 80px;
}
.s_top_flow_lead {
	margin-bottom: 2rem;
}
.s_top_flow_lead_lg {
	display: block;
	font-size: 2.2rem;
	font-weight: 800;
}
.s_top_flow_txt {
	font-size: 1.8rem;
	margin: 8rem auto 2rem;
}
.s_top_flow_lead_sm {
	font-size: 1.4rem;
}

@media (max-width: 850px) {
	.s_top_flow {
		padding: 0 0 40px;
	}
	.s_top_flow_txt {
		font-size: 1.4rem;
		margin: 4rem auto 0rem;
	}
	.s_top_flow_item {
		padding: 1rem 2rem;
		margin: 2rem 0;
	}
	.s_top_flow_lead {
		font-size: 1.4rem;
	}
	.s_top_flow_ttlbox {
		margin-bottom: 6rem;
	}
	.s_top_flow_ttl {
		font-size: 2.4rem;
		top: 8rem;
	}
	.s_top_flow_lead_lg {
		font-size: 1.8rem;
	}
	.s_top_flow_lead_sm {
		font-size: 1.2rem;
	}
	.s_top_flow_num {
		height: 60px;
	}
	.s_top_flow_item:before {
		bottom: -43px;
	}
}

@media (max-width: 640px) {
	/*  .s_top_mv
	---------------------------------------------*/
	.s_top_mv .slick-track li {
		height: 500px;
		min-height: 500px;
		max-height: 500px;
	}
	.s_top_mv .slick-slide img {
		width: 100%;
		height: 600px;
		object-position: center bottom;
	}
	/*  .s_top_lead
	---------------------------------------------*/
	.s_top_lead .l_wrap {
		flex-direction: column;
	}
	.s_top_lead .l_wrap > * {
		width: 100%;
	}
	.s_top_lead_tagline {
		padding: 0;
	}
	.s_top_lead_txt {
		margin-top: 20px;
	}
}
/*  .s_top_news
---------------------------------------------*/
.s_top_news .c_news {
	border-top: none;
}
@media (max-width: 960px) {
	.s_top_news .l_wrap {
		padding: 80px 0;
	}
}
/*  .s_top_flow
---------------------------------------------*/
.s_top_flow .c_sec_tagline {
	color: var(--main-color);
}
.s_flow_block {
	width: 80%;
	max-width: 800px;
	margin-inline: auto;
}
.s_flow_box {
	position: relative;
	display: grid;
	grid-template-columns: 1fr 2fr;
	grid-template-rows: repeat(1, 1fr);
	gap: 45px;
}
.s_flow_box:not(:last-child) {
	margin-bottom: 100px;
}
.s_flow_box:not(:last-child)::before,
.s_flow_box:not(:last-child)::after {
	position: absolute;
	content: "";
	background: var(--gray-color);
}
.s_flow_box:not(:last-child)::before {
	left: 176px;
	bottom: -68px;
	width: 1px;
	height: 40px;
}
.s_flow_box:not(:last-child)::after {
	left: 180px;
	bottom: -68px;
	width: 1px;
	height: 10px;
	transform: rotate(45deg);
}
.s_flow_step {
	display: flex;
	align-items: center;
	height: 50px;
	line-height: normal;
}
.s_flow_num,
.s_flow_ttl {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
}
.s_flow_num {
	width: 100px;
	background: var(--main-color);
	border-radius: 10px 0 0 10px;
	font-size: 2rem;
	color: #fff;
}
.s_flow_ttl {
	width: calc(100% - 100px);
	background: var(--base-color);
	border-radius: 0 10px 10px 0;
	font-size: 1.8rem;
	color: var(--main-color);
}
@media (max-width: 1280px) {
	.s_flow_num {
		font-size: calc(16px + 4 * (100vw - 768px) / 512);
	}
	.s_flow_ttl {
		font-size: calc(14px + 4 * (100vw - 768px) / 512);
	}
}
@media (max-width: 960px) {
	.s_flow_box {
		gap: 20px;
	}
	.s_flow_box:not(:last-child)::before {
		left: 150px;
	}
	.s_flow_box:not(:last-child)::after {
		left: 154px;
	}
	.s_flow_num {
		width: 80px;
	}
	.s_flow_ttl {
		width: calc(100% - 80px);
	}
}
@media (max-width: 768px) {
	.s_flow_box {
		grid-template-columns: 1fr;
		grid-template-rows: 1fr;
		gap: 20px;
	}
	.s_flow_box:not(:last-child) {
		margin-bottom: 30px;
	}
	.s_flow_box::before,
	.s_flow_box::after {
		content: none !important;
	}
	.s_flow_num {
		font-size: 1.6rem;
		width: 100px;
	}
	.s_flow_ttl {
		font-size: 1.4rem;
		width: calc(100% - 100px);
	}
}
