.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: #f74a4a;
    --the-btn-color2: #ffbc49;
    --the-solid-shadow: rgba(185, 56, 56, 1)
}

.blue_ {
    --the-btn-color: #338df4;
    --the-btn-color2: #35eaff;
    --the-solid-shadow: rgba(38, 106, 183, 1)
}

.green_ {
    --the-btn-color: #62d847;
    --the-btn-color2: #7bf7bd;
    --the-solid-shadow: rgba(74, 162, 53, 1)
}

.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: #301285;
    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)) {
    border-left: solid 6px var(--color_htag);
    padding: .5em 0 .5em 16px
}

.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)) {
    padding: 0 .5em .5em
}

.post_content h3:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title))::before {
    content: "";
    width: 100%;
    height: 2px;
    background: repeating-linear-gradient(90deg, var(--color_htag) 0%, var(--color_htag) 29.3%, rgba(150, 150, 150, .2) 29.3%, rgba(150, 150, 150, .2) 100%)
}

.l-header {
    box-shadow: 0 1px 4px rgba(0, 0, 0, .12)
}

.l-header__bar {
    color: #fff;
    background: var(--color_main)
}

.l-header__menuBtn {
    order: 1
}

.l-header__customBtn {
    order: 3
}

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

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

.c-gnav>li:hover>a::after,
.c-gnav>.-current>a::after {
    transform: scaleX(1)
}

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

.l-fixHeader::before {
    opacity: 0.95
}

#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: #333
}

.p-spMenu__inner::before {
    background: #fdfdfd;
    opacity: 1
}

.p-spMenu__overlay {
    background: #000;
    opacity: 0.6
}

[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 {}

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

@media screen and (min-width: 600px) {
    :root {
        --swl-fz--content: 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%;
    }
}

.l-fixHeader .l-fixHeader__gnav {
    order: 0
}

[data-scrolled=true] .l-fixHeader[data-ready] {
    opacity: 1;
    -webkit-transform: translateY(0) !important;
    transform: translateY(0) !important;
    visibility: visible
}

.-body-solid .l-fixHeader {
    box-shadow: 0 2px 4px var(--swl-color_shadow)
}

.l-fixHeader__inner {
    align-items: stretch;
    color: var(--color_header_text);
    display: flex;
    padding-bottom: 0;
    padding-top: 0;
    position: relative;
    z-index: 1
}

.l-fixHeader__logo {
    align-items: center;
    display: flex;
    line-height: 1;
    margin-right: 24px;
    order: 0;
    padding: 16px 0
}

.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)
}

.l-header__bar {
    position: relative;
    width: 100%
}

.l-header__bar .c-catchphrase {
    color: inherit;
    font-size: 12px;
    letter-spacing: var(--swl-letter_spacing, .2px);
    line-height: 14px;
    margin-right: auto;
    overflow: hidden;
    padding: 4px 0;
    white-space: nowrap;
    width: 50%
}

.l-header__bar .c-iconList .c-iconList__link {
    margin: 0;
    padding: 4px 6px
}

.l-header__barInner {
    align-items: center;
    display: flex;
    justify-content: flex-end
}

.p-spHeadMenu {
    text-align: center
}

.p-spHeadMenu .sub-menu {
    display: none
}

.p-spHeadMenu .menu-item {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    border-bottom: 2px solid transparent;
    flex-shrink: 0;
    font-size: 12px;
    height: 36px;
    padding: 0;
    width: auto
}

.p-spHeadMenu .menu-item.-current {
    border-bottom-color: currentcolor
}

.p-spHeadMenu a {
    display: block;
    line-height: 36px;
    padding: 0 12px;
    text-decoration: none
}

.l-header__spNav.swiper:not(.swiper-initialized) .p-spHeadMenu {
    visibility: hidden
}

.l-header__spNav a {
    color: var(--color_header_text)
}

.l-header__spNav[data-loop="0"] .p-spHeadMenu {
    display: flex;
    overflow-x: auto
}

.l-header__spNav[data-loop="0"] .menu-item:first-child {
    margin-left: auto
}

.l-header__spNav[data-loop="0"] .menu-item:last-child {
    margin-right: auto
}

@media (min-width:960px) {
    .l-header__spNav {
        display: none
    }
}

@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);
    --mv_btn_radius: 0px;
    --mv_slide_animation: no;
    --swl-post_slide_width--pc: 50%;
    --swl-post_slide_width--sp: 50%;
    --swl-post_slide_padY: 16px;
    --swl-post_slide_padY--mb: 16px;
    --ps_space: 8px;
}

.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)
}

.top #content {
    padding-top: 0
}

.p-mainVisual__inner {
    height: 50vh
}

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

.-type-slider .p-mainVisual__scroll {
    padding-bottom: 16px
}

.p-postSlider {
    background-color: #ffffff;
    color: #000000
}

#post_slider .swiper {
    padding-bottom: 24px
}

.page.-index-off .w-beforeToc {
    display: none
}

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

    .p-mainVisual__inner {
        height: 30vw
    }

    #post_slider {
        padding-left: 40px;
        padding-right: 40px
    }
}

@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
    }
}

.-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: "\e918";
    display: inline-block;
    font-family: icomoon;
    margin-right: .5em;
    padding-bottom: 2px;
    vertical-align: middle
}

#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
    }
}

.w-beforeFooter {
    margin: 6em auto 3em;
    overflow: hidden
}

.c-widget__title.-footer:before {
    background-color: currentcolor !important
}

.l-footer {
    background-color: var(--color_footer_bg);
    color: var(--color_footer_text);
    position: relative;
    z-index: 0
}

.l-footer a,
.l-footer span {
    color: inherit
}

.l-footer .copyright {
    font-size: 12px;
    text-align: center
}

.l-footer .copyright a {
    color: var(--color_link)
}

.l-footer__nav {
    color: inherit;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    padding: .5em 0 1em
}

.l-footer__nav a {
    color: inherit;
    display: block;
    font-size: 3vw;
    padding: .25em .5em;
    text-decoration: none
}

.l-footer__nav a:hover {
    text-decoration: underline
}

.l-footer__foot,
.l-footer__widgetArea {
    padding-bottom: 1em;
    padding-top: 1em
}

.p-indexModal {
    padding: 80px 16px
}

.p-indexModal__inner {
    background: #fdfdfd;
    border-radius: var(--swl-radius--4, 0);
    color: #333;
    height: 100%;
    margin: -1em auto 0 !important;
    max-width: 800px;
    padding: 2em 1.5em;
    position: relative;
    -webkit-transform: translateY(16px);
    transform: translateY(16px);
    transition: -webkit-transform .5s;
    transition: transform .5s;
    transition: transform .5s, -webkit-transform .5s;
    z-index: 1
}

.is-opened>.p-indexModal__inner {
    -webkit-transform: translateY(0);
    transform: translateY(0)
}

.p-searchModal__inner {
    background: hsla(0, 0%, 100%, .1);
    left: 50%;
    max-width: 600px;
    padding: 1em;
    position: absolute;
    top: calc(50% + 16px);
    -webkit-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
    transition: top .5s;
    width: 96%;
    z-index: 1
}

.is-opened>.p-searchModal__inner {
    top: 50%
}

.p-searchModal__inner .c-searchForm {
    box-shadow: 0 0 4px hsla(0, 0%, 100%, .2)
}

.p-searchModal__inner .s {
    font-size: 16px
}

@media (min-width:960px) {
    .w-footer {
        display: flex;
        justify-content: space-between
    }

    .w-footer__box {
        flex: 1;
        padding: 1em
    }
}

@media not all and (min-width:960px) {
    .w-footer__box {
        padding: 1em 0
    }

    .w-footer__box+.w-footer__box {
        margin-top: 1em
    }

    .l-footer__inner {
        padding-bottom: calc(env(safe-area-inset-bottom)*.5)
    }
}

@media (min-width:600px) {
    .l-footer__nav a {
        /* border-right: 1px solid; */
        font-size: 13px;
        padding: 0 .75em
    }

    .l-footer__nav li:first-child a {
        /* border-left: 1px solid */
    }

    .p-indexModal__inner {
        padding: 2em
    }
}

.p-mainVisual {
    overflow: hidden;
    position: relative;
    width: 100%
}

.p-mainVisual.-margin-on {
    padding: 8px
}

.p-mainVisual.-height-full {
    height: calc(var(--swl-mv-height, 100vh) - var(--swl-headerH, 0px) - var(--swl-adminbarH, 0px))
}

.p-mainVisual.-height-full .p-mainVisual__inner {
    height: 100%
}

.-height-img [src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="] {
    height: 0
}

.-height-img .swiper-slide {
    width: var(--swl-mv_slide_width--pc, 100%)
}

.-height-img .p-mainVisual__imgLayer {
    height: auto;
    position: relative
}

.-height-img .p-mainVisual__img {
    display: block;
    height: auto;
    width: 100%
}

.p-mainVisual__inner {
    position: relative
}

.-height-auto .p-mainVisual__inner {
    height: auto
}

.p-mainVisual__slide {
    height: auto;
    overflow: hidden;
    position: relative
}

.-height-full .p-mainVisual__slide,
.-height-set .p-mainVisual__slide {
    height: 100%
}

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

.p-mainVisual__textLayer {
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: center;
    left: 50%;
    position: absolute;
    top: 0;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 100%;
    z-index: 3
}

.p-mainVisual__textLayer>.p-blogParts {
    margin: 1em 0 0;
    text-align: left
}

.-height-auto .p-mainVisual__textLayer {
    left: 0;
    padding-bottom: 4em;
    padding-top: 4em;
    position: relative;
    -webkit-transform: none;
    transform: none
}

.p-mainVisual__slideTitle {
    font-size: 5.5vw;
    line-height: 1.4
}

.p-mainVisual__slideText {
    font-size: 3.2vw;
    margin-top: .75em
}

.-height-full .p-mainVisual__slideText {
    font-size: 3.4vw
}

.p-mainVisual__scroll {
    bottom: 16px;
    color: #fff;
    left: 50%;
    opacity: .75;
    position: absolute;
    text-align: center;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    transition: opacity .25s;
    z-index: 9
}

.-height-full>.p-mainVisual__scroll {
    bottom: 24px
}

.p-mainVisual__scroll:hover {
    opacity: 1
}

.p-mainVisual__scrollArrow {
    -webkit-animation: FloatVertical 3s ease-in-out infinite alternate;
    animation: FloatVertical 3s ease-in-out infinite alternate;
    display: block;
    height: 20px;
    margin: 0 auto;
    width: 20px
}

.p-mainVisual__scrollLabel {
    display: block;
    font-size: 12px;
    letter-spacing: var(--swl-letter_spacing, 1px);
    line-height: 1;
    padding-top: 4px
}

@media (min-width:600px) {
    .p-mainVisual.-margin-on {
        padding: 16px
    }

    .p-mainVisual__slideTitle {
        font-size: 28px
    }

    .p-mainVisual__slideText {
        font-size: 16px
    }

    .-height-full .p-mainVisual__slideText {
        font-size: 18px
    }
}

@media not all and (min-width:960px) {
    .-height-img .swiper-slide {
        width: var(--swl-mv_slide_width--sp, 100%)
    }

    .p-mainVisual__textLayer {
        padding: 0 4vw
    }
}

.p-postSlider {
    --swiper-nav-size: 32px;
    overflow: hidden;
    padding-bottom: var(--swl-post_slide_padY, 16px);
    padding-top: var(--swl-post_slide_padY, 16px);
    position: relative
}

.p-postSlider .swiper {
    position: relative;
    z-index: 1
}

.p-postSlider .swiper-pagination {
    bottom: 0;
    line-height: 1
}

.p-postSlider .swiper-pagination-bullet {
    background: currentcolor;
    color: inherit
}

.p-postSlider .swiper-button-prev {
    left: var(--ps_space)
}

.p-postSlider .swiper-button-next {
    right: var(--ps_space)
}

.p-postSlider .swiper-button-next svg,
.p-postSlider .swiper-button-prev svg {
    display: none
}

.p-postSlider__swiper:not(.swiper-initialized) {
    visibility: hidden
}

.p-postSlider__title {
    font-size: 4.5vw;
    font-weight: 700;
    letter-spacing: var(--swl-letter_spacing, 1px);
    margin-bottom: .75em;
    position: relative;
    text-align: center;
    z-index: 1
}

.postSlider__postList {
    align-items: stretch;
    display: flex;
    flex-wrap: nowrap
}

.p-postSlider .p-postList__item {
    height: auto;
    padding: 0 var(--ps_space);
    position: static;
    width: var(--swl-post_slide_width--pc, 100%)
}

.p-postSlider .p-postList__link {
    color: inherit;
    height: 100%;
    position: relative
}

.p-postSlider .p-postList__body {
    color: inherit
}

.p-postSlider .p-postList__title {
    font-size: 3.6vw;
    overflow: hidden
}

.p-postSlider.-ps-style-normal .p-postList__title {
    line-height: 1.4;
    max-height: 4.2em
}

.p-postSlider.-ps-style-normal .p-postList__body {
    margin-top: .75em
}

.p-postSlider.-ps-style-img .p-postList__thumb {
    z-index: 0
}

.p-postSlider.-ps-style-img .p-postList__body {
    bottom: 0;
    color: #fff;
    left: 0;
    margin-top: 0;
    padding: 2em .75em .5em;
    position: absolute;
    width: 100%;
    z-index: 2
}

.p-postSlider.-ps-style-img .p-postList__body:before {
    background: linear-gradient(transparent, rgba(0, 0, 0, .4));
    bottom: 0;
    content: "";
    display: block;
    height: 100%;
    left: 0;
    position: absolute;
    transition: none;
    width: 100%;
    z-index: -1
}

.p-postSlider.-ps-style-img .p-postList__title {
    line-height: 1.2;
    max-height: 3.6em
}

@media not all and (min-width:600px) {
    .p-postSlider {
        padding-bottom: var(--swl-post_slide_padY--mb, 16px);
        padding-top: var(--swl-post_slide_padY--mb, 16px)
    }

    .p-postSlider .swiper-pagination-bullet {
        height: 6px;
        margin: 0 3px;
        width: 6px
    }

    .p-postSlider {
        --swiper-nav-border-width: 1px
    }

    .p-postSlider.-fz-sp-s .p-postList__title {
        font-size: 3vw
    }

    .p-postSlider.-ps-style-img.-fz-sp-s .p-postList__body {
        padding: 2em .5em .5em
    }
}

@media not all and (min-width:960px) {
    .p-postSlider__inner {
        padding-left: 0;
        padding-right: 0
    }

    .p-postSlider .p-postList__item {
        width: var(--swl-post_slide_width--sp, 100%)
    }

    .p-postSlider.-num-sp-1.-ps-style-normal .p-postList__body {
        padding: .25em 1em 0
    }
}

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

    .p-postSlider .p-postList__title {
        font-size: 15px
    }

    .p-postSlider.-fz-pc-l .p-postList__title {
        font-size: 18px
    }
}

@media (min-width:960px) {
    .p-postSlider.-num-pc-1.-ps-style-normal .p-postList__body {
        padding: .25em 1em 0
    }
}

.c-pageTitle {
    font-size: 1.3em;
    line-height: 1.4;
    position: relative
}

.c-pageTitle:after {
    clear: both;
    content: "";
    display: block;
    height: 0;
    visibility: hidden
}

.c-pageTitle[data-style=b_bottom] {
    border-bottom: 1px solid var(--color_border)
}

.c-pageTitle[data-style=b_bottom] .c-pageTitle__inner {
    border-bottom: 1px solid var(--color_main);
    float: left;
    margin-bottom: -1px;
    padding: .25em .5em
}

.c-pageTitle__inner {
    display: block;
    padding-top: .5em
}

.c-pageTitle__subTitle {
    font-style: italic;
    letter-spacing: var(--swl-letter_spacing, 1px);
    margin-left: 1em;
    opacity: .8;
    position: relative;
    top: -2px
}

.c-pageExcerpt {
    margin-top: 1em
}

.c-secTitle {
    display: block;
    font-size: 4.5vw;
    margin-bottom: 1.5em;
    position: relative
}

.c-secTitle:after,
.c-secTitle:before {
    box-sizing: inherit;
    display: block;
    height: 1px;
    position: absolute;
    z-index: 0
}

.post-password-form:not(:first-child) {
    border-top: 1px dashed var(--color_border);
    padding-top: 1em
}

.post-password-form p {
    margin-bottom: 1em
}

@media (min-width:600px) {
    .c-pageTitle {
        font-size: 1.5em
    }

    .c-secTitle {
        font-size: 20px
    }

    .l-articleBottom__section {
        margin-top: 6em
    }
}

@media not all and (min-width:600px) {
    .l-articleBottom__section {
        margin-top: 4em
    }
}