@charset "UTF-8";





h1 small.sub {

	font-size: clamp(1.6rem, 1.246rem + 0.74vw, 1.8rem);
    display: block;
	margin-top: 10px;
}
	

body main {
    font-family: 'Noto Sans', 'Noto Sans JP', sans-serif;
    font-feature-settings: "palt";


}


article.op01,
.top_tittle0917.op01 {

opacity:1 !important;
transition:all .3s;

}



	.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.8;
	}


	.top_tittle0917 span{
		display: block;
		font-size: 2.0rem;
		margin-top: 25px;
		line-height: 1.8;

	}

	.news_img {

		width: 100%;
		max-width: 550px;
		}


	.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.1rem, 0.86rem + 2.59vw, 2.8rem);


	}

	@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 .scroll_sp {
        width: 767px;
    }




		body .kanren li span {

			margin-left: 0em;
		}

		body .fl_b001 {

			flex-wrap: wrap;
		}


		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: 5px !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: text-top;
	width: 20%;
}

table.bort01 td {

padding: 1%;
}


.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 .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;
}

.fl_b001 figcaption {

	text-align: center;
	margin-top: 5px;


}

.kanren li {

	display: flex;
	position: relative;
	margin-bottom: 15px;
	padding-left: 10px;
}

.kanren p {

	margin-top: 0;

}
.kanren li a,
.kanren li span {

	display: block;

}

.kanren li span {

	margin-left: 1em;

}


.kanren li::before {
position: absolute;
	content: '・';
	top: 0;
	left: 0;
line-height: 1;
}


.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: count 0;

margin: 5px 0;

}
section .count03 ul li {
	font-size: 1.4rem;
	padding-left: 15px ;


}


.count03 ul li {
position: relative;
padding-left: 25px ;


}

.count03 ul li::before {

position: absolute;
left: 0;
content: "※"  ;


}

.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: 898px) {

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;

}


.fl_dl dl dt::after {

    content: '：';
    position: absolute;
    right: 0;
    top: 0;


}

.map01 {

	max-width: 680px;
margin: 0 auto;

}


