@charset "UTF-8";
/* CSS Document */

/*--------------------------------------------------------
　基本設定
--------------------------------------------------------*/


/*--------------------------------------------------------
　PC
--------------------------------------------------------*/

@media print, screen and (min-width: 961px){
	
	section div.section_inner{
		width: 80.2%;
		max-width: 1154px;
		margin: 0 auto;
	}
	
	section#flow div.section_inner ul li{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	
	section#flow div.section_inner ul li + li{
		margin-top: 3.8vw;
	}
	
	section#flow div.section_inner ul li div.head{
		width: 16.4%;
		position: relative;
	}
	
	section#flow div.section_inner ul li div.head span{
		width: 100%;
		height: 0;
		display: inline-block;
		position: absolute;
		top: 0;
		left: 0;
		z-index: -1;
		transition-duration: 0.5s;
		transition-property: height, opacity;
	}
	
	section#flow div.section_inner ul li div.head span.aos-animate {
		height: calc(100% + 3.8vw);
		height: calc(100% + 3.8cqw);
	}
	
	section#flow div.section_inner ul li div.head span::before{
		content: "";
		width: 0.34vw;
		width: 0.34cqw;
		max-width: 5px;
		height: calc(100% - 8px);
		display: inline-block;
		background: #f29020;
		position: absolute;
		top: 0;
		left: calc(50% - 2.5px);
		z-index: -1;
	}
	
	section#flow div.section_inner ul li div.head span::after{
		content: "";
		width: 1.73vw;
		width: 1.73cqw;
		max-width: 25px;
		height: 1.73vw;
		height: 1.73cqw;
		max-height: 25px;
		display: inline-block;
		border: 5px solid #f29020;
		border-width: 0 5px 5px 0;
		transform:rotate(45deg);
		position: absolute;
		bottom: 8px;
		left: 43.1%;
		z-index: 1;
		opacity: 0;
		transition-duration: 0.5s;
		transition-property: opacity;
	}
	
	section#flow div.section_inner ul li div.head span.aos-animate::after {
		opacity: 1;
	}
	
	section#flow div.section_inner ul li div.head h3 {
		font-family: "senobi-gothic", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
		font-size: 2.66rem;
		font-size: clamp(2.66rem, 2.08vw, 4.0rem);
		font-weight: 700;
		letter-spacing: -0.15em;
		line-height: 1;
		text-align: center;
		margin-left: -0.15em;
		color: #FFF;
		background: #f29020;
		padding: 0.3em 0;
	}
	
	section#flow div.section_inner ul li div.block{
		width: 81.3%;
		background: #fdebd5;
		border-radius: 10px;
		font-size: 1.06rem;
		font-size: clamp(1.06rem, 1.11vw, 1.6rem);
		line-height: 1;
		padding: 3em 4em;
	}
	
	section#flow div.section_inner ul li div.block.fl{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	
	section#flow div.section_inner ul li div.block div.box h4{
		font-size: 1.33rem;
		font-size: clamp(1.33rem, 1.38vw, 2.0rem);
		font-weight: 700;
		line-height: 1.3;
		letter-spacing: 0.1em;
		margin-bottom: 0.5em;
	}
	
	section#flow div.section_inner ul li div.block div.box p{
		line-height: 1.75;
		letter-spacing: 0.025em;
	}
	
	section#flow div.section_inner ul li div.block div.box p.cap{
		font-size: 87.5%;
	}
	
	section#flow div.section_inner ul li div.block div.box p + p{
		margin-top: 1em;
	}
	
	section#flow div.section_inner ul li div.block.fl div.box{
		width: 46%;
	}
	
	section#flow div.section_inner ul li div.block.fl div.box.wide{
		width: 100%;
		margin-bottom: 4.2vw;
	}
	
	section#flow div.section_inner div.graph_block {
		line-height: 0;
		margin-top: 4vw;
	}
	
	section#example {
		margin-top: 8vw;
	}
	
	section#example div.section_inner h3{
		width: 26.8%;
		font-family: "senobi-gothic", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
		font-size: 2.99rem;
		font-size: clamp(2.99rem, 3.12vw, 4.5rem);
		font-weight: 700;
		letter-spacing: -0.3em;
		line-height: 1;
		text-align: center;
		color: #FFF;
		background: #f29020;
		padding: 0.3em 0.25em 0.3em 0;
		margin-bottom: 0.58em;
	}
	
	section#example ul{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-around;
		margin-left: -1.25%;
	}
	
	section#example ul li{
		width: 48%;
		border: 1px solid #b5b5b6;
		border-radius: 6px;
		font-size: 1.06rem;
		font-size: clamp(1.06rem, 1.11vw, 1.6rem);
		line-height: 1;
		padding: 2em 4em;
		overflow: hidden;
	}
	
	section#example ul li:nth-child(n + 3){
		margin-top: 1.5em;
	}
}

@media screen and (min-width:961px) and (max-width: 1440px){
	
	section#flow div.section_inner ul li div.head span::before{
		content: "";
		left: calc(50% - 0.17vw);
		left: calc(50% - 0.17cqw);
	}
	
	section#flow div.section_inner ul li div.head span::after{
		content: "";
		border-width: 0 0.34vw 0.34vw 0;
		border-width: 0 0.34cqw 0.34cqw 0;
	}
}


/*--------------------------------------------------------
　SP
--------------------------------------------------------*/

@media screen and (max-width: 960px){
	
	section div.section_inner{
		width: 90%;
		margin: 0 auto;
	}
	
	section#flow div.section_inner ul li{
		display: block;
		position: relative;
	}
	
	section#flow div.section_inner ul li + li{
		margin-top: 12vw;
	}
	
	section#flow div.section_inner ul li div.head{
		width: 50%;
	}
	
	section#flow div.section_inner ul li div.head span{
		width: 100%;
		height: 0;
		display: inline-block;
		position: absolute;
		top: 0;
		left: 0;
		z-index: -1;
		transition-duration: 0.5s;
		transition-property: height, opacity;
	}
	
	section#flow div.section_inner ul li div.head span.aos-animate {
		height: calc(100% + 11vw);
	}
	
	section#flow div.section_inner ul li div.head span::before{
		content: "";
		width: 1vw;
		height: calc(100% - 8px);
		display: inline-block;
		background: #f29020;
		position: absolute;
		top: 0;
		left: calc(25% - 0.5vw);
		z-index: -1;
	}
	
	section#flow div.section_inner ul li div.head span::after{
		content: "";
		width: 5vw;
		height: 5vw;
		display: inline-block;
		border: 1vw solid #f29020;
		border-width: 0 1vw 1vw 0;
		transform:rotate(45deg);
		position: absolute;
		bottom: 8px;
		left: 22.2%;
		z-index: 1;
		opacity: 0;
		transition-duration: 0.5s;
		transition-property: opacity;
	}
	
	section#flow div.section_inner ul li div.head span.aos-animate::after {
		opacity: 1;
	}
	
	section#flow div.section_inner ul li div.head h3 {
		font-family: "senobi-gothic", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
		font-size: 2.0rem;
		font-size: clamp(2.0rem, 5.54vw, 5.32rem);
		font-weight: 700;
		letter-spacing: -0.15em;
		line-height: 1;
		text-align: center;
		margin-left: -0.15em;
		color: #FFF;
		background: #f29020;
		padding: 0.3em 0;
	}
	
	section#flow div.section_inner ul li div.block{
		width: 100%;
		background: #fdebd5;
		border-radius: 10px;
		font-size: 1.3rem;
		font-size: clamp(1.3rem, 3.6vw, 3.465rem);
		line-height: 1;
		padding: 2.5em 2em;
		margin-top: 1em;
	}
	
	section#flow div.section_inner ul li div.block div.box h4{
		font-size: 1.6rem;
		font-size: clamp(1.6rem, 4.43vw, 4.256rem);
		font-weight: 700;
		line-height: 1.3;
		letter-spacing: 0.1em;
		margin-bottom: 0.3em;
	}
	
	section#flow div.section_inner ul li div.block div.box p{
		line-height: 1.75;
		letter-spacing: 0.025em;
	}
	
	section#flow div.section_inner ul li div.block div.box p.cap{
		font-size: 87.5%;
	}
	
	section#flow div.section_inner ul li div.block div.box p + p{
		margin-top: 1em;
	}
	
	section#flow div.section_inner ul li div.block div.box + div.box{
		width: 100%;
		margin-top: 8vw;
	}
	
	section#flow div.section_inner div.graph_block {
		overflow: hidden;
		line-height: 0;
		margin-top: 4vw;
		padding-bottom: 1.5vw;
	}
	
	section#flow div.section_inner div.graph_block figure{
		width: 200%;
	}
	
	section#example {
		margin-top: 15vw;
	}
	
	section#example div.section_inner h3{
		width: 50%;
		font-family: "senobi-gothic", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
		font-size: 2.2rem;
		font-size: clamp(2.2rem, 6.09vw, 5.852rem);
		font-weight: 700;
		letter-spacing: -0.3em;
		line-height: 1;
		text-align: center;
		color: #FFF;
		background: #f29020;
		padding: 0.3em 0.25em 0.3em 0;
		margin-bottom: 0.58em;
	}
	
	section#example ul{
		display: block;
	}
	
	section#example ul li{
		width: 100%;
		border: 1px solid #b5b5b6;
		border-radius: 1.2vw;
		font-size: 1.3rem;
		font-size: clamp(1.3rem, 3.6vw, 3.465rem);
		line-height: 1;
		padding: 2em 1.5em;
		overflow: hidden;
	}
	
	section#example ul li + li{
		margin-top: 5vw;
	}
}