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


/* #post_list_wrap
----------------------------------------- */
#post_list_wrap {
}

#post_list_wrap .inner {
    width: 100%;
    max-width: none;
}

#post_list_wrap .layout {
	width: 100%;
    display: flex;
    flex-flow: row-reverse;
}

#post_list_wrap .layout .side {
	width: calc(520/1920*100%);
    padding-top: 24rem;
	padding-bottom: 16rem;
    display: flex;
    flex-flow: column;
    align-items: center;
}
#post_list_wrap .layout .main {
	width: calc(1400/1920*100%);
    background-color: #ebf0f5;
    display: flex;
    flex-flow: column;
    align-items: center;
    padding-top: 24rem;
	padding-bottom: 16rem;
}

#post_list_wrap .layout .side .side_layout {
    width: 100%;
    max-width: 28rem;
	display: flex;
    flex-flow: column;
    gap:7rem;
}

#post_list_wrap .post_catlist_wrap {
    display: flex;
}
#post_list_wrap .post_catlist_wrap .post_catlist {
    display: flex;
    flex-flow: column;
    align-items: flex-start;
    gap: 2rem;
}
#post_list_wrap .post_catlist_wrap .post_catlist > li a span {
    font-size: 1.4rem;
    letter-spacing: 0.05em;
    color: #FFFFFF;
}
#post_list_wrap .post_catlist_wrap .post_catlist .btn_wrap .btn {
    border: 2px solid #b4b4b4;
    background-color: #b4b4b4;
}
#post_list_wrap .post_catlist_wrap .post_catlist .btn_wrap .btn:hover {
    border: 2px solid #008cf0;
    background-color: #008cf0;
}
#post_list_wrap .post_catlist_wrap .post_catlist .btn_wrap.current .btn {
    border: 2px solid #008cf0;
    background-color: #008cf0;
}

#post_list_wrap .post_list_wrap {
    width: 100%;
    max-width: 80rem;
    display: flex;
    flex-flow: column;
}
#post_list_wrap .post_list {
    width: 100%;
    border-top: 1px solid #969696;
}
#post_list_wrap .post_list > li {
    padding: 4rem 0;
    border-bottom: 1px solid #969696;
}
#post_list_wrap .post_list > li .post_layout {
	width: 100%;
    display: flex;
    flex-flow: column;
}
#post_list_wrap .post_list > li .post_layout .info_wrap {
    display: flex;
    gap: 1.5rem;
    margin-bottom: 1rem;
}
#post_list_wrap .date {
    font-weight: 700;
    color: #969696;
}
#post_list_wrap .category {
    display: flex;
    gap: 1.5rem;
    font-weight: 700;
    color: #0078d2;
}
#post_list_wrap .category::before {
    content: '／';
}
#post_list_wrap .category .cat_list {
    display: flex;
	flex-wrap: wrap;
    align-items: center;
	justify-content: flex-start;
    gap: 1rem;
}
#post_list_wrap .category .cat_list li {
	display: flex;
}
#post_list_wrap .category .cat_list a {
    font-weight: 700;
    color: #0078d2;
}
#post_list_wrap .category .cat_list a:hover {
}

#post_list_wrap h2.post_ttl {
    font-size: 1.8rem;
	line-height: calc(32/18);
    font-weight: 700;
    /*display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;*/
}


#post_list_wrap .archive_select {
    position: relative;
    width: 20rem;
}

#post_list_wrap .archive_select select {
    width: 100%;
    height: 4rem;
    padding: 0 3rem 0 2.5rem;
    border: 2px solid #8b8b8b;
    border-radius: 10rem;
    background: #fff;
    font-size: 1.4rem;
    font-family: "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, yu-gothic-pr6n, 'ヒラギノ角ゴ ProN', "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
    font-weight: 500;
    appearance: none;
    cursor: pointer;
}

/* 矢印 */
#post_list_wrap .archive_select::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 2.5rem;
    width: 0.6rem;
    height: 0.6rem;
    border-right: 2px solid #8b8b8b;
    border-bottom: 2px solid #8b8b8b;
    transform: translateY(-70%) rotate(45deg);
    pointer-events: none;
}


@media screen and (max-width: 768px) {
#post_list_wrap .layout {
	flex-flow: column-reverse;
}
#post_list_wrap .layout .side {
	width: 100%;
    padding: 3.5rem;
    padding-top: 6rem;
	padding-bottom: 7.5rem;
}
#post_list_wrap .layout .main {
	width: 100%;
    padding: 3.5rem;
    padding-top: 11rem;
	padding-bottom: 8rem;
}

#post_list_wrap .layout .side .side_layout {
    max-width: 32rem;
    gap:3rem;
}

#post_list_wrap .post_catlist_wrap {
    display: flex;
}
#post_list_wrap .post_catlist_wrap .post_catlist {
    display: flex;
    flex-flow: row;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 2.5rem 2rem;
}
#post_list_wrap .post_catlist_wrap .post_catlist > li a span {
    font-size: 1.5rem;
}
#post_list_wrap .post_catlist_wrap .post_catlist .btn_wrap .btn {
    border: 2px solid #b4b4b4;
    background-color: #b4b4b4;
}
#post_list_wrap .post_catlist_wrap .post_catlist .btn_wrap .btn:hover {
    border: 2px solid #008cf0;
    background-color: #008cf0;
}
#post_list_wrap .post_catlist_wrap .post_catlist .btn_wrap.current .btn {
    border: 2px solid #008cf0;
    background-color: #008cf0;
}

#post_list_wrap .post_list_wrap {
    width: 100%;
    max-width: 80rem;
    display: flex;
    flex-flow: column;
}
#post_list_wrap .post_list {
    width: 100%;
    border-top: 1px solid #969696;
}
#post_list_wrap .post_list > li {
    padding: 4rem 0;
    border-bottom: 1px solid #969696;
}
#post_list_wrap .post_list > li .post_layout {
	width: 100%;
    display: flex;
    flex-flow: column;
}
#post_list_wrap .post_list > li .post_layout .info_wrap {
    display: flex;
    gap: 1.5rem;
    margin-bottom: 1rem;
}
#post_list_wrap .date {
    font-weight: 700;
    color: #969696;
}
#post_list_wrap .category {
    display: flex;
    gap: 1.5rem;
    font-weight: 700;
    color: #0078d2;
}
#post_list_wrap .category::before {
    content: '／';
}
#post_list_wrap .category .cat_list {
    display: flex;
	flex-wrap: wrap;
    align-items: center;
	justify-content: flex-start;
    gap: 1rem;
}
#post_list_wrap .category .cat_list li {
	display: flex;
}
#post_list_wrap .category .cat_list a {
    font-weight: 700;
    color: #0078d2;
}
#post_list_wrap .category .cat_list a:hover {
}

#post_list_wrap h2.post_ttl {
    font-size: 1.5rem;
	line-height: calc(26/15);
    /*display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;*/
}


#post_list_wrap .archive_select {
    position: relative;
    width: 100%;
}

#post_list_wrap .archive_select select {
    height: 5rem;
    padding: 0 3rem 0 2.5rem;
    font-size: 1.4rem;
}

/* 矢印 */
#post_list_wrap .archive_select::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 2.5rem;
    width: 0.6rem;
    height: 0.6rem;
    border-right: 2px solid #8b8b8b;
    border-bottom: 2px solid #8b8b8b;
    transform: translateY(-70%) rotate(45deg);
    pointer-events: none;
}

}



/* #post_list_wrap.related 
----------------------------------------- */
#post_list_wrap.related {
}
#post_list_wrap.related .inner {
    max-width: 100rem;
    padding: 0 5rem;
	padding-top: 4.5rem;
    border-top: 1px solid #DDDDDD;
	padding-bottom: 13rem;
}
#post_list_wrap.related .ttl {
    font-size: 2.2rem;
    letter-spacing: 0.03em;
    line-height: 1;
    font-weight: 700;
}
#post_list_wrap.related .post_list {
    width: 100%;
    margin-top: 4rem;
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 6rem 3rem;
}
#post_list_wrap.related .post_list .txt_con {
    margin-top: 1rem;
    gap: 0.5rem;
}
#post_list_wrap.related .post_list .txt_con .date {
    font-size: 1.2rem;
}
#post_list_wrap.related .post_list .txt_con h2.post_ttl {
    font-size: 1.5rem;
	line-height: calc(23/15);
}
#post_list_wrap.related .category .cat_list a {
	font-size: 1.2rem;
}

@media screen and (max-width: 768px) {
#post_list_wrap.related {
}
#post_list_wrap.related .inner {
    padding: 0;
	padding-top: 4rem;
	padding-bottom: 9rem;
}
#post_list_wrap.related .ttl {
    font-size: 1.8rem;
    text-align: center;
}
#post_list_wrap.related .post_list {
    margin-top: 3rem;
    display: grid;
    grid-template-columns: repeat(1,1fr);
    gap: 2.5rem 0;
}
#post_list_wrap.related .post_list .txt_con {
    margin-top: 0;
    gap: 0.5rem;
}
#post_list_wrap.related .post_list .txt_con .date {
    font-size: 1.3rem;
}
#post_list_wrap.related .post_list .txt_con h2.post_ttl {
    font-size: 1.4rem;
	line-height: calc(20/14);
}
#post_list_wrap.related .category .cat_list a {
	font-size: 1.0rem;
}
}


/* #post_single_wrap
----------------------------------------- */
#post_single_wrap {
    background-color: #ebf0f5;
}

#post_single_wrap .inner {
    padding-top: 23rem;
    padding-bottom: 20rem;
}

#post_single_wrap .post_con_wrap {
    width: 100%;
    max-width: 90rem;
    margin: auto;
}

#post_single_wrap .info_wrap {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: flex-start;
    gap: 1.5rem;
    margin-bottom: 1rem;
    position: relative;
}

#post_single_wrap .date {
    font-weight: 700;
    color: #969696;
}
#post_single_wrap .category {
    display: flex;
    gap: 1.5rem;
    font-weight: 700;
    color: #0078d2;
}
#post_single_wrap .category::before {
    content: '／';
}
#post_single_wrap .category .cat_list {
    display: flex;
	flex-wrap: wrap;
    align-items: center;
	justify-content: flex-start;
    gap: 1rem;
}
#post_single_wrap .category .cat_list li {
	display: flex;
}
#post_single_wrap .category .cat_list a {
    font-weight: 700;
    color: #0078d2;
}
#post_single_wrap .category .cat_list a:hover {
}

#post_single_wrap h1.post_ttl {
	font-size: 2.3rem;
    letter-spacing: 0.03em;
    line-height: calc(40/23);
    font-weight: 700;
}

#post_single_wrap .post_con {
    margin-top: 5rem;
    border-top: 1px solid #969696;
    padding-top: 2rem;
    /*display: flex;
    flex-flow: column;
    align-items: flex-start;*/
}

#post_single_wrap .pagenavi {
    width: 100%;
    margin-top: 10rem;
    border-top: 1px solid #969696;
    padding-top: 5rem;
	height: auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
#post_single_wrap .pagenavi li {
}
#post_single_wrap .pagenavi li a {
    display: flex;
    align-items: center;
    gap: 1.5rem;
}
#post_single_wrap .pagenavi li span {
    font-weight: 700;
    line-height: 1;
    white-space: nowrap;
    transition: all .6s;
}

#post_single_wrap .pagenavi li.all a {
    width: 25rem;
    height: 5rem;
    background-color: #FFFFFF;
    box-sizing: border-box;
    border: 2px solid #8b8b8b;
    border-radius: 10rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    column-gap: 3.5rem;
    padding: 1.5rem 2rem;
    position: relative;
    z-index: 1;
    overflow: hidden;
}
#post_single_wrap .pagenavi li.all a:hover {
    background-color: #8b8b8b;
}
#post_single_wrap .pagenavi li.all a:hover span {
    color: #FFFFFF;
}

#post_single_wrap .pagenavi li.prev a #arrow_svg {
    transform: scale(-1,1);
}
#post_single_wrap .pagenavi li.next a #arrow_svg {
}
#post_single_wrap .pagenavi li a #arrow_svg .cls-1{ 
    fill:#333333;
}


#post_single_wrap .post-share {
    display:flex;
    align-items:center;
    justify-content: center;
    gap: 0 7rem;
    padding: 3rem 0;
    border-top: 1px solid #000000;
    border-bottom: 1px solid #000000;
    margin-top: 12rem;
}

#post_single_wrap .post-share-title {
   font-size: 1.6rem;
    font-weight: 500;
}

#post_single_wrap .post-share-list {
    display:flex;
    align-items:center;
    justify-content:center;
    gap:4rem;
}

#post_single_wrap .post-share-list li {
    display: flex;
}

#post_single_wrap .post-share-list li a {
    display: flex;
}

#post_single_wrap .post-share-list img {
    width: auto;
    height: 2.5rem;
}


@media screen and (max-width: 768px) {
#post_single_wrap {
}

#post_single_wrap .inner {
    width: 32rem;
    padding-top: 11rem;
    padding-bottom: 8rem;
}
    
#post_single_wrap > .inner > .page_ttl {
    font-size: 1.3rem;
    transform: translateY(80%);
}
    
#post_single_wrap h1.post_ttl {
    font-size: 2rem;
    line-height: calc(35 / 20);
}

#post_single_wrap .info_wrap {
    gap: 0.5rem;
	margin-bottom: 1rem;
}

#post_single_wrap .date {
    font-size: 1.4rem;
}
#post_single_wrap .category .cat_list li:not(:last-child) {
	margin-right: 0.5rem;
}
#post_single_wrap .category .cat_list a {
	font-size: 1.4rem;
}   
    
#post_single_wrap .main_img {
    margin-top: 1rem;
}
    
#post_single_wrap .post_con {
    margin-top: 3rem;
    padding-top: 1rem;
}
    
#post_single_wrap .pagenavi {
    margin-top: 5rem;
    padding-top: 4rem;
}
	
#post_single_wrap .pagenavi li a {
	font-size: 1.5rem;
}
#post_single_wrap .pagenavi li a.btn span {
    font-size: 1.5rem;
}
    
}



/* pagenation
----------------------------------------- */
#pagenation {
    padding-top: 9rem;
}

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

}
