 .sponly {
     display: none;
 }

 .blog-head {
     position: relative;
     width: 100%;
     height: 400px;
     background-image: url(/img/usr/blog/bg.png);
     background-size: cover;
     background-repeat: no-repeat;
 }

 .blog-head .wrapper {
     position: absolute;
     background: unset;
     display: flex;
     flex-direction: column;
     gap: 20px;
     text-align: center;
     color: #fff;
     top: 30%;
 }

 .blog-head .wrapper h1 {
     font-size: 50px;
     margin: 0;
     font-family: "Cormorant Garamond";
 }

 .blog-head .wrapper p {
     font-size: 18px;
     text-shadow: 0px 3px 6px rgba(0, 0, 0, 0.4);
     font-weight: bold;
     line-height: 30px;
     letter-spacing: 1.5px;
 }

 .pane-topic-path {
     position: absolute;
     top: 230px;
     z-index: 4;
     background-color: unset;
     width: 100%;
     margin: 0 auto;
     color: #fff;
 }

 .block-topic-path--list a {
     color: #fff;
 }

 main.pane-main {
     display: grid;
     grid-template-columns: repeat(2, 1fr);
     overflow: hidden;
     margin: 60px 0;
 }

 .pane-contents {
     background-color: #343535;
 }

 .pane-contents a {
     color: #fff;
 }

 .block-pagecategory-freespace--caption {
     grid-column: 2;
     grid-row: 1;
     width: 850px;
 }

 .block-pagecategory-page-list {
     grid-column: 2;
     grid-row: 2;
 }

 .block-pagecategory-subcategory-list::before {
     content: "CATEGORY";
     font-family: "Cormorant Garamond", serif;
     color: #fff;
     font-size: 30px;
     font-weight: bold;
 }

 .block-pagecategory-subcategory-list::after {
     content: "カテゴリー";
     top: 12px;
     right: 2px;
     position: absolute;
     color: #fff;
 }

 .block-pagecategory-subcategory-list {
     grid-column: 1;
     grid-row: 1;
     width: 240px;
     height: fit-content;
     padding: 0;
     margin: 0 80px 0 0;
     flex-direction: column;
     flex-wrap: nowrap;
     position: relative;
 }

 .block-pagecategory-freespace--bottom {
     grid-column: 1;
     grid-row: 2;
     width: 240px;
     margin: 40px 80px 0 0;
 }

 .block-pagecategory-subcategory-list--category {
     border-top: #dedede 1px solid;
     display: block;
     overflow: inherit;
 }

 .block-pagecategory-subcategory-list--category:first-child {
     border-top: none;
 }

 .block-pagecategory-subcategory-list--category:last-child {
     border-bottom: 1px solid #dedede;
 }

 .block-pagecategory-subcategory-list--category-image {
     width: 0;
 }

 .block-pagecategory-subcategory-list--category-image:has(img) {
     width: 200px;
 }

 .block-pagecategory-subcategory-list--category a {
     position: relative;
     display: -webkit-box;
     display: -ms-flexbox;
     display: flex;
     width: 85%;
     height: auto;
     font-size: 16px;
     padding: 16px 0 13px;
     align-items: center;
     font-family: "Noto Sans", sans-serif;
 }

 .block-pagecategory-subcategory-list--category a::after {
     position: absolute;
     margin: auto;
     right: -25px;
     content: "";
     width: 15%;
     height: 100%;
     background: url(/img/usr/common/arrow03.png) no-repeat right / contain;
     background-size: 12px;
     display: block;
     cursor: pointer;
     filter: brightness(0) invert(1);
     -webkit-filter: brightness(0) invert(1);
 }

 .block-pagecategory-subcategory-list--category-caption {
     margin: 0;
     padding: 0;
 }

 .left_menu_ttl {
     display: -webkit-box;
     display: -ms-flexbox;
     display: flex;
     -webkit-box-align: center;
     -ms-flex-align: center;
     align-items: center;
     gap: 8px;
 }

 .left_menu_ttl p {
     font-family: "Cormorant Garamond", serif;
     color: #fff;
     font-size: 30px;
     font-weight: bold;
 }

 .left_menu_ttl span {
     font-size: 14px;
     font-weight: normal;
     color: #fff;
 }

 .block-category-tree {
     border: none;
 }

 h2.block-category-tree--header {
     font-size: 0;
     padding: 0 0 15px;
 }

 h2.block-category-tree--header span {
     font-size: 16px;
 }

 .block-category-tree--item,
 .block-category-tree--item__open {
     border-top: #dedede 1px solid;
 }

 .block-category-tree--item a,
 .block-category-tree--item__open a {
     position: relative;
     display: -webkit-box;
     display: -ms-flexbox;
     display: flex;
     width: 85%;
     height: auto;
 }

 .block-category-tree--item a span,
 .block-category-tree--item__open a span {
     font-family: "Noto Sans", sans-serif;
 }

 .block-category-tree--item a .toggle-icon,
 .block-category-tree--item__open a .toggle-icon {
     position: absolute;
     margin: auto;
     right: -25px;
     content: "";
     width: 15%;
     height: 100%;
     background: url("/img/usr/common/plus.png") no-repeat right/contain;
     background-size: 12px;
     display: block;
     cursor: pointer;
     -webkit-filter: brightness(0) invert(1);
     filter: brightness(0) invert(1);
 }

 .block-category-tree--item.is-open>a.is-open .toggle-icon {
     position: absolute;
     top: 0;
     bottom: 0;
     margin: auto;
     right: -25px;
     content: "";
     width: 15%;
     height: 100%;
     background: url("/img/usr/common/minus.png") no-repeat right/contain;
     background-size: 12px;
     display: block;
     cursor: pointer;
     -webkit-filter: brightness(0) invert(1);
     filter: brightness(0) invert(1);
 }

 .block-category-tree--level-1>.block-category-tree--item__open:has(.block-category-tree--items.is-open)>a .toggle-icon {
     position: absolute;
     top: 0;
     bottom: 0;
     margin: auto;
     right: -25px;
     content: "";
     width: 15%;
     height: 100%;
     background: url("/img/usr/common/minus.png") no-repeat right/contain;
     background-size: 12px;
     display: block;
     cursor: pointer;
 }

 .block-category-tree--item a:after,
 .block-category-tree--item__open a:after {
     position: absolute;
     margin: auto;
     right: -25px;
     content: "";
     width: 15%;
     height: 100%;
     background: url("/img/usr/common/arrow03.png") no-repeat right/contain;
     background-size: 12px;
     display: block;
     cursor: pointer;
 }

 .block-category-tree--item a:has(.toggle-icon):after,
 .block-category-tree--item__open a:has(.toggle-icon):after {
     content: none;
 }

 .block-category-tree--level-2,
 .block-category-tree--level-3,
 .block-category-tree--level-4 {
     display: none;
     margin-bottom: 8px;
 }

 .block-category-tree--level-2>li,
 .block-category-tree--level-3>li,
 .block-category-tree--level-4>li {
     text-indent: 0;
     border: none;
 }

 .block-category-tree--level-2>li.block-category-tree--item a,
 .block-category-tree--level-2>li.block-category-tree--item__open a {
     padding-left: 1em;
     font-size: 12px;
 }

 .block-category-tree--level-3>li.block-category-tree--item a,
 .block-category-tree--level-3>li.block-category-tree--item__open a {
     padding-left: 2em;
     font-size: 12px;
 }

 .block-category-tree--level-4>li.block-category-tree--item a,
 .block-category-tree--level-4>li.block-category-tree--item__open a {
     padding-left: 3em;
     font-size: 12px;
 }

 .block-category-tree--level-1>li a span,
 .block-category-tree--level-2>li a span,
 .block-category-tree--level-3>li a span,
 .block-category-tree--level-4>li a span {
     font-size: 16px;
     padding: 16px 0 13px;
 }

 .block-category-tree--level-2>li a span,
 .block-category-tree--level-3>li a span,
 .block-category-tree--level-4>li a span {
     font-weight: 400;
     padding: 4px 0;
 }

 .block-category-tree--item__open>a {
     position: relative;
     width: 85%;
 }

 .block-category-tree--image {
     margin-right: 5px;
     -ms-flex-negative: 0;
     flex-shrink: 0;
     display: none;
 }

 .block-left-menu-bottom ul {
     display: -ms-grid;
     display: grid;
     gap: 20px;
 }

 .block-category-tree--level-1>.block-category-tree--item:nth-of-type(1) {
     border: none;
 }

 .block-category-tree--level-1>.block-category-tree--item:last-of-type {
     border-bottom: 1px solid #dedede;
 }

 .block-top-blog {
     padding: 40px 45px 40px 55px;
     background-image: url(/img/usr/blog/bg02.png);
     background-size: cover;
 }

 .block-pagecategory-page-list--frame.js-pagecategory-list-wrapper {
     display: -ms-grid;
     display: grid;
     -ms-grid-columns: (1fr)[3];
     grid-template-columns: repeat(3, 1fr);
     gap: 30px 42px;
 }

 dl.block-pagecategory-page-list--page {
     position: relative;
     width: auto;
     display: -webkit-box;
     display: -ms-flexbox;
     display: flex;
     -ms-flex-wrap: wrap;
     flex-wrap: wrap;
     gap: 9px 5px;
 }

 dt.block-pagecategory-page-list--page-image {
     max-width: 188px;
     max-height: 100px;
     display: -webkit-box;
     display: -ms-flexbox;
     display: flex;
     -webkit-box-pack: center;
     -ms-flex-pack: center;
     justify-content: center;
     -webkit-box-flex: 0;
     -ms-flex-positive: 0;
     flex-grow: 0;
 }

 .block-pagecategory-page-list--page-image img {
     max-height: 100px;
 }

 dd.block-pagecategory-page-list--date {
     font-family: "Inter", sans-serif;
     font-size: 12px;
     position: relative;
     width: 22px;
     display: -webkit-box;
     display: -ms-flexbox;
     display: flex;
     -webkit-box-align: center;
     -ms-flex-align: center;
     align-items: center;
     -webkit-writing-mode: vertical-rl;
     -ms-writing-mode: tb-rl;
     writing-mode: vertical-rl;
     letter-spacing: 2px;
     color: #fff;
 }

 .block-pagecategory-freespace--caption+.block-pagecategory-page-list dd.block-pagecategory-page-list--date {
     height: 85px;
     overflow: hidden;
     white-space: nowrap;
 }

 dd.block-pagecategory-page-list--page-caption {
     padding-right: 35px;
     -webkit-box-flex: 1;
     -ms-flex-positive: 1;
     flex-grow: 1;
     display: -webkit-box;
     display: -ms-flexbox;
     display: flex;
 }

 dd.block-pagecategory-page-list--page-caption::after {
     position: absolute;
     right: 8px;
     bottom: 8px;
     content: "";
     width: 16px;
     height: 8px;
     background: url(/img/usr/common/arrow03.png) no-repeat center / contain;
     -webkit-filter: brightness(0) invert(1);
     filter: brightness(0) invert(1);
 }

 .block-pagecategory--pager {
     display: -webkit-box;
     display: -ms-flexbox;
     display: flex;
     -webkit-box-align: center;
     -ms-flex-align: center;
     align-items: center;
 }

 .pager-total {
     padding: 0;
     margin: 0;
     margin-right: auto;
     color: #fff;
 }

 .pager-total .pager-count span {
     font-family: "Inter", sans-serif;
     font-size: 22px;
     font-weight: 600;
     margin-right: 2px;
 }

 .pagination>li.pager-current span {
     color: #000;
     background: #fff;
 }

 .pagination>* {
     background: unset;
 }

 .pager-next a:after,
 .pager-last a:after,
 .pager-last a:before {
     border-top: 1px #fff solid;
     border-right: 1px #fff solid;
 }

 .pager-first a:after,
 .pager-first a:before,
 .pager-previous a:after {
     border-top: 1px #fff solid;
     border-left: 1px #fff solid;
 }

 .block-pagecategory-freespace--caption+.block-pagecategory-page-list .block-pagecategory-page-list--frame.js-pagecategory-list-wrapper {
     grid-template-columns: repeat(4, 1fr);
     gap: 30px 15px;
 }

 .block-pagecategory-page-list dt.block-pagecategory-page-list--page-image {
     max-width: 174px;
 }

 .container:not(:has(.block-pagecategory-subcategory-list--category)) main.pane-main {
     display: block;
 }

 .container:not(:has(.block-top-blog)) .h1.block-pagecategory-caption--text {
     color: #fff;
 }

 .container:not(:has(.block-top-blog)) .block-pagecategory-page-list--date {
     height: 85px;
     overflow: hidden;
     white-space: nowrap;
 }

 .container:not(:has(.block-top-blog)) .block-pagecategory-page-list--frame.js-pagecategory-list-wrapper {
     grid-template-columns: repeat(5, 1fr);
 }

 .container:not(:has(.block-top-blog)) .block-pagecategory-subcategory-list {
     display: none;
 }

 .block-link-btn a {
     display: block;
     margin-top: 40px;
     text-decoration: underline;
     font-size: 16px;
 }

 .block-pagecategory-freespace--caption+.block-pagecategory-page-list {
     margin-top: -245px;
 }