@charset "utf-8";

@media screen and (max-width: 640px) {
	#contents_body .text_lead{ font-size:1.5rem; line-height:1.7; }
	
	#contents_body .article_list ul{ margin:30px 0 0; gap:30px 0; }
	#contents_body .article_list ul li{ width:100%; }
	#contents_body .article_list ul li a{ padding-bottom:35px; }
	#contents_body .article_list ul li .title{ margin:10px 0 0; font-size:1.5rem; }
	#contents_body .article_list ul li .day{ bottom:8px; }
	
	#contents_body .contact_box{
		margin:30px 0 0;
	}
	#contents_body .contact_box .title{
		display:block;
		padding:5px 0;
	}
	#contents_body .contact_box .title .sp1{
		width:50vw;
		margin:0 auto;
		padding:4px 5px;
		border-radius:2px;
		font-size:1.5rem;
		line-height:1;
	}
	#contents_body .contact_box .title .sp2{
		display:block;
		margin:5px 0 0;
		font-size:1.3rem;
		line-height:1;
	}
	#contents_body .contact_box .title::after{
		border-right-width:7px;
		border-left-width:7px;
		border-top-width:9px;
		bottom:-8px;
	}
	#contents_body .contact_box .con{
		display:block;
		padding:15px 18px 20px;
	}
	#contents_body .contact_box .con .tit{
		margin:0 0 3px;
		font-size:1.4rem;
	}
	#contents_body .contact_box .con .tit::before,
	#contents_body .contact_box .con .tit::after{
		width:12px;
		height:12px;
		margin:0 5px;
		vertical-align:-1px;
	}
	#contents_body .contact_box .con .mail_area{
		width:100%;
		flex:none;
	}
	#contents_body .contact_box .con .mail_area .contactBtn{
		padding:7px 0;
		text-shadow:1px 1px 0 #513301;
		font-size:2rem;
		background-position:right 10px center;
		background-size:20px auto;
		box-shadow:2px 2px 0 #a7ada5;
		border-radius:10px;
	}
	#contents_body .contact_box .con .tel_area{
		width:100%;
		margin:15px 0 0;
		flex:none;
	}
	#contents_body .contact_box .con .tel_area .tel{
		display:block;
		margin:-5px -20px 0;
		padding: 0 0 0 45px;
		background-position:20px center;
		background-size:45px auto;
		font-size:5rem;
	}
	#contents_body .contact_box .con .tel_area .txt{
		border-radius:5px;
		font-size:1.4rem;
	}
	#contents_body .article_detail{
		padding:20px 0 0;
		font-size:1.4rem;
	}
	#contents_body .article_detail h1{
		padding:0 0 0 10px;
		border-left-width:4px;
		font-size:1.9rem;
		line-height:1.4;
	}
	#contents_body .article_detail .day{
		margin:10px 0 0;
		font-size:1.2rem;
	}
	#contents_body .article_detail p{
		margin:20px 0 0;
		font-size:1.4rem;
		line-height:1.5;
	}
	#contents_body .article_detail img{
		margin:20px 0 0;
	}
	
	#contents_body .article_detail .toc{
		margin:20px 0 0;
		padding:10px 10px 15px;
	}
	#contents_body .article_detail .toc .title{
		margin:0 0 10px;
		font-size:1.6rem;
	}
	#contents_body .article_detail .toc dl{
		line-height:1.5;
	}
	
	#contents_body .article_detail h2{
		margin:30px 0 0;
		padding:0 0 5px 10px;
		font-size:1.5rem;
		line-height:1.4;
	}
	#contents_body .article_detail h2::before{
		width:3px;
	}
	#contents_body .article_detail h3{
		margin:20px 0 0;
		font-size:1.5rem;
		line-height:1.4;
	}
	#contents_body .article_detail h3 + p{
		margin-top:10px;
	}
	#contents #contents_body h4 h4{
		margin:20px 0 0;
	}
	#contents #contents_body h4 + p{
		margin-top:10px;
	}
	#contents_body .article_detail ul li{
		font-size:1.4rem;
		line-height:1.4;
	}
	#contents_body .article_detail ul li::before{
		top:7px;
	}
	#contents_body .article_detail .gray_area{
		padding:8px 15px;
		border-width:2px;
	}
	#contents_body .article_detail table{
		margin:25px 0 0;
	}
	#contents_body .article_detail table th,
	#contents_body .article_detail table td{
		padding:6px 8px;
		line-height:1.4;
	}
	#contents_body .relative_article{
		margin:30px 0 0;
		padding:18px 10px 5px;
	}
	#contents_body .relative_article .tit{
		width:68px;
		padding:4px;
		font-size:1.4rem;
		top:-32px;
		left:10px
	}
	#contents_body .relative_article figure{
		width:72px;
		vertical-align:top;
	}
	#contents_body .relative_article p{
		width:calc(100% - 72px);
		padding:0 0 0 10px;
		line-height:1.4;
	}	
	#contents_body .movie{
		width: 100%;
		aspect-ratio: 16 / 9;
		margin:20px 0;
		text-align: center;
}
	#contents_body .movie iframe {
		width: 100%;
		height: 100%;
}	

/* 20250126追加 */
.js-scrollable table {
	white-space: nowrap;
	min-width: 100%;
	width: auto!important;
}







/* 20260825追加 --------------------------------------------------------------------------------*/

	br.re_page_sp{
		display: block;
	}
	
	/* top */
	.re_top_list{
		gap:0 4%;
	}
	.re_top_list a.item{
		width:48%;
		margin-bottom:20px;
	}
	.re_top_list a.item p{
		padding:6px 0;
		font-size:12px;
	}
	.re_top_list a.item p::after{
		background:url(../img/renew/top_btn_allow.png) no-repeat center center;
		background-size:12px;
		width:12px;
		height:8px;
		right:5px;
	}
	
	p.re_p_center_top{
		margin:10px auto 30px auto;
		
	}
	


	/* page */
	.re_lox_mv{
		height:150px;
	}
	.re_lox_mv#Dannetsu01{
		background:url(../img/renew/low_mv_bg01.jpg) no-repeat center center;
		background-size:cover;
	}
	.re_lox_mv#Dannetsu02{
		background:url(../img/renew/low_mv_bg02.jpg) no-repeat center center;
		background-size:cover;
	}
	.re_lox_mv#Dannetsu03{
		background:url(../img/renew/low_mv_bg03.jpg) no-repeat center center;
		background-size:cover;
	}
	.re_lox_mv#Dannetsu04{
		background:url(../img/renew/low_mv_bg04.jpg) no-repeat center center;
		background-size:cover;
	}
	.re_lox_mv#Dannetsu05{
		background:url(../img/renew/low_mv_bg05.jpg) no-repeat bottom center;
		background-size:cover;
	}
	.re_lox_mv#Dannetsu06{
		background:url(../img/renew/low_mv_bg06.jpg) no-repeat center center;
		background-size:cover;
	}



	.re_read_area{
		margin:25px auto;
	}
	.re_read_area h2{
		font-size:20px !important;
		margin-bottom:20px !important;
	}
	.re_read_area p{
		font-size:14px;
	}



	.re_contents_box{
		margin-bottom:60px;
	}



	h3.re_h3{
		padding:8px 14px !important;
		font-size:18px !important;
		margin-bottom:12px;
	}
	
	h3.re_h3.acs{
		padding-left:60px !important;
		margin-bottom:20px;
		font-size:15px !important;
	}
	h3.re_h3.acs i{
		padding: 4px 7px;
		top: 10px;
		left: 10px;
	}
	h3.re_h3.acs + p{
		font-size:16px !important;
		margin-bottom:30px;
	}
	
	h3.re_h3_center_type{
		font-size:21px !important;
	}
	h3.re_h3_center_type::after{
		width:50px;
		height:3px;
		margin:12px auto;
	}
	h3.re_h3_center_type + p{
		font-size:16px !important;
		margin-bottom:20px;
	}
	h4.re_h4{
		font-size:18px !important;
		margin:12px auto !important;
	}
	h4.re_hot_h4{
		font-size:22px !important;
		margin:25px auto 5px auto !important;
	}
	h4.re_hot_h4 i{
		font-size:70% !important;
	}
	p.re_p_tx{
		font-size:14px;
	}
	.re_flex_wrap .f_48{
			width:100%;
			margin-bottom:20px;
	}
	.re_flex_wrap .f_50{
		width:100%;
		margin-bottom:20px;
	}
	.re_flex_wrap .f_60{
		width:100%;
		margin-bottom:20px;
	}
	.re_flex_wrap .f_65{
		width:100%;
		margin-bottom:20px;
	}
	.re_flex_wrap .f_70{
		width:100%;
		margin-bottom:20px;
	}
	.re_flex_wrap .f_38{
		width:100%;
		margin-bottom:20px;
	}
	.re_flex_wrap .f_30{
		width:60%;
		margin:auto;
	}
	.re_flex_wrap .f_30.sp_full{
		width:100%;
		display:flex;
		flex-wrap: wrap;
		justify-content:space-between;
		margin-bottom:8px;
	}
	.re_flex_wrap .f_30.sp_full div{
		width:52%;
	}
	.re_flex_wrap .f_30.sp_full p{
		font-size:10px !important;
		width:44%;
	}
	.re_flex_wrap .f_30.sp_mb{
		margin-bottom:20px;
	}
	.re_flex_wrap .f_25{
		width:60%;
		margin:auto;
	}
	.re_flex_wrap .f_30-5{
		width:60%;
		margin:auto;
	}
	.re_flex_wrap .f_44-3{
		width:100%;
		margin-bottom:20px;
	}
	.re_flex_wrap .mt{
		margin-top:20px;
	}
	.re_flex_wrap.mb{
		margin-bottom:30px;
	}


	.re_table_wrap{
		margin-top:25px;
	}
	.re_table_wrap h4{
		font-size:16px !important;
		padding:4px 0 !important;
	}
	.re_table_area{
		padding:5px 12px;
	}
	.re_table_area .f{
		width:100%;
		margin:10px auto;
	}
	.re_table_area table th{
		padding:6px;
		font-size:14px;
	}
	.re_table_area table td{
		padding:4px 8px;
		font-size:12px;
	}
	.re_table_area table td:nth-child(3){
		font-size:14px;
	}
	
	
	.re_table_area .full{
		overflow:scroll;
	}
	.re_table_area .full table{
		width:740px;
	}


	
	
	
	
	
	.re_caption{
		margin-top:4px;
	}
	
	
	
	.re_img_box.re_sp_box{
		width:100%;
		overflow:scroll;
	}
	.re_img_box.re_sp_box img{
		width:520px !important;
	}
	.re_img_box img.re_img_pc{
		display:none;
	}
	.re_img_box img.re_img_sp{
		display: block;
	}
	
	
	
	.re_contents_check_box{
		padding:15px;
	}
	.re_contents_check_box .f_25{
		display:none;
	}
	.re_check_list{
		margin-left:0;
	}
	.re_check_list li{
		padding-left:20px;
		font-size:15px;
		margin:8px auto;
	}
	.re_check_list li::before{
		width:16px;
		height:18px;
		background:url(../img/renew/check_mark.png) no-repeat center center;
		background-size:16px;
		top:2px;
	}
	


	.re_tokyu_box{
		padding:6px 18px;
		margin-bottom:35px;
	}
	.re_tokyu_box .re_tokyu{
		padding:14px 0;
	}
	.re_tokyu_box .re_tokyu h3{
		font-size:20px;
	}
	.re_tokyu_box .re_tokyu .i{
		width:80%;
		margin:auto;
		margin-bottom:16px;
	}
	.re_tokyu_box .re_tokyu .t{
		width:90%;
		margin:auto;
		margin-bottom:16px;
	}
	.re_tokyu_box .re_tokyu .t p{
		font-size:15px;
	}
	.re_tokyu_box .re_tokyu .a{
		width:60%;
		margin:auto;
		padding:12px 0 0 0;
		border-left:none;
		border-top:1px dotted #888888;
	}
	.re_tokyu_box .re_tokyu .a p{
		font-size:14px;
	}
	.re_tokyu_box .re_tokyu .a img{
		width:92%;
	}
	
	.re_tit_type01{
		margin:0 0 15px 0 !important;
		font-size:21px;
	}
	.re_tit_type02{
		margin:0 0 15px 0 !important;
		font-size:18px;
	}















	.re_border_box{
		padding:16px;
	}
	.re_border_box.mt{
		margin-top:20px;
	}
	
	.re_p_normal{
		font-size:14px !important;
		line-height:170%;
	}
	.re_p_normal.flows{
		position: static;
		transform:none;
	}
	
	.re_main_tit{
		padding:8px 0 !important;
		font-size:20px !important;
		margin:30px 0 !important;
	}
	.re_main_tit + p{
		font-size:16px !important;
		line-height:170%;
		margin-bottom:30px;
		padding:0 !important;
	}
	
	.re_main_sub_tit{
		font-size:16px !important;
		padding-left:8px;
		margin-bottom:16px;
	}
	.re_main_sub_tit::before{
		width:4px;
	}
	.re_main_sub_tit i{
		padding:1px 6px;
		margin-right:6px;
		font-size:88%;
	}
	.re_main_sub_tit + p{
		font-size:14px;
		margin-bottom:22px;
	}
	



	.re_img_flex_box.mt{
		margin-top:20px;
	}
	.re_img_flex_box .two{
		width:49%;
	}
	.re_img_flex_box .twos{
		width:100%;
		margin-bottom:6px;
	}
	.re_img_flex_box .four{
		width:49%;
		margin-bottom:6px;
	}
	.re_img_flex_box .img_flex_tit{
		font-size:10px !important;
		padding:4px 0 !important;
	}
	.re_img_flex_box .img_flex_tit.b{
		font-size:13px !important;
	}
	
	.re_normal_tit{
		font-size:17px !important;
		margin-bottom:12px !important;
	}
	
	.re_img_tx_p .t{
		width:100%;
	}
	.re_img_tx_p .t p{
		position: static;
		transform:none;
	}
	.re_img_tx_p .i{
		width:40%;
		margin:auto;
	}
	.re_img_tx_p .t.l{
		width:100%;
	}
	.re_img_tx_p .i.l{
		width:45%;
		margin:auto;
	}
	
	.re_yukashita01_contents{
		margin-bottom:30px;
	}
	.re_yukashita01_contents p{
		position:static;
		width:84%;
	}
	.re_yukashita01_contents img{
		margin-top:-70px;
	}





	.re_full_tx_box{
		border-radius:10px;
		margin-top:30px;
	}
	.re_full_tx_box h4{
		padding:12px !important;
		font-size:20px !important;
	}
	.re_full_tx_box div{
		padding:18px !important;
		font-size:14px !important;
		line-height:170%;
	}
	
	
	
	
	.re_cv_tit{
		padding:6px 0 16px 22px !important;
	}
	.re_cv_tit::before{
		width:12px;
	}
	.re_cv_tit h2{
		font-size:26px !important;
		letter-spacing:1px;
	}
	.re_cv_tit h2 strong{
		margin-left:5px;
	}
	.re_cv_tit h2 strong i{
		font-size: 12px;
		position: absolute;
		top: -12px;
		left: 2px;
	}
	.re_cv_tit h2 span{
		font-size:9px;
		margin-top:-5px;
		letter-spacing:0;
	}
	.re_cv_tit img{
		width: 70px !important;
        position: absolute;
        top: auto;
        bottom: -25px;
        right: -7px;
	}
	
	
	
	.re_cv_box{
		padding:40px 16px 10px 16px ;
	}
	.re_voice{
		margin-bottom:18px;
	}
	.re_voice h4{
		font-size:16px !important;
		padding:6px 0 !important;
	}
	.re_voice .w{
		padding:15px 20px;
	}
	.re_voice .w .t{
		width:100%;
		margin-bottom:20px;
	}
	.re_voice .w .t p{
		font-size:13px;
	}
	.re_voice .w .i{
		width:50%;
		margin:auto;
	}





	.re_img_mt{
		margin-top:15px;
	}
	.re_img_pc_only{
		display:none !important;
	}
	.re_img_sp_only{
		display:block !important;
	}
	
	
	.re_flow_contents{
		padding:15px;
	}
	.re_flows{
		padding:18px 0 12px 20px;
		border-left:solid 4px #00913a;
	}
	.re_flows::after{
		width: 20px;
		height: 20px;
		top: 20px;
		left: -10px;
	}
	.re_flow_area .l{
		width:100%;
		margin-bottom:15px;
	}
	.re_flow_area .l h4{
		font-size:16px !important;
		margin:0 0 15px 0 !important;
	}
	.re_flow_area .l p{
		font-size:12px !important;
	}
	.re_flow_area .r{
		width:60%;
	}
	.re_flow_area .r img{
		height:90px !important;
		margin:0;
	}
	.re_flow_step{
		width:140px;
		margin:15px 0 20px 0;
		padding:4px 0 0 0;
	}
	.re_flow_step::after{
		border-right: 70px solid transparent;
		border-left: 70px solid transparent;
		border-top: 15px solid #00913a;
		bottom:-14px;
	}
	.re_flow_step p{
		font-size:14px;
	}
	
	
	.re_two_sub_tx{
		font-size:14px;
	}
	


	.re_icon_list{
		margin-top:25px;
	}
	.re_icon_list .w{
		width:50%;
		margin-bottom:35px;
	}
	.re_icon_list .w h4{
		font-size:17px !important;
	}
	.re_icon_list .w img{
		width:70% !important;
	}
	.re_icon_list .w p{
		font-size:10px;
	}




	.re_qa_contents{
		margin-bottom:15px;
	}
	.re_qa_contents .re_q{
		padding:14px 32px 14px 18px;
	}
	.re_qa_contents .re_q::after{
		width:6px;
		height:6px;
		right:15px;
	}
	.re_qa_contents .re_q.on::after{
		right:6px;
	}
	.re_qa_contents .re_q h3{
		font-size:14px !important;
	}
	.re_qa_contents .re_a{
		padding:16px;
	}
	.re_qa_contents .re_a .w .t{
		width:100%;
		margin-bottom:20px;
	}
	.re_qa_contents .re_a .w .t p{
		font-size:13px;
	}
	.re_qa_contents .re_a .w .i{
		width:70%;
		margin:0 auto;
	}
	
	
	
	/* page cta */
	.re_cta_box{
		margin-top:-30px;
		margin-bottom:30px;
	}
	.re_cta_box strong{
		padding:8px 0;
		font-size:16px;
	}
	.re_cta_box strong i{
		margin-right:4px;
		padding:2px 8px;
	}
	.re_cta_box strong::after{
		border-right: 30px solid transparent;
		border-left: 30px solid transparent;
		border-top: 18px solid #008C46;
		bottom:-16px;
	}
	.re_cta_area{
		padding:25px 10px 20px 10px;
	}
	.re_cta_area::after{
		display:none;
	}
	.re_cta_area .w{
		width:100%;
	}
	.re_cta_area .w p{
		font-size:18px;
		margin-bottom:10px;
	}
	.re_cta_area .w a{
		font-size:18px;
		margin-bottom:10px !important;
	}
	.re_cta_area .w span{
		font-size:12px;
	}
	.re_cta_area .w.p a{
		padding:15px 0;
		width:90%;
	}
	.re_cta_area .w.p a::after{
		border-top: 5px solid transparent;
		border-bottom: 5px solid transparent;
		border-left: 8px solid #FFFFFF;
		right:14px;
	}
	.re_cta_area .w.o p{
		padding-top:15px;
		margin-top:15px;
		border-top:solid 1px #999999;
	}
	.re_cta_area .w.o a{
		font-size:26px;
	}
	.re_cta_area .w.o a img{
		width:24px !important;
	}
	.re_cta_area .w.o span{
		width:80%;
		padding:6px;
		border-radius:3px;
	}
	.re_cta_area .w.o span::before {
		border-radius:3px;
	}
	
	.re_atent{
		margin-top:-20px;
		margin-bottom:70px;
		font-size:12px;
		padding:15px !important;
	}
	.re_atent strong{
		font-size:15px;
	}



}