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


/* #page_ttl_wrap
----------------------------------------- */
#page_ttl_wrap {
}

#page_ttl_wrap .inner {
    padding: 0 2rem;
}

@media screen and (max-width: 768px) {
#page_ttl_wrap .inner {
    padding: 0 1rem;
}
}


/* #post_catlist_wrap
----------------------------------------- */
#post_catlist_wrap {
    margin-top: 2rem;
}

#post_catlist_wrap .post_catlist {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    position: relative;
    gap: 1rem 2rem
}

#post_catlist_wrap .post_catlist a {
    position: relative;
}
#post_catlist_wrap .post_catlist a span {
    font-size: 1.4rem;
    letter-spacing: 0.065em;
    font-weight: 300;
}
#post_catlist_wrap .post_catlist a::after {
    content: '';
    display: block;
    width: 100%;
    height: 1px;
    background-color: #231815;
    position: absolute;
    bottom: -0.5rem;
    left: 0;
    
    transition: all .6s;
    opacity: 0;
}
#post_catlist_wrap .post_catlist a:hover::after {
    opacity: 1;
}
#post_catlist_wrap .post_catlist .current a::after {
    opacity: 1;
}
#post_catlist_wrap .post_catlist .current2 a::after {
    opacity: 1;
}

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

}



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

#post_list_wrap .inner {
	/*max-width: 90rem;*/
    padding: 0 3rem;
	padding-top: 10rem;
	padding-bottom: 20rem;
}

#post_list_wrap.other .inner {
	padding-top: 9rem;
    position: relative;
}
#post_list_wrap.other .inner::after {
    content: '';
    display: block;
    width: 7rem;
    height: 1px;
    background-color: #939394;
    position: absolute;
    top: 0;
    left: 1rem;
}

#post_list_wrap .post_list {
	width: 100%;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10rem 6rem;
}

#post_list_wrap .post_list > li {
}

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

#post_list_wrap .post_list .thumbnail {
    overflow: hidden;
	position: relative;
}
#post_list_wrap .post_list .thumbnail .img_wrap {
	width: 100%;
    aspect-ratio: 380 / 285;
}
#post_list_wrap .post_list .thumbnail .img_wrap img {
	width: 100%;
    height: 100%;
    object-fit: cover;
}

#post_list_wrap .post_list .thumbnail::after {
    content: '';
    display: block;
    width: 100%;
    height: 100%;;
    position: absolute;
    top: 0;
    left: 0;
    background-color: rgba(255,255,255,0.20);
    opacity: 0;
    transition: all .6s;
}
#post_list_wrap .post_list .thumbnail:hover::after {
    opacity: 1;
}

#post_list_wrap .post_list .txt_con {
    /*width: 13.8rem;*/
    width: 100%;
    margin-top: 2rem;
}

#post_list_wrap h2 {
    font-size: 1.3rem;
    letter-spacing: 0.03em;
	line-height: calc(21/13);
    font-weight: 400;
    /*display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;*/
}

#post_list_wrap .info_wrap {
    flex-wrap: nowrap;
    align-items: center;
    justify-content: flex-start;
    column-gap: 4rem;
	margin-top: 1rem;
}
#post_list_wrap .date {
    font-size: 1.3rem;
    letter-spacing: 0.03em;
	line-height: calc(21/13);
    font-weight: 400;
    color: #808080;
}
#post_list_wrap .category {
}
#post_list_wrap .category .cat_list {
	flex-wrap: wrap;
	justify-content: flex-start;
}
#post_list_wrap .category .cat_list li {
	display: flex;
}
#post_list_wrap .category .cat_list li:not(:last-child) {
	margin-right: 1rem;
}
#post_list_wrap .category .cat_list a {
	font-size: 1.3rem;
    letter-spacing: 0.03em;
	line-height: calc(21/13);
    font-weight: 400;
    color: #808080;
    transition: all .6s;
}
#post_list_wrap .category .cat_list a:hover {
}


#post_list_wrap .news_table {
	width: 100%;
    border-top: 1px solid #b8b9b9;
    margin-top: 1rem;
}
#post_list_wrap .news_table td {
	padding: 1.8rem 0;
    vertical-align: middle;
}
#post_list_wrap .news_table tr {
    border-bottom: 1px solid #b8b9b9;
}
#post_list_wrap .news_table tr > td:first-child {
    padding-left: 2rem;
    min-width: 14rem;
}
#post_list_wrap .news_table tr > td:nth-child(2) {
    padding-right: 12rem;
}
#post_list_wrap .news_table tr > td:last-child {
    width: 100%;
}
#post_list_wrap .news_table .date {
	font-size: 1.3rem;
    letter-spacing: 0.065em;
	line-height: 1;
	white-space: nowrap;
    font-weight: 400;
    color: #808080;
}
#post_list_wrap .news_table .category {
}
#post_list_wrap .news_table .category .cat_list > li {
}
#post_list_wrap .news_table .category .cat_list > li:not(:last-child) {
	margin-right: 1rem;
}
#post_list_wrap .news_table .category .cat_list a {
    display: flex;
    font-size: 1.3rem;
    letter-spacing: 0.065em;
	line-height: 1;
	white-space: nowrap;
    font-weight: 400;
    color: #808080;
}

#post_list_wrap .news_table .ttl a {
	font-size: 1.3rem;
    letter-spacing: 0.065em;
	line-height: 1;
	white-space: nowrap;
    font-weight: 400;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden;
}
#post_list_wrap .news_table .ttl a br {
	display: none;
}

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

#post_list_wrap .inner {
    padding: 0;
	padding-top: 5rem;
	padding-bottom: 6rem;
}

#post_list_wrap.other .inner {
	padding-top: 8rem;
}
#post_list_wrap.other .inner::after {
    left: -1.5rem;
}

#post_list_wrap .post_list {
	width: 100%;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 5rem 2.5rem;
}

#post_list_wrap .post_list .thumbnail .img_wrap {
    aspect-ratio: 160 / 120;
}

#post_list_wrap .post_list .txt_con {
    margin-top: 1rem;
}

#post_list_wrap h2 {
    font-size: 1.3rem;
}

#post_list_wrap .info_wrap {
    flex-flow: column;
    align-items: flex-start;
    gap: 0.5rem 0;
	margin-top: 1rem;
}
#post_list_wrap .date {
    font-size: 1.0rem;
}
#post_list_wrap .category .cat_list a {
	font-size: 1.0rem;
}
#post_list_wrap .category .cat_list a:hover {
}


#post_list_wrap .news_table {
    margin-top: 1rem;
}
#post_list_wrap .news_table td {
	padding: 0;
}
#post_list_wrap .news_table tr {
    border-bottom: 1px solid #b8b9b9;
    display: flex;
    flex-flow: column;
    padding: 1.8rem 1rem;
    gap: 1rem 0;
}
#post_list_wrap .news_table tr > td:first-child {
    padding-left: 0;
    min-width: inherit;
}
#post_list_wrap .news_table tr > td:nth-child(2) {
    padding-right: 0;
}
#post_list_wrap .news_table tr > td:last-child {
    width: 100%;
}
#post_list_wrap .news_table .date {
	font-size: 1.3rem;
}
#post_list_wrap .news_table .category .cat_list a {
    font-size: 1.3rem;
}

#post_list_wrap .news_table .ttl a {
	font-size: 1.3rem;
	line-height: calc(21 / 13);
	white-space: normal;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}
#post_list_wrap .news_table .ttl a br {
	display: inherit;
}
}


/* #post_single_wrap
----------------------------------------- */
#post_single_wrap {
}

#post_single_wrap .inner {
    /*max-width: 90rem;*/
	padding: 0 3rem;
    padding-top: 10rem;
    padding-bottom: 9rem;
}

#post_single_wrap .main_img {
    max-width: 100rem;
    margin-bottom: 5rem;
}

#post_single_wrap h1 {
	font-size: 1.9rem;
    letter-spacing: 0.03em;
    line-height: calc(29/19);
    font-weight: 400;
}

#post_single_wrap .info_wrap {
    flex-wrap: nowrap;
    align-items: center;
    justify-content: flex-start;
    column-gap: 4rem;
	margin-top: 1rem;
    position: relative;
}
#post_single_wrap .info_wrap::after {
    content: '';
    display: block;
    width: 7rem;
    height: 1px;
    background-color: #939394;
    position: absolute;
    bottom: -4rem;
    left: -2rem;
}

#post_single_wrap .date {
    font-size: 1.4rem;
    letter-spacing: 0.03em;
	line-height: calc(21/13);
    font-weight: 400;
    color: #808080;
}
#post_single_wrap .category {
}
#post_single_wrap .category .cat_list {
	flex-wrap: wrap;
	justify-content: flex-start;
}
#post_single_wrap .category .cat_list li {
	display: flex;
}
#post_single_wrap .category .cat_list li:not(:last-child) {
	margin-right: 1rem;
}
#post_single_wrap .category .cat_list a {
	font-size: 1.3rem;
    letter-spacing: 0.03em;
	line-height: calc(21/13);
    font-weight: 400;
    color: #808080;
    transition: all .6s;
}
#post_single_wrap .category .cat_list a:hover {
}


#post_single_wrap .post_con {
    width: 100%;
    max-width: 60rem;
    margin-top: 8rem;
    text-align: left;
    font-size: 1.5rem;
    line-height: calc(24/15);
    letter-spacing: 0.03em;
}

#post_single_wrap .post_con img {
    min-width: 80rem;
    height: auto;
    /*margin-bottom: 6rem;*/
    overflow: hidden;
}

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

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


#post_single_wrap .post_con .wp-caption {
	width: auto !important;
    max-width: 100%;
}
#post_single_wrap .post_con .wp-caption-text {
    color: #a4a4a4;
    margin: 0;
    font-size: 1.2rem;
    line-height: 1.6;
}

#post_single_wrap .post_con h2 {
	font-size: 1.8rem;
	margin-top: 8rem;
	margin-bottom: 2rem;
    padding-bottom: 2rem;
    position: relative;
}
#post_single_wrap .post_con h2::after {
    content: '';
    display: block;
    width: 6rem;
    height: 0.1rem;
    background-color: #717071;
    position: absolute;
    bottom: 0;
    left: -2.5rem;
}

#post_single_wrap .post_con h3 {
    font-size: 1.7rem;
	margin-top: 6rem;
	margin-bottom: 2rem;
    padding-bottom: 2rem;
    position: relative;
}
#post_single_wrap .post_con h3::after {
    content: '';
    display: block;
    width: 6rem;
    height: 0.1rem;
    background-color: #717071;
    position: absolute;
    bottom: 0;
    left: -2.5rem;
}
#post_single_wrap .post_con h4 {
    font-size: 1.6rem;
	margin-top: 6rem;
	margin-bottom: 2rem;
    padding-bottom: 2rem;
    position: relative;
}
#post_single_wrap .post_con h4::after {
    content: '';
    display: block;
    width: 6rem;
    height: 0.1rem;
    background-color: #717071;
    position: absolute;
    bottom: 0;
    left: -2.5rem;
}


#post_single_wrap #toc_container {
    background: #f9f9f9;
    border: 1px solid #aaa;
    padding: 10px;
    margin-bottom: 1em;
    width: auto;
    display: table;
    font-size: 1.6rem;
}

#post_single_wrap #toc_container .toc_depth_3 {
    font-size: 0
}
#post_single_wrap #toc_container .toc_depth_3::before {
    content: "・";
    font-size: 1.6rem;
}

#post_single_wrap .post_con #ez-toc-container {
	border: 1px solid #e3e3e3;
	border-radius: 0;
	padding: 2rem;
	box-shadow: 0 0 0 0;
	margin-bottom: 3em;
}
#post_single_wrap .post_con #ez-toc-container .ez-toc-list {
}
#post_single_wrap .post_con #ez-toc-container .ez-toc-list > li:not(:last-child) {
	margin-bottom: 1rem;
}
#post_single_wrap .post_con #ez-toc-container .ez-toc-list a {
	font-size: 1.4rem;
}

#post_single_wrap .post_con #ez-toc-container .ez-toc-title-container {
    margin-bottom: 1rem;
}
#post_single_wrap .post_con #ez-toc-container .ez-toc-title-container .ez-toc-title {
    font-size: 1.8rem;
}

#post_single_wrap .post_con .point_list {
    margin-top: 4rem;
}
#post_single_wrap .post_con .point_list > li:not(:last-child) {
    margin-bottom: 2rem;
}
#post_single_wrap .post_con .point_list > li .ttl span {
    font-size: 1.2rem;
}
#post_single_wrap .post_con .att {
    font-size: 1.2rem;
}


#post_single_wrap .pagenavi {
    margin: auto;
    margin-top: 6rem;
    width: 100%;
	height: auto;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    column-gap: 2.5rem;
}
#post_single_wrap .pagenavi li {
}
#post_single_wrap .pagenavi li a {
    display: flex;
}
#post_single_wrap .pagenavi li span {
	font-size: 1.4rem;
    line-height: 1;
    letter-spacing: 0.065em;
    font-weight: 400;
    white-space: nowrap;
}


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

#post_single_wrap .inner {
    width: 30rem;
	padding: 0;
    padding-top: 5rem;
    padding-bottom: 8rem;
}

#post_single_wrap .main_img {
    max-width: none;
    width: 33rem;
    margin-left: -1.5rem;
    margin-right: -1.5rem;
    margin-bottom: 3rem;
}

#post_single_wrap h1 {
	font-size: 1.7rem;
}

#post_single_wrap .info_wrap {
    flex-wrap: nowrap;
    align-items: center;
    justify-content: flex-start;
    column-gap: 4rem;
	margin-top: 1rem;
    position: relative;
}
#post_single_wrap .info_wrap::after {
    bottom: -4rem;
    left: -4rem;
}

#post_single_wrap .date {
    font-size: 1.4rem;
}
#post_single_wrap .category .cat_list li:not(:last-child) {
	margin-right: 1rem;
}
#post_single_wrap .category .cat_list a {
	font-size: 1.3rem;
}

#post_single_wrap .post_con {
    margin-top: 8rem;
    text-align: left;
    font-size: 1.5rem;
    line-height: calc(24/15);
    letter-spacing: 0.03em;
}

#post_single_wrap .post_con img {
    width: 100%;
    min-width: inherit;
}
	
#post_single_wrap .post_con p {
    margin-bottom: 1.5rem;
}
    
#post_single_wrap .post_con h2 {
    font-size: 1.8rem;
    margin-top: 6rem;
	margin-bottom: 2rem;
    padding-bottom: 2rem;
}
#post_single_wrap .post_con h3 {
    font-size: 1.7rem;
    margin-top: 5rem;
	margin-bottom: 2rem;
    padding-bottom: 2rem;
}
#post_single_wrap .post_con h4 {
    font-size: 1.6rem;
    margin-top: 4rem;
	margin-bottom: 2rem;
    padding-bottom: 2rem;
}

    
#post_single_wrap .post_con .wp-caption-text {
    font-size: 1.1rem;
}
    
    
#post_single_wrap .post_con .point_list {
    margin-top: 2rem;
}
#post_single_wrap .post_con .point_list > li:not(:last-child) {
    margin-bottom: 1rem;
}
#post_single_wrap .post_con .point_list > li .ttl span {
    font-size: 1.1rem;
}
#post_single_wrap .post_con .att {
    font-size: 1.1rem;
}
    
    
#post_single_wrap .pagenavi {
    margin-top: 12rem;
}
	
#post_single_wrap .pagenavi li a {
	font-size: 1.4rem;
}
#post_single_wrap .pagenavi li a.btn span {
    font-size: 1.4rem;
}
    
}




/* pagenation
----------------------------------------- */
#pagenation {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 1.5rem;
    margin-top: 12rem;
}
#pagenation #pagenation-list {
	display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 1rem;
}

#pagenation #pagenation-list li {
    display: flex;
}

#pagenation #pagenation-list a,
#pagenation #pagenation-list span {
	font-size: 1.4rem;
    letter-spacing: 0.065em;
    line-height: 1;
    font-weight: 400;
    padding: 0 0.2rem;
	position: relative;
    z-index: 1;
    transition: all .6s;
}
#pagenation #pagenation-list a::after,
#pagenation #pagenation-list span::after {
    content: '';
    display: block;
    width: 100%;
    height: 1px;
    background-color: #231815;
    position: absolute;
    bottom: -0.5rem;
    left: 0;
    
    transition: all .6s;
    opacity: 0;
}
#pagenation #pagenation-list a:hover::after,
#pagenation #pagenation-list span:hover::after {
    opacity: 1;
}
#pagenation #pagenation-list a.current::after,
#pagenation #pagenation-list span.current::after {
    opacity: 1;
}

#pagenation #pagenation-list .omit{
	font-size: 1.4rem;
	line-height: 1;
}


#pagenation .pager .prev::before {
    content: '《'
}
#pagenation .pager .next::before {
    content: '》'
}

@media screen and (max-width: 768px) {
#pagenation {
    gap: 1.5rem;
    margin-top: 8rem;
}
#pagenation #pagenation-list {
	display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 1rem;
}

#pagenation #pagenation-list a,
#pagenation #pagenation-list span {
	font-size: 1.4rem;
    padding: 0 0.2rem;
}

}