/* b-topセクション */
.b-top {
    position: relative;
    color: white;
    font-weight: 900;
    margin-top: 74px;
}

.blog {
    padding-bottom: calc((130 / 1400) * 100vw);
}

.blog__inner {
    display: flex;
    justify-content: space-between;
}

.blog-l, .dtl {
    width: 67%;
}

.blog-l__cat, .blog-l__cat-s {
    display: flex;
    flex-wrap: wrap;
}

.cat-a {
    background-color: white;
    color: #152057;
    border: 2px solid #152057;
    font-weight: 700;
    width: max-content;
    transition: all 0.3s;
    display: block;
}

.blog-l__cat .cat-a {
    background-color: black;
    color: white;
    border: 2px solid black;
}

.cat-a.active, .cat-a:hover {
    background-color: white;
    color: black;
    border: 2px solid black;
}



.blog-l__cat > a {
    margin: calc((10 / 1400) * 100vw);
    padding: calc((12 / 1400) * 100vw) calc((25 / 1400) * 100vw);
}
/* .blog-l__cat > a:first-child {
    margin-left: 0;
} */

.blog-l__wrapper {
    display: flex;
    flex-wrap: wrap;
}

.blog-l__a {
    width: 45%;
    box-shadow: 0px 0px 15px 3px #00000021;
    margin: calc((15 / 1400) * 100vw);
    display: block;
    cursor: pointer;
}

.blog-l__img {
    width: 100%;
    height: calc((230 / 1400) * 100vw);
}

.blog-l__inner {
    padding: calc((20 / 1400) * 100vw) calc((25 / 1400) * 100vw);
}

.blog-l__h3 {
    font-weight: 700;
    line-height: 1.5;
    margin-bottom: calc((15 / 1400) * 100vw);
    color: black;
}

.blog-l__p {
    font-weight: 500;
    line-height: 1.5;
    color: black;
}

.blog-l__time {
    display: flex;
    align-items: center;
}

.blog-l__time > img {
    width: calc((18 / 1400) * 100vw);
    margin-right: calc((6 / 1400) * 100vw);
}

.blog-l__time > p {
    font-weight: 500;
    color: black;
}

.blog-l__cat-s {
    margin: calc((-5 / 1400) * 100vw);
    margin-top: calc((5 / 1400) * 100vw);
}

.blog-l__cat-s > a {
    margin: calc((5 / 1400) * 100vw);
    padding: calc((8 / 1400) * 100vw) calc((15 / 1400) * 100vw);
    font-weight: 500;
}

.blog-r {
    background-color: black;
    width: 30%;
    padding: calc((40 / 1400) * 100vw);
    color: white;
    height: fit-content;
}

.search__form {
    width: 100%;
}

.blog-r__search-input-wrapper {
    position: relative;
    background-color: white;
}

.search__icon {
    width: calc((21 / 1400) * 100vw);
    height: calc((21 / 1400) * 100vw);
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 2%;
}

.blog-r__search-input {
    background-color: white;
    width: calc(100% - ((24 / 1400) * 100vw));
    padding: calc((15 / 1400) * 100vw) calc((12 / 1400) * 100vw);
    border: unset;
    color: black;
    line-height: 1.2;
}

.blog-r__search-input::placeholder {
    color: black;
    letter-spacing: 0.1em;
    line-height: 1.2;
    font-size: clamp(10px, 1vw, 24px);
}

.blog-r__search-txt-p {
    font-weight: 700;
}

.blog-r__search-txt {
    display: flex;
    flex-wrap: wrap;
}

.blog-r__search-txt > a {
    margin-right: calc((5 / 1400) * 100vw);
    line-height: 1.5;
    display: block;
    color: white;
}

.blog-r__index-p {
    font-weight: 700;
    text-align: center;
    padding-bottom: calc((12 / 1400) * 100vw);
    border-bottom: 2px solid #FFDC21;
    width: calc((220 / 1400) * 100vw);
    margin-right: auto;
    margin-left: auto;
}
.blog-r__index-p.index-p02 {
    width: calc((135 / 1400) * 100vw);
}

.blog-r__index-a {
    color: white;
    display: flex;
    align-items: center;
    margin-bottom: calc((20 / 1400) * 100vw);
    padding-bottom: calc((20 / 1400) * 100vw);
    border-bottom: 1px solid white;
    opacity: 1;
    transition: all 0.3s;
}
.blog-r__index-a:hover {
    opacity: 0.7;
}
.blog-r__index-a:last-child {
    margin-bottom: 0;
}

.blog-r__index-a > div {
    width: calc((45 / 1400) * 100vw);
    height: calc((45 / 1400) * 100vw);
    border-radius: 100%;
    background-color: #FFDC21;
    margin-right: calc((15 / 1400) * 100vw)
}   

.blog-r__index-a > p {
    width: calc((220 / 1400) * 100vw);
    line-height: 1.5;
    font-weight: 500;
}
.blog-r__index-a.index-a02 > p {
    width: 100%
}

/* ブログ詳細 */
.blog.blog-dtl {
    padding-top: calc((50 / 1400) * 100vw);
}

.dtl__h2 {
    font-weight: 700;
    line-height: 1.5;
    color: black;
}

.blog-l-dtl .blog-l__time {
    margin-right: calc((15 / 1400) * 100vw)
}

.dtl__cta {
    background: linear-gradient(28.8deg, rgb(54 54 54 / 83%) 18.37%, rgb(0 0 0 / 87%) 54.82%);
    padding: calc((40 / 1400) * 100vw) calc((30 / 1400) * 100vw);
    border-radius: calc((30 / 1400) * 100vw);
    justify-content: space-between;
}

.dtl__cta.cta-under {
    flex-direction: column;
    background-image: linear-gradient(90deg, #111111 0%, #6B6B6B 80%, #000000 100%);
    position: relative;
    padding-top: calc((50 / 1400) * 100vw);
}

.dtl__cta-txtNum {
    color: white;
    font-weight: 700;
}

.dtl__cta-txt02 {
    color: white;
    font-weight: 700;
    line-height: 1.5;
    text-align: center;
}


.campaign__view {
    display: inline-block;
    display: flex;
    position: absolute;
    top: calc(-1* clamp(17.5px, 6.6666666667vw, 30px));
    left: 50%;
    align-content: center;
    justify-content: center;
    width: clamp(123.2px, 46.9333333333vw, 211.2px);
    margin: 0 auto;
    padding: clamp(7px, 2.6666666667vw, 12px) 0;
    transform: translateX(-50%);
    border: 2px solid #6f6f6f;
    border-radius: clamp(7px, 2.6666666667vw, 12px);
    background-color: #FFD508;
    font-weight: 700;
    font-size: calc((25 / 1400) * 100vw);


    top: calc(-1* clamp(32.2px, 3.1944444444vw, 55.2px));
    width: clamp(185.5px, 18.4027777778vw, 318px);
    padding: clamp(11.9px, 1.1805555556vw, 20.4px) 0;
    border-radius: clamp(7px, 0.6944444444vw, 12px);
}

.campaign__view::after, .campaign__view::before {
    position: absolute;
    bottom: calc(-1* clamp(7.7px, 2.9333333333vw, 13.2px));
    left: 50%;
    transform: translateX(-50%);
    border-top: clamp(7px, 2.6666666667vw, 12px) solid #6f6f6f;
    border-right: clamp(4.2px, 1.6vw, 7.2px) solid transparent;
    border-left: clamp(4.2px, 1.6vw, 7.2px) solid transparent;
    content: "";
}

.campaign__view::after {
    bottom: calc(-1* clamp(4.9px, 1.8666666667vw, 8.4px));
    border-top: clamp(9.8px, 0.9722222222vw, 16.8px) solid #FFD508
}

.dtl__cta-imgCircle {
    border-radius: 50px;
    background-color: white;
    padding: 10px 0;
    width: calc((600 / 1400) * 100vw);
}

.dtl__ctaNum {
    color: white;
}

.dtl__ctaNum > li {
    display: flex;
    align-items: center;
    margin-bottom: calc((15 / 1400) * 100vw);
}

.dtl__ctaNum > li > span {
    font-weight: 900;
    color: #FFDC21;
    margin-right: calc((15 / 1400) * 100vw);
}

.dtl__ctaNum > li > p {
    font-weight: 700;
}

.dtl__ctaNum > li > p > span {
    color: #FFDC21;
}


.dtl__cta-img {
    width: 48%;
}

.dtl__cta-left {
    width: 50%;
}

.dtl__cta-left > p {
    font-weight: 900;
    color: white;
    line-height: 1.5;
    text-align: center;
}

.dtl__cta-left > span {
    font-weight: 900;
    color: white;
    line-height: 1.5;
    text-align: center;
    display: block;
}

.dtl__cta-left-a {
    width: calc((250 / 1400) * 100vw);
    height: calc((50 / 1400) * 100vw);
    font-weight: 700;
    background-color: #FFDC21;
    border-radius: 50px;
    margin: 0 auto;
    border: 1px solid black;
    transition: all 0.3s;
    color: black;
}
.dtl__cta-left-a:hover {
    border: 1px solid white;
    background-color: black;
    color: white;
}

/* ブログコンテンツ部分 */

.dtl__contents {
    line-height: 1.5;
}

.dtl__contents p {
    color: black;
}

.dtl__contents h3,.dtl__contents h3 span,.dtl__contents h4,.dtl__contents h5,.dtl__contents h6 {
    color: black;
}

.dtl__contents > h3 {
    font-weight: 700;
}

.dtl__contents > h3 {
    line-height: 1.5;
    font-weight: 500;
}

@media (max-width: 768px) {

    .b-top {
        margin-top: 54px;
    }
    .contents-width {
        width: calc(100% - 40px);
    }

    .blog {
        padding-bottom: 0;
    }

    .blog__inner {
        flex-direction: column;
    }

    .blog-l, .dtl {
        width: 100%;
    }

    .blog-l__cat > a {
        margin: 5px;
        padding: 7px 15px;
    }

    .blog-l__a {
        width: 100%;
        margin: 0 0 50px 0;
    }

    .blog-l__img {
        height: calc((190 / 375) * 100vw);
    }

    .blog-l__inner {
        padding: 17px;
    }

    .blog-l__h3 {
        margin-bottom: 15px;
    }

    .blog-l__time > img {
        width: 18px;
        margin-right: 6px;
    }

    .blog-l__cat-s {
        margin: -3px;
        margin-top: 5px;
    }

    .blog-l__cat-s > a {
        margin: 3px;
        padding: 6px 12px;
    }

    .blog-r {
        width: 100%;
        padding: 40px;
    }

    .blog-r__search {
        background-color: black;
        padding: 40px;
        color: white;
    }

    .search__icon {
        width: 21px;
        height: 21px;
        right: 10px;
    }

    .blog-r__search-input::placeholder {
        font-size: 14px;
    }

    .blog-r__search-input {
        width: calc(100% - 24px);
        padding: 10px 12px;
    }

    .blog-r__search-txt-p {
        font-size: 14px;
    }

    .blog-r__search-txt {
        font-size: 14px;
    }

    .blog-r__search-txt > span {
        margin-right: 5px;
    }

    .blog-r__index-p {
        font-size: 16px;
        padding-bottom: 12px;
        width: 220px;
        margin-bottom: 35px;
    }
    .blog-r__index-p.index-p02 {
        width: 135px;
    }

    .blog-r__index-a {
        font-size: 14px;
        margin-bottom: 20px;
        padding-bottom: 20px;
    }

    .blog-r__index-a > div {
        width: 45px;
        height: 45px;
        margin-right: 15px;
    }   

    .blog-r__index-a > p {
        width: 220px;
    }

    /* ブログ詳細 */
    .dtl {
        margin-bottom: 80px;
    }

    .blog.blog-dtl {
        padding-top: 40px;
    }

    .dtl__h2 {
        margin-bottom: 25px;
        font-size: 24px;
    }

    .blog-l-dtl .blog-l__time {
        margin-right: 0;
        margin-bottom: 10px;
    }

    .dtl__cta {
        padding: 40px 20px;
        border-radius: 30px;
        flex-direction: column;
        margin-bottom: 50px;
    }

    .dtl__cta.cta-bottom {
        margin-bottom: 0;
    }
    
    .dtl__cta-img {
        width: 100%;
        margin-bottom: 25px;
        max-width: 400px;
    }
    
    .dtl__cta-left {
        width: 100%;
    }

    .dtl__cta-left > p {
        margin-bottom: 28px;
    }
    
    .dtl__cta-left-a {
        width: 250px;
        height: 50px;
    }

    .dtl__cta.cta-under {
        padding-top: 37px;
    }

    
    .dtl__cta-imgCircle {
        width: 300px;
    }

    .dtl__cta-txtNum {
        text-align: center;
        line-height: 1.5;
    }

    .campaign__view {
        font-size: 16px;
    }

    .dtl__ctaNum > li {
        margin-bottom: 20px;
    }

    .dtl__ctaNum > li > p {
        line-height: 1.5;
    }

    .dtl__ctaNum > li > span {
        font-size: 24px;
        margin-right: 9px;
    }

    .dtl__cta-txt02 {
        font-size: 15px;
    }
}

/* パンくずリスト */
.pankuzu__inner {
    display: flex;
    flex-wrap: wrap;
    font-size: calc((14 / 1400) * 100vw);
    color: black;
}

.pankuzu span {
    margin: 0 calc((10 / 1400) * 100vw);
    color: black;
}
.pankuzu a {
    color: black;
}
.pankuzu span:first-child {
    margin-left: 0;
}

.pankuzu.pankuzu-l {
    margin-top: 100px;
}

@media (max-width: 768px) {
    /* パンくずリスト */
    .pankuzu__inner {
        font-size: 14px;
        line-height: 1.5;
    }

    .pankuzu span {
        margin: 0 5px;
    }

    .pankuzu.pankuzu-l {
        margin-top: 80px;
    }
}

/* 目次 */
#toc_container {
	border: none !important;
    padding: 0 !important;
    margin-top: calc((50 / 1400) * 100vw) !important;
}

.toc_white {
    background-color: #f3f3f3 !important;
    margin-bottom: calc((50 / 1400) * 100vw) !important;
}

.toc_list {
    padding: calc((20 / 1400) * 100vw) calc((50 / 1400) * 100vw) !important;
}

.toc_list a {
    text-decoration: unset !important;
}

.toc_title {
    font-size: calc((24 / 1400) * 100vw) !important;
    font-weight: 700 !important;
    padding: calc((10 / 1400) * 100vw) calc((10 / 1400) * 100vw) calc((10 / 1400) * 100vw) calc((30 / 1400) * 100vw) !important;
    background-color: #c9c9c9 !important;
	text-align: left !important;
}

.toc_list > li {
    margin-bottom: calc((15 / 1400) * 100vw) !important;
}
.toc_list li::before {
   display: none !important;
}

.toc_list > li > a {
    font-size: calc((18 / 1400) * 100vw) !important;
    margin-bottom: calc((10 / 1400) * 100vw) !important;
    display: flex !important;
	color: black !important;
}

.toc_list > li > a > span {
    margin-right: calc((8 / 1400) * 100vw) !important;
	color: black !important;
}

.toc_list > li > ul {
    margin-left: calc((20 / 1400) * 100vw) !important;
}

.toc_list > li > ul > li > a {
    font-size: calc((16 / 1400) * 100vw) !important;
    margin-bottom: calc((5 / 1400) * 100vw) !important;
    display: flex !important;
	color: black !important;
}

.toc_list > li > ul > li > a > span {
    margin-right: calc((8 / 1400) * 100vw) !important;
	color: black !important;
}

.dtl__contents h2 {
    font-size: calc((24 / 1400) * 100vw);
    font-weight: 700;
    background-color: #1B91BC;
    color: white;
    padding: calc((10 / 1400) * 100vw) calc((10 / 1400) * 100vw) calc((10 / 1400) * 100vw) calc((20 / 1400) * 100vw);
    margin-bottom: calc((20 / 1400) * 100vw);
    margin-top: calc((50 / 1400) * 100vw);
}

.dtl__contents h2 span {
	color: white;
}

.dtl__contents h3 {
    font-size: calc((20 / 1400) * 100vw);
    margin-bottom: calc((20 / 1400) * 100vw);
    margin-top: calc((30 / 1400) * 100vw);
    display: flex;
}

.dtl__contents h3::before {
    content: "";
    display: block;
    background-color: #1B91BC;
    width: calc((4 / 1400) * 100vw);
    height: calc((25 / 1400) * 100vw);
    margin-right: calc((10 / 1400) * 100vw);
    position: relative;
    top: calc((4 / 1400) * 100vw);
}

@media (max-width: 768px) {
    #toc_container {
        margin-top: 50px !important;
    }

    .toc_white {
        margin-bottom: 50px !important;
    }
    
    .toc_list {
        padding: 20px 10px !important;
    }
    
    .toc_title {
        font-size: 24px !important;
        padding: 10px 10px 10px 30px !important;
    }
    
    .toc_list > li {
        margin-bottom: 15px !important;
    }
    
    .toc_list > li > a {
        font-size: 18px !important;
        margin-bottom: 10px !important;
    }

    .toc_list > li > a > span {
        margin-right: 8px !important;
    }
    
    .toc_list > li > ul {
        margin-left: 20px !important;
    }
    
    .toc_list > li > ul > li > a {
        font-size: 16px !important;
        margin-bottom: 5px !important;
    }
    
    .toc_list > li > ul > li > a > span {
        margin-right: 8px !important;
    }
    
    .dtl__contents h2 {
        font-size: 20px;
        padding: 10px 10px 10px 20px;
        margin-bottom: 20px;
        margin-top: 50px;
    }
    
    .dtl__contents h3 {
        font-size: 18px;
        margin-bottom: 20px;
        margin-top: 30px;
    }
    
    .dtl__contents h3::before {
        width: 4px;
        height: 22px;
        margin-right: 8px;
        top: 3px;
    }
}

/* ブログcss */
.toc_white, .wp-block-list, .wp-block-image {
    margin-top: calc((50 / 1400) * 100vw);
}

.wp-block-image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.dtl__contents p {
    margin-top: calc((30 / 1400) * 100vw) !important;
}

.wp-block-list {
    border: 1px solid #c9c9c9;
    padding: 20px;
    
}

.wp-block-list > li {
    display: flex;
    align-items: center;
    line-height: 1.7;
}

.wp-block-list > li::before {
    content: "";
    display: block;
    width: 10px;
    height: 10px;
    background-color: #000000;
    border-radius: 100%;
    margin-right: 10px;
}

@media (max-width: 768px) {
    .toc_white, .wp-block-list, .wp-block-image {
        margin-top: 50px;
    }

    .dtl__contents p {
        margin-top: 30px !important;
    }
}

/* 次、前の記事へ */
.post-navigation {
    display: flex;
    margin-top:  calc((60 / 1400)* 100vw);
    position: relative;
}

.nav-next > a, .nav-prev > a, .nav-list > a {
    color: black;
    width: calc((193 / 1400)* 100vw);
    height: calc((48 / 1400)* 100vw);
    border-radius: 50px;
    border: 1px solid black;
}

.nav-next {
    margin-left: auto;
}

.nav-prev {
    margin-right: auto;
}

.nav-list {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
}

@media (max-width: 768px) {
    .post-navigation {
        margin-bottom: 50px;
    }
    
    .nav-next > a, .nav-prev > a, .nav-list > a {
        width: 107px;
        height: 30px;
        font-size: 12px;
    }
}

/* ページナビ */
.wp-pagenavi {
    width: 100%;
    display: flex;
    justify-content: center;
    margin-top: calc((50 / 1400) * 100vw);
    font-size: calc((16 / 1400)* 100vw);
}

.wp-pagenavi .pages,
.wp-pagenavi .last,
.wp-pagenavi .first,
.wp-pagenavi .extend {
    display: none !important;
}

.wp-pagenavi span,
.wp-pagenavi a {
    margin-right: calc((20 / 1400) * 100vw);
    border-radius: 100%;
    border: 1px solid black;
    width: calc((30 / 1400) * 100vw);
    height: calc((30 / 1400) * 100vw);
    font-size: calc((16 / 1400) * 100vw);
    display: flex;
    align-items: center;
    justify-content: center;
    background: white;
    margin: 0 calc((5 / 1400)* 100vw) !important;
}

.wp-pagenavi span.current, .wp-pagenavi a.current {
    background-color: #1B91BC;
    color: white;
    border: 1px solid #1B91BC !important;
}


.page:last-child {
    margin-right: 0;
}

@media (max-width: 768px) {
    /* ページナビ */
    .wp-pagenavi {
        margin-top: 30px;
        margin-bottom: 50px;
    }

    .wp-pagenavi span,
    .wp-pagenavi a {
        margin: 0 2px !important;
        width: 20px;
        height: 20px;
        font-size: 12px;
    }
}

.dtl__contents {
    font-weight: 500 !important;
}
.dtl__contents strong {
    font-weight: 700!important;
}

.dtl__contents em {
    display: inline-block;
    transform: skew(-10deg);
}
.dtl__contents a {
    color: #43afe2;
    text-decoration: underline;
    word-break: break-word;
}

.alignleft {
    float: inline-start;
    margin-right: 10px;
}
.alignright {
    float: inline-end;
    margin-left: 10px;
}