@charset "UTF-8";



	

		.td_center td {

			text-align: center;
		}
		.bort01.td_center th {

			text-align-last:auto ;
		}

.news_img01 img {

	display: block;
	margin: 0 auto;
	max-width: 772px;
}


.top_tittle0917 {

line-height: 1.6;
font-size: clamp(2.2rem, 0.783rem + 2.96vw, 3rem);

    color: #132874;
    display: block;
    text-align: center
}




.top_tittle0917 small,
	.top_tittle0917 span{
		display: block;
		font-size: clamp(1.8rem, 1.446rem + 0.74vw, 2rem);
		margin-top: 15px;
		line-height: 1.8;

	}





	.news_float_img {

		float: right;
		width: 50%;
		padding: 15px;
		box-sizing: border-box;


	}

	.mt_ob {

		margin-top: 60px ;
	}

	.dp-fl .fl_box:nth-child(1) {
		width: 41.9%;
	}

	.fl_b {

	display: -webkit-box;

	display: -ms-flexbox;

	display: flex;

	}

	.top_tittle0917 {

		line-height: 1.4;
	}


	.top_tittle0917 span{
		display: block;
		font-size: 2.0rem;
		margin-top: 25px;
		line-height: 1.8;

	}
.main_text01 
.news_img {
	width: auto;

}

	.news_img .img_inner {

		width: min(930px, calc(100% - 15px));
		margin: 0 auto;

		position: relative;


		max-width: max-content;
		}


		.news_img figcaption {

			margin-top: 10px;
			text-align: center;
		}

	.news_img2 img {

		width: 50%;
		
	}


	.table_box {

		display: table;

	}
	.table_box span {

			display: table-cell;
	}

	.text_ind {

		text-indent: 1em;
	}

	.g_txt {


		margin: 0 118px 0 auto;
	}



	body .page-title.opt-small h1 .top_tittle0917 {
		font-size: clamp(2.2rem, 1.836rem + 1.82vw, 3.2rem);


	}

	@media screen and (min-width: 768px){
.fl_b001 figure:nth-child(1) {

	margin: 0;

}


}

	@media screen and (min-width:767px) and (max-width: 930px) {

		.dp-fl .fl_box:nth-child(1) {
		width: 50% !important;
		}


	}

	@media screen and (max-width: 767px){


		body .fl_b002 {

				flex-direction: column-reverse;

		} 


		body .fl_b002 figure{


			margin: 25px auto;

		}

		body .kanren.fl_faq div {

			justify-content: center;
		}


		body .shop_list li div {

			flex-direction: column-reverse;
		}

body .shop_list li:last-child figure,		
body .shop_list li div figure {


margin: 15px auto 0;

}

body .kanren.fl_faq div.fl_q_grid {

	grid-template-columns: repeat(1, 1fr);
    grid-template-rows: repeat(1, 1fr);

}


		body .news_grid { 
    grid-template-columns: repeat(1, 1fr);
		}

		.h4_title h3 {
			margin-bottom: 5px;

		}


		body .scroll_sp {
        width: 767px;
    }

	body .kanren.fl_faq li {

		margin-bottom: 10px;
	}



		body .kanren li span {

			margin-left: 0em;
		}

		body .fl_b001 {

			flex-wrap: wrap;
			text-align: center;
		}


		body .fl_bj {

			display: block;

		}

body  .justify_center figure.logo {

			position: relative;

			text-align: center;
		}



	body .g_txt {


margin: 0 0 0 auto;
}



		body .main_text04 span:nth-child(2) {

			margin-top: 0px !important;
		}



		body .te_ln {
			margin: 0 auto;

		}

		body .midle_t {
	padding: 32px;

	}

		body .scroll table{
		width:120% !important;
		overflow-x: scroll;
		}
		.scroll{
		overflow: auto;/*tableをスクロールさせる*/
		white-space: nowrap;/*tableのセル内にある文字の折り返しを禁止*/
		padding-bottom: 15px;
		}
		.scroll::-webkit-scrollbar{/*tableにスクロールバーを追加*/
		height: 8px;
		}
		.scroll::-webkit-scrollbar-track{/*tableにスクロールバーを追加*/
		background: #F1F1F1;
		}
		.scroll::-webkit-scrollbar-thumb {/*tableにスクロールバーを追加*/
		background: #195cbf;
		}


	.top_tittle0917:after {

		margin-top: 0px !important;
	}

	.text_ind {

	text-indent: 0em !important;
	}

	.news_img2 img {

	width: 100% !important;

	}

		.mt_ob {

			margin-top: 25px !important;
			margin-bottom: 25px !important;

	}
	.sp_mt {
		margin-top: 15px;

	}
	}




	.main_text02 span {

		display: inline;
		font-size: 1rem;


	}


	.table_02 {

		display: table;
		font-size: 1.2rem;
	}

	.table_02 span {
		display: table-cell;
	}

	.table_02 span:nth-child(1) {

		white-space: nowrap;
		padding-right: 1rem;

	}

	.h_t {
		line-height: 2.1;
	}


	.fl_b3 {
		display: flex;
		align-items: flex-start;	

	}

	.fl_b3 span:nth-child(1) {


		white-space: nowrap;
	}


	.h_2o {

		display: block;
		font-size: 0.8em;
	}


	_::-webkit-full-page-media, _:future, :root  body .txt_just {
	
text-align-last: justify;
	text-align: justify;
}

_::-webkit-full-page-media, _:future, :root .news_mmdt {
	/*width: 172px ;*/
	text-align-last: justify;
	text-align: justify;
}


_::-webkit-full-page-media, _:future, :root .saf_w {
	/**/width: 172px ;
}





.news_list ul li {

	display: table;


}




.news_list ul li span {
	display: table-cell;

	font-size: 12px;


}


.news_list ul li span:nth-child(1) {
	padding-right: 10px;
	white-space: nowrap;

}

.news_list ul li span:last-child {
	padding-right: 0;
}

body 
table.bort01 th {
	font-weight: normal;
	text-align-last: justify;
	white-space: nowrap;
	padding: 1%;
	vertical-align: middle;
	width: 22%;
}

table.bort01 td {

padding: 1%;
vertical-align: middle;
}


.justify_center {
	position: relative;
	justify-content: center;
	align-items: flex-end;


}
.justify_center figure {

	flex:  0 1 50%;
	position: relative;

}

.justify_center figure.logo {

	position: absolute;
    bottom: 1vh;
    right: 9vh;
}

.justify_center figure figcaption {

	position: relative;

	text-align: center;
/*	bottom: 3%;
	right: 10%;
	font-weight: bold;*/

}

.brand01 ul li div {

	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}
.brand01 ul li div p {

	flex: 0 0 75%;

	padding-top: 8px;
	box-sizing: border-box;

}


.brand01 ul li div figure {

	flex:  0 0 20%;

}
.brand01 ul li 
.main_text04 {

	font-size: 1.8rem !important;
	align-items: flex-end;
}


.brand01 ul li 
.main_text04 span:nth-child(1) {

	white-space: nowrap;

}

.brand01 ul {

margin-left: 15px;

}


.brand01 ul li:nth-child(n + 2) {

	margin-top: 15px;


}


.partner01 h4 {
	display: inline-block;
    border-bottom: 1px solid;
    font-size: 1.8rem;
	margin-left: 1em;
	margin-top: 25px;
}

.partner01 h4:first-child {

margin-top: 0;

} 




.partner01 .fl_b {

	align-items: center;
	margin-left: 15px;
}


.partner01 .fl_b figure {

flex: 0 0 25%;
}
.partner01 .fl_b p {

	margin-left: 15px;
	line-height: 2.1;	
}

.gaiyou h4 {

	align-items: flex-end;

}

.main_text01 p {

	word-break: break-word;
}


@media screen and (max-width: 767px){


	body .box_move {

		width: auto;
	}

	body .shop_list li article,
	body .fl_b001 figure,
	body .fl_b002 div,
body .sanko article div,
body .fl_b004 div,

body .img_grid figure,
	body .fl_b004 figure,
	body .fl_b003 figure,
body .fl_b002 figure {

flex: auto !important;
}

	body .justify_center figure figcaption {

		position: relative;
		right: auto;
		bottom: auto;

	}

body table.bort01 th {

	vertical-align: middle;
}


body .brand01 ul li div {

	display: block;

 }


body  .partner01 .fl_b {


	margin-left: 0;

 }


 body .partner01 .fl_b figure {

	margin-top: 25px ;

 }


 body .partner01 .fl_b p {

	 margin-left: 0px;
 } 


body .brand01 ul {


	margin-left: 0;


 }


body .brand01 ul li div figure {

	padding: 15px;
	box-sizing: border-box;
}

}

.main_text02 {
	text-align: justify; text-indent: 1em;

	margin-top: 0;

}

.fl_bj {

	display: flex;

}

#img_a2 p {

	text-align: center;
}

.bgg {


	background: #B7DEE8;

	padding: 2px 5px;
	box-sizing: border-box;
margin-top: 25px;

}

.setup h4,
.bgg h3 {

	font-size: 1.6rem;

}

.fl_b001 {

	display: flex;
	gap: 15px;
	align-items: center;
}


.fl_b001 figure {

	margin: 0 auto;
	flex: 1;
}

.fl_b001 figcaption {

	text-align: center;
	margin-top: 5px;


}


.kanren {

	margin-left: 5px;
}

.kanren li {

	display: flex;
	position: relative;
	margin-bottom: 15px;
	padding-left: 10px;
}

.kanren li div {

	line-height: 1.4;

}

.kanren p {

	margin-top: 0;

}
.kanren li a,
.kanren li span {

	display: block;

}

.kanren li span {

	margin-left: 1em;

}


.kanren.no_lsit li::before {

content: none;

}


.kanren li::before {
position: absolute;
	content: '・';
	top: 1px;
	left: 0;
line-height: 1;
}

.kanren02 li::before {

	opacity: 0;
}



.main_text03 {

text-align: justify; text-indent: 0em;
			margin-top: 0;
			word-break: break-all;
}
.grf {
		width: calc(100% - 25px);

		margin: 0 auto;

		border: 1px solid #ccc;

		border-radius: 15px;
		text-align: center;
		padding: 10px 15px ;
	}


	.grf h3 {

		color: #46B050;
		justify-content: center;

	}

	.grf p {

	margin-top: 0;
}




.count03 ul {

margin-bottom: 15px;

counter-reset: number 2;

margin: 5px 0;

}

.count01_02 ul,
.count02 ul li,
.count01 ul li,
section .count03 ul li {
	font-size: 1.4rem;
	padding-left: 30px ;
	display: flex;

}
.count01_02 ul li,
.count01 ul li,
.count02 ul li,
.count03 ul li {
position: relative;
padding-left: 30px ;
margin-bottom: 5px;

}


.count03 ul li::before {

counter-increment: number ; 
 content:"※" counter(number)"" "" ; 
position: absolute;
left: 0;


}
.count01_02 ,
.count02,
.count01 {

	counter-reset: number 0;
	margin-top: 25px;

}

.count01 ul li::before {

counter-increment: number 1; 
 content:"※" counter(number) "" "" ; 
position: absolute;
left: 0;


}


.count01_02 ul li::before {

counter-increment: number 1; 
 content:"*" counter(number) "" "\A9 " ; 
position: absolute;
left: 0;


}



.count02 ul li::before {

counter-increment: number 1; 
 content:"*" counter(number) "\A9" "" ; 
position: absolute;
left: 0;


}
.count01_02 ul {

	gap: 2px 5px; 
	justify-content: flex-end;
	flex-wrap: wrap;
}
.count01_02 ul li {

font-size: 1.2rem;

}

.count01_02 ul li::after {

content: '/';

}

.count01_02 ul li:last-child::after {

	content: none;
}

.counter01 {
 counter-reset: number 0; /* 名前は任意、0でリセット。*/
}
.counter01 li::before {
 counter-increment: number 1; /* counter-resetの名前を指定、+1づつ増やす。*/
 content: counter(number) "."; /* 番号の後に、ドットを付ける場合に指定する。*/
 padding-right: 5px; /* ドットと文字に、間隔を空ける場合に指定する。*/
}

.dis_glid01 {

	display: grid;
grid-template-columns: 50% 1fr 1fr 1fr;
    text-align: center;
    gap: 10px;

}

.dis_glid01 figure img {

height: 100%;


}





@media screen and (max-width: 989px) {



	body .code {

grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(2, 1fr);

	}


}


@media screen and (max-width: 898px) {

body .shop_list li figure {

	/*flex: auto;
	*/text-align: center;
}

body 
.dis_glid01 {

grid-template-columns: repeat(3, 1fr);
    grid-template-rows: repeat(2, 1fr);
}

body 
.dis_glid01 figure:nth-child(1) {

grid-column: span 3 / span 3;

}


body 
.dis_glid01 figure:nth-child(n + 2) {

	grid-row-start: 2;

}






}


.table_title_h2 {

	position: relative;
	padding-left: 1.2em;
}

.table_title_h2::before {

	position: absolute;
content: '■';
top: 0;
left: 0;

}


.fl_dl dl {

	display: flex;
	gap: 5px;
}

.kanren .fl_dl dl {

	flex-wrap: wrap;
	line-height: 1;

}


.fl_dl dl dt {

	position: relative;
padding-right: 10px;
white-space: nowrap;
width: 90px;

}


.fl_dl dl dt::after {

    content: '：';
    position: absolute;
    right: 0;
    top: 0;


}

.map01 {

	max-width: 680px;
margin: 0 auto;

}
.table_title_h3 {
	position: relative;
	padding-left: 15px;
}

.table_title_h3::before{
position: absolute;
left: 0;
	content: '・';

}
.new_shop article {

	margin-bottom: 25px;
}

.fl_b002 {

	display: flex;

	flex-wrap: wrap;
	text-align: center;
	align-items: flex-start;
	gap:15px 35px;
}

.fl_b002 div {

	flex: 1.5;
	margin-bottom: 5px;
}
.fl_b002 figure:nth-child(1) {

	flex: 1;


}

.fl_b002 figure:nth-child(1) img:nth-child(1) {


	max-width: max-content;
}


.fl_b004 figure,
.fl_b003 figure,
.fl_b002 figure {

	flex: 1;


}

.fl_b002 figcaption {

	margin-top: 15px;

}

.fl_b002 figure:nth-child(2) img  {
	width: 100%;
	max-width: 290px;


}

.fl_b004,
.fl_b003 {

	display: flex;

	flex-wrap: wrap;
	align-items: center;
	gap: 15px 15px;
}


.fl_b003 figure:nth-child(1) {

	flex: 1.5;
}


.fl_b004 div {
	flex: 2;
}

.box_move {

width: min(100%, 615px);
    margin: 0 15px;
	gap: 15px 25px;

}


.img_grid {

    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(4, 1fr);
    gap: 20px 8px;

	display: flex;
	flex-wrap: wrap;
}

.img_grid figure:nth-child(1) {
	flex: 1;
}

.img_grid figure:nth-child(2) {

 grid-column: span 2 / span 2;

     flex: 0 0 56.7%;
}

.img_grid figure:nth-child(3) {
grid-column: span 2 / span 2;
    grid-row-start: 2;
	flex: 0 0 59.5%;

}




.img_grid figure:nth-child(4) {
grid-column-start: 3;
    grid-row-start: 2;

	flex: 1;
}


.img_grid figure:nth-child(5) {
grid-row-start: 3;
flex: 0 0 47%;
}



.img_grid figure:nth-child(6) {
grid-row-start: 3;
flex: 1;

}


.img_grid figure:nth-child(7) {
 grid-column: span 2 / span 2;
    grid-row-start: 4;
flex: 0 0 56.6%;
}


.img_grid figure:nth-child(8) {
 grid-column-start: 3;
    grid-row-start: 4;
	flex: 1;
}



.img_grid figure figcaption {

	font-weight: bold;
	margin-bottom: 5px;
}

.dl_list {

	margin-left: 0.5rem;
}
.dl_list dl {

	display: flex;
	gap: 0 10px;
	flex-wrap: wrap;
}


.dl_list dl dt {

	white-space: nowrap;
	position: relative;
padding-right: 20px;
text-align-last: justify;
width: 100px;
flex: 0 0 300px;
}

.dl_list dl dt::after {

	position: absolute;
	/*content: '：';
*/
	right: 0;
}


.grid-list02 {
  display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(2, 1fr);
    gap: 8px;
}


.grid-list02 figure:nth-child(1) {
 

    display: grid;
    text-align: center;
    grid-column: span 2 / span 2;
	justify-content: center;
}




.grid-list02 figure:nth-child(2) {
 

    display: grid;
    text-align: center;
    grid-column: span 2 / span 2;
    grid-row-start: 2;
}


.grid-list02 figcaption {

    display: flex;
    justify-content: space-around;
	font-weight: bold;

}

.fl_b004.flex-start {

	align-items: flex-start;
}
.fl_b004 figcaption {

	text-align: center;
}
.code {

	/*display: flex;*/
	justify-content: center;

	text-align: center;

	    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: repeat(1, 1fr);
    gap: 25px;
    /* max-width: 500px; */
    margin: 25px auto;
    row-gap: 15px;
    width: min(100%, 600px);
}

.h_small {

	gap: 25px;
}
.main_text04 small {

	font-weight: normal;
	font-size: 1.6rem;
}

.main_text04 small::before {

	content: '※';

}

.news_comp {

	display: flex;
	justify-content: flex-end;

	text-align: right;
}

.news_comp span {

	display: block;
	white-space: nowrap;
}
.news_comp 
.company_t {

	margin-bottom: 5px;
}


.news_comp span:last-child {

	line-height: 1.3;
}

.news_comp p {
	margin-top: 0;
}

.copy_c {

	position: absolute;
	bottom: 0;
	right: 5px;
	color: #fff;
	text-shadow: 3px 1px 3px #000;
	font-size: 1.2rem;
}

.copy_c02 {

	position: absolute;
	bottom: auto;
	left: 50%;;

	color: #fff;
	text-shadow: 3px 1px 3px #000;
	font-size: clamp(1.4rem, 0.691rem + 1.48vw, 1.8rem);
	    top: 2vw;
    transform: translate(-50%, -10%);
}

table small {

	font-size: 1.2rem;
	margin-left: 2px;
}


body .news_img02 {

	width: min(516px, calc(100% - 15px));
}

.news_img02 figcaption {

	margin-top: 5px;

}

.kanren.fl_faq div {

	display: flex;
	gap:10px  15px;
        line-height: 1.2;

		flex-wrap: wrap;
		align-items: center;
}


.kanren.fl_faq div span {

	margin: 0;
}


.kanren.fl_faq li {

	padding-left: 12px;
}


.fl_end {

	align-items: flex-end;
}


.h4_fl {

	display: flex;
	gap:10px;
	align-items: baseline;

}

.h4_fl span:nth-child(1) {

	white-space: nowrap;

}

.txt_u {	
	
	display: inline-grid;
	border-bottom: 1px solid;


}


.h4_title {

        line-height: 1.2;
        margin-top: 25px;
        display: block;

}


.shop article {

	margin-top: 20px;
}


.sanko {

border: 1px solid;
    padding: 0 15px;
    box-sizing: border-box;

}



.sanko ul li {

	position: relative;
padding-left: 1.2em;

        margin: 15px 0;
    
}


.sanko ul li::before {

        position: absolute;
        content: '■';
        top: 0;
        left: 0;
    
}

.sanko ul li article::after,
.sanko ul li article::before {

	content: none;
}

.sanko ul li article {

display: flex;
        gap: 15px;
        line-height: 1.5;

		flex-wrap: wrap;

}
.sanko p,
.sanko h2,
.sanko h3 {

	font-size: 1.5rem;
}


.sanko article div  {

	flex: 4;

}

.sanko article figure  {



	flex: 1;

}


.img_inner img {
	width: 100%;
	height: auto;
}
table.bort01 {

	width: 915px;
}



body table.bort01 thead th {
	text-align: center;
	text-align-last: auto;
	background: #ccc;
}
body table.bort01.shop_ta tr th:nth-child(1) {

	width: 30%;

}

body table.bort01.shop_ta tr td:nth-child(4) {

	width: 30%;

}

body table.bort01.shop_ta tr td {

	vertical-align: middle;
}


.shop_list li {


		margin: 25px 0 35px 10px; 
}

.shop_list li div {

	display: flex;
	gap: 15px 25px;
		flex-wrap: wrap;
		justify-content: center;
		align-items: flex-start;
}

.shop_list li article {

	flex: 3.5;

}

.shop_list li figure {

	flex: 1;
}
.shop_list li article p:nth-child(2)
{
	margin-top: 5px;
}


.shop_list li p {

	padding: 0 10px;
	letter-spacing: 0.05em;
	

}

.shop_worp {
	display: flex;
	    gap: 25px;
		align-items: center;
}

.shop_name {
    display: flex;
    align-items: center;
    /* font-size: 2rem; 
    text-decoration: underline;*/
    position: relative;
    gap: 25px;
	    border-bottom: 2px solid;

}

.shop_name h3 {

	display: flex;
	gap: 5px;
	font-weight: bold;
	font-size: clamp(1.6rem, 0.891rem + 1.48vw, 2rem);
}

.shop_name h3 span:nth-child(1) {

	white-space: nowrap;
}

.shop_nic {

	position: relative;
	background: #7F7F7F;
	padding: 5px 15px;
	    white-space: nowrap;
    display: flex;
    align-items: center;
    height: 25px;
	color: #fff;
}

.shop_nic::before {

	position: absolute;
	content: '←';
	left: -2rem;
	color: #000;

}

.sns_hp dl,
.shop_list li article dl {

	display: flex;
}

.shop_list li article dl dt{

	position: relative;
	    display: flex;
    gap: 10px;
	    align-items: center;
		    padding-right: 5px;
}

.sns_hp dl dd::before,
.shop_list li article dl dt::after {

	content: '：';

}

.sns_hp dl dt {

	width: 90px;
}


	.js-scrollable_set,
.scroll-hint.is-right-scrollable.is-left-scrollable {
	position: relative;
}
.js-scrollable_set::before 
{
		position: absolute;
		content: '';
		background:linear-gradient(90deg, rgba(0, 0, 0, .15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0));

		height: 100%;
		width: 20px;
		z-index: 1;

		opacity: 0;

	}

.js-scrollable_set:has(.is-left-scrollable)::before{
visibility: inherit;
opacity: 1;
}


.scroll-hint {
    overflow: auto;/*tableをスクロールさせる*/
    white-space: nowrap;/*tableのセル内にある文字の折り返しを禁止*/
	padding-bottom: 15px;
    }
    .scroll-hint::-webkit-scrollbar{/*tableにスクロールバーを追加*/
    height: 8px;
    }
    .scroll-hint::-webkit-scrollbar-track{/*tableにスクロールバーを追加*/
    background: #F1F1F1;
    }
    .scroll-hint::-webkit-scrollbar-thumb {/*tableにスクロールバーを追加*/
    background: #195cbf;
	}



body .scroll figure,
	body .scroll .scroll_inner{
	width:900px ;
	/*overflow-x: scroll;*/
	overflow: hidden;
	position: relative;
    }
	

    .scroll{
    overflow: auto;/*tableをスクロールさせる*/
    white-space: nowrap;/*tableのセル内にある文字の折り返しを禁止*/
	padding-bottom: 0px;
    }
    .scroll::-webkit-scrollbar{/*tableにスクロールバーを追加*/
    height: 8px;
    }
    .scroll::-webkit-scrollbar-track{/*tableにスクロールバーを追加*/
    background: #F1F1F1;
    }
    .scroll::-webkit-scrollbar-thumb {/*tableにスクロールバーを追加*/
    background: #195cbf;
	}
	


.coment h3 {

        position: relative;
        display: flex;	
}

    .coment h3::before {

        content: '・';


    }



	.coment li {

        position: relative;
        display: flex;
        font-size: 1.4rem;

    }

    .coment li::before {

        content: '※';


    }

	.img_block {

display: block;margin: 0 auto;  
	}

.news_grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 15px;
	row-gap: 20px;
	text-align: center;
	margin-top: 15px;
}


.news_grid figcaption {

	margin-top: 5px;

}
body 
li span.fl_b_tel {
	display: flex;
	gap: 5px;
	line-height: 1.3;
}

.al-st {

	align-items: flex-start;
}

.al-st span:nth-child(1) {

	white-space: nowrap;

}


.gap01 {

	gap:5px 15px;
}

.dt_txc td {

	text-align: center;
}

body 
table.dt_txc tbody th {

	text-align-last: auto ;

}
.kanren.fl_faq 
div.fl_q_grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(2, 1fr);
    gap: 0 8px;

}

.shop_list h4 {

	font-weight: bold;
	font-size: 1.8rem;
	    text-decoration: underline;
    text-underline-offset: 5px;
		margin-bottom: 10px;
		word-break: auto-phrase;
}

.shop_list h4 small {

	font-weight: normal;
	font-size: 1.5rem;
}
.shop_list li:last-child {

	margin-bottom: 0;
}

.shop_list li:last-child figure {
 
	margin-top: -10px;

}

.fl_grid {

	   display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(4, 1fr);
    gap: 25px 15px;


}

.fl_grid figcaption {

	text-align: center;
	margin-top: 10px;
 
}


.fl_grid img {

aspect-ratio: 229 / 149;

}
.wsp {
	white-space: nowrap;
}

.th_r {
	display: block;
	white-space: normal;
	text-align-last:auto ;
}

h2.main_text04 {

	align-items: flex-start;
}
