@charset "UTF-8";

.p-postList {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px 15px;
    margin-block: 30px 40px;
}

.p-postList.p-youtubeList {
    grid-template-columns: repeat(2, 1fr);
}

.p-postList__thumb {
    margin-bottom: 10px;
    height: 150px;
}

.p-postList__thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.p-postList__title {
    font-size: 14px;
    text-align: left;
    line-height: 1.6;
    color: rgb(63, 58, 57);
}

.p-postList__link {
    transition: all .7s;
}

.p-postList__link:hover {
    opacity: .8;
    color: #3f3a39;
}

.p-postList__link:hover .p-postList__title {
    color: #3f3a39;
    text-decoration: none;
}

.p-postList__Youtube {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
    /* 16:9 = 9 / 16 = 0.5625 */
    overflow: hidden;
    height: auto !important;
}

.p-postList__Youtube iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

.interview-cont {
    margin-bottom: 40px;
}

:root {
    --swl-fz--content: 4vw;
    --swl-font_family: "游ゴシック体", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    --swl-font_weight: 500;
    --color_main: #02245e;
    --color_text: #333;
    --color_link: #1176d4;
    --color_htag: #02245e;
    --color_bg: #fdfdfd;
    --color_gradient1: #d8ffff;
    --color_gradient2: #87e7ff;
    --color_main_thin: rgba(3, 45, 118, 0.05);
    --color_main_dark: rgba(2, 27, 71, 1);
    --color_list_check: #02245e;
    --color_list_num: #02245e;
    --color_list_good: #86dd7b;
    --color_list_triangle: #f4e03a;
    --color_list_bad: #f36060;
    --color_faq_q: #d55656;
    --color_faq_a: #6599b7;
    --color_icon_good: #3cd250;
    --color_icon_good_bg: #ecffe9;
    --color_icon_bad: #4b73eb;
    --color_icon_bad_bg: #eafaff;
    --color_icon_info: #f578b4;
    --color_icon_info_bg: #fff0fa;
    --color_icon_announce: #ffa537;
    --color_icon_announce_bg: #fff5f0;
    --color_icon_pen: #7a7a7a;
    --color_icon_pen_bg: #f7f7f7;
    --color_icon_book: #787364;
    --color_icon_book_bg: #f8f6ef;
    --color_icon_point: #ffa639;
    --color_icon_check: #86d67c;
    --color_icon_batsu: #f36060;
    --color_icon_hatena: #5295cc;
    --color_icon_caution: #f7da38;
    --color_icon_memo: #84878a;
    --color_deep01: #e44141;
    --color_deep02: #3d79d5;
    --color_deep03: #63a84d;
    --color_deep04: #f09f4d;
    --color_pale01: #fff2f0;
    --color_pale02: #f3f8fd;
    --color_pale03: #f1f9ee;
    --color_pale04: #fdf9ee;
    --color_mark_blue: #b7e3ff;
    --color_mark_green: #bdf9c3;
    --color_mark_yellow: #fcf69f;
    --color_mark_orange: #ffddbc;
    --border01: solid 1px var(--color_main);
    --border02: double 4px var(--color_main);
    --border03: dashed 2px var(--color_border);
    --border04: solid 4px var(--color_gray);
    --card_posts_thumb_ratio: 56.25%;
    --list_posts_thumb_ratio: 56.25%;
    --big_posts_thumb_ratio: 56.25%;
    --thumb_posts_thumb_ratio: 56.25%;
    --blogcard_thumb_ratio: 56.25%;
    --color_header_bg: #060929;
    --color_header_text: #ffffff;
    --color_footer_bg: #fdfdfd;
    --color_footer_text: #333;
    --container_size: 1400px;
    --article_size: 900px;
    --logo_size_sp: 80px;
    --logo_size_pc: 60px;
    --logo_size_pcfix: 50px;
}

.swl-cell-bg[data-icon="doubleCircle"] {
    --cell-icon-color: #ffc977
}

.swl-cell-bg[data-icon="circle"] {
    --cell-icon-color: #94e29c
}

.swl-cell-bg[data-icon="triangle"] {
    --cell-icon-color: #eeda2f
}

.swl-cell-bg[data-icon="close"] {
    --cell-icon-color: #ec9191
}

.swl-cell-bg[data-icon="hatena"] {
    --cell-icon-color: #93c9da
}

.swl-cell-bg[data-icon="check"] {
    --cell-icon-color: #94e29c
}

.swl-cell-bg[data-icon="line"] {
    --cell-icon-color: #9b9b9b
}

.cap_box[data-colset="col1"] {
    --capbox-color: #f59b5f;
    --capbox-color--bg: #fff8eb
}

.cap_box[data-colset="col2"] {
    --capbox-color: #5fb9f5;
    --capbox-color--bg: #edf5ff
}

.cap_box[data-colset="col3"] {
    --capbox-color: #2fcd90;
    --capbox-color--bg: #eafaf2
}

.red_ {
    --the-btn-color: #cca16a;
    --the-btn-color2: #ba6300;
    --the-solid-shadow: rgba(153, 121, 80, 1)
}

.blue_ {
    --the-btn-color: #fce25f;
    --the-btn-color2: #ffbc49;
    --the-solid-shadow: rgba(189, 170, 71, 1)
}

.green_ {
    --the-btn-color: #afafaf;
    --the-btn-color2: #d1d1d1;
    --the-solid-shadow: rgba(131, 131, 131, 1)
}

.is-style-btn_normal,
.is-style-btn_shiny {
    --the-btn-bg: linear-gradient(100deg, var(--the-btn-color) 0%, var(--the-btn-color2) 100%)
}

.is-style-btn_normal {
    --the-btn-radius: 80px
}

.is-style-btn_solid {
    --the-btn-radius: 80px
}

.is-style-btn_shiny {
    --the-btn-radius: 80px
}

.is-style-btn_line {
    --the-btn-radius: 80px
}

.post_content blockquote {
    padding: 1.5em 2em 1.5em 3em
}

.post_content blockquote::before {
    content: "";
    display: block;
    width: 5px;
    height: calc(100% - 3em);
    top: 1.5em;
    left: 1.5em;
    border-left: solid 1px rgba(180, 180, 180, .75);
    border-right: solid 1px rgba(180, 180, 180, .75);
}

.mark_blue {
    background: -webkit-linear-gradient(transparent 64%, var(--color_mark_blue) 0%);
    background: linear-gradient(transparent 64%, var(--color_mark_blue) 0%)
}

.mark_green {
    background: -webkit-linear-gradient(transparent 64%, var(--color_mark_green) 0%);
    background: linear-gradient(transparent 64%, var(--color_mark_green) 0%)
}

.mark_yellow {
    background: -webkit-linear-gradient(transparent 64%, var(--color_mark_yellow) 0%);
    background: linear-gradient(transparent 64%, var(--color_mark_yellow) 0%)
}

.mark_orange {
    background: -webkit-linear-gradient(transparent 64%, var(--color_mark_orange) 0%);
    background: linear-gradient(transparent 64%, var(--color_mark_orange) 0%)
}

[class*="is-style-icon_"] {
    color: #333;
    border-width: 0
}

[class*="is-style-big_icon_"] {
    border-width: 2px;
    border-style: solid
}

[data-col="gray"] .c-balloon__text {
    background: #f7f7f7;
    border-color: #ccc
}

[data-col="gray"] .c-balloon__before {
    border-right-color: #f7f7f7
}

[data-col="green"] .c-balloon__text {
    background: #d1f8c2;
    border-color: #9ddd93
}

[data-col="green"] .c-balloon__before {
    border-right-color: #d1f8c2
}

[data-col="blue"] .c-balloon__text {
    background: #e2f6ff;
    border-color: #93d2f0
}

[data-col="blue"] .c-balloon__before {
    border-right-color: #e2f6ff
}

[data-col="red"] .c-balloon__text {
    background: #ffebeb;
    border-color: #f48789
}

[data-col="red"] .c-balloon__before {
    border-right-color: #ffebeb
}

[data-col="yellow"] .c-balloon__text {
    background: #f9f7d2;
    border-color: #fbe593
}

[data-col="yellow"] .c-balloon__before {
    border-right-color: #f9f7d2
}

.-type-list2 .p-postList__body::after,
.-type-big .p-postList__body::after {
    content: "READ MORE »";
}

.c-postThumb__cat {
    background-color: #02245e;
    color: #fff;
    background-image: repeating-linear-gradient(-45deg, rgba(255, 255, 255, .1), rgba(255, 255, 255, .1) 6px, transparent 6px, transparent 12px)
}

.post_content h2:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title)) {
    background: var(--color_htag);
    padding: .75em 1em;
    color: #fff;
    border-radius: var(--swl-radius--2, 0px)
}

.post_content h2:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title))::before {
    position: absolute;
    display: block;
    pointer-events: none
}

.post_content h3:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title)) {
    border-left: solid 4px var(--color_htag);
    padding: .25em 0 .25em 16px;
    text-align: left;
}

.post_content h4:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title)) {
    padding: 0 0 0 16px;
    border-left: solid 2px var(--color_htag)
}

#body_wrap::before {
    background: url(https://zoudai-kakumei.jp/wp-content/uploads/2024/11/背景.png) repeat center center / 100% auto
}

.l-header {
    border-bottom: solid 1px rgba(0, 0, 0, .1)
}

.l-header__menuBtn {
    order: 1
}

.l-header__customBtn {
    order: 3
}

.c-gnav a::after {
    background: var(--color_header_text);
    width: 0%;
    height: 2px
}

.p-spHeadMenu .menu-item.-current {
    border-bottom-color: var(--color_header_text)
}

.c-gnav>li:hover>a::after,
.c-gnav>.-current>a::after {
    width: 100%
}

.c-gnav .sub-menu {
    color: #333;
    background: #fff
}

.c-infoBar {
    color: #ffffff;
    background-image: repeating-linear-gradient(100deg, rgba(37, 90, 187, 1) 0, #2252aa 5%, #010f33 95%, rgba(1, 17, 56, 1) 100%)
}

.c-infoBar__text {
    font-size: 3.8vw
}

.c-infoBar__btn {
    background-color: var(--color_main) !important
}

#pagetop {
    border-radius: 50%
}

.c-widget__title.-spmenu {
    padding: .5em .75em;
    border-radius: var(--swl-radius--2, 0px);
    background: var(--color_main);
    color: #fff;
}

.c-widget__title.-footer {
    padding: .5em
}

.c-widget__title.-footer::before {
    content: "";
    bottom: 0;
    left: 0;
    width: 40%;
    z-index: 1;
    background: var(--color_main)
}

.c-widget__title.-footer::after {
    content: "";
    bottom: 0;
    left: 0;
    width: 100%;
    background: var(--color_border)
}

.c-secTitle {
    border-left: solid 2px var(--color_main);
    padding: 0em .75em
}

.p-spMenu {
    color: #ffffff
}

.p-spMenu__inner::before {
    background: #060929;
    opacity: 0.8
}

.p-spMenu__overlay {
    background: #000000;
    opacity: 0.7
}

[class*="page-numbers"] {
    color: #fff;
    background-color: #dedede
}

.l-topTitleArea.c-filterLayer::before {
    background-color: #000;
    opacity: 0.2;
    content: ""
}

@media screen and (min-width: 960px) {
    :root {}
}

@media screen and (max-width: 959px) {
    :root {}

    #body_wrap::before {
        background-image: url(https://zoudai-kakumei.jp/wp-content/uploads/2024/11/背景.png)
    }

    .l-header__logo {
        order: 2;
        text-align: center
    }
}

@media screen and (min-width: 600px) {
    :root {
        --swl-fz--content: 16px;
    }

    .c-infoBar__text {
        font-size: 16px
    }
}

@media screen and (max-width: 599px) {
    :root {}
}

@media (min-width: 1108px) {
    .alignwide {
        left: -100px;
        width: calc(100% + 200px);
    }
}

@media (max-width: 1108px) {
    .-sidebar-off .swell-block-fullWide__inner.l-container .alignwide {
        left: 0px;
        width: 100%;
    }
}

.c-infoBar {
    overflow: hidden;
    position: relative;
    width: 100%
}

.c-infoBar.-bg-stripe:before {
    background-image: repeating-linear-gradient(-45deg, #fff 0 6px, transparent 6px 12px);
    content: "";
    display: block;
    opacity: .1
}

.c-infoBar__link {
    text-decoration: none;
    z-index: 0
}

.c-infoBar__link,
.c-infoBar__text {
    color: inherit;
    display: block;
    position: relative
}

.c-infoBar__text {
    font-weight: 700;
    padding: 8px 0;
    z-index: 1
}

.c-infoBar__text.-flow-on {
    -webkit-animation: flowing_text 12s linear infinite;
    animation: flowing_text 12s linear infinite;
    -webkit-animation-duration: 12s;
    animation-duration: 12s;
    text-align: left;
    -webkit-transform: translateX(100%);
    transform: translateX(100%);
    white-space: nowrap
}

.c-infoBar__text.-flow-off {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    text-align: center
}

.c-infoBar__btn {
    border-radius: 40px;
    box-shadow: 0 2px 4px var(--swl-color_shadow);
    color: #fff;
    display: block;
    font-size: .95em;
    line-height: 2;
    margin-left: 1em;
    min-width: 1em;
    padding: 0 1em;
    text-decoration: none;
    width: auto
}

@media (min-width:960px) {
    .c-infoBar__text.-flow-on {
        -webkit-animation-duration: 20s;
        animation-duration: 20s
    }
}

@media (min-width:1200px) {
    .c-infoBar__text.-flow-on {
        -webkit-animation-duration: 24s;
        animation-duration: 24s
    }
}

@media (min-width:1600px) {
    .c-infoBar__text.-flow-on {
        -webkit-animation-duration: 30s;
        animation-duration: 30s
    }
}

.is-style-btn_normal a,
.is-style-btn_shiny a {
    box-shadow: var(--swl-btn_shadow)
}

.c-shareBtns__btn,
.is-style-balloon>.c-tabList .c-tabList__button,
.p-snsCta,
[class*=page-numbers] {
    box-shadow: var(--swl-box_shadow)
}

.p-articleThumb__img,
.p-articleThumb__youtube {
    box-shadow: var(--swl-img_shadow)
}

.p-pickupBanners__item .c-bannerLink,
.p-postList__thumb {
    box-shadow: 0 2px 8px rgba(0, 0, 0, .1), 0 4px 4px -4px rgba(0, 0, 0, .1)
}

.p-postList.-w-ranking li:before {
    background-image: repeating-linear-gradient(-45deg, hsla(0, 0%, 100%, .1), hsla(0, 0%, 100%, .1) 6px, transparent 0, transparent 12px);
    box-shadow: 1px 1px 4px rgba(0, 0, 0, .2)
}

:root {
    --swl-radius--2: 2px;
    --swl-radius--4: 4px;
    --swl-radius--8: 8px
}

.c-categoryList__link,
.c-tagList__link,
.tag-cloud-link {
    border-radius: 16px;
    padding: 6px 10px
}

.-related .p-postList__thumb,
.is-style-bg_gray,
.is-style-bg_main,
.is-style-bg_main_thin,
.is-style-bg_stripe,
.is-style-border_dg,
.is-style-border_dm,
.is-style-border_sg,
.is-style-border_sm,
.is-style-dent_box,
.is-style-note_box,
.is-style-stitch,
[class*=is-style-big_icon_],
input[type=number],
input[type=text],
textarea {
    border-radius: 4px
}

.-ps-style-img .p-postList__link,
.-type-thumb .p-postList__link,
.p-postList__thumb {
    border-radius: 12px;
    overflow: hidden;
    z-index: 0
}

.c-widget .-type-list.-w-ranking .p-postList__item:before {
    border-radius: 16px;
    left: 2px;
    top: 2px
}

.c-widget .-type-card.-w-ranking .p-postList__item:before {
    border-radius: 0 0 4px 4px
}

.c-postThumb__cat {
    border-radius: 16px;
    margin: .5em;
    padding: 0 8px
}

.cap_box_ttl {
    border-radius: 2px 2px 0 0
}

.cap_box_content {
    border-radius: 0 0 2px 2px
}

.cap_box.is-style-small_ttl .cap_box_content {
    border-radius: 0 2px 2px 2px
}

.cap_box.is-style-inner .cap_box_content,
.cap_box.is-style-onborder_ttl .cap_box_content,
.cap_box.is-style-onborder_ttl2 .cap_box_content,
.cap_box.is-style-onborder_ttl2 .cap_box_ttl,
.cap_box.is-style-shadow {
    border-radius: 2px
}

.is-style-more_btn a,
.p-postList__body:after,
.submit {
    border-radius: 40px
}

@media (min-width:960px) {
    #sidebar .-type-list .p-postList__thumb {
        border-radius: 8px
    }
}

@media not all and (min-width:960px) {

    .-ps-style-img .p-postList__link,
    .-type-thumb .p-postList__link,
    .p-postList__thumb {
        border-radius: 8px
    }
}

@media (min-width:960px) {
    .-series .l-header__inner {
        align-items: stretch;
        display: flex
    }

    .-series .l-header__logo {
        align-items: center;
        display: flex;
        flex-wrap: wrap;
        margin-right: 24px;
        padding: 16px 0
    }

    .-series .l-header__logo .c-catchphrase {
        font-size: 13px;
        padding: 4px 0
    }

    .-series .c-headLogo {
        margin-right: 16px
    }

    .-series-right .l-header__inner {
        justify-content: space-between
    }

    .-series-right .c-gnavWrap {
        margin-left: auto
    }

    .-series-right .w-header {
        margin-left: 12px
    }

    .-series-left .w-header {
        margin-left: auto
    }
}

@media (min-width:960px) and (min-width:600px) {
    .-series .c-headLogo {
        max-width: 400px
    }
}

.c-gnav .sub-menu a:before,
.c-listMenu a:before {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-family: icomoon !important;
    font-style: normal;
    font-variant: normal;
    font-weight: 400;
    line-height: 1;
    text-transform: none
}

.c-submenuToggleBtn {
    display: none
}

.c-listMenu a {
    padding: .75em 1em .75em 1.5em;
    transition: padding .25s
}

.c-listMenu a:hover {
    padding-left: 1.75em;
    padding-right: .75em
}

.c-gnav .sub-menu a:before,
.c-listMenu a:before {
    color: inherit;
    content: "\e921";
    display: inline-block;
    left: 2px;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    vertical-align: middle
}

.widget_categories>ul>.cat-item>a,
.wp-block-categories-list>li>a {
    padding-left: 1.75em
}

.c-listMenu .children,
.c-listMenu .sub-menu {
    margin: 0
}

.c-listMenu .children a,
.c-listMenu .sub-menu a {
    font-size: .9em;
    padding-left: 2.5em
}

.c-listMenu .children a:before,
.c-listMenu .sub-menu a:before {
    left: 1em
}

.c-listMenu .children a:hover,
.c-listMenu .sub-menu a:hover {
    padding-left: 2.75em
}

.c-listMenu .children ul a,
.c-listMenu .sub-menu ul a {
    padding-left: 3.25em
}

.c-listMenu .children ul a:before,
.c-listMenu .sub-menu ul a:before {
    left: 1.75em
}

.c-listMenu .children ul a:hover,
.c-listMenu .sub-menu ul a:hover {
    padding-left: 3.5em
}

.c-gnav li:hover>.sub-menu {
    opacity: 1;
    visibility: visible
}

.c-gnav .sub-menu:before {
    background: inherit;
    content: "";
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 0
}

.c-gnav .sub-menu .sub-menu {
    left: 100%;
    top: 0;
    z-index: -1
}

.c-gnav .sub-menu a {
    padding-left: 2em
}

.c-gnav .sub-menu a:before {
    left: .5em
}

.c-gnav .sub-menu a:hover .ttl {
    left: 4px
}

:root {
    --color_content_bg: var(--color_bg);
}

.c-widget__title.-side {
    padding: .5em
}

.c-widget__title.-side::before {
    content: "";
    bottom: 0;
    left: 0;
    width: 40%;
    z-index: 1;
    background: var(--color_main)
}

.c-widget__title.-side::after {
    content: "";
    bottom: 0;
    left: 0;
    width: 100%;
    background: var(--color_border)
}

.c-shareBtns__item:not(:last-child) {
    margin-right: 4px
}

.c-shareBtns__btn {
    padding: 8px 0
}

@media screen and (min-width: 960px) {
    :root {}
}

@media screen and (max-width: 959px) {
    :root {}
}

@media screen and (min-width: 600px) {
    :root {}
}

@media screen and (max-width: 599px) {
    :root {}
}

.swell-block-fullWide__inner.l-container {
    --swl-fw_inner_pad: var(--swl-pad_container, 0px)
}

@media (min-width:960px) {

    .-sidebar-on .l-content .alignfull,
    .-sidebar-on .l-content .alignwide {
        left: -16px;
        width: calc(100% + 32px)
    }

    .swell-block-fullWide__inner.l-article {
        --swl-fw_inner_pad: var(--swl-pad_post_content, 0px)
    }

    .-sidebar-on .swell-block-fullWide__inner .alignwide {
        left: 0;
        width: 100%
    }

    .-sidebar-on .swell-block-fullWide__inner .alignfull {
        left: calc(0px - var(--swl-fw_inner_pad, 0)) !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        width: calc(100% + var(--swl-fw_inner_pad, 0)*2) !important
    }
}

.p-relatedPosts .p-postList__item {
    margin-bottom: 1.5em
}

.p-relatedPosts .p-postList__times,
.p-relatedPosts .p-postList__times>:last-child {
    margin-right: 0
}

@media (min-width:600px) {
    .p-relatedPosts .p-postList__item {
        width: 33.33333%
    }
}

@media screen and (min-width:600px) and (max-width:1239px) {

    .p-relatedPosts .p-postList__item:nth-child(7),
    .p-relatedPosts .p-postList__item:nth-child(8) {
        display: none
    }
}

@media screen and (min-width:1240px) {
    .p-relatedPosts .p-postList__item {
        width: 25%
    }
}

.-index-off .p-toc,
.swell-toc-placeholder:empty {
    display: none
}

.p-toc.-modal {
    height: 100%;
    margin: 0;
    overflow-y: auto;
    padding: 0
}

#main_content .p-toc {
    border-radius: var(--swl-radius--2, 0);
    margin: 4em auto;
    max-width: 800px
}

#sidebar .p-toc {
    margin-top: -.5em
}

.p-toc .__pn:before {
    content: none !important;
    counter-increment: none
}

.p-toc .__prev {
    margin: 0 0 1em
}

.p-toc .__next {
    margin: 1em 0 0
}

.p-toc.is-omitted:not([data-omit=ct]) [data-level="2"] .p-toc__childList {
    height: 0;
    margin-bottom: -.5em;
    visibility: hidden
}

.p-toc.is-omitted:not([data-omit=nest]) {
    position: relative
}

.p-toc.is-omitted:not([data-omit=nest]):before {
    background: linear-gradient(hsla(0, 0%, 100%, 0), var(--color_bg));
    bottom: 5em;
    content: "";
    height: 4em;
    left: 0;
    opacity: .75;
    pointer-events: none;
    position: absolute;
    width: 100%;
    z-index: 1
}

.p-toc.is-omitted:not([data-omit=nest]):after {
    background: var(--color_bg);
    bottom: 0;
    content: "";
    height: 5em;
    left: 0;
    opacity: .75;
    position: absolute;
    width: 100%;
    z-index: 1
}

.p-toc.is-omitted:not([data-omit=nest]) .__next,
.p-toc.is-omitted:not([data-omit=nest]) [data-omit="1"] {
    display: none
}

.p-toc .p-toc__expandBtn {
    background-color: #f7f7f7;
    border: rgba(0, 0, 0, .2);
    border-radius: 5em;
    box-shadow: 0 0 0 1px #bbb;
    color: #333;
    display: block;
    font-size: 14px;
    line-height: 1.5;
    margin: .75em auto 0;
    min-width: 6em;
    padding: .5em 1em;
    position: relative;
    transition: box-shadow .25s;
    z-index: 2
}

.p-toc[data-omit=nest] .p-toc__expandBtn {
    display: inline-block;
    font-size: 13px;
    margin: 0 0 0 1.25em;
    padding: .5em .75em
}

.p-toc:not([data-omit=nest]) .p-toc__expandBtn:after,
.p-toc:not([data-omit=nest]) .p-toc__expandBtn:before {
    border-top-color: inherit;
    border-top-style: dotted;
    border-top-width: 3px;
    content: "";
    display: block;
    height: 1px;
    position: absolute;
    top: calc(50% - 1px);
    transition: border-color .25s;
    width: 100%;
    width: 22px
}

.p-toc:not([data-omit=nest]) .p-toc__expandBtn:before {
    right: calc(100% + 1em)
}

.p-toc:not([data-omit=nest]) .p-toc__expandBtn:after {
    left: calc(100% + 1em)
}

.p-toc.is-expanded .p-toc__expandBtn {
    border-color: transparent
}

.p-toc__ttl {
    display: block;
    font-size: 1.2em;
    line-height: 1;
    position: relative;
    text-align: center
}

.p-toc__ttl:before {
    content: "";
    display: inline-block;
    margin-right: .5em;
    vertical-align: middle;
    background-image: url(../images/table_of_contents.svg);
    width: 22px;
    height: 17px;
    position: relative;
    top: -5px;
}

#index_modal .p-toc__ttl {
    margin-bottom: .5em
}

.p-toc__list li {
    line-height: 1.6
}

.p-toc__list>li+li {
    margin-top: .5em
}

.p-toc__list .p-toc__childList {
    padding-left: .5em
}

.p-toc__list [data-level="3"] {
    font-size: .9em
}

.p-toc__list .mininote {
    display: none
}

.post_content .p-toc__list {
    padding-left: 0
}

#sidebar .p-toc__list {
    margin-bottom: 0
}

#sidebar .p-toc__list .p-toc__childList {
    padding-left: 0
}

.p-toc__link {
    color: inherit;
    font-size: inherit;
    text-decoration: none
}

.p-toc__link:hover {
    opacity: .8
}

.p-toc.-double {
    background: var(--color_gray);
    background: linear-gradient(-45deg, transparent 25%, var(--color_gray) 25%, var(--color_gray) 50%, transparent 50%, transparent 75%, var(--color_gray) 75%, var(--color_gray));
    background-clip: padding-box;
    background-size: 4px 4px;
    border-bottom: 4px double var(--color_border);
    border-top: 4px double var(--color_border);
    padding: 1.5em 1em 1em
}

.p-toc.-double .p-toc__ttl {
    margin-bottom: .75em
}

@media (min-width:960px) {
    #main_content .p-toc {
        width: 92%
    }
}

@media (hover:hover) {
    .p-toc .p-toc__expandBtn:hover {
        border-color: transparent;
        box-shadow: 0 0 0 2px currentcolor
    }
}

@media (min-width:600px) {
    .p-toc.-double {
        padding: 2em
    }
}

.p-pnLinks {
    align-items: stretch;
    display: flex;
    justify-content: space-between;
    margin: 2em 0
}

.p-pnLinks__item {
    font-size: 3vw;
    position: relative;
    width: 49%
}

.p-pnLinks__item:before {
    content: "";
    display: block;
    height: .5em;
    pointer-events: none;
    position: absolute;
    top: 50%;
    width: .5em;
    z-index: 1
}

.p-pnLinks__item.-prev:before {
    border-bottom: 1px solid;
    border-left: 1px solid;
    left: .35em;
    -webkit-transform: rotate(45deg) translateY(-50%);
    transform: rotate(45deg) translateY(-50%)
}

.p-pnLinks__item.-prev .p-pnLinks__thumb {
    margin-right: 8px
}

.p-pnLinks__item.-next .p-pnLinks__link {
    justify-content: flex-end
}

.p-pnLinks__item.-next:before {
    border-bottom: 1px solid;
    border-right: 1px solid;
    right: .35em;
    -webkit-transform: rotate(-45deg) translateY(-50%);
    transform: rotate(-45deg) translateY(-50%)
}

.p-pnLinks__item.-next .p-pnLinks__thumb {
    margin-left: 8px;
    order: 2
}

.p-pnLinks__item.-next:first-child {
    margin-left: auto
}

.p-pnLinks__link {
    align-items: center;
    border-radius: var(--swl-radius--2, 0);
    color: inherit;
    display: flex;
    height: 100%;
    line-height: 1.4;
    min-height: 4em;
    padding: .6em 1em .5em;
    position: relative;
    text-decoration: none;
    transition: box-shadow .25s;
    width: 100%
}

.p-pnLinks__thumb {
    border-radius: var(--swl-radius--4, 0);
    height: 32px;
    -o-object-fit: cover;
    object-fit: cover;
    width: 48px
}

.p-pnLinks .-prev .p-pnLinks__link {
    border-left: 1.25em solid var(--color_main)
}

.p-pnLinks .-prev:before {
    color: #fff
}

.p-pnLinks .-next .p-pnLinks__link {
    border-right: 1.25em solid var(--color_main)
}

.p-pnLinks .-next:before {
    color: #fff
}

@media not all and (min-width:960px) {
    .p-pnLinks.-thumb-on {
        display: block
    }

    .p-pnLinks.-thumb-on .p-pnLinks__item {
        width: 100%
    }
}

@media (min-width:600px) {
    .p-pnLinks__item {
        font-size: 13px
    }

    .p-pnLinks__thumb {
        height: 48px;
        width: 72px
    }

    .p-pnLinks__title {
        transition: -webkit-transform .25s;
        transition: transform .25s;
        transition: transform .25s, -webkit-transform .25s
    }

    .-prev>.p-pnLinks__link:hover .p-pnLinks__title {
        -webkit-transform: translateX(4px);
        transform: translateX(4px)
    }

    .-next>.p-pnLinks__link:hover .p-pnLinks__title {
        -webkit-transform: translateX(-4px);
        transform: translateX(-4px)
    }

    .p-pnLinks .-prev .p-pnLinks__link:hover {
        box-shadow: 1px 1px 2px var(--swl-color_shadow)
    }

    .p-pnLinks .-next .p-pnLinks__link:hover {
        box-shadow: -1px 1px 2px var(--swl-color_shadow)
    }
}

.top-tab-content01 {
    background: url(../images/top_newtab-contents01.webp) no-repeat;
}

.top-tab-content01:hover {
    background: url(../images/top_tab-contents03on.webp) no-repeat;
}

.top-tab-content02 {
    background: url(../images/top-tab-contents01.webp) no-repeat;
}

.top-tab-content02:hover {
    background: url(../images/top-tab-contents01on.webp) no-repeat;
}

.pc-sidemenu-list {
    list-style-type: none;
    padding: 0;
    margin: 0;
    border: 1px solid #bcc6d0;
    border-bottom: 5px solid #003366;
}

.pc-sidemenu-item {
    border-bottom: 1px solid #bcc6d0;
    background: linear-gradient(45deg,
            #ffffff 0%,
            #f9f9f9 20%,
            #f0f0f0 40%,
            #e8e8e8 60%,
            #f9f9f9 80%,
            #ffffff 100%);
    position: relative;
    transition: all 0.3s ease;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9), 0 1px 2px rgba(0, 0, 0, 0.1);
}

.pc-sidemenu-item a {
    display: flex;
    align-items: center;
    padding: 10px 12px;
    color: #003366;
    text-decoration: none;
    font-weight: bold;
    font-size: 14px;
    white-space: nowrap;
    transition: all 0.2s ease;
    position: relative;
    z-index: 2;
    min-height: 52px;
    padding-left: 10px;
    line-height: 1.4;
}

.menu-icon-circle {
    width: 40px;
    height: 40px;
    min-width: 40px;
    border-radius: 50%;
    border: 1px solid #003366;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-left: -3px;
    margin-right: 10px;
    background: #ffffff;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
    padding: 0;
}

.course-item .menu-icon-circle {
    background: #003366;
}

.youtube-menu .menu-icon-circle {
    background: #C53030;
    border-color: #C53030;
}

.youtube-menu .menu-icon-circle i {
    color: #fff;
    font-size: 22px;
}

.menu-icon {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.menu-icon-fa {
    color: #003366;
    font-size: 24px;
}

.menu-text {
    flex-grow: 1;
}

header #header-nav {
    position: absolute;
    top: 160px;
    left: 0;
    height: 55px;
    width: 100%;
    background: url(../images/main-nav-bg.png) repeat-x;
}

header #header-nav .wrapper {
    width: 1200px;
    max-width: 1200px;
}

header #header-nav ul {
    display: grid;
    grid-template-columns: repeat(11, 1fr);
    max-width: 100%;
}

header #header-nav ul li a {
    font-family: '游明朝', 'Yu Mincho', YuMincho, 'Hiragino Mincho Pro', serif;
    font-size: 13px;
    text-align: center;
    color: #fff;
    height: 55px;
    display: block;
    padding-top: 9px;
    position: relative;
}

header #header-nav ul li a::before {
    position: absolute;
    content: "";
    right: 0;
    height: 52px;
    background: #333;
    width: 1px;
    top: 0;
}

header #header-nav ul li:nth-child(1) a::after {
    position: absolute;
    content: "";
    left: 0;
    height: 52px;
    background: #333;
    width: 1px;
    top: 0;
}

header #header-nav ul li a:hover {
    text-decoration: none;
}

header #header-nav ul li a span {
    font-size: 10px;
    display: block;
    color: #E5B76D;
}

header #header-nav .wrapper {
    overflow: auto;
}

header #header-nav ul li:last-child a {
    background: #bc030b;
    height: 52px;
}

.footer-link ul li {
    font-size: 11px;
}

@media (max-width:1200px) {
    header #header-nav .wrapper {
        width: 100%;
    }

    header #header-nav ul {
        background: url(../images/main-nav-bg.png) repeat-x;
    }

    header #header-nav ul li a {
        font-size: 11px;
        padding-top: 10px;
    }

    header #header-nav ul li a span {
        transform: scale(.75);
    }

    .fiveBtn.ul02 li:nth-of-type(n+4) {
        width: calc(100% / 3) !important;
    }

    .fiveBtn.ul02 li a {
        font-size: 12px;
    }

    .fiveBtn.ul02 li:nth-of-type(6) a {
        background: url(/sp/images/bgn-img5.png) no-repeat calc(100% - 5px) 50% / auto 70%;
    }
}

.footer-link ul li a span {
    font-size: 10px;
}

.bx-viewport {
    background: #10266F !important;
}

@media (max-width:599px) {
    .p-postList__thumb {
        height: 100px;
    }
}

.custom-footer-banner {
    display: none;
}

#beginners .main .box span.kome-txt {
    position: relative;
    top: initial;
    left: initial;
    text-align: left;
    display: inline-block;
    color: #000;
    font-size: 13px;
    line-height: 1.4;
    margin-left: 0;
    padding-left: 1em;
    text-indent: -1em;
}

#beginners .main .box span.kome-txt.red {
    color: #D20D00;
}

.fiveBtn.ul02 {
    display: flex;
    flex-wrap: wrap;
    border-top: solid 1px #c1c1c1;
    border-bottom: solid 1px #c1c1c1;
    margin-bottom: 10px !important;
    background: #e8e8e8;
    max-width: 100%;
    width: 100% !important;
}

.fiveBtn.ul02 li {
    font-family: serif;
    text-align: center;
    position: relative;
    box-sizing: border-box;
    border-right: solid 2px #c1c1c1;
    line-height: 3;
    font-size: 14px;
    font-weight: bold;
    background: #eaeaea;
    background: -moz-linear-gradient(top, #eaeaea 0%, #b7b7b7 100%);
    background: -webkit-linear-gradient(top, #eaeaea 0%, #b7b7b7 100%);
    background: linear-gradient(to bottom, #eaeaea 0%, #b7b7b7 100%);
}

.fiveBtn.ul02 li:before {
    content: "";
    display: block;
    width: 100%;
    height: 4px;
    background-color: #d2b300;
    position: absolute;
    left: 0;
    bottom: 0;
}

.fiveBtn.ul02 li:after {
    content: "";
    display: block;
    border-top: 5px solid transparent;
    border-bottom: 5px solid transparent;
    border-left: 5px solid #182863;
    position: absolute;
    left: 5px;
    top: calc(50% - 5px);
}

.fiveBtn.ul02 li a {
    text-decoration: none;
    color: #000;
    display: block;
}

.fiveBtn.ul02 li:nth-of-type(n-3) {
    width: calc(100% / 3) !important;
    text-align: left;
    padding-left: 12px;
    float: initial !important;
    margin-left: 0 !important;
}

.fiveBtn.ul02 li:nth-of-type(n+4) {
    width: 50%;
}

.fiveBtn.ul02 li:nth-of-type(3),
.fiveBtn.ul02 li:nth-of-type(5) {
    border-right: none;
}

.fiveBtn.ul02 li:nth-of-type(1) a {
    background: url(/sp/images/bgn-img1.png) no-repeat calc(100% - 5px) 50% / auto 60%;
}

.fiveBtn.ul02 li:nth-of-type(2) a {
    background: url(/sp/images/bgn-img2.png) no-repeat calc(100% - 5px) 50% / auto 60%;
}

.fiveBtn.ul02 li:nth-of-type(3) {
    text-align: center;
}

.fiveBtn.ul02 li:nth-of-type(3) a {
    text-align: left;
    letter-spacing: 0;
    background: url(/sp/images/bgn-img3.png) no-repeat calc(100% - 1px) 50% / auto 60%;
}

.fiveBtn.ul02 li:nth-of-type(4) a {
    background: url(/sp/images/bgn-img6.webp) no-repeat calc(100% - 5px) 50% / auto 60%;
}

.fiveBtn.ul02 li:nth-of-type(5) a {
    background: url(/sp/images/bgn-img4.png) no-repeat calc(100% - 5px) 50% / auto 70%;
}

.fiveBtn.ul02 li:nth-of-type(6) a {
    background: url(/sp/images/bgn-img5.png) no-repeat calc(100% - 5px) 50% / auto 70%;
}
