@charset "utf-8";
/* CSS Document */


/* #post_catlist_wrap
----------------------------------------- */

#post_catlist_wrap {
	margin: auto;
    max-width: 100rem;
	padding-top: 6rem;
	padding-bottom: 2.5rem;
    margin-bottom: 10rem;
    border-bottom: 2px solid #001F60;
}

#post_catlist_wrap .post_catlist {
	justify-content: flex-start;
}

#post_catlist_wrap .post_catlist > li {
    margin-right: 2.5rem;
    -webkit-transition: all .6s;
    transition: all .6s;
}

#post_catlist_wrap .post_catlist > li:last-child {
	margin-right: 0;
}

#post_catlist_wrap .post_catlist > li a {
    font-size: 1.6rem;
    letter-spacing: 0.04em;
	line-height: 1;
    font-weight: 700;
    background-color: transparent;
    padding: 0 0.5rem 0.3rem;
}
#post_catlist_wrap .post_catlist > li.current a {
    color: #FFFFFF;
    background-color: #001F60;
    padding: 0 0.5rem 0.3rem;
}
#post_catlist_wrap .post_catlist > li a:hover {
    color: #FFFFFF;
    background-color: #001F60;
    padding: 0 0.5rem 0.3rem;
	opacity: 1;
}


@media screen and (max-width: 768px) {
#post_catlist_wrap {
	padding-top: 3rem;
    padding-bottom: 1rem;
	margin-bottom: 5rem;
}
	#post_catlist_wrap .post_catlist > li {
    margin-right: 2rem;
	margin-bottom: 1rem;
}
	#post_catlist_wrap .post_catlist > li a {
    font-size: 1.4rem;
    padding: 0 0.4rem 0.2rem;
}
	#post_catlist_wrap .post_catlist > li.current a {
    padding: 0 0.4rem 0.2rem;
}
}



/* #post_list_wrap
----------------------------------------- */
#post_list_wrap {
	background-color: rgba(0,113,207,0.10);
    padding-top: 6rem;
    padding-bottom: 6rem;
}

#post_list_wrap .inner {
	
}

#post_list_wrap .post_list {
    margin: auto;
}

#post_list_wrap .post_list > li {
    width: -webkit-calc(480 / 1000 * 100%);
    width : calc(480 / 1000 * 100%);
	margin-bottom: 5rem;
}

#post_list_wrap .post_list > li a {
    display: block;
}

#post_list_wrap .post_list .thumbnail {
	padding-bottom: 1.5rem;
    position: relative;
    z-index: 1;
}
#post_list_wrap .post_list .thumbnail .img_wrap {
	width: 100%;
    padding-top: 74.1935%;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
}
#post_list_wrap .post_list .thumbnail .category {
	position: absolute;
    bottom: 0;
    left: 0;
    z-index: 2;
}
#post_list_wrap .post_list .thumbnail .category_list {
	justify-content: center;
	margin-bottom: 1.5rem;
}
#post_list_wrap .post_list .thumbnail .category_list > li:not(:last-child) {
	margin-right: 1.5rem;
}
#post_list_wrap .post_list .thumbnail .category_list a {
	display: block;
	padding: 1rem 2rem;
	color: #FFFFFF;
	font-size: 1.4rem;
	line-height: 1;
	letter-spacing: 0.1em;
	text-align: center;
	background-color: #0071cf;
}

#post_list_wrap .post_list h2 {
    font-size: 2.2rem;
	letter-spacing: 0;
    line-height: 1.4;
    font-weight: 600;
    color: #001F60;
    margin-bottom: 1rem;
}

#post_list_wrap .info_wrap {
	margin-bottom: 1rem;
}
#post_list_wrap .info_wrap .name {
    font-size: 1.4rem;
	color: #666666;
}
#post_list_wrap .info_wrap .job {
}
#post_list_wrap .info_wrap .job .job_cat_list {
	justify-content: flex-start;
	font-size: 1.4rem;
	color: #666666;
}
#post_list_wrap .info_wrap .job .job_cat_list a {
	font-size: 1.4rem;
	color: #666666;
}
#post_list_wrap .info_wrap .job .job_cat_list > li {
    margin-bottom: 0.5rem;
}
#post_list_wrap .info_wrap .job .job_cat_list > li:not(:last-child) {
    margin-right: 1rem;
}
#post_list_wrap .info_wrap .job .job_cat_list > li.ttl {
    margin-right: 0;
}

#post_list_wrap .info_wrap .tag {
}
#post_list_wrap .info_wrap .tag .tag_list {
	justify-content: flex-start;
	font-size: 1.4rem;
	color: #666666;
}
#post_list_wrap .info_wrap .tag .tag_list a {
	font-size: 1.4rem;
	color: #666666;
}
#post_list_wrap .info_wrap .tag .tag_list > li {
    margin-bottom: 0.5rem;
}
#post_list_wrap .info_wrap .tag .tag_list > li:not(:last-child) {
    margin-right: 1rem;
}

#post_list_wrap .info_wrap .tag .tag_list > li span {
	color: #0071cf;
}

#post_list_wrap .post_list > li a.btn {
    display: inline-flex;
    width: 100%;
    margin-top: 1rem;
}


@media screen and (max-width: 768px) {
#post_list_wrap {
    margin: auto;
	padding-top: 4rem;
    padding-bottom: 4rem;
}

#post_list_wrap .inner {
}

#post_list_wrap .post_list {
    margin: auto;
	max-width: none;
}
#post_list_wrap .post_list > li {
    width: 100%;
	padding-bottom: 2.5rem;
	border-bottom: 2px solid #CAE0FF;
	margin-bottom: 2.5rem;
}
	
#top #post_list_wrap .top_link {
    margin-bottom: 6rem;
}
    
#post_list_wrap .post_list > li:last-child {
	margin-bottom: 0;
}

#post_list_wrap .post_list .thumbnail {
    width: 100%;
}
#post_list_wrap .info_wrap .job .job_cat_list {
	font-size: 1.2rem;
}
#post_list_wrap .info_wrap .tag .tag_list {
	font-size: 1.2rem;
}
}




/* #post_single_wrap
----------------------------------------- */
#post_single_wrap {
    padding-top: 10rem;
	padding-bottom: 20rem;
}

#post_single_wrap .inner {
	max-width: 80rem;
}

#post_single_wrap img {
	width: auto;
	max-width: 100%;
	height: auto;
}

#post_single_wrap .ttl_wrap {
	margin-bottom: 5rem;
}


#post_single_wrap h1 {
	font-size: 2.7rem;
	letter-spacing: 0.04em;
    line-height: 1.4;
    font-weight: 700;
    text-align: left;
}
#post_single_wrap .date {
	font-size: 1.6rem;
	letter-spacing: 0.04em;
    line-height: 1;
	color: #666666;
	margin-bottom: 2rem;
	text-align: left;
}

#post_single_wrap .post_con {
    width: 100%;
    padding: 5rem;
    text-align: justify;
	font-size: 1.5rem;
	letter-spacing: 0.04em;
	line-height: 2.13;
}

#post_single_wrap .post_con p {
   /*margin-bottom: 3rem;*/
}

#post_single_wrap .post_con h1 {
    font-size: 2.2rem;
    line-height: 1.4;
	font-weight: 700;
	margin-bottom: 3.5rem;
}
#post_single_wrap .post_con h1::after {
    content: "";
	display: block;
	width: 100%;
	height: 0.2rem;
	background-color: #001F60;
	margin-top: 1rem;
}

#post_single_wrap .post_con h2 {
    font-size: 1.8rem;
    line-height: 1.4;
	font-weight: 700;
	color: #001F60;
	margin-bottom: 3.5rem;
}

#post_single_wrap .post_con h3 {
    font-size: 1.8rem;
    line-height: 1.4;
	font-weight: 700;
	color: #001F60;
	margin-bottom: 3rem;
}

#post_single_wrap .post_con a {
	color: #FFB700;
    text-decoration: underline;
}

#post_single_wrap .post_con hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #a5a5a5;
    margin: 4rem 0;
    padding: 0;
}

#post_single_wrap .pagenavi {
    display: flex;
    align-items: flex-start;
}

#post_single_wrap .pagenavi li.all {
    display: flex;
    align-items: center;
    justify-content: center;
}

#post_single_wrap .pagenavi li.next,
#post_single_wrap .pagenavi li.next a span {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    font-size: 1.3rem;
    letter-spacing: 0.04em;
}

#post_single_wrap .pagenavi li.next a span::after {
   content: "";
	display: block;
	width: 1.7rem;
	height: 1.7rem;
	background:  url(../images/arrow.svg) no-repeat center center;
	background-size: cover;
	margin-left: 1rem;
}

#post_single_wrap .pagenavi li.all a {
    font-size: 1.3rem;
    letter-spacing: 0.04em;
}
#post_single_wrap .pagenavi li.all a::after {
   content: "";
	display: block;
	width: 100%;
	height: 0.1rem;
	background-color: #000000;
	margin-top: 1rem;
	-webkit-transition: all .6s;
    transition: all .6s;
}
#post_single_wrap .pagenavi li.all a:hover::after {
	margin-top: 0.5rem;
}

#post_single_wrap .pagenavi li.prev,
#post_single_wrap .pagenavi li.prev a span {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    font-size: 1.3rem;
    letter-spacing: 0.04em;
}
#post_single_wrap .pagenavi li.prev a span::before {
   content: "";
	display: block;
	width: 1.7rem;
	height: 1.7rem;
	background:  url(../images/arrow.svg) no-repeat center center;
	background-size: cover;
	-webkit-transform: rotate(180deg);
	transform:rotate(180deg);
	margin-right: 1rem;
}



@media screen and (max-width: 768px) {
	#post_single_wrap {
    padding-top: 3rem;
	padding-bottom: 10rem;
}
	
   #post_single_wrap .inner {
	   width: 30.5rem;
}
    #post_single_wrap h2 {
    width: 100%;
	margin-bottom: 1rem;
}
	#post_single_wrap h1 {
	font-size: 2.0rem;
	letter-spacing: 0.04em;
}
	
	#post_single_wrap .ttl_wrap {
    margin-bottom: 3.5rem;
}
	
	#post_single_wrap .date {
    font-size: 1.2rem;
    margin-bottom: 2rem;
}
	#post_single_wrap .lead_wrap {
    font-size: 1.6rem;
    margin-bottom: 3rem;
}
    
	#post_single_wrap .top_img {
    width: 100vw;
}
	
	#post_single_wrap .post_con {
    padding: 0;
	padding-top: 2rem;
	font-size: 1.4rem;
}
    
	#post_single_wrap .post_con h1 {
    font-size: 2.0rem;
    margin-bottom: 3.0rem;
}
	
	#post_single_wrap .post_con h2 {
    font-size: 1.6rem;
    margin-bottom: 3.0rem;
}
	#post_single_wrap .post_con h3 {
    font-size: 1.6rem;
    margin-bottom: 3rem;
}
	
	
    #post_single_wrap .pagenavi li.prev {
    width: 32%;
}
    #post_single_wrap .pagenavi li.all {
    width: 32%;
}
    #post_single_wrap .pagenavi li.next {
    width: 32%;
}
    
    #post_single_wrap .pagenavi li.next a span {
    font-size: 1.1rem;
    margin-left: 0.5em;
}
}




/* pagenation
----------------------------------------- */
#pagenation{
	text-align: center;
    margin: 5rem auto 0;
}
#pagenation #pagenation-list{
	display: inline-flex;
    align-items: center;
    justify-content: center;
}

#pagenation #pagenation-list li{
    margin-right: 2rem;
	display: flex;
    align-items: center;
    justify-content: center;
    -webkit-transition: all .6s;
    transition: all .6s;
}

#pagenation #pagenation-list li:last-child {
	margin-right: 0;
}

#pagenation #pagenation-list a,
#pagenation #pagenation-list span{
	font-size: 1.6rem;
	line-height: 1;
    display: flex;
    align-items: center;
    justify-content: center;
	padding-bottom: 0.2rem;
    width: 100%;
    height: 100%;
    -webkit-transition: all .6s;
    transition: all .6s;
}

#pagenation #pagenation-list a.num {
    box-sizing: border-box;
	border: 2px solid #001F60;
	background-color: #FFFFFF;
    border-radius: 50%;
    width: 4rem;
    height: 4rem;
}

/*#pagenation #pagenation-list a.next{
    background: url(../images/post/post_next.svg) no-repeat;
    background-size: contain;
    width: 50px;
    height: 16px;
    margin-left: 20px;
    margin-right: -80px;
    border-radius: 0;
    background-position: -22px center;
    -webkit-transition: all .8s;
    transition: all .8s;
}
#pagenation #pagenation-list a.prev{
    background: url(../images/post/post_prev.svg) no-repeat;
    background-size: contain;
    width: 50px;
    height: 16px;
    margin-right: 20px;
    margin-left: -80px;
    border-radius: 0;
    background-position: 22px center;
    -webkit-transition: all .8s;
    transition: all .8s;
}

#pagenation #pagenation-list a.next:hover, #pagenation #pagenation-list a.prev:hover {
	background-position: 0 center;
}*/


#pagenation #pagenation-list .current{
	color: #ffffff;
    background: #001F60;
    border-radius: 50%;
    width: 4rem;
    height: 4rem;
}

#pagenation #pagenation-list .omit{
    width: 6rem;
    height: 4rem;
	position: relative;
	display: flex;
	align-items: center;
}
#pagenation #pagenation-list .omit::after {
	content: "";
	display: block;
    width: 100%;
    height: 0.2rem;
	background-color: #001F60;
}

#pagenation #pagenation-list a.num:hover{
	color: #ffffff;
    background: #001F60;
	opacity: 1;
}

#pagenation #pagenation-list a.next:hover,
#pagenation #pagenation-list a.prev:hover {
    background-color: transparent;
	opacity: 0.6;  
    filter: alpha(opacity=60);  
	-ms-filter: "alpha( opacity=60 )";
}

#pagenation #pagenation-list li:hover .current,
#pagenation #pagenation-list li .prev,
#pagenation #pagenation-list li .next {
	border: none;
}


@media screen and (max-width: 768px) {
#pagenation {
    margin: 4rem auto 0;
}
    
#pagenation #pagenation-list li{
    margin-right: 2rem;
}
    
#pagenation #pagenation-list a,
#pagenation #pagenation-list span{
    font-size: 1.9rem;
}
    
#pagenation #pagenation-list a.num {
    width: 5rem;
    height: 5rem;
}
#pagenation #pagenation-list .current{
	width: 5rem;
    height: 5rem;
}

#pagenation #pagenation-list .omit{
	width: 5rem;
    height: 5rem;
}
}