/**********************************/
/* タイトル部分 */
/**********************************/
/* 文字の部分は各ページごとにサイズが異なるので */
.ttl_bg{
	background-image: url("../images/publications/main_bg.jpg");
	background-position: 70%;
}
.ttl_mojipos{
	width:72.9%;
	margin: 0 0 0 12.7%;

}

@media only screen and (min-width: 769px) {

	.ttl_mojipos{
		width: 70.37%;
		margin: 0 0 0 12.69%;
	}
	.ttl_bg {
		background-position: center;
	}

}

/*
publication_list
*/
.publication_list {
	border-top: solid #2E3B51 1px;
}
.publication_list li {
	position: relative;
	display: block;
	text-align: center;
	background: #fff;
	animation: flipdown 0.5s ease both;
}
.publication_list li h3 {
	padding: 15px 0;
	font-family: 'Montserrat', sans-serif;
	font-weight: bold;
	letter-spacing: 1px;
	border-bottom: solid #2E3B51 1px;
	font-size: 18px;
}
.publication_list li h3.type_02 {
	color: #2E3B51;
}
.publication_list {
	list-style: none;
	perspective: 900;
	padding: 0;
	margin: 0;
}
.publication_list li i {
	position: absolute;
	transform: translate(-28px, 0);
	margin-top: 16px;
	right: 0;
}
.publication_list li i:before, .publication_list li i:after {
	content: "";
	position: absolute;
	background-color: #2E3B51;
	width: 2px;
	height: 10px;
	transition: all 0.25s ease-in-out;
}
.publication_list li i:before {
	transform: translate(-3.5px, 9px) rotate(45deg);
}
.publication_list li i:after {
	transform: translate(2.5px, 9px) rotate(-45deg);
}
.publication_list li input[type=checkbox] {
	position: absolute;
	left: 0;
	top: 0;
	cursor: pointer;
	width: 100%;
	height: 98%;/* 100%にするとedgeでバグるのでギリギリライン */
	z-index: 1;
	opacity: 0;
}
.publication_list li div {
	margin: 33px 0 0;
	max-height: 3500px;
	font-size: 15px;
	line-height: 20px;
	overflow: hidden;
	position: relative;
	opacity: 1;
	transform: translate(0, 0);
	z-index: 2;
	transition: all .5s ease-in-out;
	border-bottom: solid #2E3B51 1px;
	display: flex;
	flex-flow: column;
}
.publication_list li div.en_box {
	border-bottom: none;
}
.publication_list li div p {
	display: inline-block;
/*
	padding: 0 24px 50px;
*/
	margin: 0 4% 20px;
	padding: 1em 1.5em;
	font-family: 'Montserrat', sans-serif;
/*
	font-weight: bold;
*/
	color: #616161;
	font-size: 15px;
	background-color: #F6F6F6;
}
.publication_list li div p:last-child {
/*
	border-bottom: solid #2E3B51 1px;
*/
}
.publication_list li div p span {
	font-weight: bolder;
	font-style: italic;
}
.publication_list li div p a {
	display: inline-block;
	margin: 3px 0 0;
	padding: 5px;
	background: #d5d5d5;
}
.publication_list li div p a img {
	width: 70px;
	height: 25px;
}
.publication_list li input[type=checkbox]:checked ~ div {
	margin: 0;
	max-height: 0;
	opacity: 0;
	transform: translate(0, 50%);
}
.publication_list li input[type=checkbox]:checked ~ i:before {
	transform: translate(2.5px, 9px) rotate(45deg);
}
.publication_list li input[type=checkbox]:checked ~ i:after {
	transform: translate(-3.5px, 9px) rotate(-45deg);
}
@keyframes flipdown {
	0% {
		opacity: 0;
		transform-origin: top center;
		transform: rotateX(-90deg);
	}
	5% {
		opacity: 1;
	}
	80% {
		transform: rotateX(8deg);
	}
	83% {
		transform: rotateX(6deg);
	}
	92% {
		transform: rotateX(-3deg);
	}
	100% {
		transform-origin: top center;
		transform: rotateX(0deg);
	}
}
@media only screen and (min-width: 769px) {
	.publication_list li div {
		margin: 30px 0 0;
	}
	.publication_list li div p {
/*
		padding: 0 50px 50px;
*/
		margin: 0 4% 20px;
	}
	.publication_list li h3 {
		font-size: 23px;
	}
	.publication_list li div p {
		font-size: 15px;
	}
	.publication_list li i:before, .publication_list li i:after {
		width: 3px;
		height: 13px;
	}
	.publication_list li i:before {
		transform: translate(-4.5px, 9px) rotate(45deg);
	}
	.publication_list li i:after {
		transform: translate(3.5px, 9px) rotate(-45deg);
	}
	.publication_list li input[type=checkbox]:checked ~ i:before {
		transform: translate(3.5px, 9px) rotate(45deg);
	}
	.publication_list li input[type=checkbox]:checked ~ i:after {
		transform: translate(-4.5px, 9px) rotate(-45deg);
	}
}
/*
ページナビ
*/
.page_nav {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: 0 0 32px;
}
.page_nav li {
	margin: 0 0 15px;
	padding: 0 7px;
}
.page_nav li a {
	display: block;
	width: auto;
	padding: 2px 3em 2px 2em;
	border: solid #93ABAB 1px;
	border-radius: 20px;
	text-align: center;
	font-size: 15px;
	font-weight: bold;
	color: #fff;
	background: #93ABAB url(../images/page_nav_arrow.svg) no-repeat 93% center;
	transition: all 0.5s ease-out;
}
.page_nav li a:hover {
	color: #93ABAB;
	background: url(../images/page_nav_arrow_on.svg) no-repeat 93% center;
	transition: all 0.5s ease-out;
}
.bold {
	font-weight: bold;
}
.sec_wrap {
	margin: 130px 0 0 ;
}
.sec_wrap_01 {
	margin: 60px 0 0 ;
}
.sub_ttl_area {
	display: block;
	font-size: 16px;
	font-weight: bold;
	color:#93ABAB;
	text-align: left;
	margin: 0 28px;
	padding:0 0 12px 0;
}
@media only screen and (min-width: 769px) {
		.sub_ttl_area{
		font-size: 20px;
		}
}

.sec_box_inner_01{
	padding:60px 0 0 ;
}
