@media screen  and (max-width: 593px){
	body{
		
		font-family:"Meiryo", "Minion Pro", "DFPHSMincho-W3", "MS PGothic", Verdana, Arial, Helvetica, sans-serif;
	}
		.main_box{
			width: 100%;
			margin: 0 auto;
			box-sizing: border-box;
			padding: 0 15px;
		}
		.top_pc{
			display: none;
		}
		.top_sp{
			display: block;
		}
		.top_sp{
			width: 100%;
		}
		.img_box{
			margin-bottom: 1vw;
		}
			.img_box img{
				width: 100%;
			}
		.conversation{
			width: 96%;
			margin: 0 auto;
			margin-bottom: 5vw;
		}
			.red{
				color: red;
			}
			.persontext_line{
				background-color: #ffff00;
			}
			.personA{
				display: flex;
				justify-content: start;
				margin-bottom: 4vw;
			}
			.personB{
				display: flex;
				justify-content: end;
				margin-bottom: 4vw;
			}
				.personPic img{
					width: 30vw;
				}
				.personB .personPic img {
					width: 27vw;
				}
					.personA_text{
						max-width: 56vw;
						border: 1vw solid #ffc000;
						background-color: #fff9e7;
						margin-left: 4vw;
						margin-top: 3vw;
						padding: 5px 8px;
						/* line-height: 55px; */
						font-size: 14px;
						position: relative;
						border-radius: 10px;
					}
						.personA_text:before{
							content: '';
							width: 0;
							height: 0;
							border: solid;
							position: absolute;
							top: 2vw;
							left: -8vw;
							border-width: 3vw 8vw 3vw 0;
							border-color: transparent #ffc000 transparent transparent;
						}
						.personA_text:after{
							content: '';
							width: 0;
							height: 0;
							border: solid;
							position: absolute;
							top: 2vw;
							left: -6vw;
							border-width: 3vw 8vw 3vw 0;
							border-color: transparent #fff9e7 transparent transparent;
						}
					.personB_text{
						max-width: 56vw;
						border: 1vw solid #ed7d31;
						background-color: #fdf3ed;
						margin-right: 5vw;
						margin-top: 3vw;
						padding: 5px 8px;
						/* line-height: 55px; */
						font-size: 14px;
						position: relative;
						border-radius: 10px;
					}
						.personB_text:before{
							content: '';
							width: 0;
							height: 0;
							border: solid;
							position: absolute;
							top: 2vw;
							right: -8vw;
							border-width: 3vw 0 3vw 8vw;
							border-color: transparent  transparent transparent #ed7d31;
							  
						}
						.personB_text:after{
							content: '';
							width: 0;
							height: 0;
							border: solid;
							position: absolute;
							top: 2vw;
							right: -6vw;
							border-width: 3vw 0 3vw 8vw;
							border-color: transparent transparent transparent #fdf3ed;
							  
						}
						
		.part01{
			width: 100%;
			margin-bottom: 4vw;
		}
			.part_title{
				width: 100%;
				margin-bottom: 3vw;
			}
				.part_title img{
					width: 100%;
				}
			div.a_header{
				width: 100%;
			}
			div.a_body{
				width: 100%;
			}
				div.a_header{
					padding: 10px 2%;
				}
				div.a_header div.text h2{
					font-size: 4.5vw;
				}
				div.a_header div.text a{
					font-size: 26px;
				}
				.btn{
					padding: 10px 0 30px 0;
				}
				.btn p {
					font-size: 16px;
				}
				.btn__main{
					width: 90%;
					font-size: 20px;
				}
				.btn__link {
					right: 10px;
				}
				div.a_body div.text h3{
					margin: 0;
					font-size: 20px;
				}
				div.a_body div.text p{
					font-size: 16px;
					margin-bottom: 20px;
				}
			div.a_body table{
				width: 58%;
				font-size: 12px;
			}
				div.a_body table th{
					width: 25%;
					background-color: #006fcf;
					color: #fff;
					padding: 3px 0;
				}
				div.a_body table td{
					width: 25%;
					text-align: center;
					color: #000;
					padding: 3px 0;
					background-color: #cfd5ea;
					font-weight: bold;
				}
					div.a_body table td img{
						max-width: 15%;
					}
			.part01_01_table1 {
				width: 90%!important;
			}
			.part01_table2{
				width: 90%!important;
				margin: 10px auto 2px;
				border: 2px solid #777777!important;
			}
				.part01_table2 tr:first-child th{
					border-bottom: none!important;
				}
				.part01_table2 th{
					background-color: #777777!important;
				}
				.part01_table2 td{
					border: #777777!important;
					background-color: #FFFFFF!important;
				}
					.table_bigtext{
						font-size: 12px;
					}
			.a_body_part02_box{
				border: 3px solid #006fcf;
				border-radius: 25px;
				padding: 4vw 0 1vw 5vw;
				margin: 2vw auto;
				width: 90%;
				box-sizing: border-box;
			}
				.a_body_part02_line{
					/* display: flex;
					align-items: center;
					height: 7vw;
					line-height: 4vw; */
					font-size: 4vw;
					font-weight: bold;
					margin-bottom: 2vw;
				}
					.a_body_part02_line img{
						width: 7vw;
						margin-top: -2vw;
					}
			.btn {
			    width: 90%;
			    margin: 6vw auto 6vw;
			}
			.btn__main{
				display: block;
				margin: 0 auto;
				width: 98%;
				font-size: 5vw;
				font-weight: bold;
				text-align: center;
				background-color: #FF350D;
				color: #fff;
				border-radius: 8px;
				padding: 4% 0 4% 0;
				text-decoration: none;
				overflow: hidden;
				position: relative;
				box-shadow: 0px 10px 0 #d02300;
			}
				.reflection {
				    height:100%;
				    width:30px;
				    position:absolute;
				    top:-180px;
				    left:0;
				    background-color: #fff;
				    opacity:0;
				    transform: rotate(45deg);
				    animation: reflection 3s cubic-bezier(0, 0.3, 0.6, 0)infinite;
				}
				@keyframes reflection {
				    0% { transform: scale(0) rotate(45deg); opacity: 0; }
				    80% { transform: scale(0) rotate(45deg); opacity: 0.5; }
				    81% { transform: scale(4) rotate(45deg); opacity: 1; }
				    100% { transform: scale(50) rotate(45deg); opacity: 0; }
				}
			.btn_bottomtext{
				color: red;
				font-size: 4.8vw!important;
				position: relative;
				top: 20px;
			}
			.btn_smalltext{
				font-size: 12px!important;
				font-weight: 100!important;
				margin-top: 20px;
			}
		.part02{
			margin-bottom: 5vw;
			width: 100%;
			height: 55vw;
			background-position: 0 5vw;
		}
			.part02 h3 {
				text-align: center;
				font-size: 4.5vw;
				width: 70%;
				background-color: #fff;
				margin: 0 auto 5vw;
			}
			.part02 .a_body_part02_line{
				font-size: 4vw;
				margin: 3vw 0 3vw 8vw;
			}
		
		.toroku_img{
			width: 80%!important;
		}
		
		.part03{
			margin-top: 5vw;
			margin-bottom: 10vw;
		}
			.part03_title{
				width: 90%;
				margin: 0 auto 8vw;
				background-color: #ff7da2;
				border-radius: 15px;
				text-align: center;
				font-size: 4.8vw;
				color: white;
				font-weight: bold;
				padding: 4vw 0;
				position: relative;
			}
				.part03_title span{
					font-weight: 100;
					font-size: 5.5vw;
				}
				.part03_title::after{
					content: '';
					width: 0;
					height: 0;
					border: solid;
					position: absolute;
					bottom: -5vw;
					left: 50%;
					transform: translate(-50%,0%);
					border-width: 5vw 2vw 0px 2vw;
					border-color: #ff7da2 transparent transparent transparent ;
				}
			.person__talk {
			    width: 100%;
			    /* height: 160px; */
				margin-bottom: 4vw;
			    display: flex;
				justify-content: space-between;
			}
			.person__talk:last-child{
				margin-bottom: 8vw;
			}
				.person__talk__left {
				    width: 25%;
					text-align: center;
					display: flex;
				    flex-wrap: wrap;
					align-content: flex-start;
				    justify-content: center;
			        padding: 2vw 0 0;
				}
					.person__talk__left img {
					    width: 80%;
					}
					.person__talk__left p {
					    padding: 0;
					    font-weight: 200;
					    font-size: 2.5vw;
					    line-height: 3.5vw;
					}
				.person__talk__right {
				    width: 85%;
			        padding-left: 4vw;
			        padding-right: 2vw;
			        box-sizing: border-box;
			        position: relative;
				}
					.talk_icon1 {
					    width: 0;
					    height: 0;
					    border: 3.3vw solid;
					    position: absolute;
					    top: 10vw;
					    left: -2vw;
					    border-color: #FF9805 #FF9805 transparent transparent;
					}
					.talk_icon2 {
					    width: 0;
					    height: 0;
					    border: 3vw solid;
					    position: absolute;
					    top: 10.6vw;
					    left: -0.3vw;
					    border-color: #fff8e5 #fff8e5 transparent transparent;
					}
					.talk__message {
					    width: 100%;
					    height: auto;
					    border: 3px solid #FF9805;
						background-color: #fff8e5;
					    padding: 2.5vw;
					    box-sizing: border-box;
					    font-size: 4vw!important;
					    line-height: 6.5vw!important;
					}
	.part04{
		width: 100%;
		margin-bottom: 10vw;
	}
		.part04_box{
			padding: 2vw;
		}
			.part04_title{
				width: 90%;
				font-size: 5vw;
				margin: 2vw auto;
				padding: 1vw;
			}
			.part04_body{
				width: 90%;
				padding: 2vw;
			}
				.part04_body a{
					margin: 1vw 0;
					font-size: 4vw;
					height: 8vw;
					line-height: 8vw;
				}
			.part04_a{
				width: 96%;
				margin: 1vw auto;
				font-size: 3vw;
			}
	
	div#la_footer {
	    background-color: #000;
	    width: 100%;
	    text-align: center;
	    padding: 5vw 0;
	    color: #fff;
	    font-size: 3.8vw;
	}
	div#la_footer a {
	    color: #fff;
	    font-size: 3.8vw;
	}

	.pop_img {
		width: 90%;
	}
		.pop_img__close {
			top: 0;
			right: 0;
			width: 6vw;
			height: 6vw;
		}
		.pop_img__link {
			width: 52vw;
			height: 10vw;
			bottom: 8vw;
			left: 18vw;
		}
		
		.text_box_title{
			padding: 10px 10px;
		}
		.text_box_imgbox{
			width: 10vw;
			display: flex;
		}
		.text_box_title p{
			color: white;
			font-weight: bold;
			font-size: 5.5vw;
			margin-left: 10px;
			margin-top: 5px;
		}
		.text_box_p{
			padding: 10px;
			box-sizing: border-box;
			font-size: 4vw;
		}
		.content_text-wrapper{
			padding: 1em 0;
		}
		.content_text{
			font-size: 4.5vw;
			letter-spacing: 0px;
			line-height: 23px;
		}

		
	/* ---------------point--------------- */
	.point__title{
		font-size: 5.3vw;
		padding: 0.3em 0.7em;
		display: flex;
		align-items: center;
	}
	.point__text{
		line-height: 23px;
		font-size: 5vw;
	}
	.point__title > img{
		width: 2em;
	}
}