/**************************/
/* edgeendo css template */
/* edgeendo css template */
/*platinum flowchart 500178100*/
/*@media screen and (max-width:600px){
ここには画面サイズ600px以下のスタイルを書く}*/

/*************************/
.contents p {
	margin: 0;
}

.flow_wrapper {
	width: 100%;
	margin-bottom: 20px;
}

/*チャート大枠cssグリッドの指定ここから*************************************/
.flow_wrapper .grid {
	display: grid;
	display: -ms-grid;
	/*IE*/
	grid-template-columns: 36px auto;
	/*全ファイル共通*/
	-ms-grid-columns: 36px 5px auto;
	/*IE*/
	grid-template-rows: 80px 200px 140px 140px 140px 260px 36px;
	-ms-grid-rows: 80px 20px 200px 20px 140px 20px 140px 20px 140px 20px 260px 20px 36px;
	/*IE*/
	grid-gap: 20px 5px;
	grid-auto-flow: column;
	/*列方向からアイテムを埋める*/
}

.flow_wrapper .group1_head {
	grid-column: 1 / 2;
	/*grid-column: 始点番号 / 終点番号;*/
	grid-row: 1 / 2;
	/*grid-row: 始点番号 / 終点番号;*/
	-ms-grid-column: 1;
	/*IE*/
	-ms-grid-row: 1;
	/*IE*/
}

.flow_wrapper .group2_head {
	grid-column: 1 / 2;
	grid-row: 2 / 3;
	-ms-grid-column: 1;
	/*IE*/
	-ms-grid-row: 3;
	/*IE*/
}

.flow_wrapper .group3-1_head {
	grid-column: 1 / 2;
	grid-row: 3 / 4;
	-ms-grid-column: 1;
	/*IE*/
	-ms-grid-row: 5;
	/*IE*/
}

.flow_wrapper .group3-2_head {
	grid-column: 1 / 2;
	grid-row: 4 / 5;
	-ms-grid-column: 1;
	/*IE*/
	-ms-grid-row: 7;
	/*IE*/
}

.flow_wrapper .group3-3_head {
	grid-column: 1 / 2;
	grid-row: 5 / 6;
	-ms-grid-column: 1;
	/*IE*/
	-ms-grid-row: 9;
	/*IE*/
}

.flow_wrapper .group3-4_head {
	grid-column: 1 / 2;
	grid-row: 6 / 7;
	-ms-grid-column: 1;
	/*IE*/
	-ms-grid-row: 11;
	/*IE*/
}

.flow_wrapper .group4_head {
	grid-column: 1 / 3;
	grid-row: 7 / 8;
	-ms-grid-column: 1;
	/*IE*/
	-ms-grid-column-span: 3;
	-ms-grid-row: 13;
	/*IE*/
}

.flow_wrapper .group1_body {
	grid-column: 2 / 3;
	grid-row: 1 / 2;
	-ms-grid-column: 3;
	-ms-grid-row: 1;
}

.flow_wrapper .group2_body {
	grid-column: 2 / 3;
	grid-row: 2 / 3;
	-ms-grid-column: 3;
	-ms-grid-row: 3;
}

.flow_wrapper .group3-1_body {
	grid-column: 2 / 3;
	grid-row: 3 / 4;
	-ms-grid-column: 3;
	-ms-grid-row: 5;
}

.flow_wrapper .group3-2_body {
	grid-column: 2 / 3;
	grid-row: 4 / 5;
	-ms-grid-column: 3;
	-ms-grid-row: 7;
}

.flow_wrapper .group3-3_body {
	grid-column: 2 / 3;
	grid-row: 5 / 6;
	-ms-grid-column: 3;
	-ms-grid-row: 9;
}

.flow_wrapper .group3-4_body {
	grid-column: 2 / 3;
	grid-row: 6 / 7;
	-ms-grid-column: 3;
	-ms-grid-row: 11;
}

/*チャート大枠cssグリッドの指定ここまで*************************************/

.group1_head,
.group2_head,
.group3-1_head,
.group3-2_head,
.group3-3_head,
.group3-4_head,
.group4_head {
	color: #ffffff;
	font-weight: bold;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	text-align: center;
}

.group1_head,
.group2_head {
	font-size: 1.3em;
	background: #666666;
}

.group3-1_head,
.group3-2_head,
.group3-3_head {
	font-size: 1em;
	background: #9c577b;
	letter-spacing: 0.1em;
}

.group3-4_head,
.group4_head {
	font-size: 1.3em;
	background: #9c577b;
	letter-spacing: 0.3em;
}

.group1_head p,
.group2_head p,
.group3-1_head p,
.group3-2_head p,
.group3-3_head p,
.group3-4_head p {
	writing-mode: vertical-rl;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	-o-writing-mode: vertical-rl;
}

.group4_head p {
	padding-left: 1em;
}

.group1_body div ul,
.group2_body div ul,
.group3-1_body div ul,
.group3-2_body div ul,
.group3-3_body div ul,
.group3-4_body div ul {
	list-style: none;
}

/**穿通group1_body flow0**************************************/

.group1_body .flow0 {
	position: relative;
}

.group1_body .flow0::before {
	content: '';
	width: 6px;
	height: 10px;
	background-color: #666666;
	position: absolute;
	top: 100%;
	left: calc(50% - 3px);
}

.group1_body .flow0::after {
	content: '';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 10px 10px 0 10px;
	border-color: #666666 transparent transparent transparent;
	position: absolute;
	top: calc(100% + 10px);
	left: calc(50% - 10px);
}

.group1_body .flow0 ul.box li {
	width: 100%;
	height: 80px;
	background: #ffffff;
	border: solid 1px #666666;
	box-sizing: border-box;
	padding: 20px 5px 5px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: center;
}

.group1_body .flow0 ul.box li img {
	width: 60%;
	max-width: 195px;
	height: auto;
}

.group1_body .flow0 ul.box li p {
	color: #666666;
	font-size: 1em;
	font-weight: bold;
}

/**グライドパス形成group2_body flow1**************************************/

.group2_body .flow1 {
	width: 100%;
	position: relative;
}

.group2_body .flow1 ul.box {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	margin-bottom: 15px;
}

.group2_body .flow1 ul.box li {
	width: 50%;
	height: 200px;
	background: #ffffff;
	border: solid 1px #9c577b;
	box-sizing: border-box;
	padding: 5px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: center;
}

.group2_body .flow1 ul.box li:first-child {
	border-right: dotted 1px #9c577b;
	position: relative;
}

.group2_body .flow1 ul.box li:last-child {
	border-left: none;
	background: #fff999;
}

.group2_body .flow1 ul.box li:first-child img {
	width: 22%;
	max-width: 25px;
	height: auto;
}

.group2_body .flow1 ul.box li:last-child img {
	width: 25%;
	max-width: 30px !important;
	height: auto;
}

.group2_body .flow1 ul.box li p {
	color: #666666;
	font-size: 1em;
	font-weight: bold;
}

.group2_body .flow1 ul.box li span.or {
	background: #666666;
	color: #ffffff;
	border-radius: 3px;
	font-weight: bold;
	width: 2em;
	padding: 2px 0;
	text-align: center;
	position: absolute;
	left: calc(100% - 1em);
	bottom: 50%;
}

.group2_body .flow1 ul.box li a {
	font-size: 1em;
	color: #009633;
	text-decoration: underline;
}


/**根管形成 group3_body flow2**************************************/

.flow_wrapper .group3-1_body,
.flow_wrapper .group3-2_body,
.flow_wrapper .group3-3_body,
.flow_wrapper .group3-4_body {
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: center;
}

.flow_wrapper .group3-1_body .flow2,
.flow_wrapper .group3-2_body .flow2,
.flow_wrapper .group3-3_body .flow2,
.flow_wrapper .group3-4_body .flow3 {
	width: 100%;
	height: auto;
}

.flow_wrapper .group3-1_body .flow2 ul.box li,
.flow_wrapper .group3-2_body .flow2 ul.box li,
.flow_wrapper .group3-3_body .flow2 ul.box li {
	width: 100%;
	height: 140px;
	position: relative;
	background: #ffffff;
	border: solid 1px #bfa301;
	box-sizing: border-box;
	padding: 5px;
	display: flex;
	flex-wrap: nowrap;
	flex-direction: column;
	justify-content: space-around;
	align-items: center;
	text-align: center;
	margin-bottom: 20px;
}

.flow_wrapper .group3-4_body .flow3 ul.box li {
	width: 100%;
	height: 260px;
	position: relative;
	background: #ffffff;
	border: solid 1px #bfa301;
	box-sizing: border-box;
	padding: 5px;
	display: flex;
	flex-wrap: wrap;
	flex-direction: row;
	justify-content: space-around;
	align-items: flex-start;
	text-align: center;
	margin-bottom: 20px;
}

.flow_wrapper .group3-1_body .flow2 ul.box li::before,
.flow_wrapper .group3-2_body .flow2 ul.box li::before,
.flow_wrapper .group3-3_body .flow2 ul.box li::before,
.flow_wrapper .group3-4_body .flow3 ul.box li::before {
	content: '';
	width: 6px;
	height: 10px;
	background-color: #bfa301;
	position: absolute;
	bottom: -10px;
	left: calc(50% - 3px);
}

.flow_wrapper .group3-1_body .flow2 ul.box li::after,
.flow_wrapper .group3-2_body .flow2 ul.box li::after,
.flow_wrapper .group3-3_body .flow2 ul.box li::after,
.flow_wrapper .group3-4_body .flow3 ul.box li::after {
	content: '';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 10px 10px 0 10px;
	/*上右下左*/
	border-color: #bfa301 transparent transparent transparent;
	position: absolute;
	bottom: -20px;
	left: calc(50% - 10px);
}

.flow_wrapper .group3-1_body .flow2 ul.box li img.sp_only,
.flow_wrapper .group3-2_body .flow2 ul.box li img.sp_only,
.flow_wrapper .group3-3_body .flow2 ul.box li img.sp_only {
	width: 210px;
	height: 40px;
}

.flow_wrapper .group3-4_body .flow3 ul.box li p.f_img img {
	width: 42px;
	height: auto;
}

.flow_wrapper .group3-4_body .flow3 ul.box li p.f_text {
	width: 100%;
	font-size: 15px;
	font-weight: bold;
	color: #ffffff;
	background: #bfa301;
	text-align: center;
	padding: 5px;
	margin-bottom: 5px;
}


.flow_wrapper .group3-1_body .flow2 ul.box li p.name,
.flow_wrapper .group3-2_body .flow2 ul.box li p.name,
.flow_wrapper .group3-3_body .flow2 ul.box li p.name,
.flow_wrapper .group3-4_body .flow3 ul.box li p.name {
	width: 100%;
	font-size: 12px;
	color: #bfa301;
	font-weight: bold;
	line-height: 1.2;
}

.flow_wrapper .group3-1_body .flow2 ul.box li p.name span,
.flow_wrapper .group3-2_body .flow2 ul.box li p.name span,
.flow_wrapper .group3-3_body .flow2 ul.box li p.name span,
.flow_wrapper .group3-4_body .flow3 ul.box li p.name span {
	font-size: 12px;
	font-weight: bold;
	color: #666666;
	display: block;
}

.flow_wrapper .group3-1_body .flow2 ul.box li a span,
.flow_wrapper .group3-2_body .flow2 ul.box li a span,
.flow_wrapper .group3-3_body .flow2 ul.box li a span {
	font-size: 12px;
	color: #009633;
	text-decoration: underline;
}

.flow_wrapper .group3-4_body .flow3 ul.box li p.f_img a span {
	font-size: 14px;
	color: #666666;
	font-weight: bold;
	text-decoration: underline;
	display: block;
}

.flow_wrapper .group3-4_body .flow3 ul.box li p.f_img span {
	font-size: 14px;
	color: #666666;
	font-weight: bold;
	text-decoration: none;
	display: block;
}