.section .sub_head {
	margin-bottom: 8px; /* identical to box height, or 211% */ /* Primary */
	color: #012fa6; /* H2_mini */
	font-style: normal;
	font-weight: 600;
	font-size: 1.125rem;
	line-height: 2.375rem;
}

.section .sub_head.left {
	text-align: left;
}

.section .sub_head.center {
	text-align: center;
}

.section .sub_head.right {
	text-align: right;
}

.section .main_head {
	margin-bottom: 2.5rem; /* identical to box height, or 150% */
	color: #000000; /* H2 */
	font-style: normal;
	font-weight: 600;
	font-size: 2rem;
	line-height: 3rem;
}

.section .main_head.left {
	text-align: left;
}

.section .main_head.center {
	text-align: center;
}

.section .main_head.right {
	text-align: right;
}

.section#in_page_navi_section {
	margin-top: 4.0625rem;
	margin-bottom: 4.0625rem;
	background: #e7ecfb;
	padding-top: 3.4375rem;
	padding-bottom: 3.4375rem;
}

.section#in_page_navi_section h1 {
	margin-bottom: 2.3125rem; /* Primary */
	color: #012fa6;
	font-style: normal;
	font-weight: 600;
	font-size: 1.75rem;
	line-height: 2.625rem;
	text-align: center;
}

.section#in_page_navi_section .btn_wrapper {
	display: flex;
	justify-content: center;
}

#professional_service_page {
	margin-top: 5rem;
	margin-bottom: 7.5rem;
}

#professional_service_page #title_section {
	height: 25rem;
}

#professional_service_page #title_section .container {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	height: 100%;
}

#professional_service_page #title_section .container .title {
	width: 100%;
}

#professional_service_page #title_section .container .title .title_sub { /* identical to box height, or 211% */ /* Primary */
	color: #012fa6;
	font-style: normal;
	font-weight: 600;
	font-size: 1.125rem;
	line-height: 2.375rem;
}

#professional_service_page #title_section .container .title .title_main { /* Black */
	color: #000000;
	font-style: normal;
	font-weight: 600;
	font-size: 2.75rem;
	line-height: 4.125rem;
}

#professional_service_page #title_section .container .kv {
	position: absolute;
	right: 0;
	background: none;
	height: auto;
}

#professional_service_page #title_section .container .kv .img_wrapper {
	width: 100%;
	height: auto;
}

#professional_service_page #title_section .container .kv .img_wrapper img,
#professional_service_page #title_section .container .kv .img_wrapper picture {
	width: auto;
	height: 24.6875rem;
}

#professional_service_page .section_1 .professional_content_block {
	margin-bottom: 1.875rem;
}

#professional_service_page .section_1 .professional_content_block > .info {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
}

#professional_service_page .section_1 .professional_content_block > .info .desc { /* or 200% */
	color: #000000;
	font-style: normal;
	font-weight: 300;
	font-size: 1rem;
	line-height: 2rem;
}

#professional_service_page .section_1 .flex.list {
	margin-bottom: 3.75rem;
}

#professional_service_page .section_1 .flex.list .list_item .head {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	margin-bottom: 0.5rem; /* identical to box height, or 211% */
	color: #000000;
	font-style: normal;
	font-weight: 600;
	font-size: 1.125rem;
	line-height: 2.375rem;
}

#professional_service_page .section_1 .flex.list .list_item .head img {
	margin-right: 0.875rem;
	width: 2.8125rem;
	height: 2.8125rem;
}

#professional_service_page .section_1 .flex.list .list_item .desc { /* or 200% */
	color: #000000;
	font-style: normal;
	font-weight: 300;
	font-size: 1rem;
	line-height: 2rem;
}

#professional_service_page .section_1 .detail_desc_block {
	margin-bottom: 3.125rem;
	border-radius: 0.75rem;
	background: #e7ecfb;
	padding: 3.125rem 2.8125rem;
}

#professional_service_page .section_1 .detail_desc_block .head_block {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	margin-bottom: 1.3125rem;
}

#professional_service_page .section_1 .detail_desc_block .head_block .img {
	margin-right: 1.5rem;
	width: 6.625rem;
	height: auto;
}

#professional_service_page .section_1 .detail_desc_block .head_block .text .subhead { /* identical to box height, or 211% */ /* Primary */
	color: #012fa6;
	font-style: normal;
	font-weight: 600;
	font-size: 1.125rem;
	line-height: 2.375rem;
}

#professional_service_page .section_1 .detail_desc_block .head_block .text .head {
	color: #000000;
	font-style: normal;
	font-weight: 600;
	font-size: 2rem;
	line-height: 3rem; /* identical to box height, or 150% */
	text-align: center;
}

#professional_service_page .section_1 .detail_desc_block .body_block .head {
	margin-bottom: 0.5rem; /* identical to box height, or 211% */
	color: #000000;
	font-style: normal;
	font-weight: 600;
	font-size: 1.125rem;
	line-height: 2.375rem;
}

#professional_service_page .section_1 .detail_desc_block .body_block .desc { /* or 200% */
	color: #000000;
	font-style: normal;
	font-weight: 300;
	font-size: 1rem;
	line-height: 2rem;
}

#professional_service_page .section_1 .end_navi_block .desc {
	margin-bottom: 1.5625rem;
	color: #000000;
	font-style: normal;
	font-weight: 300;
	font-size: 1rem;
	line-height: 2rem; /* or 200% */
	text-align: center;
}

#professional_service_page .section_1 .end_navi_block .btn_wrapper {
	display: flex;
	justify-content: center;
}

.sp_only {
	display: none;
}

.tb_only {
	display: none;
}

.pc_only {
	display: block;
}

.flex {
	display: flex;
	flex-wrap: wrap;
	margin-top: -1.25rem;
	margin-right: -1.25rem;
	margin-bottom: -1.25rem;
	margin-left: -1.25rem;
}

.flex.fd_c {
	flex-direction: column;
}

.flex.fd_r {
	flex-direction: row;
}

.flex.jc_c {
	justify-content: center;
}

.flex.jc_sb {
	justify-content: space-between;
}

.flex.jc_sa {
	justify-content: space-around;
}

.flex.jc_start {
	justify-content: flex-start;
}

.flex.jc_end {
	justify-content: flex-end;
}

.flex.ai_c {
	align-items: center;
}

.flex.ai_start {
	align-items: flex-start;
}

.flex.ai_end {
	align-items: flex-end;
}

.flex.center {
	justify-content: center;
	align-items: center;
}

.inline_flex {
	display: inline-flex;
	flex-wrap: wrap;
}

.flex_center {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
}

.flex.no_spacing > [class^=col_] {
	padding: 0 !important;
}

.container {
	margin: 0 auto;
	max-width: 100%;
}

@media screen and (min-width: 860px) {

.flex > * {
	padding: 15px;
}

.flex .col_1 {
	-ms-width: 8.333333%;
	width: 8.3333333333%;
}

.flex .col_2 {
	-ms-width: 16.666666%;
	width: 16.6666666667%;
}

.flex .col_3 {
	-ms-width: 25%;
	width: 25%;
}

.flex .col_4 {
	-ms-width: 33.333333%;
	width: 33.3333333333%;
}

.flex .col_5 {
	-ms-width: 41.666667%;
	width: 41.6666666667%;
}

.flex .col_6 {
	-ms-width: 50%;
	width: 50%;
}

.flex .col_7 {
	-ms-width: 58.333333%;
	width: 58.3333333333%;
}

.flex .col_8 {
	-ms-width: 66.666666%;
	width: 66.6666666667%;
}

.flex .col_9 {
	-ms-width: 75%;
	width: 75%;
}

.flex .col_10 {
	-ms-width: 83.333333%;
	width: 83.3333333333%;
}

.flex .col_11 {
	-ms-width: 91.666666%;
	width: 91.6666666667%;
}

.flex .col_12 {
	-ms-width: 100%;
	width: 100%;
}

.flex [class^=col_] {
	padding: 20px;
}

}

@media screen and (max-width: 859px) {

#professional_service_page {
	margin: 3.75rem 0 3.75rem;
}

}

@media (max-width: 859px) {

.flex {
	margin-right: 0;
	margin-left: 0;
}

#professional_service_page .section_1 .detail_desc_block {
	margin-right: auto;
	margin-left: auto;
	width: calc(100% - 2.5rem);
}

.pc_only {
	display: none;
}

.tb_only {
	display: block;
}

.sp_only {
	display: none;
}

.tb_order_1 {
	order: 1;
}

.tb_order_2 {
	order: 2;
}

.tb_order_3 {
	order: 3;
}

.tb_order_4 {
	order: 4;
}

.tb_order_5 {
	order: 5;
}

.tb_order_6 {
	order: 6;
}

.tb_order_7 {
	order: 7;
}

.tb_order_8 {
	order: 8;
}

.tb_order_9 {
	order: 9;
}

.tb_order_10 {
	order: 10;
}

#professional_service_page #title_section {
	height: auto;
}

#professional_service_page #title_section .container {
	flex-wrap: wrap;
}

#professional_service_page #title_section .container .title {
	margin-bottom: 1.5rem;
	width: 100%;
}

#professional_service_page #title_section .container .kv {
	position: relative;
	right: unset;
	width: 100%;
}

#professional_service_page #title_section .container .kv img,
#professional_service_page #title_section .container .kv picture {
	margin: 0 auto;
	width: 21.5625rem !important;
	height: auto !important;
}

#professional_service_page .section_1 .professional_content_block {
	flex-direction: column-reverse;
}

#professional_service_page .section_1 .professional_content_block > .info {
	margin-bottom: 1.25rem;
}

#professional_service_page .section_1 .detail_desc_block {
	width: 100%;
}

#professional_service_page .section_1 .flex.list li {
	margin-bottom: 1.25rem;
}

#professional_service_page .section_1 .flex.list li:last-child {
	margin-bottom: 0;
}

#professional_service_page .section_1 .detail_desc_block {
	margin-bottom: 2.5rem;
	border-radius: 1.25rem;
	padding: 1.25rem 1rem 2.5rem;
}

#professional_service_page .section_1 .detail_desc_block .body_block > * {
	margin-bottom: 1.25rem;
}

#professional_service_page .section_1 .detail_desc_block .body_block > *:last-child {
	margin-bottom: 0;
}

.sp_only {
	display: block;
}

#professional_service_page #title_section .container .kv img,
#professional_service_page #title_section .container .kv picture {
	margin: 0 auto;
	width: 21.5625rem !important;
	height: auto !important;
}

.section .sub_head {
	margin-bottom: 0.5rem; /* identical to box height, or 221% */ /* Primary */
	color: #012fa6; /* H2_mini_SP */
	font-style: normal;
	font-weight: 600;
	font-size: 0.875rem;
	line-height: 1.9375rem;
}

.section .main_head {
	margin-bottom: 1.25rem; /* identical to box height, or 155% */
	color: #000000; /* H2_SP */
	font-style: normal;
	font-weight: 600;
	font-size: 1.25rem;
	line-height: 1.9375rem;
}

.section#in_page_navi_section {
	margin-top: 3.4375rem !important;
	margin-bottom: 3.4375rem !important;
	padding: 3rem 0 !important;
}

.section#in_page_navi_section h1 {
	margin-bottom: 1.75rem; /* Primary */
	color: #012fa6;
	font-style: normal;
	font-weight: 600;
	font-size: 1.25rem;
	line-height: 1.875rem;
	text-align: center;
}

#professional_service_page .section_1 .professional_content_block {
	margin-bottom: 2.5rem;
}

#professional_service_page .section_1 .flex.list .list_item .head { /* identical to box height, or 238% */
	color: #000000;
	font-style: normal;
	font-weight: 600;
	font-size: 1rem;
	line-height: 2.375rem;
}

#professional_service_page .section_1 .flex.list .list_item .head img {
	width: 2.25rem;
	height: 2.25rem;
}

#professional_service_page .section_1 .flex.list .list_item .desc { /* or rem(28) */
	color: #000000;
	font-style: normal;
	font-weight: 300;
	font-size: 0.875rem;
	line-height: 200%;
}

#professional_service_page .section_1 .flex.list {
	margin-bottom: 2.5rem;
}

#professional_service_page .section_1 .detail_desc_block .head_block .text .subhead { /* identical to box height, or 221% */ /* Primary */
	color: #012fa6;
	font-style: normal;
	font-weight: 600;
	font-size: 0.875rem;
	line-height: 1.9375rem;
}

#professional_service_page .section_1 .detail_desc_block .head_block .text .head {
	color: #000000;
	font-style: normal;
	font-weight: 600;
	font-size: 1.25rem;
	line-height: 1.9375rem; /* identical to box height, or 155% */
	text-align: center;
}

#professional_service_page .section_1 .detail_desc_block .body_block .head { /* identical to box height, or 238% */
	color: #000000;
	font-style: normal;
	font-weight: 600;
	font-size: 1rem;
	line-height: 2.375rem;
}

#professional_service_page .section_1 .detail_desc_block .body_block .desc { /* or rem(28) */
	color: #000000;
	font-style: normal;
	font-weight: 300;
	font-size: 0.875rem;
	line-height: 200%;
}

#professional_service_page .section_1 .for_sp_bkg {
	background: #e7ecfb;
	width: 100%;
}

#professional_service_page .section_1 .end_navi_block .desc {
	margin-bottom: 2.5rem;
	color: #000000;
	font-style: normal;
	font-weight: 300;
	font-size: 1rem;
	line-height: 2rem; /* or 200% */
	text-align: center;
}

#professional_service_page #title_section {
	padding-bottom: 0.625rem !important;
}

#professional_service_page #section_1 {
	padding-top: 0 !important;
}

#professional_service_page #title_section .container .title {
	margin-bottom: 1.375rem;
}

#professional_service_page #title_section .container .title .title_sub {
	margin-bottom: 0.5rem; /* identical to box height, or 221% */ /* Primary */
	color: #012fa6;
	font-style: normal;
	font-weight: 600;
	font-size: 0.875rem;
	line-height: 1.9375rem;
}

#professional_service_page #title_section .container .title .title_main {
	margin-bottom: 0; /* Black */
	color: #000000;
	font-style: normal;
	font-weight: 600;
	font-size: 1.75rem;
	line-height: 2.625rem;
}

}

