@charset "utf-8";
/* CSS Document */
/*============================
01.共通設定
============================*/
@font-face {
	font-family: 'ZenKaku_black';
 	src: url('../font/ZenKakuGothicNew-Black.ttf') format('truetype');
	font-display: swap;
}
.pc_block{
	display: none;
}
.pc_block1080,.pc_block1280,.pc_block1366{
	display: none;
}
.pc_block2{
	display: none;
}
.sp-tab_block{
	display: block;
}
.tab_block{
	display: none;
}
.sp_block{
	display: block;
}
.header,.footer,.container{
	min-width: auto;
}
*{
	box-sizing: border-box;
}
main{
	box-sizing: border-box;
	padding-top: 81px;
	position: relative;
	font-style: normal;
}
main p{
	transform: rotate(0.06deg);
}
a{
	text-decoration: none;
	/*transform: rotate(0.06deg);*/
}
strong{
	font-weight: bold;
}

/*謎の空白削除*/
body>img{
	display: none;
}
body.scroll_lock{
	overflow: hidden;
}
.arrow_box{
	background-color: white;
	border-radius: 20px;
	border: none;
	display: inline-block;
	width: 29px;
	height: 29px;
	position: relative;
}
.arrow{
	position: relative;
}
.arrow::before,
.arrow::after{
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    content: "";
    vertical-align: middle;
}
.arrow::after{
	left: auto;
	right: 20px;
	width: 8px;
	height: 8px;
    border-top: 3px solid white;
    border-right: 3px solid white;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
	top:2px;
}
h2,h3,h4{
	transform: rotate(0.06deg);
}
main img{width: 100%;height: auto;}
@media screen and (min-width: 768px) {
	.sp_block{
		display: none;
	}
	.pc_block{
		display: block;
	}
	.pc_blockmin1600{
		display: none;
	}
	.tab_block{
		display: block;
	}
	.header .container{
		padding-right: 0;
		padding-left: 0;
	}
	.nav_area{
		padding-right: 0;
		padding-left: 0;
	}
	.nav_list a{
		padding: 0;
		font-size: 15px;
	}
	main{
		padding-top: 101px;
	}
}
@media screen and (min-width: 810px) {
	main{
		padding-top: 189px;
	}
}
@media screen and (min-width: 1080px) {
	.pc_block1080{
		display: block;
	}
	.sp-tab_block{
		display: none;
	}
	.tab_block{
		display: none;
	}
}
@media screen and (min-width: 1280px) {
	.pc_block1280{
		display: block;
	}
}

/*============================
02.main_共通
============================*/
main{
	font-family: source-han-sans-japanese, sans-serif;
	font-weight: 500;
}
main section>div.inner{
	width: calc(93% - 2px);
	max-width: 1000px;
	margin-right: auto;
	margin-left: auto;
}
@media screen and (min-width: 1080px) {
	main section > div.inner{
		width: 100%;
	}
}
/*============================
02.MV
============================*/
.mv{
	margin-top: 60px;
	position: relative;
}
.mv::before{
	content: "";
	background-color: #F5A14E;
	display: block;
	width: 100%;
	padding-bottom: 92%;
	position: absolute;
	top: 0;
}
.mv>.inner{
	position: relative;
	width: calc(87% - 1px);
}
.mv .yellow_box_text{
	background-color: #FFF000;
	text-align: center;
	box-shadow: 10px 10px 10px #00000035;
	padding-top: 10px;
	padding-bottom: 22px;
	border-radius: 16px;
	width: 69%;
	max-width: 692px;
	margin-right: auto;
	margin-left: auto;
	position: absolute;
	left: 0;
	right: 0;
	margin-top: -51px;
	z-index: 3;
}
.mv .yellow_box_text::before{
	content: "";
	background-color: #FFF000;
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	border-radius: 16px;
}
.mv .yellow_box_text::after{
	content: "";
	position: absolute;
	display: block;
	width: 7vw;
	padding-bottom: 23%;
	left: 0;
  	right: 0;
  	margin-left: auto;
  	margin-right: auto;
	margin-bottom: -12%;
  	bottom: 0;
	background-image: url("../images/path.webp");
	background-repeat: no-repeat;
	background-size: contain;
	z-index: -1;
	filter: drop-shadow(10px 10px 10px #00000035);
	transform: rotate(9deg);
}
.mv .yellow_box_text p {
	font-weight: 900;
}
.mv .yellow_box_text p:first-of-type{
	font-size: min(6.13vw,67px);
	letter-spacing: 0.022em;
	text-decoration: underline 4px dotted #000000;
	text-underline-offset:6px;
}
.mv .yellow_box_text p:last-of-type{
	margin-top: 14px;
	font-size: min(4.53vw,52px);
}
.mv .inner .img_box{
	padding-top: 15%;
}
.mv .inner .img_box:last-of-type{
	margin-top: 6px;
	padding-top: 0;
	max-width: 750px;
 	margin-left: auto;
	margin-right: auto;
}
@media screen and (min-width: 768px) {
	.mv{
		margin-top: 66px;
	}
	.mv::before {
		padding-bottom: 94%;
	}
	.mv .inner .img_box{
		padding-top: 18%;
		max-width: 928px;
		margin-left: auto;
		margin-right: auto;
	}
	.mv .yellow_box_text{
		padding-top: 14px;
		padding-bottom: 30px;
		margin-top: -65px;
	}
	.mv .yellow_box_text::after {
		bottom: 0;
		transform: rotate(10deg);
	}
	.mv .yellow_box_text p:first-of-type{
		text-underline-offset: 11px;
	}
	.mv .inner .img_box:last-of-type{
		margin-top: 8px;
	}
}
@media screen and (min-width: 769px) {
	.mv{
		margin-top: 146px;
	}
}
@media screen and (min-width: 840px) {
	.mv::before {
		padding-bottom: min(calc(91% - 1%),975px);
	}
}
@media screen and (min-width: 928px) {
  .mv::before {
    padding-bottom: calc(88% - 1%);
  }
}
@media screen and (min-width: 999px) {
  .mv::before {
    padding-bottom: calc(85% - 1%);
  }
}
@media screen and (min-width: 1080px) {
	.mv::before {
		padding-bottom: 0;
		height: 896px;
	}
	.mv .yellow_box_text{
		border-radius: 50px;
		margin-top: -106px;
	}
	.mv .yellow_box_text::before {
		border-radius: 50px;
	}
	.mv .yellow_box_text::after{
		width: 80px;
		padding-bottom: 148px;
	}
	.mv .yellow_box_text p:first-of-type{
		text-decoration: underline 9px dotted #000000;
		text-underline-offset: 14px;
	}
	.mv .yellow_box_text p:last-of-type{
		margin-top: 30px;
	}
	.mv .inner .img_box{
		padding-top: 14%;
	}
	.mv .inner .img_box:last-of-type{
		margin-top: 0;
	}
}
@media screen and (min-width: 1200px) {
	.mv::before {
		padding-bottom: 0;
		height: 904px;
	}
}
@media screen and (min-width: 1280px) {
	.mv{
		margin-top: 110px;
	}
}
/*============================
03.イントロ
============================*/
.intro{
	margin-top: 16px;
}
.intro .point_list{
	display: flex;
	text-align: center;
	justify-content: space-between;
	width: calc(67% + 1px);
	margin-left: auto;
	margin-right: auto;
}
.intro .point_list li{
	line-height: 1.32;
	width: 44%;
	max-width: 320px;
	background-image: url("../images/intro_point-bgi.webp");
	background-size: cover;
	background-repeat: no-repeat;
	padding-top: 9%;
	padding-bottom: 10%;
  	font-size: 14px;
	font-size: min(3.73vw,42px);
	font-weight: 900;
	text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.1);
}
.intro .point_list li:nth-of-type(2){
	padding-top: 13%;
}
.intro .point_list li:nth-of-type(3){
	padding-top: 10%;
	font-size: min(3.73vw,46px);
}
.intro .point_list li span{
	font-size: min(3vw,46px);
}
.intro .attention{
	margin-top: 15px;
	font-size: min(2.67vw,27px);
	line-height: 1.52;
	text-align: center;
	display: block;
}
.intro .img_box{
	margin-top: 50px;
}
.intro .explanation{
	margin-top: 16px;
	text-align: center;
	line-height: 1.76;
	font-size: min(3.33vw,37px);
}
.intro .explanation .fw{
	font-weight: bold;
}
.intro .explanation .cc{
	color: #FF0000;
	text-decoration: underline;
}
.intro span.attention{
	margin-top: 10px;
}

@media screen and (min-width: 768px) {
	.intro{
		margin-top: 56px;
	}
	.intro .point_list{
		max-width: 700px;
		width: 100%;
	}
	.intro .point_list li{
		font-size: 42px;
		width: 100%;
	}
	.intro .point_list li:first-of-type{
		padding-top: 11%;
	}
	.intro .point_list li:nth-of-type(2){
		padding-top: 15%;
	}
	.intro .attention{
		margin-top: 42px;
	}
	.intro .img_box{
		margin-top: 100px;
	}
	.intro .explanation{
		margin-top: 48px;
	}
	.intro .explanation .cc{
		text-decoration: underline solid 2px;
	}
	.intro .red_rine{
		margin-top: 60px;
		border-width: 2px;
	}
	.intro span.attention{
		margin-top: 20px;
	}
}
.station{
	background-color: #FFF9D9;
	margin-top: min(calc(5% + 3px),74px);
	padding-top: min(calc(7% - 1px),100px);
	padding-bottom: min(calc(10% - 1px),118px);
}
.station h2{
	text-align: center;
	background-color: #EC8A29;
	color: white;
	font-weight: 900;
	font-size: min(3.73vw,38px);
	line-height: 1.60;
	letter-spacing: 0.08em;
	padding-top: min(calc(3% - 0.35px),13px);
	padding-bottom: min(calc(3% - 0.35px),13px);
}
.station h2 span{
	font-size: min(5.33vw,54px);
}
.station .white_box{
	background-color: white;
	padding-top:calc(4% + 2px);
	padding-bottom: calc(7% - 1px);
	margin-top: 7%;
	border-radius: 10px;
}
.station .white_box h3{
	text-align: center;
	color: #EC8A29;
	letter-spacing: 0.1em;
	font-size: min(3.73vw,16px)
}

.station .flex_box{
	margin-top: 13px;
	width: 77%;
	max-width: 932px;
	margin-left: auto;
	margin-right: auto;
	display: flex;
	flex-wrap: wrap;
	/*gap: 0 26px;*/
}
.station .flex_box li{
	line-height: 1.4;
	font-size: min(3.2vw,15px);
	width: 50%;
	max-width: 165px;
}
.station .red_rine{
	margin-top: 25px;
	border: solid 1px #FF0000;
	padding-top: 3%;
	padding-bottom: 3%;
	position: relative;
}
.station .red_rine span{
	background-color: #FF0000;
	color: white;
	font-size: min(5.33vw,50px);
	border-radius: 63%;
	width: 10%;
	text-align: center;
	padding-top: 2%;
	padding-bottom: 2%;
	position: absolute;
	margin-top: auto;
	margin-bottom: auto;
	display: block;
	top: 12%;
	left:6%;
}
.station .red_rine p{
	color: #FF0000;
	font-size: min(2.13vw,27px);
	line-height: 1.52;
	padding-left: 19%;
}
@media screen and (min-width: 768px) {
	.station .white_box{
		padding-top: 25px;
		padding-bottom: 38px;
	}
	.station .white_box h3{
		font-size: min(3.65vw,32px);
		font-weight: bold;
	}
	.station .flex_box{
		margin-top: 23px;
		width: 81%;
	}
	.station .flex_box li{
		font-size: min(3.26vw,30px);
		width: auto;
		max-width: 100%;
		min-width: 275px;
	}
}

@media screen and (min-width: 1080px) {
	.station h2{

	}
	.station .flex_box{
		width: 100%;
		gap: 0;
	}
	.station .flex_box li{
		min-width: 300px;
	}
	.station .flex_box li.pl{
		padding-left: 30px;
	}
	.station .red_rine{
		margin-top: 52px;
		border-width: 2px;
	}
}
@media screen and (min-width: 1280px) {
	.station .red_rine span{
		width:87px;
		height: 87px;
		font-size: 79px;
    	display: flex;
    	align-items: center;
    	justify-content: center;
		top: 28px;
  		left: 20px;
		padding-top: 0;
		padding-bottom: 6px;
	}
	.station .red_rine p{
		padding-left: 120px;
		font-size: 27px;
	}
}

/*============================
04.ステップ
============================*/
.step{
	padding-top: 30px;
	padding-bottom: 70px;
	background-color: #F5A14E;
}
.step h2{
	color: #F5A14E;
	background-color: white;
	padding-top: 3%;
	padding-bottom: 3%;
	font-weight: 900;
	font-size: min(4.53vw,50px);
	text-align: center;
	border-radius: 30px;
}
.step .flow_box{
	margin-top: 15px;
}
.step .flow_box .step_box:nth-of-type(n+2){
	padding-top: 23px;
	margin-top: 23px;
	border-top: white 5px dotted;
}
.step .flow_box .title_block ul{
	display: flex;
	justify-content: space-between;
}
.step .flow_box .title_block ul li.text_block{
	color: white;
	width: 67%;
}
.step .flow_box .title_block ul li.text_block .step_number{
	background-image: url("../images/step-number_img.webp");
	background-repeat: no-repeat;
	display: block;
	background-size: cover;
	text-align: center;
	color: black;
	font-weight: 900;
	padding-top: 8%;
	padding-bottom: 23%;
	width: 36%;
	position: relative;
}
.step .flow_box .title_block ul li.text_block .step_number span:first-of-type{
	display: block;
	padding-right: 6px;
	font-size: min(2.67vw,33px);
	margin-top: -4px;
}
.step .flow_box .title_block ul li.text_block .step_number span:last-of-type{
	position: absolute;
	left: 0;
	right: 4px;
	display: block;
	font-size: min(9.6vw,72px);
	font-family: 'ZenKaku_black';
	top:23%;
}
.step .flow_box .title_block ul li.text_block h3{
	line-height: 1.51;
	font-weight: 900;
	letter-spacing: 0.11em;
	margin-top: 8px;
	font-size: min(5.87vw,66px);
	text-shadow: 2px 1px 0px #F5A14E;
	text-decoration: underline;
	text-decoration-thickness:3px;
	text-underline-offset:6px;
}
.step .flow_box .step_detail{
	background-color: #FFF9D9;
	border-radius: 20px;
	padding-top: 20px;
	padding-bottom: 30px;
	margin-top: 15px;
}
.step .flow_box .step_detail ul.step_list{
	width: calc(79% + 1px);
	margin-left: calc(15% + 1px);
	margin-right: auto;
}
.step .flow_box .step_detail ul.step_list li{
	font-size: min(2.93vw,31px);
	padding-bottom: 27px;
	position: relative;
}

.step .flow_box .step_detail ul.step_list>li::before{
	content: "";
	display: block;
	position: absolute;
	width: 6%;
  	padding-bottom: 6%;
	border:solid 3px #F5A14E;
	border-radius: 63%;
	background-color: white;
	top:10px;
	left: -12%;
	z-index: 3;
}
.step .flow_box .step_two .step_detail ul.step_list>li::before{
	top: 0;
}
.step .flow_box .step_detail ul.step_list>li:nth-of-type(n+2)::before{
	top:2px;
}
.step .flow_box .step_detail ul.step_list>li:last-of-type::before{
	background-color: #F5A14E;
}
.step .flow_box .step_detail ul.step_list>li::after{
	content: "";
	width: 2.5px;
	background-color: #F5A14E;
	display: block;
	height: 50%;
	position: absolute;
	top:0;
	left:-8.5%;
}
.step .flow_box .step_detail ul.step_list>li:last-of-type::after{
	content: none;
}
.step .flow_box .step_detail ul.step_list li:last-of-type{
	padding-bottom: 0;
}
/*.step .flow_box .step_detail ul.step_list li:nth-of-type(n+2){
	padding-top: 27px;
}*/
.step .flow_box .step_detail ul.step_list li p{
	line-height: 1.75;
	font-weight: bold;
}
.step .flow_box .step_detail ul.step_list li span.cc{
	color: #F5A14E;
	font-weight: bold;
}
.step .flow_box .step_detail ul.step_list li span.attention{
	font-size: min(2.63vw,28px);
	line-height: 1.52;
	display: block;
	font-weight: normal;
	margin-top: 10px;
}
/*STEP1*/
.step .flow_box .step_one .title_block ul{
	width: 92%;
	margin-left: 3%;
	margin-right: auto;
	position: relative;
}
.step .flow_box .step_one .title_block ul li.img_block{
	width: calc(33% + 1px);
	position: absolute;
	right: 0;
	margin-right: 7%;
	bottom: 0;
	margin-bottom: -4px;
}
.step .flow_box .step_one .step_detail ul.step_list>li:first-of-type::after {
	top:10px;
	height: 100%;
}
.step .flow_box .step_one .step_detail ul.step_list li span.attention{
	text-indent: -1rem;
	padding-left: 1rem;
}
.step .flow_box .step_one .step_detail ul.step_list li span.attention:last-of-type{
	margin-top: 0;
}
/*STEP2*/
.step .flow_box .step_two .title_block ul{
	align-items: end;
}
.step .flow_box .step_two .title_block ul li.text_block{
	margin-left: 3%;
}
.step .flow_box .step_two .title_block ul li.img_block{
width: 39%;
  position: absolute;
  right: 0;
  margin-right: 10%;
}
.step .flow_box .step_two .step_detail ul.step_list>li:last-of-type::before{
	top:-4px;
}
.step .flow_box .step_two .step_detail ul.step_list>li:first-of-type::after {
	top:10px;
	height: 100%;
}
.step .flow_box .step_two .step_detail ul.step_list>li:nth-of-type(2)::after{
	height: 100%;
}
.step .flow_box .step_two .step_detail .img_box{
	margin-top: 16px;
}
.step .flow_box .step_two .step_detail .fc{
	font-size: min(2.13vw,26px);
	display: inline-block;
	margin-left: 15px;
}


.step .flow_box .step_two .step_detail ul.step_list li:last-of-type .flow_box ol li{
	line-height: 1.72;
	padding-bottom: 15px;
	position: relative;
	padding-left: 6%;
	border-bottom: dotted 2px black;
}
.step .flow_box .step_two .step_detail ul.step_list li:last-of-type .flow_box ol li:nth-of-type(n+2){
	margin-top: 13px;
}
.step .flow_box .step_two .step_detail ul.step_list li:last-of-type .flow_box ol li:last-of-type{
	padding-bottom: 0;
	border-bottom: none;
}
.step .flow_box .step_two .step_detail ul.step_list li:last-of-type .flow_box ol li::before{
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
}
.step .flow_box .step_two .step_detail ul.step_list li:last-of-type .flow_box ol li:first-of-type::before{
	content: "①";
}
.step .flow_box .step_two .step_detail ul.step_list li:last-of-type .flow_box ol li:nth-of-type(2)::before{
	content: "②";
}
.step .flow_box .step_two .step_detail ul.step_list li:last-of-type .flow_box ol li:nth-of-type(3)::before{
	content: "③";
}
.step .flow_box .step_two .step_detail ul.step_list li:last-of-type .flow_box ol li:nth-of-type(4)::before{
	content: "④";
}
.reserve_button,.scroll_button{
	display: block;
	background-image: linear-gradient(114deg, rgba(255, 255, 123, 1) 10%, rgba(255, 231, 49, 1) 40%, rgba(255, 208, 41, 1) 100%, rgba(255, 231, 49, 0.75) 100%);
	border:solid 4px #F5A14E;
	color: black;
	text-align: center;
	padding-top: 5%;
	padding-bottom: 5%;
	font-weight: 900;
	letter-spacing: 0.045em;
	font-size: min(5.33vw,26px);
	position: relative;
  	bottom: 0;
  	width: 100%;
	z-index: 4;
}
.reserve_button{
	margin-right: auto;
	margin-left: auto;
	margin-top: 128px;
	border: solid 4px #F5A14E;
}
.step .reserve_button{
	border-radius: 12px;
	padding: 0;
	height: 208px;
	line-height: 200px;
	display: none;
}
.reserve_button>span{
	position: absolute;
	background-color: black;
	display: block;
	width: 6%;
	padding-bottom: 6%;
	top: 30%;
	border-radius: 70%;
	right: 0;
	margin-right: 16%;
}
.step .reserve_button > span{
	top:45%;
	margin-right: 13%;
}

.step .flow_box .attention_block{
	color: red;
	margin-top: 9%;
}
.step .flow_box .attention_block ul.attention_list li{
	padding-bottom: 0;
	font-size: 10px;
	line-height: 1.6;
}

.triangle {
	background: #ffffff;
	height: calc(tan(29deg) * 43px / 2);
	width: 13px;
	clip-path: polygon(50% 0, 100% 100%, 0 100%);
	display: block;
	position: absolute;
	transform: rotate(90deg);
	top: 0;
	right: -2px;
	bottom: 0;
	left:0;
	margin-top: auto;
	margin-right: auto;
	margin-bottom: auto;
	margin-left: auto;
}
@media screen and (min-width: 768px) {
	.step{
		padding-top: 100px;
	}
	.step h2{
		border-radius: 51px;
	}
	.step .flow_box{
		margin-top: 60px;
	}
	.step .flow_box .title_block ul li.text_block h3{
		text-decoration-thickness: 5px;
  		text-underline-offset: 13px;
	}
	.step .flow_box .step_detail{
		margin-top: 44px;
		padding-top: 58px;
		padding-bottom: 44px;
	}
	.step .flow_box .step_detail ul.step_list li{
		padding-bottom: 74px;
	}
	.step .flow_box .step_one .step_detail ul.step_list > li:first-of-type::after,.step .flow_box .step_two .step_detail ul.step_list > li:first-of-type::after{
		width: 5px;
		left: -8.9%;
	}
	.step .flow_box .title_block ul li.text_block .step_number span:last-of-type{
		top: 29%;
	}
	.step .flow_box .step_box:nth-of-type(n+2){
		padding-top: 68px;
		margin-top: 68px;
	}
	.step .flow_box .step_two .title_block ul{
		position: relative;
	}
	.step .flow_box .step_two .step_detail .img_box{
		margin-top: 32px;
	}
	.step .flow_box .step_two .title_block ul li.img_block{
		max-width: 482px;
		width: 57%;
		margin-right: 0;
	}
	.step .flow_box .step_detail ul.step_list .attention_block ul.attention_list{
		margin-top: 32px;
	}
	.step .flow_box .step_detail ul.step_list .attention_block ul.attention_list li{
		padding-bottom: 0;
		font-size: 19px;
	}
}
@media screen and (min-width: 1080px) {
	.step{
		padding-top: 156px;
	}
	.step .flow_box .step_detail{
		padding-bottom: 110px;
		margin-top: 70px;
	}
	.step .flow_box .step_detail ul.step_list>li::before{
		border-width: 5px;
		left: -11.2%;
	}
	.step .flow_box .step_detail ul.step_list>li::after{
		width: 5px;
		left: -62px;
	}
	/*.step .flow_box .title_block ul li.text_block .step_number{
		max-width: 174px;
	}*/
	  .step .flow_box .step_one .step_detail ul.step_list > li:first-of-type::after, .step .flow_box .step_two .step_detail ul.step_list > li:first-of-type::after{
		  left:-7.9%;
	}
	.step .flow_box .title_block ul li.text_block .step_number span:first-of-type,.step .flow_box .step_three .title_block ul li.text_block .step_number span:first-of-type{
		margin-top: -15px;
	}
	.step .flow_box .step_one .title_block ul li.text_block .step_number span:last-of-type{
		font-size: 108px;
		right: 16px;
	}
	.step .flow_box .step_two .title_block ul li.text_block .step_number span:last-of-type{
		font-size: 104px;
		right: 16px;
	}
	.step .flow_box .title_block ul li.text_block h3{
		letter-spacing: 0.022em;
		margin-top: 32px;
	}
	.step .flow_box .step_detail ul.step_list{
		max-width: 791px;
		width: 100%;
		margin-right: 92px;
		margin-left: 146px;
	}
	.step .flow_box .step_detail ul.step_list li:last-of-type{
		max-width: 706px;
	}
	.step .flow_box .step_two .step_detail ul.step_list li:last-of-type .flow_box ol{
		font-weight: bold;
	}
	.step .flow_box .step_two .step_detail ul.step_list li:last-of-type .flow_box ol li{
		padding-bottom: 36px;
	}
	.step .flow_box .step_two .step_detail ul.step_list li:last-of-type .flow_box ol li:nth-of-type(n+2){
		margin-top: 36px;
		font-size: 33px;
	}
	.step .flow_box .step_two .step_detail ul.step_list li:last-of-type .flow_box ol:first-of-type li p{
		position: relative;
		font-size: 33px;
		max-width: 676px;
	}
	.step .flow_box .step_two .step_detail ul.step_list li:last-of-type .flow_box ol li span.attention{
		font-size: 25px;
		display: inline-block;
		width: 66%;
		text-align: right;
		position: absolute;
		right: 0;
	}
	.step .flow_box .step_one .step_detail ul.step_list li span.attention{
		font-size: 26px;
	}
}
@media screen and (min-width: 1280px) {
	.step{
		padding-bottom: 140px;
	}
	.step .flow_box .step_box:nth-of-type(n+2){
		border-top: white 8px dotted;
		margin-top: 94px;
		padding-bottom: 94px;
	}
	.step .flow_box .step_box:last-of-type{
		padding-bottom: 0;
	}
	.step .flow_box .step_detail ul.step_list{
		max-width: 825px;
	}
	.step .flow_box .step_detail ul.step_list>li::before{
		top: 32px;
	}
	.step .flow_box .step_detail ul.step_list>li::after {
		left: -61px;
	}
	.step .flow_box .step_one .step_detail ul.step_list>li:first-of-type::after {
		top:36px;
		left: -7.9%;
	}
	.step .flow_box .step_two .step_detail ul.step_list>li:first-of-type::after {
		top:38px;
	}
	.step .flow_box .step_detail ul.step_list li:last-of-type{
		max-width: 767px;
	}
	.step .flow_box .step_detail ul.step_list li p{
	font-size: 33px;
	}
	.step .flow_box .step_two .title_block ul li.img_block{
		margin-right: 14px;
	}
	.step .flow_box .step_two .step_detail ul.step_list li:last-of-type .flow_box ol li span.attention {
		padding-right: 16px;
	}
	.step .flow_box .step_detail ul.step_list .attention_block ul.attention_list li{
		font-size: 26px;
	}
	.step .reserve_button{
		display: block;
		max-width: 758px;
		font-size: 40px;
		text-align: left;
		padding-left: 165px;
		position: relative;
		background-image: linear-gradient(114deg, rgb(255, 255, 123) 30%, rgb(255, 231, 49) 80%, rgb(255, 208, 41) 90%, rgba(255, 231, 49, 0.85) 100%);
		border-radius: 25px;
	}
	.step .reserve_button::after{
		content: "";
		display: block;
		position: absolute;
		width: 149px;
		height: 232px;
		background-size: contain;
		background-image: url("../images/pc_footer_button-img.webp");
		right: 0;
		bottom: 0;
	}
	.step .reserve_button > span{
		width: 40px;
		height: 40px;
		padding-bottom: 0;
		top: 0;
    	bottom: 0;
    	margin-top: auto;
		margin-right: 21%;
    	margin-bottom: auto;
	}
	.step .reserve_button > span .triangle{
		height: calc(tan(35deg) * 46px / 2);
		width: 16px;
	}
}
@media screen and (min-width: 1900px) {
	.step .reserve_button > span{
		margin-right: 20%;
	}
}
/*============================
05.追従ボタン
============================*/
.scroll_button{
	position: fixed;
}
.scroll_button.active{
	opacity: 1;
}
/*============================
06.フッター/コピーライト
============================*/
footer{
	padding-top: 20px;
	padding-bottom: 20px;
	text-align: center;
	font-size: 12px;
}
@media screen and (min-width: 1280px) {
	.scroll_button{
		background:none;
		width: 200px;
		height: 200px;
		font-size: 24px;
    	right: 25px;
		border: none;
		line-height: 1.31;
		background-image: url("../images/pc_scrollbutton.webp");
		background-size: 100%;
    	background-repeat: no-repeat;
		padding-top: 48px;
		padding-right: 12px;
	}
	.reserve_button > span{
		width: 30px;
		height: 30px;
		left: 0;
    	right: 0;
    	margin-left: auto;
    	margin-right: auto;
    	bottom: 0;
    	top: 0;
    	margin-top: auto;
		margin-bottom: 49px;
	}
	footer{
		padding-top: 40px;
		padding-bottom: 40px;
	}
}
@media screen and (min-width: 1920px) {
	.scroll_button{
		right: 53px;
  		bottom: 53px;
		width: 200px;
		height: 200px;
		font-size: 28px;
	}
	.reserve_button > span{
		right: 10px;
		margin-bottom: 40px;
	}
}
/*============================
モーダルウィンドウ
============================*/
section.modal_box{
	width: 85%;
	max-width: 1280px;
	border: none;
	background-color: #E6F5D4;
	padding-top: min(calc(11% + 1px),80px);
	padding-bottom: min(11%,80px);
}
section.modal_box .outer .close_button{
	width: 6%;
	max-width: 40px;
	position: absolute;
	top:0;
	right: 0;
	margin-top: min(3%,30px);
	margin-right: min(3%,30px);
	cursor: pointer;
}
section.modal_box .flex_box{
	max-width: 1045px;
	margin-right: auto;
	margin-left: auto;
}
section.modal_box .flex_box > li:first-of-type{
	width: calc(83% - 1px);
}
section.modal_box .flex_box>li:last-of-type{
	width: 85%;
	margin-top: 5%;
	margin-right: auto;
	margin-left: auto;
}
@media screen and (min-width: 1080px) {
	section.modal_box{
		width: 93%;
		padding-top: 40px;
	    padding-bottom: 40px;
		border-radius: 20px;
	}
	section.modal_box .flex_box{
		margin-top: 0;
	}
	section.modal_box .flex_box > li:first-of-type{
		margin-right: 0;
		margin-left: 0;
		width: 50%;
		max-width: 595px;
	}
	section.modal_box .flex_box > li:last-of-type{
		margin-top: 40px;
		margin-left: 60px;
	}
	.modal_box .flex_box > li:last-of-type .station_list li span.station_name{
		margin-top: 10px;
		line-height: 1.3;
	}
}
@media screen and (min-width: 1280px) {
	.modal_box .flex_box > li:last-of-type .station_list span{
		line-height: 1.4;
	}
}
@media screen and (min-width: 1300px) and ( min-height:768px) {
	section.modal_box{
		padding-top: 80px;
		padding-bottom: 80px;
	}
	section.modal_box .flex_box > li:first-of-type{
		width:100%;
	}
	/*.modal_box .flex_box > li:last-of-type .station_list li span.station_name{
		line-height: 1.1;
	}*/
}
@media screen and (min-width: 1300px) and ( min-height:800px) {
	
}

