@charset "UTF-8";
/*h*/
.txt_48.p_tit{
	line-height: normal;
	}
/*section/article*/
.bg_ffffff section,.bg_ffffff article{
	padding: 60px 80px;
	}

.cat{
	display: inline-block;
	padding: 0 20px;
	margin: 20px 0;
	height: 24px;
	line-height: 24px;
	border-radius: 24px;
	background: #f1b7ba;
	color: #000000;
	font-size: 0.875em;
	}


/*index*/
#columns_index .item_wrap{
	display: flex;
	flex-wrap: wrap;
	}

#columns_index a.item{
	width: calc((100% - 80px) / 3);
	margin-bottom: 40px;
	margin-right: 40px;
	}
#columns_index a.item:nth-of-type(3n){
	margin-right: 0;
	}
#columns_index a.item:link,#columns_index a.item:visited{
                                color: #000000;
                                }
#columns_index a.item:hover{
                                color: var(--colred);
	text-decoration: none;
	}
#columns_index a.item:hover img{
	text-decoration: none;
	opacity: 0.7;
	}
#columns_index a.item .tit_txt{
	font-size: 1.125em;
	font-weight: bold;
                                line-height: 1.5;
	}
#columns_index a.item .date{
	text-align: right;
                                color: #000000;
	}
.wp-pagenavi{
	display: flex;
	justify-content: center;
	margin-top: 30px;
	color: var(--colwhite);
	}
.wp-pagenavi a{
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	width: 60px;
	height: 60px;
	border-radius: 60px;
	border: 2px solid var(--colwhite);
	color: var(--colwhite);
	font-weight: bold;
	margin: 10px;
	}
.wp-pagenavi a:hover{
	text-decoration: none;
	background: var(--colwhite);
	color: var(--colred);
	border: 2px solid var(--colwhite) !important;
	}
.wp-pagenavi a.nextpostslink{
	text-indent: -9999px;
	background: url('../img/icon_arrow_white.svg') center center no-repeat;
	background-size: 9px 14px;
	}
.wp-pagenavi a.nextpostslink:hover{
	background: var(--colwhite) url('../img/icon_arrow.svg') center center no-repeat;
	background-size: 9px 14px;
	}
.wp-pagenavi a.previouspostslink{
	text-indent: -9999px;
	background: url('../img/icon_back_white.svg') center center no-repeat;
	background-size: 9px 14px;
	}
.wp-pagenavi a.previouspostslink:hover{
	background: var(--colwhite) url('../img/icon_back.svg') center center no-repeat;
	background-size: 9px 14px;
	}

.wp-pagenavi .current{
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	width: 60px;
	height: 60px;
	border-radius: 60px;
	border: 2px solid var(--colwhite) !important;
	background: var(--colwhite);
	color: var(--colred);
	font-weight: bold;
	margin: 10px;
	}

/*bottom*/

.bg_ffffff{
                                box-shadow: 0px 0px 10px -5px #000000;
                                }
.columns_wrap{
                                background: #ffffff;
                                padding: 80px 0;
                                border-top: 1px solid var(--colred);
                                border-bottom: 5px solid var(--colred);
                                }

#columns_bottom .data_wrap{
	text-align: right;
	margin-bottom: 40px;
	}
#columns_bottom .date{
	text-align: right;
	}
#columns_bottom .mainimg_wrap{
	margin: 40px 0 60px;
	}
#columns_bottom .mainimg_wrap img{
	display: block;
	margin: 0 auto;
	max-width: 100%;
	}

a.btn_back{
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	width: 340px;
	height: 60px;
	border-radius: 60px;
	border: 2px solid var(--colred);
                                background: url('../img/icon_arrow.svg') center right 20px no-repeat;
	background-size: 9px 14px;
	font-size: 1.125em;
	font-weight: bold;
	padding: 0;
	margin: 40px auto 0;
	}
a.btn_back:hover{
	text-decoration: none;
                                background: var(--colred) url('../img/icon_arrow_white.svg') center right 20px no-repeat;
	background-size: 9px 14px;
	color: var(--colwhite);
	}
a.btn_red{
	display: inline-flex;
                                align-items: center;
                                justify-content: center;
	text-align: center;
	margin: 40px auto 0;
	padding: 10px 35px;
	width: 330px;
                                height: 55px;
                                line-height: 1.3;
	border-radius: 9999px;
	border: 1px solid var(--colred);
	background: url('../img/icon_arrow.svg') center right 20px no-repeat;
	background-size: 9px 14px;
	color: var(--colred);
	font-weight: bold;
	}
a.btn_red:hover{
	text-decoration: none;
	background: var(--colred) url('../img/icon_arrow_white.svg') center right 20px no-repeat;
	background-size: 10px 15px;
	color: var(--colwhite);
	}

a.btn_newwin_red{
	display: inline-flex;
                                align-items: center;
                                justify-content: center;
	text-align: center;
	margin: 40px auto 0;
	padding: 10px 55px 10px 30px;
	width: 330px;
                                height: 55px;
                                line-height: 1.3;
	border-radius: 9999px;
	border: 1px solid var(--colred);
	background: url('../img/icon_newwin_red.svg') center right 30px no-repeat;
	background-size: 14px 14px;
	color: var(--colred);
	font-weight: bold;
	}
a.btn_newwin_red:hover{
	text-decoration: none;
	background: var(--colred) url('../img/icon_newwin_white.svg') center right 30px no-repeat;
	background-size: 14px 14px;
	color: var(--colwhite);
	}


section.post{
	padding: 0;
	display: flow-root;
	}
section.post h2{
                                border-left: 5px solid var(--colred);
	font-size: 1.5em;
                                padding-left: 10px;
	margin-bottom: 1em;
	}
section.post h3{
                                border-left: 5px solid #015aa3;
                                padding: 3px 10px;
                                background: #dae4eb;
	font-size: 1.125em;
	margin-bottom: 1em;
	}
section.post h4{
                                border-bottom: 2px solid #cccccc;
	font-size: 1.125em;
                                line-height: 1.5;
	margin-bottom: 1em;
	}

section.post p{
	margin-bottom: 30px;
	}
section.post p:last-of-type{
	margin-bottom: 0;
	}
section.post p + h2,section.post p + h3,section.post p + h4,section.post p + h5{
	margin-top: 60px;
	}

section.post img.aligncenter {
	display: block;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 20px;
	}
section.post img.alignright {
	float: right;
	margin-bottom: 20px;
	margin-left: 20px;
	}
section.post img.alignleft {
	float: left;
	margin-right: 20px;
	margin-bottom: 20px;
	}

/*icon*/
section.post a:link,section.post a:visited{
                                color: #015aa3;
                                }
section.post a:hover{
                                color: var(--colred);
                                }
section.post a[href$=".pdf"]:before{
	content: '';
	display: inline-block;
	width: 24px;
	height: 30px;
	background: url('../img/icon_pdf.png') no-repeat;
	background-size: 24px 30px;
	margin-right: 0.5em;
	vertical-align: middle;
	}

section.post a[target="_blank"]:after{
	content: '';
	display: inline-block;
	width: 14px;
	height: 14px;
	background: url('../img/icon_newwin_red.svg') no-repeat;
	background-size: 14px 14px;
	margin-left: 0.5em;
	}

/*link_list*/
.link_list li{
                                list-style-type: none;
                                text-align: center;
                                }

/*nav_article*/
#nav_article{
                                margin-top: 60px;
                                display: flex;
                                align-items: center;
                                justify-content: center;
                                }
#nav_article a{
                                display: flex;
                                align-items: center;
                                font-size: 1.125em;
                                font-weight: bold;
	height: 28px;
                                }
#nav_article a.previous_post_link{
                                padding-left: 26px;
                                background: url('../img/icon_back.svg') left center no-repeat;
                                background-size: 9px 16px;
                                }
#nav_article a.next_post_link{
                                padding-right: 26px;
                                background: url('../img/icon_arrow.svg') right center no-repeat;
                                background-size: 9px 16px;
                                }
#nav_article:has(a.next_post_link) a.previous_post_link:after{
	content: '';
	display: inline-block;
	width: 1px;
	height: 28px;
                                background: var(--colred);
                                margin: 0 20px;
                                }

/* Media Queries
==========================================================================*/
@media screen and (max-width:1200px) {
.cat{
	font-size: 0.625em;
	}

}
@media screen and (max-width:767px) {
/*h*/
.txt_48.p_tit{
	margin: 0 0 30px;
	font-size: 1.75em;
	}
/*section/article*/
.bg_ffffff section,.bg_ffffff article{
	padding: 20px;
	}

.cat{
	margin: 5px 0;
	font-size: 0.875em;
	}

/*index*/

#columns_index a.item{
	width: 100%;
	margin-bottom: 40px;
	margin-right: 0;
	}

#columns_index a.item:last-of-type{
	margin-bottom: 0;
	}

.wp-pagenavi{
	margin-top: 20px;
	}
.wp-pagenavi a,.wp-pagenavi .current{
	width: 50px;
	height: 50px;
	border-radius: 50px;
	margin: 5px;
	}

/*bottom*/
.columns_wrap{
                                padding: 40px 0;
                                }
#columns_bottom .data_wrap{
	margin-bottom: 20px;
	}
#columns_bottom .mainimg_wrap{
	margin: 20px 0;
	}

a.btn_white{
	width: 100%;
	height: 50px;
	line-height: 50px;
	border-radius: 50px;
	margin: 20px auto 0;
	}
a.btn_red,a.btn_newwin_red{
	margin: 20px auto 0;
	width: 100%;
	}

section.post{
	padding: 0;
	display: flow-root;
	}

section.post h2{
                                border-left: 3px solid var(--colred);
	padding-left: 5px;
	font-size: 1.25em;
	margin-bottom: 15px;
	}
section.post h3{
                                border-left: 3px solid #015aa3;
	padding: 2px 5px;
	font-size: 1.125em;
	margin-bottom: 1em;
	}
section.post h4{
	font-size: 1.125em;
	margin-bottom: 1em;
	}

section.post p{
	margin-bottom: 15px;
	}

section.post p + h2,section.post p + h3,section.post p + h4,section.post p + h5{
	margin-top: 30px;
	}
section.post img.alignright,section.post img.alignleft{
	float: none;
	display: block;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 10px;
	}
/*nav_article*/
#nav_article{
                                margin-top: 30px;
                                }
}