@charset "shift_jis";


h2.h2_style{
	min-width: 1100px;
	max-width: 1280px;
	margin: 170px auto 30px;
	padding: 0 0;
	position:relative;
	text-align:left;

font-weight: bold;
font-size: 50px;
line-height: 1.3;
color: #222;
}

h2.h2_style span{
	margin: 0 0 0 30px;
	padding: 0 0 0;
	position: relative;

	display:inline-block;
	vertical-align:middle;


font-weight: normal;
font-size: 18px;
letter-spacing: 0.03em;
line-height: 1.5;
color: #222;
}

h2.h2_style small{
	margin: 5px 15px 0;
	padding: 0 0 0;
	position: relative;

	display:inline-block;
	vertical-align:top;

font-family: "Yu Gothic Pr6N";
font-weight: normal;
font-size: 42px;
letter-spacing: normal;
color: #999;
}


.h3_wrap{
	min-width: 1100px;
	min-height:140px;
	margin: 0 auto;
	padding: 0 0;
	position:relative;
	text-align:center;
	background-color:#f2f4f5;
}


.h3_block{
	min-width: 1100px;
	max-width: 1280px;
	margin: 0 auto;
	padding: 0 0;
	position:relative;
	text-align:left;
}

h3.h3_txt{
	margin: 0 0;
	padding: 0 0;
	position:relative;
	font-weight: bold;
font-weight: normal;
font-size: 24px;
line-height: 46px;
text-align: center;
color: #2b2e31;
display: flex;
align-items: center;
justify-content: center;
	min-height:140px;
}



.cat_link{
	margin: 35px 0 0;
	padding: 0 0 0;
	position:relative;
	display:inline-block;
	vertical-align:top;
}

.cat_link div{
	margin: 0 0 10px 0;
	padding: 0 0;
	position:relative;
font-weight: normal;
font-size: 18px;
letter-spacing: 0.03em;
line-height: 30px;
text-align: left;
color: #2b2e31;
}

.cat_link div strong{
	margin: 0 20px 0 0 ;
	padding: 0 0;
	position:relative;

width:130px;
display:inline-block;
vertical-align:top;

font-weight: bold;
font-size: 20px;
letter-spacing: 0.05em;
line-height: 30px;
text-align: right;
color: #2b2e31;

}

.cat_link div a{
font-weight: normal;
font-size: 18px;
letter-spacing: 0.03em;
line-height: 30px;
text-align: left;
color: #2b2e31;
}

.blog_title{
	margin: 0 0;
	padding: 0 0;
	position:relative;
	text-align:cneter;
	display: flex;
	align-items:center;
	justify-content:center;
	min-height:140px;
}

.blog_title{
	margin: 0 0;
	padding: 0 0;
	position:relative;
	text-align:cneter;
	display: flex;
	align-items:center;
	justify-content:flex-start;
	min-height:140px;
}

.blog_title .blog_cat{
	margin: 0 0;
	padding: 0 0;

font-weight: bold;
text-decoration: underline;
font-size: 12px;
letter-spacing: 0.05em;
line-height: 1.5;
text-align: left;
color: #222;

}

.blog_title .blog_date{
	margin: 0 20px 0 20px;
	padding: 0 0;

font-weight: bold;
text-decoration: underline;
font-size: 12px;
letter-spacing: 0.05em;
line-height: 30px;
text-align: left;
color: #222;
}

.blog_title .blog_tit{
	margin: 0 0 0 50px;
	padding: 0 0;
	font-weight: normal;
	font-size: 24px;
	line-height: 46px;
	text-align: left;
	color: #2b2e31;
}
#document{
	width: 100%;
	margin: 0 auto;
	padding: 100px 0 0;
	position: relative;
	text-align:center;
	overflow: hidden;
}


.blog_page_wrap{
	margin: 0 auto;
	padding: 0 40px 0 0;
	position:relative;
	text-align:center;
	background-color:#fff;
}

.blog_page_area{
	min-width: 1100px;
	max-width: 1240px;
	margin: 0 auto ;
	padding: 0 0;
	position:relative;
	text-align:center;
}



ul.totonoi_blog_list{
	margin: 0 auto;
	padding: 0 0;
	position:relative;
	text-align:left;
display: flex;
align-items:stretch;
/*justify-content:space-between;*/
flex-wrap: wrap;
}
ul.totonoi_blog_list li{
	margin: 0 2% 0 0;
	padding: 0;
	position:relative;
	text-align:left;
	width:23%;
}
ul.totonoi_blog_list li:nth-child(n+5){
	margin-top: 40px;
}
ul.totonoi_blog_list li a{
	margin: 0 0;
	padding: 0 0;
	position:relative;
display:block;
font-weight: normal;
font-size: 14px;
line-height: 1.5;
text-align: left;
color: #2b2e31;
}
ul.totonoi_blog_list li a small{
	margin: 6px 0 0;
	padding: 0 0;
	position:relative;
font-weight: normal;
font-size: 14px;
line-height: 1.0;
text-align: right;
color: #2b2e31;
display:block;
}

ul.totonoi_blog_list li a .blog_img{
	margin: 0 0 6px;
	padding: 0 0;
	position:relative;
	text-align: left;
	width:100%;
	aspect-ratio: 276 / 200;
}

ul.totonoi_blog_list li a .blog_img img{
	width:100%;
	height:100%;
	object-fit: cover;
}
ul.totonoi_blog_list li a img.updated{
	position:absolute;
	top:0;
	left:0;
}



ul.totonoi_blog_list li a:hover{
	text-decoration:none;
transition : 0.3s;
opacity:0.7;
}








/* 詳細ページ
=================================*/

.rtoc-mokuji-content {
    width: 100%;
    max-width: 580px;
    font-size: 16px;
    font-weight: 400;
    margin: 40px auto 80px;
    box-sizing: border-box;
}

.blog_article{
	margin: 0 auto 100px;
	padding: 0 0;
	position:relative;
	text-align:justify;
	width:770px;
}

.blog_article img{
	margin: 40px auto;
	padding: 0 0;
	position:relative;
	text-align:center;
}




.blog_article h2 {
    margin: 2em 0 1.5em;
    padding: 1.2rem 0 1.2rem 1rem;
    font-weight: bold;
    line-height: 1.4rem;
    font-size: 20px;
    background-color: #edebea;
    border-radius: 0.5rem;
	position: static;
}
.blog_article h3 {
	margin: 1rem 0 1rem 0.1rem;
    padding: 0.25em 0.5em;
    font-weight: bold;
    line-height: 1.4rem;
    font-size: 18px;
    border-left: 4px solid #4c4c4c;
}
.blog_article h4 {
    margin: 0 0 0.5rem 0;
    padding: 0.25em 0.5em 0 0;
	font-weight: bold;
    line-height: 1.4rem;
	font-size: 17px;
}
.blog_article h4::before {
    content: "■";
    color: #ccc;
    margin-right: 0.4em;
}


.blog_article h5 {
    margin: 0 0 0.5rem 0;
    padding: 0.25em 0.5em 0 0;
	font-weight: bold;
    line-height: 1.4rem;
	font-size: 16px;
}

.blog_article p{
	margin: 0;
	padding: 0 1em 1em;
	position:relative;
	font-size:16px;
	line-height:1.8;
	font-weight:400;
	text-align:justify;
	color:#222;
	letter-spacing:0.05em;
}
.blog_article ul {
	margin: 0 0 1em 2.4em;
	padding: 0 0;
	position:relative;
	font-size:16px;
	line-height:1.8;
	font-weight:400;
	text-align:justify;
	color:#222;
	letter-spacing:0.05em;
}
.blog_article ul li{
    list-style: square;
    padding-bottom: 0.5em;
}
.blog_article img{
	max-width:100%;
	height:auto;
}
.blog_article img.aligncenter{
	display:block;
	margin:0 auto;
}
.blog_article strong{
	font-weight: bold;
}





.center{
	text-align:center;
}

.sp_only{
	display:none;
}

.img_sp {
	display:none;
}