@charset "utf-8";

/*
 * report
 *
-----------------------------*/

/* font
-----------------------------*/
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@500&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500&display=swap');
.fontMontserrat{
	font-family: 'Montserrat', sans-serif;
}
.fontCormorantGaramond{
	font-family: 'Cormorant Garamond', serif;
}
.infoBox .text, .infoBox .info li{
	font-family: "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
	font-weight: 500;
}


/* layout
-----------------------------*/
.reportWrapInner{
	width: 94vw;
	margin-right: auto;
	margin-left: auto;
	padding-bottom: 150px;
}
@media screen and (max-width: 768px) {
	main{
		padding-top: 60px;
	}
	.reportWrap{
		padding-bottom: 100px;
	}
	.reportWrapInner{
		padding-top: 20px;
	}
}/*//sp*/
@media screen and (min-width: 769px) {
	main{
		padding-top: 120px;
	}
	.reportWrap{
		/*padding-bottom: 190px;*/
	}
	.reportWrapInner{
		padding-top: 30px;
		max-width: 1200px;
	}
}/*//pc*/

/* .reportIndexList
-----------------------------*/
.reportIndexList{
	width: 100%;
	display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 20px;
}
.reportIndexList li{
	position: relative;
	margin-bottom: 40px;
}
.reportIndexList li a{
	display: block;
	box-shadow: 1px 3px 10px rgb(0 0 0 / 16%);
}
@media screen and (max-width: 768px) {
	.reportIndexList li a{
		box-shadow: 1px 3px 10px rgb(0 0 0 / 16%);
	}
}/*//sp*/
.reportIndexList li figure{
	position: relative;
	height: 300px;
}
@media screen and (max-width: 768px) {
	.reportIndexList li figure{
		margin-bottom: 0;
	}
}/*//sp*/
.reportIndexList li figure img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.reportIndexList li .text{
	position: absolute;
	background: rgba(255,255,255,.9);
	z-index: 100;
}
.reportIndexList li .date{
	width: 100%;
	font-family: 'Montserrat', sans-serif;
	font-weight: 500;
	color: #AAB6BA;
	font-size: 11px;
}
.reportIndexList li .title{
	width: 100%;
	color: #333333;
	font-size: 14px;
}
@media screen and (max-width: 768px) {
	.reportIndexList li .title{
		font-size: 14px;
	}
}/*//sp*/
@media screen and (max-width: 768px) {
	.reportIndexList{
		margin-bottom: 60px;
	}
	.reportIndexList li .text{
		bottom: 0;
		padding: 15px;
		width: 100%;
		height: auto;
		position: relative;
	}
}/*//sp*/
@media screen and (min-width: 769px) {
	.reportIndexList{
		margin-bottom: 120px;
	}
	.reportIndexList li .text{
		top: 0;
		padding: 15px;
		width: 100%;
		height: auto;
		position: relative;

		display: flex;
		-ms-flex-pack: center;
		justify-content: center;
		-ms-flex-line-pack: center;
		align-content: center;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}
}/*//pc*/

/* .pagenation
-----------------------------*/
main .pagenation h2{
	display: none;
}
main .pagenation ul {
	text-align: center;
}
main .pagenation li {
    display: inline-block;
    margin: 0 7px;
	border: 1px solid #AACCA3;
}
main .pagenation li:first-child {
    margin-left: 0;
}
main .pagenation li span.current,
main .pagenation li a {
	background: #fff;
    display: block;
    padding: 0;
	width: 45px;
	line-height: 45px;
}
main .pagenation li a.prev,
main .pagenation li a.next {
	background: #AACCA3;
    color: #FFFFFF;
}
main .pagenation li span.current {
}
main .pagenation li a:not(.prev):not(.next):hover {
	background: #AACCA3;
    color: #FFFFFF;
    opacity: 0.8;
    transition-duration: 500ms;
    transition-property: all;
    transition-timing-function: ease;
}
main .pagenation li .page-numbers.dots,
main .pagenation li a.prev,
main .pagenation li a.next {
	font-weight: bold;
}
main .pagenation li a.prev:hover,
main .pagenation li a.next:hover {
	color: #171C61;
}
@media screen and (max-width: 768px) {
	main .pagenation li {
		margin: 0 4px;
	}
	main .pagenation li span.current,
	main .pagenation li a {
		width: 32px;
		line-height: 32px;
	}
}/*//sp*/
@media screen and (min-width: 769px) {
	main .pagenation li {
		margin: 0 7px;
	}
	main .pagenation li span.current,
	main .pagenation li a {
		width: 45px;
		line-height: 45px;
	}
}/*//pc*/



/* パーティーレポート　投稿
-----------------------------*/
.reportPostBody{
	max-width: 805px;
}
.reportPostHead{
	padding: 83px 0 115px;
	background: url("../img/report/report_bg.png") no-repeat center top/ cover;
	margin-bottom: 50px;
}
.reportPostHeadInner{
	width: 94vw;
	max-width: 1200px;
	margin-right: auto;
	margin-left: auto;
}
.reportPostHead figure{
	margin-bottom: 50px;
	text-align: center;
}
.reportPostHead .date{
	margin-bottom: 5px;
	font-family: 'Montserrat', sans-serif;
	font-weight: 500;
	color: #AAB6BA;
	font-size: 11px;
	text-align: center;
}
.reportPostHead .title{
	font-size: 18px;
	text-align: center;
}
.reportPostHead .infoBox{
	margin-top: 58px;
}
.reportPostHead .infoBox{
}
.infoBox .text{
	font-size: 15px;
	letter-spacing: 0.05em;
	line-height: 1.86;
}
.infoBox .info{
	background: #fff;
}
.infoBox .info .infoName{
	margin-bottom: 1.5em;
	font-size: 20px;
	font-weight: bold;
}
.infoBox .info .infoStyle{
	margin-bottom: 0.5em;
	font-size: 15px;
}
.infoBox .info .infoStyle span,
.infoBox .info .infoPeople span{
	display: inline-block;
	width: 6em;
}
.infoBox .info .infoPeople{
	font-size: 15px;
}
@media screen and (max-width: 768px) {
	.reportPostHead{
		padding: 83px 0 60px;
		margin-bottom: 0px;
	}
	.infoBox .info{
    	margin-top: 30px;
		padding: 24px 35px;
	}
}/*//sp*/
@media screen and (min-width: 769px) {
	.infoBox .text{
		flex: 1 1 48%;
    	padding-right: 10px;
	}
	.infoBox .info{
		flex: 1 1 41%;
		max-width: 440px;
		padding: 47px 75px;
	}
}/*//pc*/
.reportPostBody{
	padding: 40px 0;
}
.reportPostBody figure{
	margin-top: 40px;
	margin-bottom: 40px;
}
.reportPostBody p{
	margin-bottom: 20px;
	line-height: 1.67em;
	font-size: 15px;
	letter-spacing: 0.1em;
}
.reportPostBottom{
	position: relative;
	height: 45px;
	z-index: 100;
}
.post-navigation{
	position: relative;
	z-index: 100;
}
.post-navigation .screen-reader-text{
	display: none;
}
.post-navigation .nav-links{
	width: 100%;
	max-width: 600px;
	margin-right: auto;
	margin-left: auto;
	display: flex;
	-ms-flex-pack: justify;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}
.post-navigation .nav-links a{
	color: #1B5010;
	font-size: 12px;
	line-height: 45px;
}
.post-navigation .nav-links .nav-previous a::before,
.post-navigation .nav-links .nav-next a::before{
	content: "";
	display: block;
	border-style: solid;
	border-color: #707070;
	width: 26px;
	height: 26px;
}
.post-navigation .nav-links .nav-previous a::before{
	border-width: 0 0 1px 1px;
	-webkit-transform: rotate(45deg);
   transform: rotate(45deg);
}
.post-navigation .nav-links .nav-next a::before{
	border-width: 1px 1px 0 0;
	-webkit-transform: rotate(45deg) translate(50px , -52px);
   transform: rotate(45deg) translate(50px , -52px);
}
.post-navigation .nav-links .nav-previous a::after,
.post-navigation .nav-links .nav-next a::after{
	content: "";
	display: block;
	background:#707070;
	width: 98px;
	height: 1px;
}
.post-navigation .nav-links .nav-previous a::after{
	transform: translate( 15px ,-15px);
}
.post-navigation .nav-links .nav-next a::after{
	transform: translate( -15px ,-15px);
}
.btnLinkIndex {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	margin: auto;
    width: 46px;
	height: 52px;
	background: url("../img/report/pagenation_bg.png") no-repeat center top / 46px 28px;
	text-align: center;
	font-size: 12px;
	z-index: 101;
}
.btnLink {
    position: relative;
    width: 100%;
    padding-top: 36px;
    display: block;
    background: url(../img/report/pagenation_bg.png) no-repeat center top / 46px 28px;
}

@media screen and (max-width: 768px) {
	.post-navigation .nav-links{
		width: 95%;
	}
}/*//sp*/
@media screen and (min-width: 769px) {
}/*//pc*/

/* 231213 */
.main_party_title01 {
	font-weight: bold;
	margin: 40px 0;
	font-size: 26px;
	text-align: left;
}

.main_party_title02 {
	font-weight: bold;
	margin: 40px 0;
	font-size: 22px;
	text-align: left;
	padding-bottom: 10px;
	border-bottom: 1px solid #000;
}

.main_party_title03 {
	font-weight: bold;
	margin: 40px 0;
	font-size: 18px;
	text-align: left;
	padding: 7px;
	background-color: #F5F2F0;
}

@media screen and (max-width: 768px) {
	.main_party_title01 {
		font-size: 23px;
	}
	
	.main_party_title02 {
		font-size: 20px;
	}
	
	.main_party_title03 {
		font-size: 16px;
	}
}