@charset "UTF-8";
/*
    Template: swell
    Theme Name: SWELL CHILD
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ
    Version: 1.0.0
    Author: LOOS WEB STUDIO
    Author URI: https://loos-web-studio.com/

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/

.c-infoBar__btn,
.is-style-btn_shiny a {
    overflow: hidden;
    position: relative;
    transition: opacity .25s, -webkit-transform .25s;
    transition: opacity .25s, transform .25s;
    transition: opacity .25s, transform .25s, -webkit-transform .25s;
    z-index: 0
}

.c-infoBar__btn:before,
.is-style-btn_shiny a:before {
    background-image: linear-gradient(90deg, hsla(0, 0%, 100%, 0), hsla(0, 0%, 100%, .6) 80%, hsla(0, 0%, 100%, 0));
    content: "";
    height: 200px;
    left: -120px;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%) rotate(25deg);
    transform: translateY(-50%) rotate(25deg);
    width: 80px
}

.c-infoBar__btn:after,
.is-style-btn_shiny a:after {
    -webkit-animation-duration: 3s;
    animation-duration: 3s;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    -webkit-animation-name: shiny_btn;
    animation-name: shiny_btn;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    background-image: linear-gradient(100deg, hsla(0, 0%, 100%, 0), #fff);
    content: "";
    height: 100%;
    left: -100px;
    position: absolute;
    top: 0;
    width: 50px
}

.c-infoBar__btn:hover,
.is-style-btn_shiny a:hover {
    -webkit-transform: translateY(2px);
    transform: translateY(2px)
}

.c-infoBar__btn:hover:before,
.is-style-btn_shiny a:hover:before {
    left: 110%;
    transition: .25s ease-in-out
}

.c-infoBar__btn:hover:after,
.is-style-btn_shiny a:hover:after {
    -webkit-animation: none;
    animation: none
}

#fix_bottom_menu:before,
.c-infoBar:before,
.c-mvBtn__btn:before,
.l-fixHeader:before,
.p-spMenu__inner:before,
[data-type=type1] .p-blogCard__inner:before {
    content: "";
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 0
}

.wp-block-image.is-style-shadow img,
.wp-block-video.is-style-shadow video,
img.shadow {
    box-shadow: 0 2px 8px rgba(0, 0, 0, .1), 0 4px 8px -4px rgba(0, 0, 0, .2)
}

.w-pageTop,
.w-singleBottom,
.w-singleTop {
    margin: 2em 0
}

.c-categoryList:before,
.c-tagList:before,
.c-taxList:before,
code.dir_name:before,
code.file_name: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-categoryList__separation:after,
.p-breadcrumb__item:after {
    background-color: currentcolor;
    -webkit-clip-path: polygon(45% 9%, 75% 51%, 45% 90%, 30% 90%, 60% 50%, 30% 10%);
    clip-path: polygon(45% 9%, 75% 51%, 45% 90%, 30% 90%, 60% 50%, 30% 10%);
    content: "";
    display: block;
    height: 10px;
    margin: 0;
    opacity: .8;
    width: 10px
}

@-webkit-keyframes flash {
    0% {
        opacity: .6
    }

    to {
        opacity: 1
    }
}

@keyframes flash {
    0% {
        opacity: .6
    }

    to {
        opacity: 1
    }
}

@-webkit-keyframes FadeIn {
    to {
        opacity: 1
    }
}

@keyframes FadeIn {
    to {
        opacity: 1
    }
}

@-webkit-keyframes FadeInFromX {
    to {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

@keyframes FadeInFromX {
    to {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

@-webkit-keyframes FadeInFromY {
    to {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

@keyframes FadeInFromY {
    to {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

@-webkit-keyframes flowing_text {
    to {
        -webkit-transform: translateX(-100%);
        transform: translateX(-100%)
    }
}

@keyframes flowing_text {
    to {
        -webkit-transform: translateX(-100%);
        transform: translateX(-100%)
    }
}

@-webkit-keyframes shiny_btn {
    0% {
        opacity: 0;
        -webkit-transform: scale(0) rotate(25deg);
        transform: scale(0) rotate(25deg)
    }

    84% {
        opacity: 0;
        -webkit-transform: scale(0) rotate(25deg);
        transform: scale(0) rotate(25deg)
    }

    85% {
        opacity: .9;
        -webkit-transform: scale(1) rotate(25deg);
        transform: scale(1) rotate(25deg)
    }

    to {
        opacity: 0;
        -webkit-transform: scale(50) rotate(25deg);
        transform: scale(50) rotate(25deg)
    }
}

@keyframes shiny_btn {
    0% {
        opacity: 0;
        -webkit-transform: scale(0) rotate(25deg);
        transform: scale(0) rotate(25deg)
    }

    84% {
        opacity: 0;
        -webkit-transform: scale(0) rotate(25deg);
        transform: scale(0) rotate(25deg)
    }

    85% {
        opacity: .9;
        -webkit-transform: scale(1) rotate(25deg);
        transform: scale(1) rotate(25deg)
    }

    to {
        opacity: 0;
        -webkit-transform: scale(50) rotate(25deg);
        transform: scale(50) rotate(25deg)
    }
}

@-webkit-keyframes leftToRight {
    0% {
        -webkit-transform: scale(1.1) translateX(-1%);
        transform: scale(1.1) translateX(-1%)
    }

    to {
        -webkit-transform: scale(1.1) translateX(1%);
        transform: scale(1.1) translateX(1%)
    }
}

@keyframes leftToRight {
    0% {
        -webkit-transform: scale(1.1) translateX(-1%);
        transform: scale(1.1) translateX(-1%)
    }

    to {
        -webkit-transform: scale(1.1) translateX(1%);
        transform: scale(1.1) translateX(1%)
    }
}

@-webkit-keyframes zoomUp {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1)
    }

    to {
        -webkit-transform: scale(1.1);
        transform: scale(1.1)
    }
}

@keyframes zoomUp {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1)
    }

    to {
        -webkit-transform: scale(1.1);
        transform: scale(1.1)
    }
}

@-webkit-keyframes FloatVertical {
    0% {
        -webkit-transform: translate3d(0, 4px, 0);
        transform: translate3d(0, 4px, 0)
    }

    50% {
        -webkit-transform: translate3d(0, -4px, 0);
        transform: translate3d(0, -4px, 0)
    }

    to {
        -webkit-transform: translate3d(0, 4px, 0);
        transform: translate3d(0, 4px, 0)
    }
}

@keyframes FloatVertical {
    0% {
        -webkit-transform: translate3d(0, 4px, 0);
        transform: translate3d(0, 4px, 0)
    }

    50% {
        -webkit-transform: translate3d(0, -4px, 0);
        transform: translate3d(0, -4px, 0)
    }

    to {
        -webkit-transform: translate3d(0, 4px, 0);
        transform: translate3d(0, 4px, 0)
    }
}

@-webkit-keyframes FloatHorizontal {
    0% {
        -webkit-transform: translate3d(4px, 0, 0);
        transform: translate3d(4px, 0, 0)
    }

    50% {
        -webkit-transform: translate3d(-4px, 0, 0);
        transform: translate3d(-4px, 0, 0)
    }

    to {
        -webkit-transform: translate3d(4px, 0, 0);
        transform: translate3d(4px, 0, 0)
    }
}

@keyframes FloatHorizontal {
    0% {
        -webkit-transform: translate3d(4px, 0, 0);
        transform: translate3d(4px, 0, 0)
    }

    50% {
        -webkit-transform: translate3d(-4px, 0, 0);
        transform: translate3d(-4px, 0, 0)
    }

    to {
        -webkit-transform: translate3d(4px, 0, 0);
        transform: translate3d(4px, 0, 0)
    }
}

:root {
    --color_border: hsla(0, 0%, 78%, .5);
    --color_gray: hsla(0, 0%, 78%, .15);
    --swl-color_hov_gray: rgba(3, 2, 2, .05);
    --swl-color_shadow: rgba(0, 0, 0, .12);
    --swl-fz--root: 3.6vw;
    --swl-fz--side: var(--swl-fz--root);
    --swl-block-margin: 2em;
    --swl-sidebar_width: 280px;
    --swl-sidebar_margin: 24px;
    --swl-pad_post_content: 0px;
    --swl-pad_container: 4vw;
    --swl-h2-margin--x: -2vw;
    --swl-box_shadow: 0 2px 4px rgba(0, 0, 0, .05), 0 4px 4px -4px rgba(0, 0, 0, .1);
    --swl-img_shadow: 0 2px 8px rgba(0, 0, 0, .1), 0 4px 8px -4px rgba(0, 0, 0, .2);
    --swl-btn_shadow: 0 2px 2px rgba(0, 0, 0, .1), 0 4px 8px -4px rgba(0, 0, 0, .2);
    --swl-text_color--black: #333;
    --swl-text_color--white: #fff;
    --swl-fz--xs: .75em;
    --swl-fz--small: .9em;
    --swl-fz--normal: 1rem;
    --swl-fz--medium: 1.1em;
    --swl-fz--large: 1.25em;
    --swl-fz--huge: 1.6em;
    --swl-list-padding--left: 1.5em;
    --swl-list-padding--has_bg: 1em 1em 1em 1.75em
}

html {
    font-size: var(--swl-fz--root)
}

.c-plainBtn {
    -webkit-appearance: none;
    -o-appearance: none;
    appearance: none;
    background-color: transparent;
    border: none;
    box-shadow: none
}

*,
.c-plainBtn {
    margin: 0;
    padding: 0
}

* {
    box-sizing: border-box;
    font-family: inherit;
    font-size: inherit;
    line-height: inherit
}

:after,
:before {
    box-sizing: inherit;
    text-decoration: inherit;
    vertical-align: inherit
}

b,
strong {
    font-weight: 700
}

sub,
sup {
    font-size: smaller
}

ruby>rt {
    font-size: 50%
}

main {
    display: block
}

:where(ol:not([type])),
:where(ul:not([type])) {
    list-style: none
}

blockquote,
q {
    quotes: none
}

blockquote:after,
blockquote:before,
q:after,
q:before {
    content: none
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

td,
th {
    word-break: break-all
}

img {
    border-style: none;
    height: auto;
    max-width: 100%
}

video {
    outline: none
}

code,
pre {
    -moz-tab-size: 4;
    -o-tab-size: 4;
    tab-size: 4
}

svg:not([fill]) {
    fill: currentcolor
}

[hidden] {
    display: none
}

button,
input,
optgroup,
select,
textarea {
    font-family: inherit;
    font-size: inherit;
    line-height: inherit
}

button,
input {
    overflow: visible
}

button,
select {
    text-transform: none
}

[type=button],
[type=reset],
[type=submit],
button {
    -webkit-appearance: button;
    cursor: pointer;
    display: inline-block
}

[role=button] {
    cursor: pointer
}

fieldset {
    padding: .35em .75em .625em
}

legend {
    box-sizing: border-box;
    color: inherit;
    display: table;
    max-width: 100%;
    padding: 0;
    white-space: normal
}

button,
input,
select,
textarea {
    background-color: #f7f7f7;
    border: 1px solid hsla(0, 0%, 78%, .5);
    border-radius: 0;
    color: #333;
    padding: .25em .5em
}

[type=color] {
    padding: 0
}

[type=range] {
    vertical-align: middle
}

[aria-busy=true] {
    cursor: progress
}

[aria-controls] {
    cursor: pointer
}

[aria-disabled] {
    cursor: default
}

html {
    letter-spacing: var(--swl-letter_spacing, normal)
}

body {
    word-wrap: break-word;
    -webkit-text-size-adjust: 100%;
    background-color: var(--color_bg);
    color: var(--color_text);
    font-family: var(--swl-font_family);
    font-size: 1rem;
    font-weight: var(--swl-font_weight);
    line-height: 1.6;
    max-width: 100%;
    min-width: 100%;
    overflow-wrap: break-word;
    overflow-x: clip;
    position: relative
}

a {
    color: var(--color_link)
}

.swl-inline-color {
    --color_link: currentcolor
}

#lp-content .post_content,
#main_content .post_content {
    font-size: var(--swl-fz--content, 16px)
}

[data-spmenu=opened] #wpadminbar {
    z-index: 1
}

#fix_bottom_menu {
    bottom: -60px;
    display: none;
    left: 0;
    position: fixed
}

[data-spmenu=opened] body>.adsbygoogle {
    top: -140px !important
}

.-index-off .widget_swell_index,
.-index-off [data-onclick=toggleIndex] {
    display: none
}

.-index-off .widget_swell_index+.c-widget {
    margin-top: 0 !important
}

.l-article {
    max-width: var(--article_size);
    padding-left: 0;
    padding-right: 0
}

.-sidebar-off .l-article,
.lp-content .l-article {
    margin-left: auto;
    margin-right: auto
}

#body_wrap {
    max-width: 100%;
    overflow-x: clip;
    position: relative;
    z-index: 1
}

#body_wrap.-bg-fix {
    z-index: 1
}

#body_wrap.-bg-fix:before {
    content: "";
    height: 100%;
    left: 0;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: -1
}

.admin-bar {
    --swl-adminbarH: var(--wp-admin--admin-bar--height, 32px)
}

.l-container {
    margin-left: auto;
    margin-right: auto;
    max-width: calc(var(--container_size, 0px) + var(--swl-pad_container, 0px)*2);
    padding-left: var(--swl-pad_container, 0);
    padding-right: var(--swl-pad_container, 0)
}

.l-content {
    margin: 0 auto 6em;
    padding-top: 2em;
    position: relative;
    z-index: 1
}

.l-fixHeader {
    left: 0;
    margin-top: var(--swl-adminbarH, 0);
    opacity: 0;
    position: fixed;
    top: 0;
    -webkit-transform: translateY(calc(var(--swl-fix_headerH, 100px)*-1));
    transform: translateY(calc(var(--swl-fix_headerH, 100px)*-1));
    visibility: hidden;
    width: 100%;
    z-index: 101
}

.l-fixHeader[data-ready] {
    transition: all .5s
}

.l-fixHeader:before {
    background: var(--color_header_bg);
    display: block
}

.c-smallNavTitle {
    color: inherit;
    font-size: 10px;
    line-height: 1;
    opacity: .6
}

.sub-menu .c-smallNavTitle {
    display: none
}

.c-gnav {
    display: flex;
    height: 100%;
    text-align: center
}

.c-gnav a {
    text-decoration: none
}

.c-gnav .ttl {
    color: inherit;
    line-height: 1;
    position: relative;
    z-index: 1
}

.c-gnav>.menu-item {
    height: 100%;
    position: relative
}

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

.c-gnav>.menu-item>a {
    color: inherit;
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: center;
    padding: 0 12px;
    position: relative;
    white-space: nowrap
}

.c-gnav>.menu-item>a .ttl {
    display: block;
    font-size: 14px
}

.c-gnav>.menu-item>a:after {
    bottom: 0;
    content: "";
    display: block;
    left: 0;
    position: absolute;
    transition: width .25s, height .25s, -webkit-transform .25s;
    transition: transform .25s, width .25s, height .25s;
    transition: transform .25s, width .25s, height .25s, -webkit-transform .25s
}

.c-gnav>.menu-item>a .c-submenuToggleBtn {
    display: none
}

.c-gnav>.menu-item>.sub-menu {
    left: 50%;
    top: 100%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

.c-gnav .sub-menu {
    box-shadow: 0 2px 4px rgba(0, 0, 0, .1);
    opacity: 0;
    position: absolute;
    text-align: left;
    transition: opacity .25s, visibility .25s;
    visibility: hidden;
    width: 15em;
    z-index: 1
}

.c-gnav .sub-menu li {
    position: relative
}

.c-gnav .sub-menu .ttl {
    font-size: .9em;
    left: 0;
    position: relative;
    transition: left .25s
}

.c-gnav .sub-menu a {
    color: inherit;
    display: block;
    padding: .5em .75em;
    position: relative
}

.c-gnav .sub-menu a:hover {
    background-color: var(--swl-color_hov_gray)
}

.c-gnav__sBtn {
    color: inherit;
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: center;
    padding: 0 12px;
    width: auto
}

.c-gnav__sBtn .icon-search {
    font-size: 20px
}

.l-header {
    background: var(--color_header_bg);
    left: 0;
    top: 0;
    z-index: 100
}

.l-header,
.l-header__inner {
    position: relative;
    width: 100%
}

.l-header__inner {
    color: var(--color_header_text);
    z-index: 1
}

.l-header__inner .c-catchphrase {
    letter-spacing: var(--swl-letter_spacing, .2px)
}

.l-header__logo {
    line-height: 1
}

.c-headLogo.-txt {
    align-items: center;
    display: flex
}

.c-headLogo__link {
    display: block;
    text-decoration: none
}

.-img .c-headLogo__link {
    height: 100%
}

.-txt .c-headLogo__link {
    color: inherit;
    display: block;
    font-size: 5vw;
    font-weight: 700
}

.c-headLogo__img {
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
    width: auto
}

.w-header {
    align-items: center;
    display: flex
}

.l-header__customBtn,
.l-header__menuBtn {
    height: var(--logo_size_sp);
    line-height: 1.25;
    text-align: center;
    width: var(--logo_size_sp)
}

.l-mainContent {
    position: static !important;
    width: 100%
}

.-sidebar-on .l-mainContent {
    max-width: 100%
}

.l-mainContent__inner>:first-child,
.l-parent>:first-child,
.post_content>:first-child {
    margin-top: 0 !important
}

.l-mainContent__inner>:last-child,
.l-parent>:last-child,
.post_content>:last-child {
    margin-bottom: 0 !important
}

.l-scrollObserver {
    display: block;
    height: 1px;
    left: 0;
    pointer-events: none;
    position: absolute;
    top: 100px;
    visibility: hidden;
    width: 100%;
    z-index: 1000
}

#sidebar {
    font-size: var(--swl-fz--side);
    position: relative
}

.c-blogLink {
    --the-ison-size: 1em;
    align-items: center;
    display: flex;
    gap: .5em;
    line-height: 1.5;
    text-decoration: none
}

.c-blogLink__icon {
    flex: 0 0 auto;
    text-decoration: none
}

.c-blogLink__icon .__svg {
    height: var(--the-ison-size);
    width: var(--the-ison-size)
}

.c-blogLink[data-style=text] {
    --the-ison-size: .9em
}

.c-blogLink[data-style=text] .c-blogLink__icon {
    border: 1px solid;
    border-radius: 50%;
    display: inline-flex;
    flex: 0 0 auto;
    padding: 4px
}

.c-blogLink[data-style=text] .c-blogLink__text {
    text-decoration: underline
}

.c-blogLink[data-style=slim] {
    --the-ison-size: 1.2em;
    align-items: stretch;
    border-radius: 6px;
    box-shadow: 0 1px 3px 1px rgba(0, 0, 0, .1);
    color: inherit;
    gap: 0;
    overflow: hidden
}

.c-blogLink[data-style=slim] .c-blogLink__icon {
    align-items: center;
    background-color: #e6e9ea;
    border: 2px solid #fff;
    border-radius: inherit;
    color: #34383f;
    display: flex;
    justify-content: center;
    transition: color .25s, background-color .25s;
    width: 3.25em
}

.c-blogLink[data-style=slim] .c-blogLink__text {
    padding: 1em .75em
}

.c-blogLink[data-style=slim]:hover .c-blogLink__icon {
    background-color: #34383f;
    color: #fff
}

.c-listMenu li {
    margin: 0;
    position: relative
}

.c-listMenu a {
    border-bottom: 1px solid var(--color_border);
    color: inherit;
    display: block;
    line-height: 1.4;
    position: relative;
    text-decoration: none
}

.c-listMenu a:hover {
    background-color: var(--swl-color_hov_gray)
}

.c-taxList:before {
    content: "\e92f"
}

.c-categoryList {
    color: var(--color_main)
}

.c-categoryList:before {
    content: "\e92f"
}

.c-tagList:before {
    color: inherit;
    content: "\e935"
}

.c-categoryList__link,
.c-tagList__link,
.c-taxList__link {
    border-radius: 1px;
    display: block;
    line-height: 1;
    padding: 4px .5em;
    text-decoration: none
}

.c-tagList__link {
    background: #f7f7f7;
    color: #333
}

.c-categoryList__link {
    background-color: var(--color_main);
    color: #fff
}

.c-taxList__link {
    background: #f7f7f7;
    color: #333
}

.l-mainContent .c-categoryList__link.-current {
    background: none;
    box-shadow: inset 0 0 0 1px currentcolor;
    color: inherit
}

.l-topTitleArea .c-categoryList__link.-current {
    border: none;
    padding: 0
}

.c-categoryList__separation {
    display: block;
    line-height: 1;
    margin-right: .25em
}

.c-filterLayer:after,
.c-filterLayer:before,
.c-filterLayer__img {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%
}

.c-filterLayer {
    z-index: 0
}

.c-filterLayer:before {
    z-index: 1
}

.c-filterLayer:after {
    display: block;
    z-index: 2
}

.c-filterLayer.-texture-dot:after {
    background-color: rgba(0, 0, 0, .1);
    background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFAQMAAAC3obSmAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAGUExURUdwTAAAAJ8qhFEAAAABdFJOUwBA5thmAAAAEklEQVQI12MwYDBgYGBoYGAAAASKAOH8MS30AAAAAElFTkSuQmCC);
    background-size: 2px;
    content: "";
    opacity: .5
}

.c-filterLayer.-texture-brushed:after {
    background-image: url(../../assets/img/texture/white-brushed.png);
    content: "";
    opacity: .5
}

.c-filterLayer__img {
    z-index: 0
}

.-filter-blur>.c-filterLayer__img {
    -webkit-filter: blur(4px);
    filter: blur(4px);
    height: calc(100% + 8px);
    left: -4px;
    top: -4px;
    width: calc(100% + 8px)
}

.-filter-glay>.c-filterLayer__img {
    -webkit-filter: grayscale(60%);
    filter: grayscale(60%)
}

.c-fixBtn {
    align-items: center;
    background: #fff;
    border: 1px solid var(--color_main);
    border-radius: var(--swl-radius--8, 0);
    box-shadow: var(--swl-box_shadow);
    color: var(--color_main);
    cursor: pointer;
    display: flex;
    flex-direction: column;
    height: 52px;
    justify-content: center;
    letter-spacing: normal;
    line-height: 1;
    opacity: .75;
    overflow: hidden;
    text-align: center;
    transition: all .25s;
    width: 52px
}

.c-fixBtn+.c-fixBtn {
    margin-top: 16px
}

.c-fixBtn__icon {
    display: block;
    font-size: 20px
}

.c-fixBtn__label {
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
    display: block;
    font-size: 10px;
    -webkit-transform: scale(.9);
    transform: scale(.9)
}

#fix_tocbtn .c-fixBtn__label {
    margin-top: 2px
}

#pagetop .c-fixBtn__label {
    margin-top: -8px
}

#pagetop[data-has-text="1"] .c-fixBtn__icon {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px)
}

.c-iconBtn {
    align-content: center;
    align-items: center;
    color: inherit;
    display: inline-flex;
    flex-wrap: wrap;
    height: 100%;
    justify-content: center;
    text-decoration: none;
    width: 100%
}

.c-iconBtn .-menuBtn {
    z-index: 1
}

.c-iconBtn__icon {
    display: block;
    font-size: 24px
}

.p-spMenu__closeBtn .c-iconBtn__icon {
    font-size: 20px
}

.c-iconBtn__icon:before {
    display: block
}

.c-iconBtn__label {
    display: block;
    font-size: 10px;
    -webkit-transform: scale(.9);
    transform: scale(.9);
    width: 100%
}

.c-iconList {
    display: flex;
    flex-wrap: wrap
}

.widget_swell_prof_widget .c-iconList,
.widget_swell_sns_links .c-iconList {
    justify-content: center
}

.l-footer__foot .c-iconList {
    justify-content: center;
    margin-bottom: 8px
}

.c-iconList__link {
    box-sizing: content-box;
    color: inherit;
    height: 1em;
    margin: 0 3px;
    padding: 2px;
    text-align: center;
    text-decoration: none;
    width: 1em
}

.c-iconList__icon,
.c-iconList__link {
    display: block;
    line-height: 1
}

.c-iconList__icon:before {
    color: inherit
}

.is-style-circle .c-iconList__link {
    border: 1px solid;
    border-radius: 50%;
    margin: 4px;
    padding: 5px
}

.c-modal {
    height: 100%;
    left: 0;
    position: fixed;
    top: 0;
    transition: opacity .5s, visibility .5s;
    width: 100%;
    z-index: 1000
}

[data-loaded=false] .c-modal {
    display: none
}

.c-modal:not(.is-opened) {
    opacity: 0;
    pointer-events: none;
    visibility: hidden
}

.c-modal .c-modal__close {
    color: #fff;
    cursor: pointer;
    left: 0;
    line-height: 2;
    padding-top: .5em;
    position: absolute;
    text-align: center;
    text-shadow: 1px 1px 1px #000;
    top: 100%;
    width: 100%
}

.c-mvBtn {
    display: block;
    margin: 2em auto 0;
    position: relative;
    text-align: center
}

.u-ta-l .c-mvBtn {
    margin-left: 0
}

.u-ta-r .c-mvBtn {
    margin-right: 0
}

.c-mvBtn__btn {
    background-color: var(--color_main);
    border-radius: var(--mv_btn_radius);
    box-shadow: 0 1px 4px rgba(0, 0, 0, .1);
    display: block;
    font-size: 3.2vw;
    letter-spacing: var(--swl-letter_spacing, 1px);
    overflow: hidden;
    padding: .75em 2.5em;
    position: relative;
    text-decoration: none;
    text-shadow: none;
    transition: box-shadow .25s
}

.-btn-n>.c-mvBtn__btn {
    color: #fff
}

.c-mvBtn__btn:before {
    background: linear-gradient(hsla(0, 0%, 100%, .2), #fff);
    border-radius: 2px;
    display: block;
    opacity: 0;
    transition: opacity .25s
}

.c-mvBtn__btn:hover {
    box-shadow: 0 1px 8px rgba(0, 0, 0, .2);
    opacity: 1
}

.c-mvBtn__btn:hover:before {
    opacity: .2
}

.-btn-b>.c-mvBtn__btn {
    background: none;
    border: 1px solid
}

.c-overlay {
    background: rgba(0, 0, 0, .75);
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 0
}

.c-pagination {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    font-size: 13px;
    justify-content: center;
    margin: 3em 0;
    position: relative
}

[class*=page-numbers] {
    box-sizing: content-box;
    display: block;
    font-size: 14px;
    height: 36px;
    line-height: 36px;
    margin: 6px;
    min-width: 36px;
    padding: 0;
    position: relative;
    text-align: center;
    text-decoration: none;
    transition: color .25s, background-color .25s;
    width: auto
}

[class*=page-numbers].current,
[class*=page-numbers]:hover {
    background-color: var(--color_main);
    color: #fff
}

.c-pagination__dot {
    color: #aaa;
    margin: 0 6px
}

.c-postTitle {
    align-items: center;
    display: flex;
    flex-direction: row-reverse
}

.c-postTitle__ttl {
    font-size: 5vw;
    line-height: 1.4;
    width: 100%
}

.c-postTitle__date {
    border-right: 1px solid var(--color_border);
    font-weight: 400;
    line-height: 1;
    margin-right: .75em;
    padding: .5em .75em .5em 0;
    text-align: center
}

.c-postTitle__date .__y {
    display: block;
    font-size: 3vw;
    line-height: 1;
    margin-bottom: 4px
}

.c-postTitle__date .__md {
    display: block;
    font-size: 4.2vw
}

.p-postList .c-postTitle {
    margin: 0 auto 1em;
    position: relative;
    width: 100%;
    z-index: 1
}

.p-postList .c-postTitle__date .__md,
.p-postList .c-postTitle__ttl {
    font-size: 4vw
}

.c-reviewStars i {
    color: var(--color-review_star, #fac225)
}

.post_content>.c-reviewStars {
    display: block
}

.c-scrollHint {
    -webkit-animation: FloatHorizontal 2s ease-in-out infinite alternate;
    animation: FloatHorizontal 2s ease-in-out infinite alternate;
    margin-bottom: 2px !important;
    margin-top: 3em;
    text-align: right
}

.c-scrollHint span {
    align-items: center;
    display: inline-flex;
    font-size: 12px;
    line-height: 1;
    opacity: .75;
    vertical-align: middle
}

.c-scrollHint span i {
    font-size: 16px;
    margin-left: 4px
}

.c-scrollHint+.wp-block-table {
    margin-top: 0 !important
}

.c-searchForm {
    position: relative
}

.c-searchForm__s {
    background-color: #fff;
    line-height: 2;
    padding: 4px 44px 4px 8px;
    width: 100%
}

.c-searchForm__submit {
    border-radius: var(--swl-radius--4, 0);
    height: 100%;
    overflow: hidden;
    position: absolute;
    right: 0;
    top: 0;
    width: 40px
}

.c-searchForm__submit:before {
    color: #fff;
    font-size: 20px;
    left: 50%;
    position: absolute;
    top: 50%;
    -webkit-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
    z-index: 1
}

.w-header .c-searchForm__s {
    font-size: 14px;
    line-height: 20px
}

.w-header .c-searchForm__submit {
    width: 30px
}

.w-header .c-searchForm__submit:before {
    font-size: 16px
}

.skip-link {
    left: 0;
    opacity: 0;
    overflow: hidden;
    pointer-events: none;
    position: absolute !important;
    text-decoration: none;
    top: 0;
    z-index: 999
}

.skip-link:focus {
    background-color: #f1f1f1;
    border-radius: 3px;
    box-shadow: 0 0 2px 2px rgba(0, 0, 0, .6);
    color: #21759b;
    display: block;
    font-size: 14px;
    font-weight: 700;
    height: auto;
    left: 8px;
    opacity: 1;
    padding: 16px 24px;
    pointer-events: auto;
    top: 8px;
    width: auto;
    z-index: 1000
}

.c-postAuthor {
    align-items: center;
    display: flex
}

.c-postAuthor.is-link {
    color: inherit;
    text-decoration: none;
    transition: opacity .25s
}

.c-postAuthor.is-link:hover {
    opacity: .75
}

.c-postAuthor__figure {
    border-radius: 50%;
    height: 20px;
    margin: 0 .25em 0 1px;
    overflow: hidden;
    width: 20px
}

.c-postAuthor__figure .avatar {
    display: block;
    -o-object-fit: cover;
    object-fit: cover
}

.c-postThumb {
    overflow: hidden;
    position: relative;
    vertical-align: middle
}

.c-postThumb__figure {
    margin: 0;
    overflow: hidden;
    position: relative;
    width: 100%;
    z-index: 0
}

.c-postThumb__figure:before {
    content: "";
    display: block;
    height: 0;
    padding-top: var(--card_posts_thumb_ratio)
}

.-type-list .c-postThumb__figure:before,
.-type-list2 .c-postThumb__figure:before {
    padding-top: var(--list_posts_thumb_ratio)
}

.-type-big .c-postThumb__figure:before {
    padding-top: var(--big_posts_thumb_ratio)
}

.-type-thumb .c-postThumb__figure:before {
    padding-top: var(--thumb_posts_thumb_ratio)
}

.p-blogCard .c-postThumb__figure:before {
    padding-top: var(--blogcard_thumb_ratio)
}

.p-postList__link:hover .c-postThumb:before {
    opacity: .2
}

.p-postList__link:hover .c-postThumb__img {
    -webkit-transform: scale(1.06);
    transform: scale(1.06)
}

.c-postThumb__img {
    left: 0;
    position: absolute;
    top: 0;
    transition: -webkit-transform .25s;
    transition: transform .25s;
    transition: transform .25s, -webkit-transform .25s
}

.c-postThumb__cat {
    background-color: var(--color_main);
    display: inline-block;
    font-size: 10px;
    line-height: 2;
    overflow: hidden;
    padding: 0 .75em;
    position: absolute;
    right: 0;
    top: 0;
    white-space: nowrap;
    z-index: 1
}

.-type-list .c-postThumb__cat,
.-type-list2 .c-postThumb__cat {
    left: 0;
    right: auto;
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0
}

.c-postThumb__cat:before {
    margin-right: .4em
}

.c-postTimes {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: .5em
}

.c-postTimes__modified:before,
.c-postTimes__posted:before {
    margin-right: .325em;
    position: relative;
    top: 1px
}

.c-rssSite {
    margin-right: .5rem
}

.c-rssSite__favi {
    display: block;
    height: 14px;
    margin-right: .25rem;
    width: 14px
}

.c-rssAuthor {
    margin-left: 0 !important
}

.p-blogCard {
    cursor: pointer;
    display: block;
    margin: 2.5em auto 2em;
    max-width: 880px;
    transition: box-shadow .25s;
    width: 100%
}

.wp-block-embed>.p-blogCard {
    margin: 0 auto
}

.p-blogCard:hover {
    box-shadow: 0 4px 16px rgba(0, 0, 0, .1), 0 12px 28px -12px rgba(0, 0, 0, .05)
}

.p-blogCard:hover .c-postThumb__img {
    opacity: 1
}

.p-blogCard__caption {
    background: var(--color_content_bg);
    border-radius: 2px;
    display: inline-block;
    font-size: 11px;
    left: 16px;
    line-height: 2;
    padding: 0 .5em;
    position: absolute;
    top: -1em;
    z-index: 1
}

.p-blogCard__caption:before {
    content: "\f303";
    display: inline-block;
    font-family: icomoon;
    margin-right: 3px
}

.-external .p-blogCard__caption:before {
    content: "\e91a"
}

.p-blogCard__inner {
    align-items: center;
    display: flex;
    justify-content: space-between;
    margin: 0;
    padding: 16px;
    position: relative;
    transition: box-shadow .25s
}

.-noimg>.p-blogCard__inner {
    min-height: 5em
}

.p-blogCard__thumb {
    flex-shrink: 0;
    margin: 0 1em 0 0;
    width: 30%
}

.p-blogCard__thumb .c-postThumb__figure {
    margin: 0;
    position: relative;
    width: 100%
}

.p-blogCard__body {
    flex: 1 1 auto;
    margin: 0
}

.p-blogCard__title {
    color: inherit;
    display: block;
    font-weight: 400;
    line-height: 1.4;
    text-decoration: none
}

.p-blogCard__excerpt {
    display: block;
    font-size: .8em;
    line-height: 1.4;
    margin-top: .5em;
    opacity: .8;
    word-break: break-word
}

[data-type=type1] .p-blogCard__caption {
    bottom: auto;
    right: auto
}

[data-type=type1] .p-blogCard__inner {
    padding-top: 21px
}

[data-type=type1] .p-blogCard__inner:before {
    border: 1px solid;
    border-radius: var(--swl-radius--2, 0);
    display: block;
    pointer-events: none
}

[data-type=type2] .p-blogCard__caption {
    background: var(--color_main);
    bottom: auto;
    color: #fff;
    padding: 0 .75em;
    right: auto
}

[data-type=type2] .p-blogCard__inner {
    border: 1px solid var(--color_main);
    border-radius: 2px;
    padding-top: 24px
}

[data-type=type3] .p-blogCard__caption {
    background: none;
    bottom: 2px;
    font-size: 10px;
    left: auto;
    opacity: .8;
    right: 4px;
    top: auto;
    -webkit-transform: scale(.8);
    transform: scale(.8);
    -webkit-transform-origin: 100% 100%;
    transform-origin: 100% 100%
}

[data-type=type3] .p-blogCard__inner {
    background: #fff;
    border-radius: 2px;
    box-shadow: 0 1px 3px 1px rgba(0, 0, 0, .08);
    color: #333
}

.p-breadcrumb {
    margin: 0 auto;
    padding: 8px 0;
    position: relative
}

.p-breadcrumb.-bg-on {
    background: #f7f7f7
}

.p-breadcrumb:not(.-bg-on) {
    padding-top: 12px
}

.-body-solid .p-breadcrumb.-bg-on {
    box-shadow: inset 0 -1px 8px rgba(0, 0, 0, .06)
}

.-frame-on .p-breadcrumb,
.c-infoBar+.p-breadcrumb,
.c-infoBar+[data-barba=container]>.p-breadcrumb,
.l-topTitleArea+.p-breadcrumb {
    background: none !important;
    border: none !important;
    box-shadow: none !important;
    padding-top: 12px
}

.-frame-on .p-breadcrumb {
    padding-bottom: 12px
}

.p-breadcrumb__list {
    align-items: center;
    display: flex;
    font-size: 10px;
    gap: .5em;
    list-style: none;
    overflow: hidden;
    width: 100%
}

.p-breadcrumb__item {
    align-items: center;
    display: inline-flex;
    gap: .5em;
    position: relative
}

.p-breadcrumb__item:last-child:after {
    content: none
}

.p-breadcrumb__item:last-child span {
    opacity: .8
}

.p-breadcrumb__text {
    align-items: center;
    color: inherit;
    display: block;
    display: inline-flex;
    text-decoration: none;
    white-space: nowrap
}

.p-breadcrumb__text:before {
    margin-right: 3px
}

.p-breadcrumb__text:hover span {
    opacity: .76
}

.p-breadcrumb__text .__home {
    align-items: center;
    display: inline-flex;
    gap: 4px
}

.p-breadcrumb__text .__home:before {
    line-height: inherit
}

.single .p-breadcrumb__item:last-child>span.p-breadcrumb__text {
    display: none
}

.p-fixBtnWrap {
    align-items: flex-end;
    bottom: 1.25em;
    display: flex;
    flex-direction: column;
    opacity: 0;
    position: fixed;
    right: 1em;
    text-align: center;
    -webkit-transform: translateY(-8px);
    transform: translateY(-8px);
    transition: opacity .3s, visibility .3s, -webkit-transform .3s;
    transition: opacity .3s, transform .3s, visibility .3s;
    transition: opacity .3s, transform .3s, visibility .3s, -webkit-transform .3s;
    visibility: hidden;
    z-index: 99
}

[data-loaded=false] .p-fixBtnWrap {
    display: none
}

[data-scrolled=true] .p-fixBtnWrap {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
    visibility: visible
}

.p-postListWrap {
    position: relative
}

.p-postList.p-postList {
    list-style: none;
    margin-bottom: 0;
    padding-left: 0
}

.p-postList.-type-simple {
    border-top: 1px solid var(--color_border)
}

.p-postList.-type-card,
.p-postList.-type-thumb {
    display: flex;
    flex-wrap: wrap;
    margin-left: -.5em;
    margin-right: -.5em
}

.-frame-off .p-postList.-type-list2 {
    border-top: 1px solid var(--color_border);
    padding-top: 1.5em
}

.c-widget .p-postList.-type-card {
    margin-bottom: -1.5em
}

.p-postList.-type-thumb+.is-style-more_btn {
    margin-top: 1em
}

.p-postList.-type-simple+.is-style-more_btn {
    margin-top: 2em
}

.p-postList__item.p-postList__item:before {
    content: none
}

.-type-simple .p-postList__item {
    margin-bottom: 0;
    margin-top: 0
}

.-type-list .p-postList__item {
    margin-bottom: 2em;
    margin-top: 0
}

.-type-list2 .p-postList__item {
    border-bottom: 1px solid var(--color_border);
    margin-bottom: 1.5em;
    margin-top: 0;
    padding-bottom: 1.5em
}

.-type-big .p-postList__item {
    padding-left: .5em;
    padding-right: .5em
}

.-type-big .p-postList__item:not(:last-child) {
    border-bottom: 1px solid var(--color_border);
    margin-bottom: 3em;
    padding-bottom: 3em
}

.-type-card .p-postList__item {
    margin-bottom: 2.5em;
    margin-top: 0;
    padding: 0 .5em;
    width: 50%
}

.-type-thumb .p-postList__item {
    margin-bottom: 1em;
    margin-top: 0;
    padding: 0 .5em;
    width: 50%
}

.is-first-big>.p-postList__item:first-child {
    width: 100%
}

.c-widget .-type-card .p-postList__item {
    margin-bottom: 2em
}

.c-widget .-type-list .p-postList__item {
    margin-bottom: 1.5em
}

.p-postList__link {
    color: inherit;
    display: block;
    position: relative;
    text-decoration: none;
    z-index: 0
}

.-type-card .p-postList__link {
    height: 100%
}

.-type-simple .p-postList__link {
    border-bottom: 1px solid var(--color_border);
    display: block;
    padding: 1em .25em;
    transition: background-color .25s
}

.-type-simple .p-postList__link:hover {
    background-color: var(--swl-color_hov_gray)
}

.-type-list .p-postList__link,
.-type-list2 .p-postList__link {
    align-items: flex-start;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
}

.-type-list2 .p-postList__link {
    padding: 0 .25em
}

.-type-list2 .p-postList__item:nth-child(2n) .p-postList__link {
    flex-direction: row-reverse
}

.-type-card .p-postList__thumb {
    width: 100%
}

.-type-list .p-postList__thumb,
.-type-list2 .p-postList__thumb {
    width: 36%
}

.-type-thumb .p-postList__thumb {
    box-shadow: none;
    width: 100%
}

.p-postList__thumb:before {
    background: linear-gradient(45deg, var(--color_gradient1), var(--color_gradient2));
    content: "";
    display: block;
    height: 100%;
    left: 0;
    opacity: 0;
    position: absolute;
    top: 0;
    transition: opacity .25s;
    width: 100%;
    z-index: 1
}

.p-postList__body {
    position: relative;
    transition: opacity .25s
}

.-type-big .p-postList__body,
.-type-card .p-postList__body {
    padding-top: 1em
}

.-ps-style-normal .p-postList__item:hover .p-postList__body,
.-type-card .p-postList__item:hover .p-postList__body,
.-type-list .p-postList__item:hover .p-postList__body {
    opacity: .75
}

.-type-list .p-postList__body,
.-type-list2 .p-postList__body {
    width: 60%
}

.-type-thumb .p-postList__body {
    background: rgba(0, 0, 0, .5);
    bottom: 0;
    color: #fff;
    left: 0;
    padding: .75em;
    position: absolute;
    width: 100%
}

.-type-big .p-postList__body:after,
.-type-list2 .p-postList__body:after {
    box-shadow: 0 0 0 1px var(--color_border);
    display: block;
    font-size: 12px;
    letter-spacing: var(--swl-letter_spacing, .5px);
    margin: 2em auto 0;
    opacity: .75;
    padding: 1em 0;
    text-align: center;
    transition: color .25s, background-color .25s;
    width: 100%
}

.-type-list2 .p-postList__body:after {
    display: inline-block;
    margin-top: 2em;
    max-width: 100%;
    padding: .5em 3em;
    width: auto
}

.p-postList__link:hover .p-postList__body:after {
    background: var(--color_main);
    box-shadow: none;
    color: #fff;
    opacity: 1
}

.p-postList .p-postList__title {
    background: none;
    border: none;
    color: inherit;
    display: block;
    font-weight: 700;
    line-height: 1.5;
    margin: 0;
    padding: 0
}

.p-postList .p-postList__title:after,
.p-postList .p-postList__title:before {
    content: none
}

.-type-card .p-postList__title,
.-type-list .p-postList__title,
.-type-list2 .p-postList__title {
    font-size: 3.6vw
}

.-type-simple .p-postList__title {
    font-size: 1em
}

.p-postList__excerpt {
    line-height: 1.5
}

.-type-card .p-postList__excerpt {
    font-size: 3.2vw;
    margin-top: .5em
}

.-type-list .p-postList__excerpt,
.-type-list2 .p-postList__excerpt {
    font-size: 3.4vw;
    margin-top: .5em
}

.-type-big .p-postList__excerpt {
    line-height: 1.6;
    padding-bottom: .5em
}

#sidebar .p-postList__excerpt,
.-related .p-postList__excerpt,
.-type-thumb .p-postList__excerpt {
    display: none
}

.p-postList__meta {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    font-size: 10px;
    line-height: 1.25;
    margin-top: .75em;
    position: relative
}

.p-postList__title+.p-postList__meta {
    margin-top: .25em
}

.p-postList__meta :before {
    margin-right: .25em
}

.-type-simple .p-postList__meta {
    margin: 0 0 4px
}

.-type-big .p-postList__meta {
    font-size: 12px;
    margin: 0 0 1em
}

.-type-thumb .p-postList__meta,
.c-widget .p-postList__meta {
    margin-top: 0
}

.p-postList__author,
.p-postList__cat,
.p-postList__times,
.p-postList__views {
    margin-right: .5em;
    padding: 4px 0
}

.-type-simple .p-postList__author {
    padding: 0
}

.p-postList__author:not(:first-child) {
    margin-left: auto
}

.-w-ranking.p-postList {
    counter-reset: number 0
}

.-w-ranking .p-postList__item {
    position: relative
}

.-w-ranking .p-postList__item:before {
    background-color: #3c3c3c;
    color: #fff;
    content: counter(number);
    counter-increment: number;
    display: block;
    font-family: arial, helvetica, sans-serif;
    pointer-events: none;
    position: absolute;
    text-align: center;
    z-index: 2
}

.-w-ranking .p-postList__item:first-child:before {
    background-color: #f7d305;
    background-image: linear-gradient(to top left, #f7bf05, #fcea7f, #fcd700, #f7d305, #eaca12, #ac9303, #f7d305, #fcea7f, #f7e705, #eaca12, #f7bf05)
}

.-w-ranking .p-postList__item:nth-child(2):before {
    background-color: #a5a5a5;
    background-image: linear-gradient(to top left, #a5a5a5, #e5e5e5, #ae9c9c, #a5a5a5, #a5a5a5, #7f7f7f, #a5a5a5, #e5e5e5, #a5a5a5, #a5a5a5, #a5a5a5)
}

.-w-ranking .p-postList__item:nth-child(3):before {
    background-color: #c47222;
    background-image: linear-gradient(to top left, #c46522, #e8b27d, #d07217, #c47222, #b9722e, #834c17, #c47222, #e8b27d, #c48022, #b9722e, #c46522)
}

.-w-ranking.-type-card .p-postList__item:before {
    font-size: 3.2vw;
    left: calc(.5em + 8px);
    line-height: 2.5;
    top: -4px;
    width: 2em
}

.-w-ranking.-type-list .p-postList__item:before {
    font-size: 3vw;
    left: 0;
    line-height: 2;
    top: 0;
    width: 2em
}

.-type-big .noimg_ {
    display: none
}

.-type-big .noimg_+.p-postList__body {
    padding-top: 0
}

.p-spMenu {
    height: 100%;
    left: 0;
    position: fixed;
    top: 0;
    transition: opacity 0s;
    width: 100%;
    z-index: 101
}

[data-loaded=false] .p-spMenu {
    display: none
}

[data-spmenu=closed] .p-spMenu {
    opacity: 0;
    pointer-events: none;
    transition-delay: 1s
}

.p-spMenu a {
    color: inherit
}

.p-spMenu .c-widget__title {
    margin-bottom: 1.5em
}

.c-spnav {
    display: block;
    text-align: left
}

.c-spnav .menu-item {
    position: relative
}

.c-spnav>.menu-item:first-child>a {
    border-top: none
}

.c-spnav a {
    border-bottom: 1px solid var(--color_border);
    display: block;
    padding: .75em .25em
}

.c-spnav .desc {
    margin-left: 8px
}

.p-spMenu__overlay {
    transition: opacity .5s, visibility .5s
}

[data-spmenu=closed] .p-spMenu__overlay {
    opacity: 0;
    visibility: hidden
}

.p-spMenu__inner {
    box-shadow: 0 0 8px var(--swl-color_shadow);
    height: 100%;
    padding-top: var(--logo_size_sp);
    position: absolute;
    top: 0;
    transition: -webkit-transform .45s;
    transition: transform .45s;
    transition: transform .45s, -webkit-transform .45s;
    transition-timing-function: ease-out;
    width: 88vw;
    z-index: 1
}

.-left .p-spMenu__inner {
    left: 0;
    -webkit-transform: translateX(-88vw);
    transform: translateX(-88vw)
}

.-right .p-spMenu__inner {
    right: 0;
    -webkit-transform: translateX(88vw);
    transform: translateX(88vw)
}

[data-spmenu=opened] .p-spMenu__inner {
    -webkit-transform: translateX(0);
    transform: translateX(0)
}

.p-spMenu__closeBtn {
    height: var(--logo_size_sp);
    position: absolute;
    top: 0;
    width: var(--logo_size_sp);
    z-index: 1
}

.-left .p-spMenu__closeBtn {
    left: 0
}

.-right .p-spMenu__closeBtn {
    right: 0
}

.p-spMenu__body {
    -webkit-overflow-scrolling: touch;
    height: 100%;
    overflow-y: scroll;
    padding: 0 4vw 10vw;
    position: relative
}

.p-spMenu__nav {
    margin-top: -1em;
    padding-bottom: .5em
}

.p-spMenu__bottom {
    margin-top: 2em
}

.note {
    color: #e03030
}

.dump_data {
    background: #fafafa;
    border: 1px solid #ddd;
    display: block;
    font-family: arial, sans-serif;
    font-size: 13px;
    padding: 16px;
    white-space: pre-wrap
}

.xdebug-var-dump {
    font-family: inherit;
    white-space: inherit
}

.xdebug-var-dump small:first-child {
    display: block
}

.xdebug-var-dump font {
    color: #4368af
}

.xdebug-var-dump small {
    color: #ff6868
}

/*.alignwide {
    max-width: none !important;
    position: relative;
    width: 100%
}

h2.alignwide {
    margin-left: 0 !important;
    margin-right: 0 !important
}

.alignfull {
    left: calc(50% - 50vw);
    max-width: 100vw !important;
    position: relative;
    width: 100vw
}*/

@supports (--css:variables) {
    .alignfull {
        left: calc(50% - 50vw + var(--swl-scrollbar_width, 0px)/2);
        width: calc(100vw - var(--swl-scrollbar_width, 0px))
    }
}

.alignfull>.wp-block-cover__inner-container,
.alignfull>.wp-block-group__inner-container {
    margin: 0 auto;
    max-width: var(--article_size)
}

.u-bg-main {
    background-color: var(--color_main) !important;
    color: #fff !important
}

.cf:after,
.cf:before {
    clear: both;
    content: "";
    display: block;
    height: 0;
    overflow: hidden
}

.clear,
.u-cf {
    clear: both !important
}

.none,
.u-none {
    display: none !important
}

.u-block {
    display: block !important
}

.u-flex--aic {
    align-items: center;
    display: flex
}

.fs_xs,
.has-xs-font-size,
.u-fz-xs {
    font-size: var(--swl-fz--xs) !important
}

.fs_s,
.has-s-font-size,
.has-small-font-size,
.u-fz-s {
    font-size: var(--swl-fz--small) !important
}

.has-normal-font-size,
.has-regular-font-size {
    font-size: var(--swl-fz--normal) !important
}

.has-medium-font-size,
.u-fz-m {
    font-size: var(--swl-fz--medium) !important
}

.fs_l,
.has-l-font-size,
.has-large-font-size,
.u-fz-l {
    font-size: var(--swl-fz--large) !important
}

.fs_xl,
.has-huge-font-size,
.has-xl-font-size,
.u-fz-xl {
    font-size: var(--swl-fz--huge) !important
}

.u-fz-10 {
    font-size: 10px
}

.u-fz-11 {
    font-size: 11px
}

.u-fz-12 {
    font-size: 12px
}

.u-fz-13 {
    font-size: 13px
}

.u-fz-14 {
    font-size: 14px
}

.u-fz-15 {
    font-size: 15px
}

.u-fz-16 {
    font-size: 16px
}

.u-fz-18 {
    font-size: 18px
}

.u-fw-bold {
    font-weight: 700 !important
}

.u-fw-normal {
    font-weight: 400 !important
}

.u-fw-lighter {
    font-weight: lighter !important
}

.u-fs-italic {
    font-style: italic !important
}

.u-col-main {
    color: var(--color_main) !important
}

.u-thin {
    opacity: .8
}

.hov-opacity {
    transition: opacity .25s
}

.hov-opacity:hover {
    opacity: .8
}

.hov-flash:hover {
    -webkit-animation: flash 1s;
    animation: flash 1s
}

.hov-flash-up {
    transition: box-shadow .25s
}

.hov-flash-up:hover {
    -webkit-animation: flash 1s;
    animation: flash 1s;
    box-shadow: 0 2px 8px rgba(0, 0, 0, .25)
}

.hov-col-main {
    transition: color .25s
}

.hov-col-main:hover {
    color: var(--color_main) !important
}

.u-lh-10 {
    line-height: 1 !important
}

.u-lh-15 {
    line-height: 1.5 !important
}

.u-lh-20 {
    line-height: 2 !important
}

.luminous {
    cursor: -webkit-zoom-in !important;
    cursor: zoom-in !important
}

.u-mb-ctrl+* {
    margin-top: 0 !important
}

.u-mb-0 {
    margin-bottom: 0 !important
}

.u-mb-5 {
    margin-bottom: .5em !important
}

.u-mb-10 {
    margin-bottom: 1em !important
}

.u-mb-15 {
    margin-bottom: 1.5em !important
}

.u-mb-20 {
    margin-bottom: 2em !important
}

.u-mb-25 {
    margin-bottom: 2.5em !important
}

.u-mb-30 {
    margin-bottom: 3em !important
}

.u-mb-40 {
    margin-bottom: 4em !important
}

.u-mb-50 {
    margin-bottom: 5em !important
}

.u-mb-60 {
    margin-bottom: 6em !important
}

.u-mb-80 {
    margin-bottom: 8em !important
}

.u-mt-0 {
    margin-top: 0 !important
}

.u-mt-5 {
    margin-top: .5em !important
}

.u-mt-10 {
    margin-top: 1em !important
}

.u-mt-15 {
    margin-top: 1.5em !important
}

.u-mt-20 {
    margin-top: 2em !important
}

.u-mt-25 {
    margin-top: 2.5em !important
}

.u-mt-30 {
    margin-top: 3em !important
}

.u-mt-40 {
    margin-top: 4em !important
}

.u-mt-50 {
    margin-top: 5em !important
}

.u-mt-60 {
    margin-top: 6em !important
}

.u-mt-80 {
    margin-top: 8em !important
}

.u-obf-cover {
    display: block;
    height: 100% !important;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100% !important
}

.al_c,
.u-ta-c {
    text-align: center
}

.al_l,
.u-ta-l {
    text-align: left
}

.al_r,
.u-ta-r {
    text-align: right
}

.u-nowrap {
    white-space: nowrap
}

.alignleft {
    float: left
}

.alignright {
    float: right
}

.c-prBanner__link {
    display: block;
    margin: 0 auto;
    max-width: 400px;
    transition: opacity .25s
}

.c-prBanner__link:hover {
    opacity: .8
}

.c-prBanner__img {
    width: 100%
}

.widget_swell_ad_widget {
    margin: 0 auto;
    text-align: center;
    width: 100%
}

.widget_swell_ad_widget iframe,
.widget_swell_ad_widget ins {
    box-sizing: border-box;
    max-width: 100%
}

.w-beforeToc {
    margin-bottom: 4em;
    margin-top: 4em
}

.w-fixSide {
    margin-top: 2em;
    max-height: calc(100vh - 16px - var(--swl-adminbarH, 0px) - var(--swl-fix_headerH, 0px));
    overflow-y: auto;
    top: calc(8px + var(--swl-adminbarH, 0px) + var(--swl-fix_headerH, 0px))
}

.w-frontTop {
    margin-bottom: 3em
}

.w-frontBottom {
    margin-top: 3em
}

.c-widget+.c-widget {
    margin-top: 2em
}

.c-widget p:empty:before {
    content: none
}

.c-widget .textwidget>:not(:last-child) {
    margin-bottom: 1em
}

.c-widget__title {
    font-size: 4vw;
    font-weight: 700;
    margin-bottom: 1.5em;
    overflow: hidden;
    position: relative
}

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

.widget_search .c-widget__title,
.widget_search .wp-block-search__label {
    display: none
}

.recentcomments {
    padding: 8px
}

.cat-post-count,
.post_count,
.tag-link-count {
    color: #666;
    font-size: 3vw;
    position: relative;
    right: -1px
}

.cat-post-count {
    margin-left: 4px
}

.wp-block-archives-list,
.wp-block-categories-list,
.wp-block-latest-comments,
.wp-block-latest-posts,
.wp-block-rss {
    list-style: none !important;
    padding: 0 !important
}

.post_content {
    line-height: 1.8;
    margin: 0;
    max-width: 100%;
    padding: 0
}

.post_content>* {
    clear: both;
    margin-bottom: var(--swl-block-margin, 2em)
}

.post_content div>:first-child,
.post_content>:first-child {
    margin-top: 0 !important
}

.post_content dd>:last-child,
.post_content div>:last-child,
.post_content>:last-child {
    margin-bottom: 0 !important
}

.post_content h1 {
    font-size: 2em
}

.post_content h2 {
    font-size: 1.2em;
    line-height: 1.4;
    margin: 4em 0 2em;
    position: relative;
    z-index: 1
}

.post_content>h2 {
    margin-left: var(--swl-h2-margin--x, 0);
    margin-right: var(--swl-h2-margin--x, 0)
}

.post_content h3 {
    font-size: 1.1em;
    font-weight: 700;
    line-height: 1.4;
    margin: 3em 0 2em;
    position: relative
}

.post_content h3:before {
    bottom: 0;
    display: block;
    left: 0;
    position: absolute;
    z-index: 0
}

.post_content h4 {
    font-size: 1.05em;
    line-height: 1.4;
    margin: 3em 0 1.5em;
    position: relative
}

.post_content dt,
.post_content h2,
.post_content h3,
.post_content h4 {
    font-weight: 700
}

.post_content .is-style-section_ttl {
    background: none;
    border: none;
    border-radius: 0;
    color: inherit;
    letter-spacing: var(--swl-letter_spacing, .2px);
    padding: 0;
    position: relative;
    text-align: center
}

.post_content .is-style-section_ttl:after,
.post_content .is-style-section_ttl:before {
    border: none;
    content: none
}

.post_content .is-style-section_ttl.has-text-align-left {
    text-align: left
}

.post_content .is-style-section_ttl.has-text-align-right {
    text-align: right
}

.post_content .is-style-section_ttl small {
    display: block;
    font-size: .6em;
    padding-top: .25em
}

.post_content table {
    border: none;
    border-collapse: collapse;
    border-spacing: 0;
    line-height: 1.6;
    max-width: 100%;
    text-align: left;
    width: 100%
}

.post_content td,
.post_content th {
    border: 1px solid var(--color_border--table, #dcdcdc);
    padding: .5em
}

.post_content th {
    background-color: var(--tbody-th-color--bg, hsla(0, 0%, 59%, .05));
    color: var(--tbody-th-color--txt, inherit);
    font-weight: 700
}

.post_content thead td,
.post_content thead th {
    background-color: #004c8d;
    color: #fff;
}

.post_content :where(table) caption {
    font-size: .9em;
    margin-bottom: .25em;
    opacity: .8
}

.post_content small {
    font-size: .8em;
    opacity: .8
}

.post_content :not(pre)>code {
    align-items: center;
    background: #f7f7f7;
    border: 1px solid rgba(0, 0, 0, .1);
    border-radius: 2px;
    color: #333;
    display: inline-flex;
    font-family: Menlo, Consolas, メイリオ, sans-serif;
    font-size: .9em;
    letter-spacing: 0;
    line-height: 1;
    margin: 0 .5em;
    padding: .25em .5em
}

.post_content :where(ul:not([type])) {
    list-style: disc
}

.post_content :where(ol:not([type])) {
    list-style: decimal
}

.post_content ol,
.post_content ul {
    padding-left: var(--swl-list-padding--left)
}

.post_content ol ul,
.post_content ul ul {
    list-style: circle
}

.post_content li {
    line-height: 1.5;
    margin: .25em 0;
    position: relative
}

.post_content li ol,
.post_content li ul {
    margin: 0
}

.post_content hr {
    border: none;
    border-bottom: 1px solid rgba(0, 0, 0, .1);
    margin: 2.5em 0
}

.post_content blockquote {
    background: var(--color_gray);
    position: relative
}

.post_content blockquote.is-style-large {
    padding: 1.5em 3em
}

.post_content blockquote.is-style-large cite {
    text-align: inherit
}

.post_content blockquote cite {
    display: block;
    font-size: .8em;
    margin-top: 1em;
    opacity: .8
}

.post_content blockquote>* {
    position: relative;
    z-index: 1
}

.post_content blockquote>:not(:last-child) {
    margin: 0 0 .5em
}

.post_content blockquote:after,
.post_content blockquote:before {
    line-height: 1;
    position: absolute;
    z-index: 0
}

.post_content pre {
    overflow-x: auto;
    padding: .5em
}

.post_content iframe {
    display: block;
    margin-left: auto;
    margin-right: auto;
    max-width: 100%
}

.l-mainContent__inner>.post_content {
    margin: 4em 0;
    padding: 0 var(--swl-pad_post_content, 0)
}

.c-tabBody__item>*,
.cap_box_content>*,
.faq_a>*,
.swell-block-accordion__body>*,
.swell-block-dl__dd>*,
.swell-block-step__body>*,
.swl-has-mb--s>*,
.wp-block-column>*,
.wp-block-cover__inner-container>*,
.wp-block-group__inner-container>*,
.wp-block-media-text__content>*,
div[class*=is-style-]>* {
    margin-bottom: 1em
}

.alignfull>.wp-block-cover__inner-container>*,
.alignfull>.wp-block-group__inner-container>*,
.swell-block-fullWide__inner>* {
    margin-bottom: 2em
}

:where(.is-layout-flex) {
    gap: .5em
}

.is-layout-flex {
    display: flex;
    flex-wrap: wrap
}

.is-layout-flex.is-nowrap {
    flex-wrap: nowrap
}

.is-layout-flex:not(.is-vertical).is-content-justification-center {
    justify-content: center
}

.is-layout-flex:not(.is-vertical).is-content-justification-right {
    justify-content: flex-end
}

.is-layout-flex.is-content-justification-space-between {
    justify-content: space-between
}

.is-layout-flex.is-vertical {
    flex-direction: column
}

.is-layout-flex.is-vertical.is-content-justification-center {
    align-items: center
}

.is-layout-flex.is-vertical.is-content-justification-left {
    align-items: flex-start
}

.is-layout-flex.is-vertical.is-content-justification-right {
    align-items: flex-end
}

.font_col_main {
    color: var(--color_main) !important
}

.font_col_red {
    color: var(--color_deep01) !important
}

.font_col_blue {
    color: var(--color_deep02) !important
}

.font_col_green {
    color: var(--color_deep03) !important
}

[class*=fill_col_] {
    border-radius: 1px;
    padding: .25em .5em
}

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

.fill_col_red {
    background-color: var(--color_deep01) !important;
    color: #fff
}

.fill_col_blue {
    background-color: var(--color_deep02) !important;
    color: #fff
}

.fill_col_green {
    background-color: var(--color_deep03) !important;
    color: #fff
}

.is-style-border_sg {
    border: 1px solid hsla(0, 0%, 78%, .5);
    padding: var(--swl-box_padding)
}

.is-style-border_dg {
    border: 1px dashed hsla(0, 0%, 78%, .5);
    padding: var(--swl-box_padding)
}

.is-style-border_sm {
    border: 1px solid var(--color_main);
    padding: var(--swl-box_padding)
}

.is-style-border_dm {
    border: 1px dashed var(--color_main);
    padding: var(--swl-box_padding)
}

.is-style-bg_main {
    background-color: var(--color_main);
    color: #fff;
    padding: var(--swl-box_padding)
}

.is-style-bg_main_thin {
    background-color: var(--color_main_thin);
    padding: var(--swl-box_padding)
}

.is-style-bg_gray {
    background: var(--color_gray);
    padding: var(--swl-box_padding)
}

:root {
    --swl-box_padding: 1.5em
}

.has-border.-border01 {
    border: var(--border01)
}

.has-border.-border02 {
    border: var(--border02)
}

.has-border.-border03 {
    border: var(--border03)
}

.has-border.-border04 {
    border: var(--border04)
}

.has-border,
div.has-background,
p.has-background {
    padding: var(--swl-box_padding)
}

.is-style-balloon_box2,
.is-style-emboss_box,
.is-style-sticky_box {
    background-color: #fff;
    color: #333
}

.is-style-bg_stripe {
    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: 6px 6px;
    padding: var(--swl-box_padding);
    position: relative
}

.is-style-crease {
    background-color: #f7f7f7;
    padding: calc(.5em + 20px);
    position: relative
}

.is-style-crease:before {
    background-color: inherit;
    border-color: var(--color_content_bg) var(--color_content_bg) rgba(0, 0, 0, .1) rgba(0, 0, 0, .1);
    border-style: solid;
    border-width: 0 20px 20px 0;
    box-shadow: -1px 1px 1px rgba(0, 0, 0, .05);
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    width: 0
}

.is-style-bg_grid {
    background-image: linear-gradient(transparent calc(100% - 1px), var(--color_gray) 50%, var(--color_gray)), linear-gradient(90deg, transparent calc(100% - 1px), var(--color_gray) 50%, var(--color_gray));
    background-repeat: repeat;
    background-size: 16px 16px;
    padding: var(--swl-box_padding)
}

.is-style-note_box,
.is-style-stitch {
    background: #f7f7f7;
    color: #5f5a59;
    display: block;
    font-style: normal;
    padding: var(--swl-box_padding);
    position: relative
}

.is-style-note_box:before,
.is-style-stitch:before {
    border: 1px dashed hsla(0, 0%, 78%, .6);
    border-radius: inherit;
    content: "";
    display: block;
    height: calc(100% - 12px);
    left: 6px;
    pointer-events: none;
    position: absolute;
    top: 6px;
    width: calc(100% - 12px)
}

.is-style-dent_box {
    background: rgba(0, 0, 0, .05);
    box-shadow: inset 0 2px 4px rgba(0, 0, 0, .1);
    padding: var(--swl-box_padding)
}

.is-style-emboss_box {
    border-top: 2px solid var(--color_main);
    box-shadow: var(--swl-box_shadow);
    padding: var(--swl-box_padding)
}

.is-style-kakko_box {
    padding: var(--swl-box_padding);
    position: relative
}

.is-style-kakko_box:before {
    border-left: 1px solid;
    border-top: 1px solid;
    left: 0;
    top: 0
}

.is-style-kakko_box:after {
    border-bottom: 1px solid;
    border-right: 1px solid;
    bottom: 0;
    right: 0
}

.is-style-kakko_box:after,
.is-style-kakko_box:before {
    border-color: var(--color_main);
    content: "";
    display: inline-block;
    height: 2em;
    position: absolute;
    width: 2.25em
}

.is-style-big_kakko_box {
    padding: var(--swl-box_padding);
    position: relative
}

.is-style-big_kakko_box:before {
    border-bottom: 1px solid;
    border-left: 1px solid;
    border-top: 1px solid;
    bottom: 0;
    left: 0
}

.is-style-big_kakko_box:after {
    border-bottom: 1px solid;
    border-right: 1px solid;
    border-top: 1px solid;
    bottom: 0;
    right: 0
}

.is-style-big_kakko_box:after,
.is-style-big_kakko_box:before {
    border-color: var(--color_main);
    content: "";
    display: inline-block;
    height: 100%;
    position: absolute;
    width: .75em
}

.is-style-border_left {
    border-left: 2px solid;
    padding-left: 10px
}

.is-style-sticky_box {
    border-left: 8px solid var(--color_main);
    box-shadow: var(--swl-box_shadow);
    min-width: 6em;
    padding: .75em 1em
}

.is-style-balloon_box,
.is-style-sticky_box {
    line-height: 1.4;
    position: relative;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content
}

.is-style-balloon_box {
    background-color: var(--color_main);
    border-radius: 2px;
    color: #fff;
    min-width: 2em;
    padding: .5em 1.25em
}

.is-style-balloon_box:before {
    border: 12px solid transparent;
    border-top: 12px solid var(--color_main);
    bottom: -22px;
    content: "";
    height: 0;
    left: 1.25em;
    position: absolute;
    visibility: visible;
    width: 0
}

.is-style-balloon_box2 {
    border: 1px solid;
    border-radius: 2px;
    line-height: 1.4;
    min-width: 2em;
    padding: .5em 1.25em;
    position: relative;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content
}

.is-style-balloon_box2:before {
    background: inherit;
    border-bottom: 1px solid;
    border-right: 1px solid;
    bottom: -7px;
    content: "";
    height: 12px;
    left: 1.25em;
    position: absolute;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    visibility: visible;
    width: 12px
}

.is-style-balloon_box.has-text-align-center,
.is-style-balloon_box2.has-text-align-center {
    margin-left: auto;
    margin-right: auto
}

.is-style-balloon_box.has-text-align-center:before {
    left: calc(50% - 12px)
}

.is-style-balloon_box2.has-text-align-center:before {
    left: 50%;
    -webkit-transform: translateX(-50%) rotate(45deg);
    transform: translateX(-50%) rotate(45deg)
}

.is-style-icon_announce,
.is-style-icon_bad,
.is-style-icon_book,
.is-style-icon_good,
.is-style-icon_info,
.is-style-icon_pen {
    border-radius: 2px;
    line-height: 1.6;
    padding: 1em 1em 1em 4.25em;
    position: relative
}

.is-style-icon_announce:before,
.is-style-icon_bad:before,
.is-style-icon_book:before,
.is-style-icon_good:before,
.is-style-icon_info:before,
.is-style-icon_pen:before {
    content: "";
    display: inline-block;
    font-family: icomoon;
    font-size: inherit;
    left: 1.25em;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%) scale(1.5);
    transform: translateY(-50%) scale(1.5)
}

.is-style-icon_announce:after,
.is-style-icon_bad:after,
.is-style-icon_book:after,
.is-style-icon_good:after,
.is-style-icon_info:after,
.is-style-icon_pen:after {
    border-right: 1px solid;
    content: "";
    display: block;
    height: 50%;
    left: 3.25em;
    opacity: .4;
    position: absolute;
    top: 25%;
    width: 0
}

.is-style-icon_good {
    background: var(--color_icon_good_bg);
    border-color: var(--color_icon_good)
}

.is-style-icon_good:before {
    color: var(--color_icon_good);
    content: "\e8dc"
}

.is-style-icon_good:after {
    border-right-color: var(--color_icon_good)
}

.is-style-icon_bad {
    background: var(--color_icon_bad_bg);
    border-color: var(--color_icon_bad)
}

.is-style-icon_bad:before {
    color: var(--color_icon_bad);
    content: "\e8db"
}

.is-style-icon_bad:after {
    border-right-color: var(--color_icon_bad)
}

.is-style-icon_info {
    background: var(--color_icon_info_bg);
    border-color: var(--color_icon_info)
}

.is-style-icon_info:before {
    color: var(--color_icon_info);
    content: "\e941"
}

.is-style-icon_info:after {
    border-right-color: var(--color_icon_info)
}

.is-style-icon_announce {
    background: var(--color_icon_announce_bg);
    border-color: var(--color_icon_announce)
}

.is-style-icon_announce:before {
    color: var(--color_icon_announce);
    content: "\e913"
}

.is-style-icon_announce:after {
    border-right-color: var(--color_icon_announce)
}

.is-style-icon_pen {
    background: var(--color_icon_pen_bg);
    border-color: var(--color_icon_pen)
}

.is-style-icon_pen:before {
    color: var(--color_icon_pen);
    content: "\e934"
}

.is-style-icon_pen:after {
    border-right-color: var(--color_icon_pen)
}

.is-style-icon_book {
    background: var(--color_icon_book_bg);
    border-color: var(--color_icon_book)
}

.is-style-icon_book:before {
    color: var(--color_icon_book);
    content: "\e91a"
}

.is-style-icon_book:after {
    border-right-color: var(--color_icon_book)
}

[class*=is-style-big_icon_] {
    border-color: var(--the-color, currentColor);
    padding: 2em 1.5em 1.5em;
    position: relative
}

[class*=is-style-big_icon_]:not(:first-child) {
    margin-top: 2.5em
}

[class*=is-style-big_icon_]:before {
    align-items: center;
    background-color: var(--the-color, currentColor);
    border: 2px solid;
    border-color: var(--color_content_bg);
    border-radius: 50%;
    color: #fff;
    content: "";
    display: inline-flex;
    font-family: icomoon;
    font-size: 1.25em;
    height: 2em;
    justify-content: center;
    left: .5em;
    line-height: 1;
    padding: 0 0 0 .05em;
    position: absolute;
    top: -1px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 2em
}

.is-style-big_icon_point {
    --the-color: var(--color_icon_point)
}

.is-style-big_icon_point:before {
    content: "\e915"
}

.is-style-big_icon_check,
.is-style-big_icon_good {
    --the-color: var(--color_icon_check)
}

.is-style-big_icon_check:before,
.is-style-big_icon_good:before {
    content: "\f303"
}

.is-style-big_icon_bad,
.is-style-big_icon_batsu {
    --the-color: var(--color_icon_batsu)
}

.is-style-big_icon_bad:before,
.is-style-big_icon_batsu:before {
    content: "\e91f"
}

.is-style-big_icon_hatena {
    --the-color: var(--color_icon_hatena)
}

.is-style-big_icon_hatena:before {
    content: "\e917"
}

.is-style-big_icon_caution {
    --the-color: var(--color_icon_caution)
}

.is-style-big_icon_caution:before {
    content: "\e916"
}

.is-style-big_icon_memo {
    --the-color: var(--color_icon_memo)
}

.is-style-big_icon_memo:before {
    content: "\e929"
}

.is-style-browser_mac {
    --frame-color: #ced1d5;
    --bar-height: 32px;
    --frame-width: 6px;
    --caption-fz: 12px;
    display: grid !important;
    grid-template-areas: "Bar" "Display";
    position: relative
}

.swell-block-column .is-style-browser_mac,
.wp-block-column .is-style-browser_mac,
.wp-block-gallery:not(.columns-1) .is-style-browser_mac {
    --frame-width: 4px;
    --caption-fz: 11px;
    --bar-height: 30px
}

.is-style-browser_mac>.wp-block-group__inner-container {
    max-height: 400px;
    overflow-y: auto;
    padding: 1.5em;
    width: 100%
}

.is-style-browser_mac:before {
    background: var(--frame-color) url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbDpzcGFjZT0icHJlc2VydmUiIHZpZXdCb3g9IjAgMCA1NiAxNCI+PGNpcmNsZSBjeD0iOCIgY3k9IjciIHI9IjYiIHN0eWxlPSJmaWxsOiNlYzZhNWUiLz48Y2lyY2xlIGN4PSIyOCIgY3k9IjciIHI9IjYiIHN0eWxlPSJmaWxsOiNmNWJmNTEiLz48Y2lyY2xlIGN4PSI0OCIgY3k9IjciIHI9IjYiIHN0eWxlPSJmaWxsOiM2MWM1NTUiLz48L3N2Zz4=) no-repeat left 8px top 50%;
    background-size: auto calc(var(--bar-height) - 20px);
    border-radius: 8px 8px 0 0;
    content: "";
    display: block;
    grid-area: Bar;
    height: var(--bar-height);
    padding: 0;
    position: relative;
    width: 100%;
    z-index: 1
}

.is-style-browser_mac.wp-block-image img,
.is-style-browser_mac.wp-block-video video,
.is-style-browser_mac>.wp-block-group__inner-container {
    background: #fff;
    border: solid var(--frame-width) var(--frame-color);
    border-radius: 0 0 8px 8px;
    border-top: none;
    box-shadow: 0 2px 24px -2px rgba(0, 0, 0, .25);
    color: #333;
    grid-area: Display
}

.is-style-browser_mac.wp-block-image,
.is-style-browser_mac.wp-block-video {
    margin-left: auto;
    margin-right: auto;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content
}

.is-style-browser_mac.wp-block-image img,
.is-style-browser_mac.wp-block-video video {
    display: block;
    margin: 0 auto
}

.is-style-browser_mac.is-style-browser_mac>figcaption {
    background: #fff;
    border-radius: 6px 6px 0 0;
    font-size: var(--caption-fz) !important;
    grid-area: Bar;
    left: calc((var(--bar-height) - 20px)*5 + 8px);
    line-height: 1;
    margin: 0 !important;
    max-width: calc(100% - 80px);
    padding: 6px 8px;
    position: absolute;
    top: calc(var(--bar-height) - var(--caption-fz) - 14px);
    z-index: 2
}

.wp-block-gallery .is-style-browser_mac figcaption {
    max-width: 100%;
    top: auto;
    width: 100%
}

.is-style-desktop {
    --body-color: #ced1d5;
    --bezel-width: 8px;
    --bezel-frame: 2px;
    --bezel-width--foot: calc(var(--bezel-width)*5.5);
    --panel-ratio: 56.25%;
    display: grid !important;
    grid-template-areas: "Display" "Foot" "Caption";
    padding: 0;
    position: relative
}

.swell-block-column .is-style-desktop,
.wp-block-column .is-style-desktop,
.wp-block-gallery:not(.columns-1) .is-style-desktop {
    --bezel-width: 6px
}

.is-style-desktop.wp-block-image {
    margin-left: auto;
    margin-right: auto;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content
}

.is-style-desktop.wp-block-image img,
.is-style-desktop.wp-block-video video,
.is-style-desktop>.wp-block-group__inner-container {
    border: var(--bezel-width) solid #222;
    border-bottom-width: calc(var(--bezel-width) - var(--bezel-frame));
    border-radius: 6px 6px 0 0;
    display: block;
    grid-area: Display;
    margin: 0 auto;
    padding: 0;
    z-index: 0
}

.is-style-desktop>.wp-block-group__inner-container {
    background-color: #fff;
    color: #111;
    height: calc(100% - var(--bezel-width--foot));
    overflow-y: auto;
    padding: 1em;
    position: absolute;
    width: 100%
}

.is-style-desktop.wp-block-image img,
.is-style-desktop.wp-block-video video {
    margin-bottom: var(--bezel-width--foot)
}

.is-style-desktop figcaption {
    grid-area: Caption
}

.is-style-desktop:after {
    border: solid var(--bezel-frame) var(--body-color) !important;
    border-bottom-width: var(--bezel-width--foot) !important;
    border-radius: 6px 6px 8px 8px !important;
    box-sizing: border-box;
    content: "";
    display: block;
    grid-area: Display;
    height: 0;
    padding-top: var(--panel-ratio);
    pointer-events: none;
    width: 100%;
    z-index: 1
}

.is-style-desktop.wp-block-image:after,
.is-style-desktop.wp-block-video:after {
    height: 100%;
    padding: 0;
    position: absolute;
    visibility: visible;
    width: 100%;
    z-index: 1
}

.is-style-desktop:before {
    background: linear-gradient(to bottom, rgba(0, 0, 0, .125), rgba(0, 0, 0, .05) 55%, rgba(0, 0, 0, .05) 75%, rgba(0, 0, 0, .075) 92%, hsla(0, 0%, 100%, .3) 96%, rgba(0, 0, 0, .35) 99%), linear-gradient(to right, hsla(0, 0%, 100%, .2), rgba(0, 0, 0, .35) 1%, hsla(0, 0%, 100%, .3) 4%, rgba(0, 0, 0, .02) 8%, hsla(0, 0%, 100%, .2) 25%, hsla(0, 0%, 100%, .2) 75%, rgba(0, 0, 0, .02) 92%, hsla(0, 0%, 100%, .3) 96%, rgba(0, 0, 0, .35) 99%, hsla(0, 0%, 100%, .2)), linear-gradient(to bottom, var(--body-color), var(--body-color));
    background-position: top, bottom, top;
    background-repeat: no-repeat;
    background-size: 100% 92%, 100% 8%, 100%;
    border-radius: 0 0 4px 4px/2px;
    box-shadow: 0 0 calc(var(--body-width, 4px)*.001) rgba(0, 0, 0, .2);
    content: "";
    display: block;
    grid-area: Foot;
    height: 0;
    margin: 0 auto;
    order: 1;
    padding-top: 10%;
    width: 18%
}

.wp-block-gallery .is-style-desktop img {
    height: calc(100% - var(--bezel-width--foot)) !important
}

.wp-block-gallery .is-style-desktop figcaption {
    bottom: var(--bezel-width--foot) !important;
    grid-area: Display
}

.is-style-browser_mac.size_s,
.is-style-desktop.size_s {
    padding: 0 var(--img-space--s, 8%)
}

.is-style-browser_mac.size_s img,
.is-style-desktop.size_s img {
    max-width: 100%
}

.is-style-browser_mac.size_xs,
.is-style-desktop.size_xs {
    padding: 0 var(--img-space--xs, 16%)
}

.is-style-browser_mac.size_xs img,
.is-style-desktop.size_xs img {
    max-width: 100%
}

.p-articleThumb__caption,
.wp-block-embed>figcaption,
.wp-block-image figcaption,
.wp-block-table figcaption,
.wp-block-video figcaption {
    color: inherit;
    display: block !important;
    font-size: .8em;
    line-height: 1.4;
    margin-bottom: 0;
    margin-top: .75em;
    opacity: .8;
    text-align: center
}

.has-swl-main-color {
    color: var(--color_main) !important
}

.has-swl-main-thin-color {
    color: var(--color_main_thin) !important
}

.has-swl-gray-color {
    color: var(--color_gray) !important
}

.has-black-color {
    color: #000 !important
}

.has-white-color {
    color: #fff !important
}

.has-swl-pale-01-color {
    color: var(--color_pale01) !important
}

.has-swl-pale-02-color {
    color: var(--color_pale02) !important
}

.has-swl-pale-03-color {
    color: var(--color_pale03) !important
}

.has-swl-pale-04-color {
    color: var(--color_pale04) !important
}

.has-swl-deep-01-color {
    color: var(--color_deep01) !important
}

.has-swl-deep-02-color {
    color: var(--color_deep02) !important
}

.has-swl-deep-03-color {
    color: var(--color_deep03) !important
}

.has-swl-deep-04-color {
    color: var(--color_deep04) !important
}

.has-swl-main-background-color {
    background-color: var(--color_main) !important;
    color: var(--swl-text_color--white, #fff)
}

.has-swl-main-thin-background-color {
    background-color: var(--color_main_thin) !important;
    color: var(--swl-text_color--black, #333)
}

.has-swl-gray-background-color {
    background-color: var(--color_gray) !important
}

.has-black-background-color {
    background-color: #000 !important;
    color: var(--swl-text_color--white, #fff)
}

.has-white-background-color {
    background-color: #fff !important;
    color: var(--swl-text_color--black, #333)
}

.has-swl-deep-01-background-color {
    background-color: var(--color_deep01) !important;
    color: var(--swl-text_color--white, #fff)
}

.has-swl-deep-02-background-color {
    background-color: var(--color_deep02) !important;
    color: var(--swl-text_color--white, #fff)
}

.has-swl-deep-03-background-color {
    background-color: var(--color_deep03) !important;
    color: var(--swl-text_color--white, #fff)
}

.has-swl-deep-04-background-color {
    background-color: var(--color_deep04) !important;
    color: var(--swl-text_color--white, #fff)
}

.has-swl-pale-01-background-color {
    background-color: var(--color_pale01) !important;
    color: var(--swl-text_color--black, #333)
}

.has-swl-pale-02-background-color {
    background-color: var(--color_pale02) !important;
    color: var(--swl-text_color--black, #333)
}

.has-swl-pale-03-background-color {
    background-color: var(--color_pale03) !important;
    color: var(--swl-text_color--black, #333)
}

.has-swl-pale-04-background-color {
    background-color: var(--color_pale04) !important;
    color: var(--swl-text_color--black, #333)
}

.wp-block-columns.sp_column2.has-2-columns {
    flex-wrap: nowrap !important
}

.wp-block-columns.first_big>.wp-block-column,
.wp-block-columns.last_big>.wp-block-column {
    flex-grow: 0
}

.wp-block-columns.first_big .wp-block-column:first-child,
.wp-block-columns.last_big .wp-block-column:last-child {
    flex-basis: 100% !important
}

.wp-block-columns.first_big.sp_column2 .wp-block-column:not(:first-child),
.wp-block-columns.last_big.sp_column2 .wp-block-column:not(:last-child) {
    flex-basis: calc(50% - var(--wp-column-gap)/2) !important
}

.instagram-media-rendered,
.twitter-tweet-rendered {
    margin-left: auto !important;
    margin-right: auto !important
}

.fb_iframe_widget,
.fb_iframe_widget>span {
    display: block !important
}

.fb_iframe_widget>span {
    margin: 0 auto
}

.wp-block-image {
    text-align: center
}

.wp-block-image img {
    vertical-align: bottom
}

.wp-block-image figcaption a {
    display: inline
}

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

.wp-block-image a {
    display: block;
    transition: opacity .25s
}

.wp-block-image a:hover {
    opacity: .8
}

.wp-caption {
    max-width: 100%;
    text-align: center;
    width: 100%
}

.wp-caption-text {
    font-size: .8em;
    margin-top: 1em;
    opacity: .8
}

img.aligncenter {
    clear: both;
    display: block;
    margin-left: auto;
    margin-right: auto
}

.wp-block-image.is-style-border img,
.wp-block-video.is-style-border video,
img.border {
    border: 1px solid rgba(0, 0, 0, .1)
}

.wp-block-image.is-style-photo_frame img,
.wp-block-video.is-style-photo_frame video,
img.photo_frame {
    border: 4px solid #fff;
    box-shadow: 0 0 0 1px rgba(0, 0, 0, .1)
}

.size_s img,
img.size_s {
    display: block;
    margin: auto;
    max-width: calc(100% - var(--img-space--s, 8%)*2)
}

.size_xs img,
img.size_xs {
    display: block;
    margin: auto;
    max-width: calc(100% - var(--img-space--xs, 16%)*2)
}

.swl-marker {
    display: inline;
    padding: 2px
}

.swl-bg-color {
    border-radius: 1px;
    padding: .25em
}

mark.has-inline-color {
    background-color: inherit
}

code.dir_name:before {
    content: "\e92f";
    margin-right: .4em;
    opacity: .8
}

code.file_name:before {
    content: "\e924";
    margin-right: .4em
}

.swl-cell-text-centered {
    display: inline-block;
    text-align: center;
    width: 100%
}

.swl-inline-list {
    display: inline-block;
    line-height: 1.5;
    padding: 2px 0 2px 1.5em;
    position: relative
}

.swl-inline-list[data-icon=dot]:before {
    background-color: currentcolor;
    border-radius: 50%;
    color: inherit;
    content: "";
    display: block;
    height: 6px;
    left: .5em;
    position: absolute;
    top: calc(.75em - 1px);
    width: 6px
}

.swl-inline-list:not([data-icon=dot]):before {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    background: none;
    border: none;
    border-radius: 0;
    display: block;
    font-family: icomoon;
    height: auto;
    left: .25em;
    position: absolute;
    top: 2px;
    width: 1em
}

.swl-inline-list[data-icon=check]:before {
    color: var(--color_list_check);
    content: "\f303";
    -webkit-transform: scale(.8);
    transform: scale(.8)
}

.swl-inline-list[data-icon=circle]:before {
    color: var(--color_list_good);
    content: "\ea56"
}

.swl-inline-list[data-icon=triangle]:before {
    color: var(--color_list_triangle);
    content: "\e93f"
}

.swl-inline-list[data-icon=close]:before {
    color: var(--color_list_bad);
    content: "\e91f"
}

.swl-inline-icon {
    display: inline-block;
    margin-left: .1em;
    margin-right: .1em;
    min-width: 1em;
    position: relative
}

.swl-inline-icon+.swl-inline-icon {
    margin-left: 0
}

.swl-inline-icon:after {
    background: currentcolor;
    content: "";
    display: block;
    height: 100%;
    left: 0;
    -webkit-mask-image: var(--the-icon-svg);
    mask-image: var(--the-icon-svg);
    -webkit-mask-position: center center;
    mask-position: center center;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    max-width: 2ch;
    position: absolute;
    top: 0;
    width: 1em;
    width: 100%
}

ol.is-style-index ul li:before,
ul.is-style-index li li:before {
    background: none;
    border-bottom: 2px solid;
    border-left: 2px solid;
    border-radius: 0;
    box-shadow: none;
    color: inherit;
    content: "" !important;
    height: calc(1em - 2px);
    left: .25em;
    opacity: .75;
    position: absolute;
    top: 0;
    -webkit-transform: none;
    transform: none;
    -webkit-transform: scale(.75);
    transform: scale(.75);
    -webkit-transform-origin: 50% 100%;
    transform-origin: 50% 100%;
    width: 6px
}

ol.has-background,
ul.has-background {
    padding: var(--swl-list-padding--has_bg)
}

li .has-background {
    --swl-list-padding--has_bg: .5em .5em .5em calc(0.5em + var(--swl-list-padding--left))
}

.is-style-bad_list,
.is-style-check_list,
.is-style-good_list,
.is-style-index,
.is-style-note_list,
.is-style-num_circle,
.is-style-triangle_list {
    --swl-list-padding--left: .25em;
    --swl-list-padding--has_bg: 1em;
    list-style: none !important
}

.is-style-bad_list ol,
.is-style-bad_list ul,
.is-style-check_list ol,
.is-style-check_list ul,
.is-style-good_list ol,
.is-style-good_list ul,
.is-style-index ol,
.is-style-index ul,
.is-style-note_list ol,
.is-style-note_list ul,
.is-style-num_circle ol,
.is-style-num_circle ul,
.is-style-triangle_list ol,
.is-style-triangle_list ul {
    --swl-list-padding--left: 0px;
    list-style: none !important
}

li:before {
    letter-spacing: normal
}

ul.is-style-index li {
    padding-left: 1.25em;
    position: relative
}

ul.is-style-index li:before {
    background-color: currentcolor;
    border-radius: 50%;
    color: inherit;
    content: "";
    display: block;
    height: 6px;
    left: 2px;
    position: absolute;
    top: calc(.75em - 3px);
    width: 6px
}

ol.is-style-index>:first-child {
    counter-reset: toc
}

ol.is-style-index ol>li,
ol.is-style-index>li {
    margin-left: 2em;
    padding-left: 0;
    position: relative
}

ol.is-style-index ol>li:before,
ol.is-style-index>li:before {
    border-right: 1px solid;
    content: counters(toc, "-");
    counter-increment: toc;
    display: block;
    font-family: inherit;
    letter-spacing: -.1px;
    line-height: 1.1;
    padding: 0 .5em 0 0;
    position: absolute;
    right: calc(100% + .5em);
    top: .25em;
    -webkit-transform: scale(.95);
    transform: scale(.95);
    white-space: nowrap;
    width: auto
}

ol.is-style-index ol {
    counter-reset: toc;
    padding-left: 1em
}

ol.is-style-index ol li:before {
    opacity: .75
}

ol.is-style-index ul li {
    counter-increment: none;
    margin-left: 0;
    padding-left: 1.25em
}

.is-style-bad_list li,
.is-style-check_list li,
.is-style-good_list li,
.is-style-triangle_list li {
    padding-left: 1.5em
}

.is-style-bad_list li:before,
.is-style-check_list li:before,
.is-style-good_list li:before,
.is-style-triangle_list li:before {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    background: none;
    border: none;
    border-radius: 0;
    /*display: block;*/
    font-family: icomoon;
    height: auto;
    left: 0;
    position: absolute;
    top: 0;
    width: 1em
}

.is-style-bad_list li li:before,
.is-style-check_list li li:before,
.is-style-good_list li li:before,
.is-style-triangle_list li li:before {
    background-color: currentcolor;
    -webkit-clip-path: circle(12% at 50%);
    clip-path: circle(12% at 50%);
    content: "\00a0";
    font-family: inherit
}

.is-style-check_list li:before {
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    content: "\f303";
    color: #04384c;
    margin-right: 0.5em;
}

.is-style-good_list li:before {
    color: var(--color_list_good);
    content: "\ea56"
}

.is-style-triangle_list li:before {
    color: var(--color_list_triangle);
    content: "\e93f"
}

.is-style-bad_list li:before {
    color: var(--color_list_bad);
    content: "\e91f"
}

.is-style-note_list {
    font-size: .9em
}

.is-style-note_list:not(.has-text-color) {
    opacity: .85
}

.is-style-note_list li {
    margin: .5em 0;
    padding-left: 1.25em
}

.is-style-note_list li:before {
    background: none;
    border: none;
    border-radius: 0;
    content: "※";
    height: auto;
    left: 0;
    position: absolute;
    top: 0;
    -webkit-transform: scale(.75);
    transform: scale(.75);
    -webkit-transform-origin: 0 50%;
    transform-origin: 0 50%;
    white-space: nowrap
}

ol.is-style-note_list {
    counter-reset: li
}

ol.is-style-note_list>li {
    padding-left: 1.75em
}

ol.is-style-note_list>li:before {
    content: "※" counter(li);
    counter-increment: li;
    letter-spacing: 1px
}

.is-style-num_circle {
    counter-reset: li
}

.is-style-num_circle li {
    padding-left: 2em
}

.is-style-num_circle li:before {
    background-color: var(--color_list_num);
    border-radius: 50%;
    box-shadow: 0 0 0 1px var(--color_list_num);
    box-sizing: content-box;
    color: #fff;
    content: counter(li);
    counter-increment: li;
    display: block;
    height: 1.8em;
    left: 1px;
    line-height: 1.8;
    padding: 0;
    position: absolute;
    text-align: center;
    top: -.15em;
    -webkit-transform: scale(.75);
    transform: scale(.75);
    -webkit-transform-origin: 0 50%;
    transform-origin: 0 50%;
    width: 1.8em
}

.is-style-num_circle ol {
    counter-reset: li
}

.is-style-num_circle ol li:before {
    background: none;
    box-shadow: 0 0 0 1px var(--color_list_num);
    color: var(--color_list_num);
    opacity: .75;
    -webkit-transform: scale(.7);
    transform: scale(.7)
}

.is-style-num_circle ul li {
    padding-left: 1.25em
}

.is-style-num_circle ul li:before {
    content: "";
    counter-increment: none;
    -webkit-transform: scale(.15);
    transform: scale(.15)
}

.-list-under-dashed>li,
.border_bottom>li {
    border-bottom: 1px dashed var(--color_border);
    margin-bottom: .75em;
    padding-bottom: .75em
}

ol.-list-flex,
ul.-list-flex {
    display: flex;
    flex-wrap: wrap;
    gap: 1em
}

.is-style-index[reversed]>li:before,
.is-style-note_list[reversed]>li:before,
.is-style-num_circle[reversed]>li:before {
    counter-increment: li -1
}

.swell-block-button {
    --the-icon-size: 1.1em
}

.swell-block-button[data-align=right] {
    text-align: right
}

.swell-block-button[data-align=left] {
    text-align: left
}

.swell-block-button a {
    text-align: center
}

.swell-block-button .swell-block-button__link[data-has-icon] {
    align-items: center;
    display: inline-flex;
    gap: .5em;
    justify-content: center
}

.swell-block-button .__icon:not(.-right) {
    margin-left: -.25em
}

.swell-block-button .__icon.-right {
    margin-right: -.25em
}

.swell-block-button .__icon {
    font-size: var(--the-icon-size);
    height: var(--the-icon-size);
    width: var(--the-icon-size)
}

.swell-block-button .__icon:before {
    display: block
}

.swell-block-button__img {
    border: none;
    display: none !important
}

[class*=is-style-btn_] {
    --the-fz: 1em;
    --the-width: auto;
    --the-min-width: 64%;
    --the-padding: .75em 1.5em;
    --the-btn-color: var(--color_main);
    --the-btn-color2: var(--color_main);
    --the-btn-bg: var(--the-btn-color);
    display: block;
    font-size: var(--the-fz);
    margin: 0 auto 2em;
    position: relative;
    text-align: center
}


[class*=is-style-btn_].-size-custom {
    --the-min-width: 1em
}

[class*=is-style-btn_].-size-s {
    --the-fz: .9em;
    --the-min-width: 40%
}

[class*=is-style-btn_].-size-l {
    --the-min-width: 100%;
    --the-padding: 1em 1.5em
}

[class*=is-style-btn_] img {
    display: none
}

.is-style-btn_normal a {
    color: #fff;
    font-weight: 700;
    transition: box-shadow .25s
}

.is-style-btn_normal a:hover {
    box-shadow: 0 4px 12px rgba(0, 0, 0, .1), 0 12px 24px -12px rgba(0, 0, 0, .2);
    opacity: 1
}

.is-style-btn_solid a {
    box-shadow: 0 4px 0 var(--the-solid-shadow, var(--color_main_dark));
    color: #fff;
    font-weight: 700;
    transition: box-shadow .25s, -webkit-transform .25s;
    transition: transform .25s, box-shadow .25s;
    transition: transform .25s, box-shadow .25s, -webkit-transform .25s;
    z-index: 1
}

.is-style-btn_solid a:hover {
    box-shadow: 0 0 0 transparent !important;
    -webkit-transform: translate3d(0, 4px, 0);
    transform: translate3d(0, 4px, 0)
}

.is-style-btn_shiny a {
    color: #fff;
    font-weight: 700
}

.is-style-btn_line a {
    background: none;
    border: 1px solid;
    color: var(--the-btn-color, var(--color_main));
    position: relative;
    transition: background-color .25s
}

.is-style-btn_line a:hover {
    background-color: var(--the-btn-color, var(--color_main));
    border-color: transparent;
    color: #fff !important
}

.is-style-more_btn {
    --the-fz: .9em;
    --the-width: auto;
    --the-min-width: 80%;
    --the-padding: .75rem 3em;
    display: block;
    margin: 0 auto 2em;
    padding: 2px 0;
    position: relative;
    text-align: center
}

.is-style-more_btn img {
    display: none
}

.is-style-more_btn a {
    background: #fff;
    box-shadow: 0 0 0 1px #dcdcdc;
    color: #666;
    display: inline-block;
    font-size: var(--the-fz);
    min-width: var(--the-min-width);
    padding: var(--the-padding);
    position: relative;
    text-decoration: none;
    transition: box-shadow .25s, background-color .25s;
    width: var(--the-width)
}

.is-style-more_btn a:after {
    content: "\e930";
    font-family: icomoon;
    position: absolute;
    right: 1em;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    transition: -webkit-transform .25s;
    transition: transform .25s;
    transition: transform .25s, -webkit-transform .25s
}

.is-style-more_btn a:hover {
    background-color: var(--color_main);
    box-shadow: none;
    color: #fff
}

.is-style-more_btn a:hover:after {
    -webkit-transform: translateX(4px) translateY(-50%);
    transform: translateX(4px) translateY(-50%)
}

.is-style-more_btn.-size-custom {
    --the-min-width: 1em
}

.is-style-more_btn.-size-s {
    --the-min-width: 40%;
    --the-padding: .5rem 3em
}

.is-style-more_btn.-size-l {
    --the-min-width: 100%;
    --the-padding: 1rem 3em
}

.swl-inline-btn {
    display: inline-block;
    font-size: .9em;
    margin: 0 .25em
}

table .swl-inline-btn {
    margin: .5em .25em
}

.swl-inline-btn.is-style-btn_solid {
    -webkit-transform: translateY(-2px);
    transform: translateY(-2px)
}

.swl-inline-btn a {
    display: inline-flex;
    letter-spacing: var(--swl-letter_spacing, .5px);
    padding: .5em 1em
}

.wp-block-code.wp-block-code {
    border: 1px solid var(--color_border);
    border-radius: 2px;
    font-family: Menlo, Consolas, メイリオ, sans-serif;
    font-size: min(14px, 3.4vw);
    padding: .5em
}

.wp-block-cover {
    overflow: hidden
}

.wp-block-details {
    --wp--style--block-gap: 1em
}

.wp-block-details>:last-child {
    margin-bottom: 0
}

.wp-block-details>:not(summary) {
    -webkit-margin-after: 0;
    -webkit-margin-before: var(--wp--style--block-gap);
    margin-block-end: 0;
    margin-block-start: var(--wp--style--block-gap)
}

.wp-block-footnotes>li>a,
sup.fn>a {
    text-decoration: underline
}

sup.fn>a {
    -webkit-padding-start: 1px;
    -webkit-padding-end: 2px;
    font-family: helvetica;
    font-size: .75rem;
    letter-spacing: .5px;
    padding-inline-end: 2px;
    padding-inline-start: 1px
}

sup.fn>a:before {
    content: "["
}

sup.fn>a:after {
    content: "]"
}

.wp-block-group.is-row {
    display: flex
}

.wp-block-group.is-stack {
    display: flex;
    flex-direction: column
}

.wp-block-group.is-row>*,
.wp-block-group.is-stack>* {
    margin: 0
}

.wp-block-quote>:first-child {
    margin-top: 0
}

.wp-block-video {
    text-align: center
}

:where(.has-border) {
    margin-left: .3px
}

.p-blogParts {
    position: relative
}

.p-blogParts__edit {
    bottom: 100%;
    font-size: 12px;
    margin-bottom: 0;
    position: absolute;
    right: 0
}

.c-prNotation {
    line-height: 1.5
}

.c-prNotation[data-style=small] {
    align-items: center;
    border: 1px solid;
    border-radius: 1px;
    display: inline-flex;
    font-size: 13px;
    gap: .25em;
    padding: .125em .4em
}

.c-prNotation[data-style=small]>i {
    margin: 0 0 -1px -.5px
}

.c-prNotation[data-style=big] {
    border: 1px solid var(--color_gray);
    border-radius: 1px;
    font-size: .95em;
    margin: 1.5em 0;
    padding: .75em
}

.c-prNotation[data-style=big]>i {
    vertical-align: -.05em
}

@media not all and (min-width:960px) {
    @-webkit-keyframes leftToRight {
        0% {
            -webkit-transform: scale(1.15) translateX(-1.5%);
            transform: scale(1.15) translateX(-1.5%)
        }

        to {
            -webkit-transform: scale(1.15) translateX(1.5%);
            transform: scale(1.15) translateX(1.5%)
        }
    }

    @keyframes leftToRight {
        0% {
            -webkit-transform: scale(1.15) translateX(-1.5%);
            transform: scale(1.15) translateX(-1.5%)
        }

        to {
            -webkit-transform: scale(1.15) translateX(1.5%);
            transform: scale(1.15) translateX(1.5%)
        }
    }

    [data-spmenu=opened] body {
        overflow-y: hidden;
        touch-action: none
    }

    #wpadminbar {
        position: fixed !important
    }

    .l-fixHeader,
    .l-header__gnav {
        display: none
    }

    .l-header[data-spfix="1"] {
        position: sticky;
        top: var(--swl-adminbarH, 0)
    }

    .l-header__inner {
        align-items: center;
        display: flex;
        justify-content: space-between;
        padding: 0
    }

    .l-header__inner .c-catchphrase {
        display: none
    }

    .l-header__logo {
        padding: 0 2vw
    }

    .c-headLogo {
        height: var(--logo_size_sp)
    }

    .-img .c-headLogo__link {
        display: block;
        padding: 10px 0
    }

    #sidebar {
        margin-top: 4em
    }

    .p-blogCard__excerpt {
        display: none
    }

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

    #fix_bottom_menu+.p-fixBtnWrap {
        bottom: 64px
    }

    .is-hide-last--sp .p-postList__item:last-child {
        display: none
    }

    .sp-py-0 {
        padding-bottom: 0 !important;
        padding-top: 0 !important
    }

    .sp-py-20 {
        padding-bottom: 2em !important;
        padding-top: 2em !important
    }

    .sp-py-40 {
        padding-bottom: 4em !important;
        padding-top: 4em !important
    }

    .sp-py-60 {
        padding-bottom: 6em !important;
        padding-top: 6em !important
    }

    .sp-py-80 {
        padding-bottom: 8em !important;
        padding-top: 8em !important
    }

    .pc_,
    .pc_only {
        display: none !important
    }

    .w-fixSide {
        max-height: unset !important
    }

    .is-style-browser_mac {
        --frame-width: 4px;
        --caption-fz: 11px;
        --bar-height: 30px
    }

    .is-style-desktop {
        --bezel-width: 6px
    }
}

@media (min-width:600px) {
    :root {
        --swl-fz--root: 16px;
        --swl-h2-margin--x: -16px
    }

    .l-content {
        padding-top: 4em
    }

    .-txt .c-headLogo__link {
        font-size: 24px
    }

    .c-mvBtn__btn {
        font-size: 14px
    }

    .c-postTitle__ttl {
        font-size: 24px
    }

    .c-postTitle__date .__y {
        font-size: 14px
    }

    .c-postTitle__date .__md {
        font-size: 24px
    }

    .p-postList .c-postTitle__date .__md,
    .p-postList .c-postTitle__ttl {
        font-size: 20px
    }

    .c-postThumb__cat {
        font-size: 11px
    }

    .p-blogCard__caption {
        font-size: 12px;
        left: 24px
    }

    .p-blogCard__inner {
        padding: 24px
    }

    .p-blogCard__thumb {
        width: 21%
    }

    [data-type=type1] .p-blogCard__inner {
        padding-top: 25px
    }

    [data-type=type2] .p-blogCard__inner {
        padding-top: 28px
    }

    [data-type=type3] .p-blogCard__caption {
        bottom: 8px;
        right: 8px
    }

    .p-breadcrumb__list {
        font-size: 11px
    }

    .-frame-off .p-postList.-type-list2 {
        padding-top: 2em
    }

    .-type-list2 .p-postList__item {
        margin-bottom: 2em;
        padding-bottom: 2em
    }

    .-type-card.-pc-col1 .p-postList__item,
    .-type-thumb.-pc-col1 .p-postList__item {
        width: 100%
    }

    .-type-card.-pc-col1 .p-postList__item {
        margin: 0 0 3em
    }

    .-type-big .p-postList__body:after {
        width: 80%
    }

    .-type-card .p-postList__title,
    .-type-list .p-postList__title,
    .-type-list2 .p-postList__title {
        font-size: 16px
    }

    #sidebar .-type-card .p-postList__title,
    .-related .p-postList__title,
    .-type-thumb .p-postList__title,
    .w-footer:not(.-col1) .p-postList__title {
        font-size: 14px
    }

    #sidebar .-type-list .p-postList__title,
    .-type-card .p-postList__excerpt {
        font-size: 13px
    }

    .-type-list .p-postList__excerpt,
    .-type-list2 .p-postList__excerpt {
        font-size: 14px
    }

    .p-postList__meta {
        font-size: 11px
    }

    .-w-ranking.-type-card .p-postList__item:before {
        font-size: 14px
    }

    .-w-ranking.-type-list .p-postList__item:before {
        font-size: 12px
    }

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

    .cat-post-count,
    .post_count,
    .tag-link-count {
        font-size: 13px
    }

    .post_content h2 {
        font-size: 1.4em
    }

    .post_content h3 {
        font-size: 1.3em
    }

    .post_content h4 {
        font-size: 1.2em
    }

    .wp-block-group {
        --swl-box_padding: 2em
    }

    [class*=is-style-big_icon_] {
        padding: 2.5em 2em 2em
    }

    [class*=is-style-big_icon_]:before {
        left: .75em
    }

    .wp-block-columns.has-2-columns {
        flex-wrap: nowrap !important
    }

    .wp-block-columns.first_big:not(.sp_column2) .wp-block-column:not(:first-child),
    .wp-block-columns.last_big:not(.sp_column2) .wp-block-column:not(:last-child) {
        flex-basis: calc(50% - var(--wp-column-gap)/2) !important
    }

    [class*=is-style-btn_] {
        --the-min-width: 40%
    }

    [class*=is-style-btn_].-size-s {
        --the-min-width: 20%
    }

    [class*=is-style-btn_].-size-l {
        --the-min-width: 80%
    }

    .is-style-more_btn {
        --the-min-width: 64%
    }
}

@media (min-width:960px) {
    :root {
        --swl-fz--side: 14px;
        --swl-pad_post_content: 16px;
        --swl-pad_container: 32px
    }

    .-sidebar-on .l-content {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between
    }

    .c-smallNavTitle {
        display: block;
        position: relative;
        top: 4px
    }

    .c-headLogo {
        height: var(--logo_size_pc)
    }

    .l-fixHeader .c-headLogo {
        height: var(--logo_size_pcfix)
    }

    .-sidebar-on .l-mainContent {
        width: calc(100% - var(--swl-sidebar_width) - var(--swl-sidebar_margin))
    }

    #sidebar .c-widget+.c-widget {
        margin-top: 2.5em
    }

    .-sidebar-on #sidebar {
        width: var(--swl-sidebar_width)
    }

    .c-fixBtn:hover {
        opacity: 1
    }

    .p-fixBtnWrap {
        bottom: 2.5em;
        right: 2.5em
    }

    #sidebar .-type-card .p-postList__item {
        width: 100%
    }

    .-type-card.-pc-col2 .p-postList__item {
        padding: 0 .75em
    }

    .w-footer.-col1 .-type-card .p-postList__item {
        width: 33.33333%
    }

    .w-footer.-col1 .-type-list {
        display: flex;
        flex-wrap: wrap;
        margin-left: -.5em;
        margin-right: -.5em
    }

    .w-footer.-col1 .-type-list .p-postList__item {
        padding: .5em;
        width: 50%
    }

    .is-hide-last--pc .p-postList__item:last-child,
    .p-spMenu {
        display: none
    }

    .hov-bg-main {
        transition: background-color .25s, color .25s
    }

    .hov-bg-main:hover {
        background-color: var(--color_main) !important;
        color: #fff !important
    }

    .pc-py-0 {
        padding-bottom: 0 !important;
        padding-top: 0 !important
    }

    .pc-py-20 {
        padding-bottom: 2em !important;
        padding-top: 2em !important
    }

    .pc-py-40 {
        padding-bottom: 4em !important;
        padding-top: 4em !important
    }

    .pc-py-60 {
        padding-bottom: 6em !important;
        padding-top: 6em !important
    }

    .pc-py-80 {
        padding-bottom: 8em !important;
        padding-top: 8em !important
    }

    .sp_,
    .sp_only {
        display: none !important
    }

    .w-fixSide {
        display: flex;
        flex-direction: column;
        margin-top: 2.5em;
        position: sticky
    }

    .w-fixSide .c-widget {
        flex: 1 1 auto
    }

    .w-fixSide.-multiple .c-listMenu,
    .w-fixSide.-multiple .widget_swell_index {
        min-height: 8em;
        overflow-y: auto !important
    }

    .w-fixSide.-multiple .widget_swell_new_posts,
    .w-fixSide.-multiple .widget_swell_popular_posts {
        min-height: 160px;
        overflow-y: auto !important
    }

    .wp-block-image.is-style-photo_frame img,
    .wp-block-video.is-style-photo_frame video,
    img.photo_frame {
        border: 6px solid #fff
    }

    .wp-block-cover {
        padding: 2em
    }
}

@media (min-width:1200px) {
    :root {
        --swl-sidebar_width: 304px;
        --swl-sidebar_margin: 52px
    }

    :root .-frame-on-sidebar {
        --swl-sidebar_width: 316px
    }

    :root .-frame-on.-sidebar-on {
        --swl-sidebar_margin: 36px
    }

    :root {
        --swl-pad_container: 48px
    }
}

@media screen {
    [hidden~=screen] {
        display: inherit
    }

    [hidden~=screen]:not(:active):not(:focus):not(:target) {
        clip: rect(0 0 0 0) !important;
        position: absolute !important
    }
}

@media screen and (max-width:782px) {
    .admin-bar {
        --swl-adminbarH: var(--wp-admin--admin-bar--height, 46px)
    }
}

@media (max-width:1200px) {
    .c-gnav>.menu-item>a {
        padding: 0 10px
    }
}

@media (max-width:1080px) {
    .c-gnav>.menu-item>a {
        padding: 0 8px
    }
}

@media not all and (min-width:600px) {
    .page-numbers[data-apart="2"]:not(:first-child):not(:last-child) {
        display: none
    }

    .c-postThumb__cat {
        -webkit-transform: scale(.9);
        transform: scale(.9)
    }

    .p-blogCard__title {
        font-size: 3.6vw
    }

    .-type-card.-sp-col1 .p-postList__item,
    .-type-thumb.-sp-col1 .p-postList__item {
        width: 100%
    }

    .-type-list2 .p-postList__body:after {
        content: none !important
    }

    .p-postList__title .-type-thumb.-sp-col2 {
        font-size: 3.2vw
    }

    .-type-card.-sp-col1 .p-postList__title {
        font-size: 3.8vw
    }

    .-type-card.-sp-col2 .c-infeedAd {
        width: 100%
    }

    .is-style-browser_mac>.wp-block-group__inner-container {
        max-height: 56vw
    }

    .instagram-media,
    .twitter-tweet {
        box-sizing: border-box !important;
        display: none !important;
        max-width: 88vw !important;
        min-width: 0 !important;
        width: 100% !important
    }

    .instagram-media-rendered,
    .twitter-tweet-rendered {
        display: block !important
    }

    .twitter-tweet>iframe {
        width: 100% !important
    }
}

@media (min-width:960px) and (max-width:1019px) {
    .-sidebar-off .-type-card.-pc-col3 .p-postList__item {
        padding: 0 .75em
    }
}

@media (min-width:960px) and (max-width:1319px) {
    .-sidebar-on .-type-card.-pc-col3 .p-postList__item {
        padding: 0 .75em
    }
}

@media (min-width:1020px) {

    .-sidebar-off .-type-card.-pc-col3 .p-postList__item,
    .-sidebar-off .-type-thumb.-pc-col3 .p-postList__item {
        width: 33.33333%
    }
}

@media (min-width:1320px) {

    .-sidebar-on .-type-card.-pc-col3 .p-postList__item,
    .-sidebar-on .-type-thumb.-pc-col3 .p-postList__item {
        width: 33.33333%
    }
}


.sgb-box-simple__body {
    border: 2px solid #333;
    border-radius: 0 0 6px 6px;
    margin-top: -2px !important;
    padding: 0.7em 1.5em;
    border-radius: 6px;
}

.wp-block-columns {
    --wp-column-gap: 0em;
    gap: 0;
    line-height: 1.6;
}

.scroll-table {
    max-width: 100%;
    white-space: nowrap;
}

.scroll-table table {
    border-collapse: collapse;
}

.post_content td,
.post_content th {
    border: 1px solid var(--color_border--table, #dcdcdc) !important;
    padding: 0.5em;
}

.scroll-table th {
    background-color: #ddd;
}

table.tate .fixed01 {
    position: sticky;
    left: 0;
    color: #fff;
    background: #04384c !important;
    font-weight: bold;
    text-align: center;
    z-index: 9999;
}

.tate th,
td {
    text-align: center;
}

.konkyo {
    font-size: 12px !important;
    display: block;
    width: 100%;
    padding: 0 !important;
}

.box11 {
    margin: 2em 0;
    padding: 1.5em 1em;
    border-top: solid 5px #5d627b;
    background: white;
    box-shadow: 0 2px 3px rgba(0, 0, 0, 0.22);
    color: #5d627b;
}

.wp-block-sgb-block-simple.sgb-box-simple.sgb-box-simple--title-overwrap.sgb-box-simple--with-border {
    position: relative;
}

div#content {
    padding: 0 10px;
}

.sgb-box-simple--title-overwrap .sgb-box-simple__title {
    background: #fff !important;
    display: inline-block;
    font-size: 19px;
    left: 263px;
    line-height: 1.4;
    margin: 0 7px;
    border-radius: 6px 6px 0 0;
    font-weight: 700;
    padding: 0 9px;
    position: absolute;
    /* top: -14px; */
    color: #5ba9f7;
    top: -13px;
}

.sgb-box-simple__body {
    padding: 20px 15px 20px 15px !important;
}

.swap-table a {
    color: #fff;
}

.red {
    color: #c11b26 !important;
    font-weight: 700;
}

.blue {
    color: #009EF3;
}

.table-blue {
    color: #3366ff;
    font-weight: bold;
}

.table-back-blue {
    background-color: #e3eaff;
}

.table-red {
    color: #ff0000;
    font-weight: bold;
}

.table-back-red {
    background-color: #fff2f2;
}

.fa-solid,
.fas {
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
}

.fa-comments:before {
    content: "\f086";
}

.box3 {
    margin: 2em 0px;
    padding: 1.5em 1em;
    background: #eaedf29e;
    padding-top: 0px;
    padding-left: 0;
}

.box3 p {
    padding-left: 1em;
}

.labeltext {
    display: inline-block;
    margin-right: 5px;
    padding: 10px;
    color: #fff;
    font-size: 16px;
    letter-spacing: 1px;
    font-weight: bold;
    line-height: 1;
    margin-bottom: 10px;
}

.quote-text {
    text-align: right;
    display: block;
}

.plof-flex {
    position: relative;
    display: flex !important;
    box-sizing: border-box;
}

.editorface {
    margin-right: 10px;
}

.custom_pic {
    width: 80px;
    height: auto;
    border-radius: 100px;
}

.is-style-onborder_ttl2 .cap_box_content {
    min-height: 380px;
}

.th-blue {
    background: #579EC5 !important;
    color: #ffffff !important;
}

.th-red {
    background: #D37CAD !important;
    color: #ffffff !important;
}

.td-red {
    background: #ffeff7 !important;
}

.td-blue {
    background: #eaf4ff !important;
}

.p-termHead__desc>* {
    clear: both;
    margin-bottom: 2em;
}

.swell-block-step__item {
    background: #feffee;
    box-shadow: 0 2px 8px rgba(0, 0, 0, .1), 0 4px 8px -4px rgba(0, 0, 0, .2);
}

.l-content {
    padding-top: 0;
}

.green-border {
    border: 3px solid #055A05;
    padding: 20px !important;
}

.is-style-big>.swell-block-step__item:before {
    z-index: 1000;
}

.list-rank {
    margin-top: 0 !important;
    font-size: 20px !important;
    font-weight: 700;
    margin-bottom: 0px !important;
    padding-top: 0 !important;
    text-align: center;
}

[data-cell1-fixed] thead tr>:first-child {
    z-index: 999;
}

.sng-box .box-content .li-chevron ul {
    border: none !important;
}

.submit-btn input {
    max-width: 300px;
    background: #fff;
    padding: 11px 31px 11px 31px;
    border: solid 1px #02343b;
    text-decoration: none;
    display: block;
    margin-top: 17px;
    position: relative;
    z-index: 1;
    transition: .3s;
    margin: 0 auto;
    margin-top: 3%;
    text-align: center;
}

.submit-btn input:hover {
    background: #fff;
    color: #00142c;
}

.strong {
    font-weight: 900;
}

.big {
    font-size: 18px;
}

.swell-block-faq .faq_q:before {
    border-radius: 20px !important;
    background-color: #D55656;
    color: #fff !important;
    border-color: #D55656;
}

.swell-block-faq .faq_a:before {
    border-radius: 20px !important;
    color: #fff;
    background-color: #6599B7;
}

.post_content td {
    vertical-align: middle;
}

.post_content th {
    background: #04384c !important;
    color: #fff !important;
    vertical-align: middle;
    min-width: 150px;
}

.post_content .swell-block-button .swell-block-button__link[data-has-icon] {
    width: 100%;
    border-radius: 3px;
}

.post_content .is-style-btn_solid.blue_ a {
    width: 100%;
    border-radius: 3px;
}


.shiny-button {
    border-bottom: 5px solid #2f8a0a;
}

.is-style-btn_shiny a {
    font-size: 20px;
}

.gray-huki {
    display: inline-block;
    position: relative;
    padding: 0 25px;
    color: #9e9e9e;
    font-size: 18px;
    font-weight: bold;
    line-height: 1;
    letter-spacing: 1px;
}

.gray-huki:before {
    left: 0;
    -webkit-transform: rotate(50deg);
    transform: rotate(50deg);
    display: inline-block;
    position: absolute;
    top: 50%;
    width: 20px;
    height: 3px;
    border-radius: 3px;
    background-color: #9e9e9e;
    content: "";
}

.gray-huki:after {
    right: 0;
    -webkit-transform: rotate(-50deg);
    transform: rotate(-50deg);
    display: inline-block;
    position: absolute;
    top: 50%;
    width: 20px;
    height: 3px;
    border-radius: 3px;
    background-color: #9e9e9e;
    content: "";
}

@media (max-width: 768px) {
    .gray-huki {
        font-size: 16px;
    }
}

.button-top {
    margin-bottom: 3px;
}

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

/* タイムライン装飾 */
.entry-content .tl {
    margin: 1em 0;
}

.tl_marker.main-bdr.main-bc {
    border-color: #04384c;
}

.tl-content {
    position: relative;
    padding: 0 0 1.5em 1.8em;
}

.tl-content:before {
    content: "";
    width: 3px;
    background: #ccd5db;
    display: block;
    position: absolute;
    top: 24px;
    bottom: 0;
    left: 6px;
}

.tl_marker {
    content: "";
    display: block;
    position: absolute;
    top: 6px;
    left: 0;
    width: 14px;
    height: 14px;
    border-radius: 50%;
    border: solid 3px;
}

.tl-content:not(:first-of-type):not(:last-of-type) .tl_marker {
    background: transparent;
}

.tl-content:last-of-type:before {
    content: none;
}

.tl_label {
    padding-top: 2px;
    color: #90969a;
    font-size: 14px;
    font-weight: bold;
}

.tl_title {
    font-size: 1.1em;
    font-weight: bold;
    line-height: 1.5;
}

.tl_main {
    margin-top: 0.5em;
    padding: 0 0 1.5em;
    font-size: 0.9em;
    line-height: 1.6;
    border-bottom: dashed 1px #ccd5db;
}

.main-bc {
    background: #04384c;
}

/* 余白の調整 */
.tl_main>* {
    margin: 0.7em 0 0;
}

.tl_main>ul,
.tl_main>ol {
    margin: 0;
    padding: 0.3em 0 0.3em 1.3em;
    border: none;
}

.tl_main .sng-box {
    margin-top: 1em;
}

.tl_main .box28,
.tl_main .box30,
.tl_main .box31,
.tl_main .box32,
.tl_main .box33 {
    margin-top: 2.3em;
}

.red-title {
    background: #d33 !important;
}

.red-border {
    border-color: #d33 !important;
}

.red-background {
    background: #ffd4d4 !important;
}

.red-background .is-style-num_circle li::before {
    background: #d33 !important;
    box-shadow: none;
}

/* output-article */
.c_linkto.longc_linkto {
    max-width: 100%;
    display: table;
}

.longc_img {
    width: 40%;
}

.longc_img,
.c_linkto.longc_linkto .longc_content {
    display: table-cell;
    vertical-align: middle;
}

.longc_img img {
    width: 100%;
    padding: 10px !important;
    margin: 0 !important;
}

.c_linkto .c_linkto_text {
    display: block;
    padding: 15px 13px;
    line-height: 1.6;
}

.longc_content {
    width: 60%;
}

.longc_linkto {
    margin-bottom: 1.5em;
    box-shadow: 0 1px 5px 0 rgb(0 0 0 / 25%);
}

.c_linkto {
    display: block;
    overflow: hidden;
    max-width: 400px;
    width: 100%;
    margin: 1em 0;
    padding: 0;
    border-radius: 3px;
    background: #fff;
    box-shadow: 0 2px 4px rgb(0 0 0 / 25%);
    color: #555;
    font-weight: bold;
    text-decoration: none !important;
}

@media(max-width:768px) {
    .c_linkto .c_linkto_text {
        display: block;
        padding: 20px 13px 20px 13px;
        line-height: 1.6;
    }

    .longc_img img {
        padding: 10px 10px 0 10px;
    }

    .longc_img {
        width: 100%;
    }

    .longc_img,
    .c_linkto.longc_linkto .longc_content {
        display: block;
        width: 100%;
    }
}

.m-contents a {
    text-decoration: underline;
    font-weight: 900;
}

@media screen and (min-width: 768px) {
    .c-section-widget__inner {
        padding-top: 45px;
        padding-bottom: 50px;
    }
}

/* .post_content div>:first-child, .post_content>:first-child{
  margin-top: 10px !important;
} */
.author-info__inner .tb {
    border-radius: 3px;
    background: #fff;
    box-shadow: 0 0 6px gray
}

.author-info.pastel-bc {
    padding: 0
}

.tb {
    display: table;
    width: 100%
}

.tb-right p {
    margin-bottom: 0
}

.author-info__inner .tb-left {
    width: 220px;
    border-right: 2px #eaedf2 dashed;
    text-align: center;
    padding: 20px 20px 20px 20px
}

.author-info__inner .tb-left .aut {
    display: block;
    width: 100%;
    padding: 0;
    vertical-align: middle;
    line-height: 1.3
}

.author-info__inner .tb-left dt {
    font-size: 19px;
    font-weight: bold;
    margin-top: 25px
}

.author-info__inner .tb-left dd {
    padding-top: 4px;
    color: #686868;
    font-size: 15px;
    font-weight: bold
}

.tb-left,
.tb-right {
    display: table-cell;
    vertical-align: middle
}

.author-info__inner .tb-right {
    width: calc(100% - 220px);
    padding: 20px;
    font-size: 1rem;
    line-height: 1.7
}

.follow_btn {
    margin: 17px 8px 13px 0
}

.author_label span {
    display: inline-block;
    position: relative;
    min-width: 220px;
    max-width: 100%;
    margin: 0 0 15px;
    padding: 6px 12px;
    border-radius: 20px;
    background: #eaedf2;
    color: #555;
    font-size: 16px;
    font-weight: bold;
    z-index: 2;
    margin-bottom: 20px
}

.author_label span:before {
    position: absolute;
    top: 100%;
    left: 33px;
    border: 13px solid transparent;
    border-top: solid 10px #eaedf2;
    content: ""
}

.author_label span::before {
    z-index: -1;
    top: calc(100% - 15px);
    left: 50px;
    border: 15px solid transparent;
    border-top: solid 30px #eaedf2;
    transform: rotate(-40deg)
}

.author-info__inner {
    margin-top: 30px
}

.author_img {
    display: inline-block;
    width: 100%;
    height: auto;
    margin: 0;
    vertical-align: middle
}

.author_img img {
    margin-top: 10px !important;
    border: solid 5px #dfe2e8;
    border-radius: 50%;
    margin: 0 auto;
    display: block;
}

.servise-deta01 .list-group {
    margin-bottom: 80px
}

.btn-d {
    font-size: 1rem;
    position: relative;
    padding: 1rem;
    color: #fff !important;
    text-align: center;
    background: #4bb739;
    -webkit-box-shadow: 0 5px 0 #2f8a0a;
    box-shadow: 0 5px 0 #2f8a0a;
    font-weight: 900;
    display: block;
    width: 100%
}

.btn-d span {
    font-size: 1.5rem;
    position: absolute;
    top: -1.25rem;
    left: calc(50% - 150px);
    display: block;
    width: 300px;
    padding: .2rem 0;
    color: #d44114;
    border: 2px solid #d44114;
    border-radius: 100vh;
    background: #fff;
    -webkit-box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
    box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2)
}

a.btn-d span:before,
a.btn-d span:after {
    position: absolute;
    left: calc(50% - 10px);
    content: ""
}

.btn-d span:before {
    bottom: -10px;
    border-width: 10px 10px 0 10px;
    border-style: solid;
    border-color: #d44114 transparent transparent transparent
}

.btn-d span:after {
    bottom: -7px;
    border-width: 10px 10px 0 10px;
    border-style: solid;
    border-color: #fff transparent transparent transparent
}

.btn-d i {
    margin-right: 1rem
}

.btn.btn-d {
    color: #fff;
    font-size: 18px;
}

.author-info.pastel-bc {
    margin-bottom: 30px
}

#toc_container p.toc_title {
    margin-top: 30px
}

@media(max-width:768px) {
    .btn.btn-c {
        font-size: 21px
    }

    .author-info.pastel-bc {
        width: 100%
    }

    .author_label {
        margin-top: 0;
        margin-bottom: 10px
    }

    .author-info__inner {
        margin-bottom: 30px
    }

    .author-info__inner .tb-left {
        width: 36%;
        border-right: 0;
        margin-top: 30px
    }

    .author-info__inner .tb-right {
        width: 100%;
        padding: 10px 10px 20px 10px
    }

    .tb-right p {
        text-align: center
    }

    .author-info__inner .tb {
        box-shadow: 0 0 4px grey
    }

    .follow_btn.dfont {
        text-align: center;
        width: 100%
    }

    .servise-deta01 .list-group {
        margin-bottom: 30px
    }

    .btn-cv a {
        font-size: 1em
    }
}

btn-square {
    display: inline-block;
    padding: .5em 1em;
    text-decoration: none;
    background: #4bb739;
    color: #FFF !important;
    border-bottom: solid 4px #2f8a0a;
    border-radius: 3px;
    margin: 0 auto;
    text-align: center;
    display: block
}

.btn-square:active {
    -webkit-transform: translateY(4px);
    transform: translateY(4px);
    border-bottom: 0
}

.twitter-tweet.twitter-tweet-rendered {
    margin: 0 auto
}

/*吹き出し（会話形式）[say]*/
.say {
    display: table;
    overflow: hidden;
    width: 100%;
    margin: 1.5em 0;
}

.faceicon {
    display: table-cell;
    width: 110px;
    padding-right: 20px;
    text-align: center;
    vertical-align: top;
}

.faceicon img {
    width: 100%;
    background: #fff;
    height: auto;
    border: solid 3px #eaedf2;
    border-radius: 50%;
}

.faceicon span {
    font-size: 11px;
    font-weight: bold;
    margin-top: 0;
    line-height: 1;
    display: block;
    text-align: center;
}

.chatting {
    display: table-cell;
    position: relative;
    width: calc(100% - 100px);
    font-size: 0.95em;
    vertical-align: top;
}

.sc {
    display: inline-block;
    text-align: left;
    padding: 13px;
    font-size: 16px;
    border: solid 2px #d5d5d5;
    border-radius: 12px;
    background: #fff;
    word-break: break-word;
}

.sc:before {
    display: inline-block;
    position: absolute;
    top: 18px;
    left: -23px;
    border: 12px solid transparent;
    border-right: 12px solid #d5d5d5;
    content: "";
}

.sc:after {
    display: inline-block;
    position: absolute;
    top: 18px;
    left: -20px;
    border: 12px solid transparent;
    border-right: 12px solid #fff;
    content: "";
}

.sc p {
    margin: 5px 0;
    padding: 0;
}

/*吹き出し（右）*/
.right {
    text-align: right;
}

.right .faceicon {
    padding: 0 0 0 20px;
}

.right .sc:before,
.right .sc:after {
    right: -23px;
    left: auto;
    border: 12px solid transparent;
    border-left: 12px solid #d5d5d5;
}

.right .sc:after {
    right: -20px;
    border-left-color: #fff;
}

/* CTA_02 */
.cat02webpage {
    position: relative;
    margin: auto;
    display: block;
    margin-top: 3%;
    width: 100%;
    height: 400px;
    background: linear-gradient(rgba(0, 95, 160, 0.85), rgba(17, 129, 191, 0.95)), url("https://o-itoma.jp/wp-content/uploads/2021/12/oitoma-cta.png");
    z-index: 1;
    -webkit-box-shadow: 0px 6px 16px 0px rgba(0, 0, 0, 0.75);
    -moz-box-shadow: 0px 6px 16px 0px rgba(0, 0, 0, 0.75);
    box-shadow: 0px 6px 16px 0px rgba(0, 0, 0, 0.3);
}

.right-triangle {
    position: absolute;
    bottom: 0%;
    right: 0%;
    height: 100%;
    width: 50%;
    background: linear-gradient(rgba(255, 255, 255, 0.2), rgba(255, 255, 255, 0.6)), url("https://o-itoma.jp/wp-content/uploads/2021/12/oitoma-cta.png");
    -webkit-clip-path: polygon(100% 0, 0% 100%, 100% 100%);
    clip-path: polygon(100% 0, 0% 100%, 100% 100%);
}

.white-brand-box {
    position: absolute;
    width: 200px;
    top: 15%;
    left: 10.5%;
    z-index: 2;
}

.presents-text {
    position: absolute;
    top: 17%;
    left: 10.5%;
    color: #fff;
    font-size: 24px;
    font-weight: normal;
}

.cta02title {
    position: absolute;
    top: 33%;
    left: 10%;
    font-size: 48px;
    font-weight: 700;
    color: #ffffff;
    line-height: 1.2
}

.cta02cta-button {
    position: absolute;
    width: 300px;
    display: block;
    left: 10%;
    top: 70%;
    background: #FF0000;
    border-radius: 0%;
    border: none;
    padding: 10px 20px;
    font-size: 16px;
    font-weight: 700;
    color: #ffffff;
    transition: .4s;
}

.cta02cta-button a {
    color: #fff !important;
}

.cta02cta-button:hover {
    background: #91b5fb;
}

@media(max-width:768px) {
    .cta02cta-button {
        width: 80%;
    }

    .cta02cta-button {
        left: 3%;
    }

    .presents-text {
        top: 8%;
    }

    .cta02title {
        top: 31%;
    }
}

@media all and (max-width: 600px) {
    .cat02webpage {
        position: relative;
        margin: auto;
        display: block;
        margin-top: 10px;
        width: 100%;
        height: 200px;
        z-index: 1;
    }

    .white-brand-box {
        border: solid 3px #ffffff;
    }

    .presents-text {
        font-size: 15px;
    }

    .cta02title {
        font-size: 24px;
    }

    .cta02cta-button {
        font-size: 16px;
    }

    .branding-logo {
        border: solid 3px #ffffff;
    }
}

.p-termHead__desc {
    border: none;
}

@media(max-width:768px) {
    span.c-pageTitle__inner {
        font-size: 19px;
    }

    .p-termHead__desc {
        padding: 0 !important;
    }
}

.memo {
    margin-bottom: 1.5em;
    padding: 1em;
    background: #fff9e5;
    color: #545454;
}

.memo_ttl {
    margin-bottom: 5px;
    color: #ffb36b;
    font-size: 1.2em;
    font-weight: bold;
}

.memo_ttl:before {
    display: inline-block;
    width: 30px;
    height: 30px;
    line-height: 30px;
    margin: 0 3px 0 0;
    border-radius: 50%;
    background: #ffb36b;
    color: #fff;
    font-family: "Font Awesome 5 Free" !important;
    font-weight: 900 !important;
    text-align: center;
    vertical-align: middle;
    content: "\f303";
}

.memo.alert {
    background: #ffebeb;
}

.memo.alert .memo_ttl {
    color: #ff8376;
}

.memo.alert .memo_ttl:before {
    background: #ff8376;
    content: "\f12a";
}

.p-box {
    position: relative;
    background-color: #fff;
    border: 2px solid #cfd8dc;
    border-radius: 5px;
    margin: 30px 0 30px 0;
    padding: 10px 20px 15px 10px;
}

.p-box .p-box-title {
    position: absolute;
    left: -10px;
    top: -20px;
    border-radius: 15px;
    background-color: #90a4ae;
    color: #fff;
    font-family: FontAwesome, Helvetica, Yu Gothic;
    font-size: 14px;
    font-weight: 700;
    padding: 5px 20px;
}

.p-box.p-green {
    border: 2px solid #003e96;
}

.p-box.p-green .p-box-title {
    background-color: #003e96;
}

.p-box ul {
    list-style-type: none;
    border: 0;
    margin: 0;
    padding: 0;
}

.p-box ul li {
    list-style-type: none !important;
    position: relative;
    line-height: 1.5;
    padding-bottom: 9px;
    font-size: 18px;
}

.p-box.p-green ul li:before {
    content: "\f303";
    color: #003e96;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    padding-right: 10px;
}

.p-box.p-red {
    border: 2px solid #d33 !important;
}

.p-box.p-red .p-box-title {
    background-color: #d33 !important;
}

.p-box.p-red ul li:before {
    content: "\f303";
    color: #d33;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    padding-right: 10px;
}

.box29 {
    margin: 2em 0;
    border: solid 2px #ffc107;
    background: #fff;
}

.box-title {
    font-weight: bold;
}

.box29 .box-title {
    display: inline-block;
    position: relative;
    top: -2px;
    padding: 2px 9px;
    background: #ffc107;
    color: #fff;
    font-size: 17px;
    line-height: 1.5;
}

.box29 .box-title:before {
    padding-right: 4px;
    font-family: "Font Awesome 5 Free" !important;
    font-weight: 900 !important;
    content: "\f0eb";
}

.box29 .box-content {
    padding: 15px;
}

.sc ul,
.sc ol,
.list-raw ul,
.list-raw ol,
.sng-box ul,
.sng-box ol,
.memo ul,
.memo ol {
    margin: 5px 0;
    padding: 0 0 0 1.4em;
    border: none;
    box-shadow: none;
    background: transparent;
}

.li-check ul {
    position: relative;
    padding: 1em 0.5em 1em 2.5em;
    border: solid 2px #ffb03f;
    background: #fff;
}

.li-chevron li,
.li-check li,
.li-yubi li,
.li-niku li {
    list-style-type: none !important;
    padding: 0.5em 0;
    line-height: 1.5;
    font-size: 18px;
}

.li-check li:before {
    position: absolute;
    left: 1em;
    color: #ffb03f;
    font-family: "Font Awesome 5 Free" !important;
    font-weight: 900 !important;
    content: "\f303";
    left: -26px;
}

.sng-box .li-check li:before {
    left: -35px;
}

h1.c-pageTitle {
    margin-bottom: 30px;
}

.sng-box .li-check ul {
    border: none !important;
}

.is-style-faq-box .swell-block-faq__item {
    border: 1px solid var(--color_border);
    background: #fff;
}

.is-style-faq-box .faq_q {
    border-bottom: 1px dashed var(--color_border);
}

.swell-block-faq .faq_q {
    font-weight: 700;
    background: #fff;
    line-height: 1.5;
    padding: 1em 1em 1em 3em;
    position: relative;
}

.is-style-faq-box .faq_a:before,
.is-style-faq-box .faq_q:before,
.is-style-faq-stripe .faq_a:before,
.is-style-faq-stripe .faq_q:before {
    left: 1em;
    position: absolute;
    top: 1em;
}

.swell-block-faq .faq_q:before {
    border-radius: 4px;
    content: "Q";
    display: block;
    font-family: Arial, sans-serif;
    font-weight: 400;
    line-height: 2;
    position: absolute;
    text-align: center;
    width: 2em;
}

.is-style-faq-box .faq_a,
.is-style-faq-box .faq_q,
.is-style-faq-stripe .faq_a,
.is-style-faq-stripe .faq_q {
    padding: 1.25em 1em 1.25em 4em;
}

.swell-block-faq .faq_a:before {
    border-radius: 4px;
    content: "A";
    display: block;
    font-family: Arial, sans-serif;
    line-height: 2;
    position: relative;
    text-align: center;
    width: 2em;
}

.faq_a:before,
[data-q=col-main] .faq_q:before {
    box-shadow: 0 0 0 1px currentColor;
    color: var(--color_main);
}

/*メニューをページ下部に固定*/
#sp-fixed-menu {
    position: fixed;
    width: 100%;
    bottom: -7px;
    font-size: 0;
    z-index: 996;
}

/*メニューを横並びにする*/
#sp-fixed-menu ul {
    list-style: none;
    padding: 0;
    margin: 0;
    width: 100%;
}

#sp-fixed-menu li {
    width: 100%;
    padding: 0;
    margin: 0;
    font-weight: bold;
    font-size: 14px;
    letter-spacing: 4px;
}

/*ボタンを調整*/
#sp-fixed-menu li a {
    color: #fff;
    text-align: center;
    display: block;
    width: 100%;
    /* padding:14px; */
}

/*PCの場合にはメニューを表示させない*/
@media (min-width: 768px) {
    .for-sp {
        display: none;
    }
}

#cta04 {
    width: 100%;
    padding: 20px;
    background: #555;
    box-sizing: border-box;
    color: #fff;
    text-align: center;
    font-size: 120%;
}

#cta04 .cta04title {
    font-size: 1.6em;
    font-weight: 600;
    margin-top: 0;
    line-height: 1.3;
}

#cta04 img {
    margin-top: 20px;
    margin-bottom: 30px;
}

#cta04 ul {
    margin: -10px 0 30px 0px;
    list-style: none;
    border: none;
    padding: 0;
}

#cta04 ul li:before {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    color: silver;
    content: "\f105";
    padding-left: 0;
    margin-right: 15px;
    line-height: 1.8;
}

#cta04 .gray-huki {
    color: #fff !important;
}

#cta04 .gray-huki:before,
#cta04 .gray-huki:after {
    background-color: #fff !important;
}

/* #cta04 a {
    width: 100%;
    height: 60px;
    margin: 0 auto;
    line-height: 62px;
    color: #fff;
    text-align: center;
    background: #0090ff;
    box-shadow: 0 4px 0 rgba(0,95,160,1);
    display: block;
    text-decoration: none;
    text-shadow: 0 1px 1px rgba(0,0,0,.09);
    -webkit-transition: .3s ease-in-out;
    -moz-transition: .3s ease-in-out;
    -o-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
}
#cta04 a:hover {
    -webkit-transform: translateY(3px);
    transform: translateY(3px);
    box-shadow: none;
}

#cta04 .ctatext04 {
    display: inline-block;
    position: relative;
    margin:0;
} */

.ctatext04:before,
.ctatext04:after {
    display: inline-block;
    position: absolute;
    top: 50%;
    width: 22px;
    height: 2px;
    border-radius: 3px;
    background-color: #FFF;
    content: "";
    margin: auto -30px;
}

.ctatext04:before {
    transform: rotate(50deg);
}

.ctatext04:after {
    transform: rotate(-50deg);
    margin-left: 10px;
}

@media screen and (min-width: 768px) {
    #cta04 {
        padding: 30px 60px;
    }

    #cta04 img {
        max-width: 100%;
        height: auto;
        width: auto;
    }

    #cta04 ul {
        text-align: left;
    }
}

@media screen and (max-width: 600px) {
    #cta04 {
        padding: 20px 14px 3px;
        background: #707070;
    }

    #cta04 .cta04title {
        font-size: 19px;
        margin-top: 20px;
        line-height: 1.5;
    }

    #cta04 ul li {
        font-size: 0.8em;
        text-align: left;
        line-height: 1.4;
        margin-bottom: 15px;
    }

    #cta04 .ctatext04 {
        font-size: 13px;
    }

    .ctatext04:before,
    .ctatext04:after {
        width: 15px;
    }

    #cta04 img {
        margin-bottom: 20px;
    }
}

/* CTA_05 */
.cta05-cvset {
    padding: 0px 0 0;
}

.cta05-cvset .cta05-inner {
    background-color: #e8f3fc;
    padding: 10px 0 20px;
    position: relative;
    width: 100%;
    height: 100%;
    max-width: 1280px;
    margin-left: auto;
    margin-right: auto;
}

.cta05-cvset .cta05-inner ul {
    list-style: none;
    margin-top: 90px;
    padding-inline-start: 0;
    border: none;
    padding: 0;
}

.cta05-cvset-title {
    position: relative;
    font-size: 1.8em;
    line-height: 0.6em;
    font-weight: 800;
    font-style: normal;
    letter-spacing: .1em;
    position: absolute;
    top: 66px;
    left: 0;
    text-align: center;
    width: 100%;
}

.cta05-cvset-title .deco {
    position: absolute;
    bottom: 100%;
    left: 50%;
    transform: translateX(-50%);
    font-size: 20px;
    color: #005fa0;
    white-space: nowrap;
    padding-bottom: 8px;
    margin-bottom: 16px;
}

.cta05-cvset-title .deco:before,
.cta05-cvset-title .deco:after {
    display: inline-block;
    position: absolute;
    top: 42%;
    width: 28px;
    height: 2px;
    border-radius: 3px;
    background-color: #005fa0;
    content: "";
    margin: auto -35px;
}

.cta05-cvset-title .deco:before {
    left: 0;
    -webkit-transform: rotate(50deg);
    transform: rotate(50deg);
}

.cta05-cvset-title .deco:after {
    right: 0;
    -webkit-transform: rotate(-50deg);
    transform: rotate(-50deg);
}

.cta05-cvset-list {
    display: flex;
    width: 100%;
    max-width: 780px;
    justify-content: space-between;
    margin: 0 auto;
}

.cta05-cvset-list li {
    max-width: 360px;
    width: 100%;
    margin: 0 5px;
}

.cta05-cvset-list img {
    width: 100%;
    text-align: center;
}

.cta05-button.dwl,
.cta05-button.etm {
    background-color: #fff;
    border: 3px solid #005fa0;
    color: #005fa0;
}

.cta05-button.dwl,
.cta05-button.dmo,
.cta05-button.etm {
    height: 96px;
    font-size: 24px;
    font-weight: bold;
    line-height: 1.4em;
    text-align: center;
    flex-direction: column;
    white-space: nowrap;
    text-decoration: none;
}

.cta05-button.dmo {
    background-color: #005fa0;
    border: 3px solid #005fa0;
    color: #fff;
}

.cta05-button {
    position: relative;
    display: flex;
    width: 100%;
    height: 72px;
    text-align: center;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    border-radius: 12px;
    margin: 0;
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 6px 10px -2px rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.2);
    transition: 0.2s ease-in-out;
}

.cta05-button.free::after {
    content: "無料";
    position: absolute;
    display: block;
    top: -17px;
    right: 8px;
    width: 80px;
    height: 30px;
    font-size: 16px;
    font-weight: bold;
    line-height: 32px;
    text-align: center;
    background-color: #FF0000;
    color: #fff;
    border-radius: 16px;
}

.cta05-button.dwl:hover,
.cta05-button.dmo:hover,
.cta05-button.etm:hover {
    background-color: #6bb6ff;
    box-shadow: 0 15px 30px -5px rgba(0, 0, 0, 0.15), 0 0 5px rgba(0, 0, 0, 0.1);
    transform: translateY(-4px);
}

.cta05-button.dwl small,
.cta05-button.dmo small,
.cta05-button.etm small {
    display: block;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.2em;
    letter-spacing: 0;
    margin-bottom: 4px;
    white-space: nowrap;
}

.seo-sp {
    display: none;
}

@media screen and (max-width: 768px) {
    .cta05-cvset .cta05-inner {
        padding: 40px 20px 32px;
    }

    .cta05-cvset-list {
        flex-direction: column;
        align-items: center;
        padding-bottom: 16px;
    }

    .cta05-button.dwl small,
    .cta05-button.dmo small,
    .cta05-button.etm small {
        font-size: 12px;
    }

    .cta05-cvset-title {
        font-size: 24px;
        line-height: 1.4;
        top: 53px;
    }

    .cta05-cvset-title .deco {
        font-size: 17px;
        margin-bottom: 0;
    }

    .seo-sp {
        display: block;
    }
}

.yellow {
    color: #fff100;
    font-weight: 900;
}

#hikaku-table td,
#hikaku-table th {
    border-right: 1px solid #e5e5e5;
    border-bottom: 1px solid #e5e5e5;
}

#hikaku-table td {
    border-color: #a9a9a9 !important;
}

#hikaku-table img {
    width: 100%;
    padding: 0 20px;
}

.table-cta-simple a {
    width: 75%;
    display: block;
    text-decoration: none;
    padding: 9px;
    background: #f1742c;
    color: #fff !important;
    text-align: center;
    font-weight: 700;
    box-shadow: 0 4px 0 #d16323;
    margin: 0 auto;
    position: relative;
    transition: .3s;
}

.table-cta-simple {
    margin-top: 0 !important;
    margin-bottom: 10px;
}

.tadv-color {
    color: #cf2e2e;
}

.starList {
    color: #FC3;
    display: inline-block;
}

@media(max-width:768px) {
    .table-cta-simple {
        margin-top: 10px !important;
    }

}

/* YES・NO チャート */
.yn-chart {
    margin: 0 auto 2rem;
    padding: 2em;
    max-width: 600px;
    background: #e2eaed;
    box-shadow: 0 3px 5px rgba(0, 0, 0, .07);
    font-size: 0.9rem;
}

.yn-chart__add {
    background: #00142c;
    color: #fff;
    padding: 0.2em 0.9em !important;
    margin: 0 !important;
    text-align: center;
    display: inline-block;
    line-height: 1.5 !important;
}

.yn-chart__title {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
    width: 100%;
    padding: 0.5em 0 0.3em !important;
    margin: 0 auto !important;
    font-size: 1.35em !important;
    font-weight: 600 !important;
    color: #00142c;
    letter-spacing: 1px !important;
    line-height: 1.5 !important;
}

.yn-chart__title:before,
.yn-chart__title:after {
    content: "";
    flex: 1;
    height: 1px;
    background: #00142c;
    display: block;
}

.yn-chart__title:before {
    margin-right: 0.7em;
}

.yn-chart__title:after {
    margin-left: 0.7em;
}

.yn-chart__ex {
    text-align: center;
    padding: 0 !important;
}

.yn-chart>div {
    display: none;
    padding-top: 100px;
    margin-top: -100px;
}

.yn-chart>div.yn-chart__display {
    display: block;
}

.yn-chart>div>figure {
    margin: 1em 0 2em;
}

.yn-chart>div>figure img {
    display: block;
}

.yn-chart>div>p {
    margin: 2em 0 0 !important;
    padding: 0.8em 1em 0.8em 4.3em !important;
    background: #fff;
    position: relative;
}

.yn-chart>div>p:before {
    content: "Q";
    background: #00142c;
    position: absolute;
    left: 0;
    top: 0;
    color: #fff;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-weight: 600;
    font-size: 1.1em;
    min-width: 48px;
}

.yn-chart>div ul {
    margin: 2em 0 0 !important;
    padding: 0 !important;
    list-style: none !important;
    border: none;
}

.yn-chart>div ul li {
    margin: 0 0 1em 1em !important;
    padding: 0 !important;
}

.yn-chart>div ul li:last-child {
    margin: 0 0 0 1em !important;
}

.yn-chart>div ul li a {
    background: #fff;
    display: block;
    padding: 0.8em !important;
    text-decoration: none;
    color: #333;
    box-shadow: 0 3px 5px rgba(0, 0, 0, .07);
}

.yn-chart>div ul li a:hover {
    box-shadow: inset 2px 2px 0 0 #ee8f81, 2px 2px 0 0 #ee8f81, 2px 0 0 0 #ee8f81, 0 2px 0 0 #ee8f81;
    transition: 0.1s ease-in-out;
    opacity: 1;
}

.yn-chart>div ul li:before {
    content: unset !important;
}

.yn-chart__result {
    background: #fff;
    padding: 1em;
}

.yn-chart__result-title {
    color: #00142c;
    font-size: 1.1em !important;
    font-weight: 600 !important;
    padding: 0 !important;
    margin: 0 0 1em !important;
    border-bottom: 1px dashed #00142c;
}

@media screen and (max-width: 560px) {
    .yn-chart {
        padding: 1.8em 1.3em;
    }

    .yn-chart>div>figure {
        margin: 0.5em 0;
    }

    .yn-chart>div>p {
        margin: 1em 0 0 !important;
        padding: 0.8em 1em 0.8em 3.3em !important;
    }

    .yn-chart>div ul {
        margin: 1em 0 0 !important;
    }

    .yn-chart__title {
        font-size: 1em !important;
    }

    .yn-chart__title:before {
        margin-right: 0.3em;
    }

    .yn-chart__title:after {
        margin-left: 0.3em;
    }

    .yn-chart__ex,
    .yn-chart__add {
        font-size: 0.9em !important;
    }

    .yn-chart>div>p:before {
        min-width: 30px;
    }
}

/* Twitterシェアボタンなど */
.p-tw-btn,
.p-check-btn {
    text-align: center;
    margin: 1.5em 5em !important;
    padding: 0 !important;
}

.p-tw-btn a,
.p-check-btn a {
    display: block;
    box-shadow: 0 3px 5px rgba(0, 0, 0, .15);
    color: #fff !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    padding: 0.5em 0;
    border-radius: 30px;
}

.p-tw-btn a {
    background: #00acee;
}

.p-check-btn a {
    background: #00142c;
}

.p-tw-btn a:hover,
.p-check-btn a:hover {
    transform: translateY(3px);
    box-shadow: 0 2px 2px rgba(0, 0, 0, .22);
}

.yn-chart>div>p.p-check-btn {
    background: none !important;
    padding: 0 5em !important;
}

.yn-chart>div>p.p-check-btn:before {
    content: unset !important;
}

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

    .p-tw-btn,
    .p-check-btn {
        margin: 1.5em 3em !important;
    }
}

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

    .p-tw-btn,
    .p-check-btn {
        margin: 1.5em 1em !important;
    }

    .yn-chart>div>p.p-check-btn {
        padding: 0 3em !important;
    }
}

.single span.p-breadcrumb__text {
    display: block !important;
}

.p-profileBox__text {
    font-size: 14px;
    line-height: 2em;
}

.under-lines {
    font-weight: 900;
    text-decoration: underline;
}

.post_content iframe {
    width: 100%;
    height: 440px;
}

@media(max-width:768px) {
    .post_content iframe {
        height: 210px;
    }
}

#footerFloatingMenu {
    display: none;
}

@media (max-width: 768px) {
    #footerFloatingMenu {
        display: block;
        position: fixed;
        z-index: -1;
        left: 0;
        right: 0;
        padding: 0 auto;
        width: 100%;
        bottom: -7px;
        font-size: 0;
    }
}

.footer_libe {
    width: 100%;
}

#footerFloatinMenu-tel-and-line,
#new-footerFloatinMenu-tel-and-line {
    display: none;
}

@media(max-width:768px) {
    #footerFloatinMenu-tel-and-line {
        z-index: -1;
        position: fixed;
        bottom: -7px;
        left: 0;
        width: 100%;
        display: flex;
        flex-direction: row;
    }

    #footerFloatinMenu-tel-and-line img {
        margin: 0;
        padding: 0;
    }

    .p-fixBtnWrap {
        bottom: 8rem;
    }
}

.c-inner {
    width: 100%;
    background: #fff;
    margin: 0 auto;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    -moz-box-shadow: 0px 0px 40px -3px rgba(66, 69, 65, 0.13);
    -webkit-box-shadow: 0px 0px 40px -3px rgba(66, 69, 65, 0.13);
    -ms-box-shadow: 0px 0px 40px -3px rgba(66, 69, 65, 0.13);
    box-shadow: 0px 0px 40px -3px rgba(66, 69, 65, 0.13);
}

.c-inner .title {
    background-color: var(--color_main);
    color: #fff !important;
    padding: 20px 0;
    font-size: 24px !important;
    text-align: center !important;
    -webkit-border-top-left-radius: 5px;
    -webkit-border-top-right-radius: 5px;
    -moz-border-radius-topleft: 5px;
    -moz-border-radius-topright: 5px;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
}

.ctas {
    margin-bottom: 30px;
}

a.btn,
button.btn {
    font-weight: 700;
    line-height: 1;
    position: relative;
    display: inline-block;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    text-align: center;
    vertical-align: middle;
    text-decoration: none;
    letter-spacing: 0.1em;
    color: #212529;
    border-radius: 0.5rem;
}

.btn-wrap {
    margin: 30px 0;
}

a.btn-c {
    font-size: 32px;
    width: 93%;
    position: relative;
    padding: 40px 2rem 1.5rem 3.5rem;
    color: #fff;
    background: #e94919;
    -webkit-box-shadow: 0 5px 0 #d44114;
    box-shadow: 0 5px 0 #d44114;
    max-width: 93% !important;
}

a.btn-c span {
    line-height: 1.5;
    font-size: 20px;
    position: absolute;
    top: -1.25rem;
    left: calc(50% - 200px);
    display: block;
    width: 400px;
    padding: 0.2rem 0;
    color: #d44114;
    border: 2px solid #d44114;
    border-radius: 100vh;
    background: #fff;
    -webkit-box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
    box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
}

a.btn-c span:before,
a.btn-c span:after {
    position: absolute;
    left: calc(50% - 10px);
    content: "";
}

a.btn-c span:before {
    bottom: -10px;
    border-width: 10px 10px 0 10px;
    border-style: solid;
    border-color: #d44114 transparent transparent transparent;
}

a.btn-c span:after {
    bottom: -7px;
    border-width: 10px 10px 0 10px;
    border-style: solid;
    border-color: #fff transparent transparent transparent;
}

a.btn-c i {
    margin-right: 1rem;
}

a.btn-c:hover {
    -webkit-transform: translate(0, 3px);
    transform: translate(0, 3px);
    color: #fff;
    background: #eb5b30;
    -webkit-box-shadow: 0 2px 0 #d44114;
    box-shadow: 0 2px 0 #d44114;
}

.c-tel {
    border-top: 1px solid #ccc;
    padding: 20px 0;
    margin: 0 30px;
}

.c-tel p {
    font-weight: 600;
    color: var(--color_main);
    ;
}

.c-tel .num {
    font-size: 36px;
    color: #eb5b30;
}

.fa-phone-square-alt:before {
    margin-right: 10px;
}

.br-pc {
    display: block;
}

@media(max-width:768px) {
    a.btn-c {
        padding: 25px 0 20px 0;
    }

    a.btn-c span {
        width: 300px;
        font-size: 16px;
        left: calc(50% - 150px);
    }

    .c-inner .title {
        font-size: 21px !important;
    }

    .c-tel {
        margin: 0;
    }

    .c-tel p {
        font-size: 15px;
    }

    .fa-line {
        margin-right: 10px !important;
    }

    .fa-line:before {
        font-size: 34px;
    }

    .br-pc {
        display: none;
    }
}

.small {
    text-align: center;
    margin: 0 auto;
    font-size: 13px !important;
    font-weight: 900 !important;
    display: block;
    width: 100%;
    padding: 0 !important;
}

.list-rank {
    margin-top: 0 !important;
    font-size: 20px !important;
    font-weight: 700;
    margin-bottom: 24px;
    padding-top: 0 !important;
    text-align: center;
}

.list-rank span {
    padding-bottom: 4px;
    border-bottom: solid 3px #2151a1;
}

.rank-table .cta-simple a {
    width: 100%;
    padding: 10px 4px;
    font-size: 16px;
}

.cta-simple a {
    width: 100%;
    display: block;
    text-decoration: none;
    padding: 16px;
    background: #f1742c;
    color: #fff !important;
    text-align: center;
    font-weight: 700;
    box-shadow: 0 4px 0 #d16323;
    margin: 0 auto;
    position: relative;
    transition: .3s;
}

.maru-image {
    border-radius: 10px !important;
    box-shadow: 0px 3px 6px 1px #bbb;
}

.rank-table th {
    background-color: #e9f3fb !important;
    color: #000 !important;
    border-color: #a9a9a9 !important;
}

.rank-table td {
    border-color: #a9a9a9 !important;
}

.bg-gray center {
    padding-bottom: 5px;
}

@media (max-width: 768px) {
    .list-rank span {
        font-size: 18px !important;
    }

    p.list-rank {
        margin-bottom: 16px;
    }
}

.author-info {
    position: relative;
}

.grad-btn {
    z-index: 2;
    position: absolute;
    right: 0;
    bottom: 8px;
    left: 683px;
    width: 98px;
    margin: auto;
    padding: 1px 0;
    border-radius: 2px;
    background: #009e8f;
    color: #fff;
    font-size: 14px;
    text-align: center;
    cursor: pointer;
    transition: .2s ease;
    box-shadow: 0 0 3px rgb(0 0 0 / 30%);
}

.grad-item {
    position: relative;
    overflow: hidden;
    height: 80px;
    /*隠した状態の高さ*/
}

.grad-item::before {
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 40px;
    /*グラデーションで隠す高さ*/
    background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 50%, rgba(255, 255, 255, 0.9) 50%, #fff 100%);
    background: linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 50%, rgba(255, 255, 255, 0.9) 50%, #fff 100%);
    content: "";
}

.grad-trigger {
    display: none;
    /*チェックボックスは常に非表示*/
}

.grad-trigger:checked+.grad-btn {
    display: none;
    /*チェックされていたら、grad-btnを非表示にする*/
}

.grad-trigger:checked~.grad-item {
    height: auto;
    /*チェックされていたら、高さを戻す*/
}

.grad-trigger:checked~.grad-item::before {
    display: none;
    /*チェックされていたら、grad-itemのbeforeを非表示にする*/
}

@media(max-width:768px) {
    .grad-btn {
        bottom: 7px;
        left: 260px;
    }
}

.text-left {
    text-align: left !important;
}

/* ipad */
@media screen and (min-width: 769px) and (max-width: 1099px) {
    .grad-btn {
        left: 463px;
    }
}

.myfuki-main {
    display: inline-block;
    position: relative;
    background: #04384c;
    color: white;
    font-weight: 500;
    margin: 0.5em 0;
    border-radius: 25px;
    padding: 0.3em 1em;
}

.myfuki-main:before {
    position: absolute;
    content: "";
    bottom: -0.5em;
    margin-left: 1.5em;
    border-top: 10px solid;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    border-bottom: 0;
    border-top-color: #04384c;
}

/*--------------------------------------
  クリップボードボックス
--------------------------------------*/
.crip-box {
    padding: 1.6em;
    background-color: #00579e33;
    margin-bottom: 20px;
}

.crip-red {
    background-color: #f443364f !important;
}

.crip-box-in {
    box-shadow: 0 0 2px 1px rgba(42, 42, 42, .05);
    padding-top: 40px;
    margin-bottom: 0;
    text-align: center;
    position: relative;
    padding-bottom: 20px;
}

.crip-box-in:before,
.crip-box-in:after {
    content: "";
    display: inline-block;
    position: absolute;
}

.crip-box-in:before {
    width: 72px;
    height: 30px;
    border: 4px solid #003e96;
    top: -8px;
    left: calc(50% - 40px);
}

.crip-box-in:after {
    width: 100px;
    height: 28px;
    border-radius: 4px;
    background: #003e96;
    top: -10px;
    left: calc(50% - 50px);
}

.crip-redbox-in:before {
    border: 4px solid #c91313 !important;
}

.crip-redbox-in:after {
    background: #c91313 !important;
}

p.crip-box-title {
    background: linear-gradient(transparent 60%, #fef7b7 60%, #fef7b7 90%, transparent 90%);
    margin-bottom: 0;
    color: #003e96;
    font-size: 20px;
    display: inline;
    padding: 8px 0px;
}

.crip-redbox-title {
    color: #c91313 !important;
}

p.crip-box-text {
    text-align: left;
    margin-bottom: 0;
    padding: 1.2em;
}

.crip-box-in ul {
    border: none;
    text-align: left;
    margin: 0 auto;
    margin-top: 20px;
    margin-bottom: 0;
}

.crip-box-in li {
    list-style-type: none !important;
    position: relative;
    font-size: 16px;
    border-bottom: 1px dotted #b0b0b0;
    padding: 5px 0px;
    margin-left: 1.4em;
    text-indent: -1.4em;
}

.crip-box-in>ul>li:before {
    content: "\f303";
    color: #003e96;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    background-color: #fff !important;
    padding-right: 10px;
    top: 2px;
    left: 1px;
}

.crip-redbox-in>ul>li:before {
    color: #c91313 !important;
}

@media(max-width:768px) {
    .crip-box-in {
        padding-bottom: 0px;
        padding-top: 40px;
    }

    .crip-box-in ul {
        padding: 10px;
        margin-top: 0;
    }

    .crip-box {
        padding: 16px;
    }

    p.crip-box-title {
        font-size: 16px;
    }

    .cap_box_content {
        padding: 15px 10px 10px;
    }

    .box29 .box-content {
        padding: 0 10px;
    }
}

.is-style-whiteboard1 {
    position: relative;
    max-width: 520px;
    margin: 0 auto 2em;
    padding: 2em 1.5em;
    border: 10px solid transparent;
    border-radius: 4px;
    background: linear-gradient(white, white), linear-gradient(#4d4d4d, #4d4d4d) no-repeat 100% 100% / 30px 30px, linear-gradient(#4d4d4d, #4d4d4d) no-repeat 0 100% / 30px 30px, linear-gradient(#4d4d4d, #4d4d4d) no-repeat 100% 0 / 30px 30px, linear-gradient(#4d4d4d, #4d4d4d) no-repeat 0 0 / 30px 30px, linear-gradient(#e6e6e6, #e6e6e6);
    background-clip: padding-box, border-box, border-box, border-box, border-box, border-box;
    background-origin: border-box;
}

.is-style-whiteboard1:before,
.is-style-whiteboard1:after,
.is-style-whiteboard1 .wp-block-group__inner-container:before,
.is-style-whiteboard1 .wp-block-group__inner-container:after {
    display: inline-block;
    position: absolute;
    content: "";
}

.is-style-whiteboard1:before {
    right: 10px;
    bottom: 16px;
    width: 52px;
    height: 8px;
    border-radius: 2px 2px 0 0;
    background: #5a95f5;
}

.is-style-whiteboard1:after {
    right: 11px;
    bottom: 1px;
    width: 50px;
    height: 15px;
    border-radius: 0 0 4px 4px;
    background: #d2e2fc;
}

.is-style-whiteboard1 .wp-block-group__inner-container:before {
    right: 71px;
    bottom: 1px;
    width: 48px;
    height: 8px;
    background: linear-gradient(90deg, #ea4335 8%, #f2f2f2 8%, #f2f2f2 70%, #ea4335 70%);
}

.is-style-whiteboard1 .wp-block-group__inner-container:after {
    right: 98px;
    bottom: 9px;
    width: 48px;
    height: 8px;
    background: linear-gradient(90deg, #333 8%, #f2f2f2 calc(8% + 1px), #f2f2f2 70%, #333 calc(70% + 1px));
    transform: rotate(-20deg);
}

@media(max-width:768px) {
    #new-footerFloatinMenu-tel-and-line {
        position: fixed;
        bottom: 0;
        left: 0;
        display: block;
        background-color: rgba(4, 56, 76, 0.8);
        z-index: 9999;
        width: 100%;
        padding: 2%;
        box-sizing: border-box;
    }

    .new-fcv ul {
        display: flex;
        justify-content: space-between;
        align-items: center;
        flex-wrap: nowrap;
        padding-left: 0;
    }

    .new-fcv li.fixcvs {
        background-color: #00b900;
        border-radius: 6px;
    }

    .new-fcv li {
        width: 49%;
        display: flex;
        justify-content: center;
    }

    .new-fcv .outline-spcv {
        display: flex;
        align-items: center;
        width: 90%;
        justify-content: center;
    }

    .new-fcv li a {
        font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
        display: block;
        min-height: 56px;
        color: #fff;
        font-weight: 700;
        font-size: 16px;
        box-sizing: border-box;
        line-height: 1;
        text-decoration: none;
    }

    .new-fcv li.fixcvs .ficons {
        width: 2rem;
    }

    .footer-ctext {
        margin: 0 auto;
        font-size: 18px;
        width: 100%;
        text-align: center;
        font-family: "游ゴシック体", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif !important;
    }

    .new-fcv .outline-spcv .ficons i {
        font-size: 29px;
    }

    .fa-envelope:before {
        content: "\f0e0";
    }

    .new-fcv li a span {
        display: block;
        padding-top: 6px;
        font-size: 13px;
        text-align: left;
        padding-left: 14px;
    }

    .new-fcv li.fiv_tel {
        border-radius: 6px;
        background: #ff3950;
    }

    .new-fcv li+li {
        margin-left: 3%;
    }

    i.fa.fa-phone,
    i.fa.fa-line {
        width: 2rem;
        font-size: 23px;
    }

    .flashing {
        -webkit-animation: flash 0.8s ease-in-out infinite alternate;
        -moz-animation: flash 0.8s ease-in-out infinite alternate;
        animation: flash 0.8s ease-in-out infinite alternate;
    }

    @-webkit-keyframes flash {
        0% {
            opacity: 0;
        }

        100% {
            opacity: 1;
        }
    }

    @-moz-keyframes flash {
        0% {
            opacity: 0;
        }

        100% {
            opacity: 1;
        }
    }

    @keyframes flash {
        0% {
            opacity: 0;
        }

        100% {
            opacity: 1;
        }
    }

    .sp-zisseki {
        font-size: 13px;
        font-weight: bold;
        text-align: center;
        color: #fff;
        margin: 0 auto;
        display: block;
        padding-bottom: 4px;
    }

    .tel-free {
        padding-left: 19px !important;
    }
}

/* iphone-5 */
@media(max-width:375px) {
    .new-fcv li a span {
        padding-left: 6px;
    }

    .tel-free {
        padding-left: 11px !important;
    }
}

.cta-green {
    display: inline-block;
    box-sizing: border-box;
    width: 45%;
    height: 60px;
    padding: 0 5px;
    margin: 1.5%;
    background: -webkit-linear-gradient(180deg, #16ce1d 0%, #00c908 100%);
    color: #fff !important;
    font-weight: bold;
    border-radius: 40px;
    font-size: 20px;
    line-height: 1.2em;
    border: 3px solid #4caf50;
    box-shadow: #c4ff7f 1px 1px 2px inset, #8bc34a -1px -1px 4px inset;
    text-shadow: #4caf50 -1px -1px 0;
    text-align: center;
    text-decoration: none;
}

.cta-green.textlights {
    animation: 3s text-light infinite linear;
}

.cta-green.width {
    width: 100%;
    margin: 1.5% 0;
    position: relative;
}

.clickbtn:before {
    content: "";
    display: block;
    position: absolute;
    transform: translateY(-50%);
    background: url(https://o-itoma.jp/wp-content/uploads/2022/08/click.png) no-repeat center center;
    background-size: 100% 100% !important;
    margin-right: 0;
    width: 35px;
    height: 45px;
    right: -10px;
    bottom: -60px;
    transform: rotate(-15deg) translate(-20%, -80%);
    animation: 3s clickbtn infinite linear;
    z-index: 3;
}

.cta-green.arrow>span {
    display: inline-block;
    width: auto !important;
    max-width: 75% !important;
}

.cta-green:after {
    content: "";
    display: inline-block;
    width: 0;
    height: 100%;
    vertical-align: middle;
}

@keyframes clickbtn {
    0% {
        transform: rotate(-15deg) translate(-20%, -80%);
    }

    2% {
        transform: rotate(-35deg) translate(-20%, -80%);
    }

    7% {
        transform: rotate(-15deg) translate(-20%, -80%);
    }

    9% {
        transform: rotate(-35deg) translate(-20%, -80%);
    }

    14% {
        transform: rotate(-15deg) translate(-20%, -80%);
    }
}

@keyframes text-light {
    0% {
        text-shadow: #fffd3e 0 0 2px, #fffd3e 0 0 5px, #fffd3e 0 0 8px, #fffd3e 0 0 12px, #fffd3e 0 0 18px, #fffd3e 0 0 30px;
    }

    3% {
        text-shadow: none;
    }

    5% {
        text-shadow: #fffd3e 0 0 2px, #fffd3e 0 0 5px, #fffd3e 0 0 8px, #fffd3e 0 0 12px, #fffd3e 0 0 18px, #fffd3e 0 0 30px;
    }

    20% {
        text-shadow: none;
    }
}

@media (min-width: 576px) {
    .modal-dialog {
        max-width: 500px;
        margin: 0 auto;
        top: 31%;
    }
}

.btn-primary,
button.btn.btn-secondary {
    color: #fff !important;
}

label.col-2.d-flex.input-name {
    margin-top: 26px;
}

@media(max-width:768px) {
    .modal-footer {
        display: block !important;
        width: 100%;
    }

    .modal.fade .modal-dialog {
        top: 27%;
    }

    .modal-footer button {
        font-size: 16px !important;
    }

    .row {
        display: block !important;
    }

    label.col-2.d-flex.align-items-center {
        width: 100% !important;
    }

    .col-10 {
        width: 100% !important;
    }

    label.col-2.d-flex.input-name {
        width: 100%;
        padding: 0;
    }

    .col-10,
    .col-sm-10 {
        padding: 0 !important;
    }

    label.col-2.d-flex.input-name {
        margin-bottom: 6px;
    }

    .form-group {
        width: 90%;
        padding-top: 3px !important;

    }

    .input-name {
        margin-top: 28px !important;
    }

    input[type="text"] {
        font-weight: bold;
        color: #000 !important;
    }

    .form-control:placeholder-shown,
    .form-control::placeholder {
        color: rgba(0, 0, 0, 0.7);
        font-weight: normal;
    }
}

.internal-link {
    background: #fff9e5;
    box-shadow: 0 0 0 2px rgb(255 160 138 / 0%), 2px 2px 3px 0 rgb(0 0 0 / 5%);
    border-radius: 6px;
    padding: 0.75em 1em;
    margin: 10px 0 20px 0;
    position: relative;
}

.internal-link::before {
    content: "\f0c1";
    font-family: "Font Awesome 5 Free" !important;
    font-weight: 900;
    margin-right: 10px;
}

.boxzilla {
    padding: 0 !important;
    background: transparent !important;
}

.boxzilla-close-icon {
    only-tel- color: #fff !important;
    opacity: 1.0 !important;
}

/* 1012-footeronlytel */
@media (max-width: 768px) {
    .only-tel-new-fcv li a span {
        display: block;
        padding-top: 6px;
        font-size: 13px;
    }

    .only-tel-new-fcv li {
        text-align: center;
    }

    .only-tel-new-fcv ul {
        width: 100%;
        padding-left: 0;
        margin-bottom: 0;
    }

    .only-tel-new-fcv li a {
        font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
        display: block;
        padding: 12px 0;
        color: #fff;
        font-weight: 700;
        font-size: 16px;
        box-sizing: border-box;
        line-height: 1;
        text-decoration: none;
    }

    .only-tel-footer-ctext {
        font-size: 22px;
        text-align: center;
        text-align: center;
        font-family: "游ゴシック体", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif !important;
    }

    .only-tel-new-fcv li a span {
        display: block;
        padding-top: 6px;
        font-size: 15px;
    }

    .only-tel-footer-ctext::before {
        content: "\f0a4";
        font-weight: 900;
        font-family: "Font Awesome 5 Free";
        font-size: 34px;
        position: absolute;
        top: 48px;
        left: 6%;
        -webkit-animation: flash 0.8s ease-in-out infinite alternate;
        -moz-animation: flash 0.8s ease-in-out infinite alternate;
        animation: flash 0.8s ease-in-out infinite alternate;
    }

    .only-tel-new-fcv li.fiv_tel {
        border-radius: 6px;
        background: #00b900;
    }
}

.crip-box .say {
    padding: 0 20px;
}

.fv_sp {
    display: none;
}

@media(max-width:768px) {
    .outline-fv-cta {
        position: absolute;
        /* top: 0; */
        bottom: 9px;
    }

    .fv_sp {
        position: relative;
        display: block;
    }

    .p-breadcrumb__list {
        display: flex;
        list-style: none;
        overflow: scroll;
        width: 100%;
    }

    .custom-html-widget li {
        line-height: 2rem;
    }

    .l-footer__nav a {
        padding: 10px 20px;
    }
}

.align-center {
    display: block;
    margin: 0 auto;
    text-align: center;
}

.p-profileBox__iconImg {
    width: 100%;
    height: 100%;
}

blockquote {
    box-sizing: border-box !important;
    position: relative;
    margin: 3em 0;
    padding: 32px 32px 10px 32px;
    background: #FFF;
    border: solid 4px #b3b3b3;
    border-radius: 5px;
    color: #464646;
    font-size: 1em;
}

blockquote:before {
    color: #fff !important;
    font-size: 1em;
    margin: auto;
    width: 40px !important;
    height: 40px !important;
    text-align: center;
    position: absolute !important;
    top: -23px !important;
    left: 32px !important;
    background: #464646;
    border-radius: 100px;
    line-height: 2.3 !important;
}

blockquote:before {
    display: inline-block !important;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    vertical-align: middle;
    content: "\f10d" !important;
}

cite a {
    text-decoration: underline;
}

span.p-pnLinks__title {
    line-height: 2em;
}

.p-toc__list li {
    line-height: 1.9;
}

.cap_box_ttl,
.post_content h2 {
    z-index: 0;
}

.reviewBox__title,
.socialList-type01 .socialList__link::before,
.socialList-type02 .socialList__link::before {
    font-size: 2rem
}

.reviewBox {
    position: relative;
    background: #f2f2f2;
    padding: 20px;
    border-radius: 5px
}

.reviewBox-border {
    background: #fff;
    border: 1px solid rgba(0, 0, 0, .1)
}

.reviewBox::after {
    content: "";
    position: absolute;
    bottom: -1px;
    right: -1px;
    border-color: rgba(0, 0, 0, .1) #fff #fff rgba(0, 0, 0, .1);
    border-style: solid;
    border-width: 10px
}

.reviewBox__title {
    font-weight: 700;
    margin-bottom: 20px;
    padding-bottom: 10px;
    border-bottom: 1px solid #e5e5e5;
    line-height: 1.5;
    font-size: 20px;
}

.reviewBox__contents {
    position: relative
}

.reviewBox__imgBox {
    float: right;
    width: 100px;
    height: auto;
    margin: 0 0 20px 20px
}

.reviewBox__img {
    width: 100px;
    height: 100px;
    border-radius: 50%;
    border: 1px solid #e5e5e5;
    overflow: hidden;
    background: url(img/img_mysteryman.gif);
    background-size: contain
}

.reviewBox__img img {
    width: 100px;
    height: 100px;
    border-radius: 50%;
    vertical-align: bottom
}

.reviewBox__name {
    display: inline-block;
    width: 100%;
    text-align: center;
    margin-top: .5rem;
    font-size: 1.2rem;
    color: rgba(0, 0, 0, .5)
}

.reviewBox__star {
    display: block;
    font-weight: 700;
    margin-bottom: 10px
}

a.btn_ao_b {
    display: flex;
    align-items: center;
    /*   max-width: 550px; */
    margin: 0 auto;
    padding: 1.3rem 2rem;
    border: 2px solid #014897;
    background: #fff;
    text-decoration: none !important;
    transition: 0.3s;
}

a.btn_ao_b:hover {
    background-color: #e9f3fd;
}

a.btn_ao_b .b__text {
    display: block;
    flex-grow: 1;
    color: #004386;
    font-weight: bold;
    text-align: center;
    position: relative;
    padding-right: 15px;
    font-size: 23px;
}

a.btn_ao_b .b__text::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    transform: rotate(45deg);
    border-top: 3px solid #014897;
    border-right: 3px solid #014897;
    box-sizing: border-box;
    width: 14px;
    height: 14px;
    transition: 0.3s;
}

@media (max-width: 1200px) {
    a.btn_ao_b .b__text {
        font-size: 18px;
        padding-right: 20px;
    }

    a.btn_ao_b .b__text::after {
        width: 12px;
        height: 12px;
    }
}

@media (max-width: 736px) {
    a.btn_ao_b .b__text {
        font-size: 14px;
        padding-right: 20px;
    }

    a.btn_ao_b .b__text::after {
        width: 10px;
        height: 10px;
    }
}

.shiny-btn8 {
    display: block;
    position: relative;
    width: 100%;
    /*ボタンの幅*/
    padding: 10px 0;
    margin: 0px auto;
    background-color: #62d847;
    /*ボタンの色*/
    box-shadow: 0 3px 0 0 rgba(74, 162, 53, 1);
    /*影の色(rgbaの値を変更)*/
    border-radius: 80px;
    font-weight: bold;
    letter-spacing: 1px;
    font-size: 18px;
    color: #fff;
    text-align: center;
    text-decoration: none !important;
    overflow: hidden;
    transition: 0.2s;
}

.shiny-btn8:hover {
    text-decoration: none;
    color: #fff;
    opacity: 0.7;
    box-shadow: none;
    -webkit-transform: translateY(3px);
}

.shiny-btn8::before {
    position: absolute;
    content: '';
    display: inline-block;
    top: -180px;
    left: 0;
    width: 30px;
    height: 100%;
    background-color: #fff;
    animation: shiny-btn8 3s ease-in-out infinite;
}

.shiny-btn8::after {
    content: "\f054";
    font-family: 'Font Awesome 5 Free';
    font-size: 18px;
    font-weight: bold;
    margin-left: 0.5em;
}

@-webkit-keyframes shiny-btn8 {
    0% {
        -webkit-transform: scale(0) rotate(45deg);
        opacity: 0;
    }

    80% {
        -webkit-transform: scale(0) rotate(45deg);
        opacity: 0.5;
    }

    81% {
        -webkit-transform: scale(4) rotate(45deg);
        opacity: 1;
    }

    100% {
        -webkit-transform: scale(50) rotate(45deg);
        opacity: 0;
    }
}

.mini {
    font-size: 13px;
    margin-top: 10px;
}

.center {
    display: block;
}

.red {
    color: #c11b26 !important;
    font-weight: 700;
}

.back-yellow {
    font-weight: 700;
    color: #272727;
    background: linear-gradient(transparent, #fff799 0);
    border-radius: 6px;
    font-size: 20px;
    line-height: 2em;
}

.li-chevron ul {
    position: relative;
    padding: 1em 0.5em 1em 2.5em;
    border: solid 2px skyblue;
    border-radius: 5px;
}

.li-chevron li,
.li-check li,
.li-yubi li,
.li-niku li {
    list-style-type: none !important;
    padding: 0.5em 0;
    line-height: 1.5;
}

.li-chevron li:before {
    position: relative;
    left: -1.5em;
    color: skyblue;
    font-family: "Font Awesome 5 Free" !important;
    font-weight: 900;
    content: "\f138";
    color: #002c70;
}

.bonus-table tbody th {
    background: #fff !important;
    padding: 5px;
    border: 1px solid #ddd;
}

.table-rank {
    text-align: center;
    position: relative;
    background-color: #002d69;
    color: #fff;
    width: 50px;
    font-weight: 700;
    border-radius: 20px;
    font-size: 12px;
}

.bonus-table td,
.bonus-table th {
    text-align: center;
}

.ranking-table td,
.ranking-table th {
    text-align: center !important;
    width: 33%;
    line-height: 2em;
    font-size: 14px;
}

.box3 ul {
    border: none;
    padding-top: 0;
    padding-bottom: 0;
    margin: 0;
}

.kaigaifx-points td,
.kaigaifx-points th {
    width: 50%;
    text-align: center;
}

span.rank-number {
    margin-left: 16px;
}

.table-rank::before {
    position: absolute;
    content: "\f521";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 11px;
    left: 5px;
}

table ul {
    border: none !important;
    margin: 0;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.cta-table {
    border: 1px solid #e0e0e0 !important;
    box-shadow: 0px 0px 6px 0px #bbb;
}

@media(max-width:768px) {
    .back-yellow {
        font-size: 17px;
        line-height: 2em;
    }
}

.table-center th {
    min-width: 120px;
    padding: 0.5em 0.35em !important;
}

.table-center td {
    vertical-align: middle;
    min-width: 180px;
    padding: 0.5em 0.35em !important;
}

.batsu {
    color: #007eff;
}

.symbol {
    font-size: 40px;
    display: block;
    text-align: center;
    margin: 0 auto;
    font-family: system-ui;
}

.triangle {
    color: #05788d;
}

.single-cicrle {
    color: #ff9000;
}

.double {
    color: #ff5050;
}

.table-center {
    text-align: center !important;
}

.swell-block-button.-size-s.is-style-btn_shiny.blue_ {
    display: grid;
    margin-bottom: 0;
    --the-btn-bg: linear-gradient(100deg, var(--the-btn-color) 0%, var(--the-btn-color2) 100%);
}

/* æ¨ªã‚¹ã‚¯ãƒ­ãƒ¼ãƒ« */
.horizontal_scroll,
.twiiter_horizontal_scroll {
    overflow-x: scroll;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    padding: 0 0 12px 8px;
    display: -ms-flexbox;
    display: flex;
}

.horizontal_scroll li,
.twiiter_horizontal_scroll li {
    background: #fff;
    max-width: 270px;
    display: block;
    position: relative;
    min-width: 270px;
    height: 270px;
}

.fa-star-half-alt:before,
.icon-star-half::before {
    content: "\f5c0";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.fa-star-half-alt,
.icon-star-half {
    color: #f9a72b;
    font-style: normal;
}

.horizontal_scroll>li,
.twiiter_horizontal_scroll>li {
    margin: 7px !important;
}

.horizontal_scroll>li:last-child,
.twiiter_horizontal_scroll>li:last-child {
    padding-right: 5px;
}

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

    .horizontal_scroll>li:last-child,
    .twiiter_horizontal_scroll>li:last-child {
        padding-right: 0;
    }
}

.horizontal_scroll img,
.twiiter_horizontal_scroll img {
    vertical-align: bottom;
}

.slider_ttl {
    color: #333;
    text-align: inherit;
    width: 100%;
    height: 40px;
    line-height: 40px;
    padding: inherit;
    margin: 0 0 20px 0;
    background-color: #e5e5e5;
    text-indent: 8px;
    font-size: 16px;
    font-weight: 700;
    box-sizing: border-box;
}

.horizontal_scroll,
.twiiter_horizontal_scroll {
    padding: 0 !important;
    border: none !important;
    margin-top: 0 !important;
}

.horizontal_scroll li,
.twiiter_horizontal_scroll li {
    list-style: none !important;
    overflow-y: scroll;
}

.kuchicomi {
    margin: 0 auto;
    display: block;
    margin-top: 4px !important;
}

.horizontal_scroll img,
.twiiter_horizontal_scroll img {
    vertical-align: bottom;
    border: 1px solid #e5e5e5;
    background: #fff;
    border-radius: 50%;
}

.kuchicomi-image {
    width: 35%;
    display: block;
    margin: 0 auto;
}

.people-name,
.people-career,
.people-star {
    width: 100%;
    display: inline-block;
    text-align: center;
}

.people-star .icon-star-full,
.people-star .fa-star-half-alt,
.people-star .rate-star-empty {
    display: inline-block;
    font-size: 13px;
}

.kuchimomi-name {
    font-size: 13px;
    font-weight: bold;
    margin-top: 10px !important;
    margin: 0 auto;
    text-align: center;
}

.rate-star-empty,
.icon-star-empty {
    color: rgba(0, 0, 0, 0.15) !important;
    letter-spacing: 3px;
}

.horizontal_scroll,
.twiiter_horizontal_scroll {
    border: none;
    background-color: #DAECF2;
}

.kuchicomi-text {
    margin: 0 auto;
    display: block;
    width: 89%;
    font-size: 12px;
    margin-top: 10px !important;
    line-height: 20px;
}

@media (max-width: 768px) {
    .people-star .icon-star-full:before {
        font-size: 13px !important;
        letter-spacing: 2px;
    }

    .entry-content {
        padding: 10px 13px 0;
    }
}

.out_line_scrollHint {
    -webkit-animation: FloatHorizontal 2s ease-in-out infinite alternate;
    animation: FloatHorizontal 2s ease-in-out infinite alternate;
    margin-bottom: 2px !important;
    text-align: right;
}

.out_line_scrollHint span {
    align-items: center;
    display: inline-flex;
    font-size: 12px;
    line-height: 1;
    opacity: .75;
    vertical-align: middle;
}

.out_line_scrollHint span i {
    font-size: 16px;
    margin-left: 4px;
}

@keyframes FloatHorizontal {
    50% {
        -webkit-transform: translate3d(-15px, 0, 0);
        transform: translate3d(-15px, 0px, 0px);
    }
}

.horizontal_scroll li::before {
    content: none !important;
}

.rate-star-empty,
.icon-star-empty {
    font-style: normal;
}

.rate-star-empty:before,
.icon-star-empty::before {
    color: #cfcfcf;
    content: "\f005";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.icon-star-full {
    color: #ffb500;
    letter-spacing: 3px;
    font-style: normal;

}

.fa-star-half-alt:before,
.icon-star-half::before {
    content: "\f5c0";
    font-family: "Font Awesome 5 Free";
    font-weight: 900
}

.icon-star-full:before {
    content: "\f005";
    font-family: "Font Awesome 5 Free" !important;
    font-weight: 900
}

.good-text,
.bad-text {
    text-align: center;
    font-weight: bold;
    display: block;
    font-family: "æ¸¸ã‚´ã‚·ãƒƒã‚¯ä½“", YuGothic, "æ¸¸ã‚´ã‚·ãƒƒã‚¯ Medium", "Yu Gothic Medium", "æ¸¸ã‚´ã‚·ãƒƒã‚¯", "Yu Gothic", "ãƒ’ãƒ©ã‚®ãƒŽè§’ã‚´ã‚·ãƒƒã‚¯ Pro", "Hiragino Kaku Gothic Pro", "Noto Sans JP", "ãƒ¡ã‚¤ãƒªã‚ª", Meiryo, Osaka, "ï¼­ï¼³ ï¼°ã‚´ã‚·ãƒƒã‚¯", "MS PGothic", sans-serif !important;
    font-size: 12px;
    margin-top: 5px !important;
}

.good-text {
    color: #175491;
}

.bad-text {
    color: #cf2e2e;
}

.kuchicomi-title {
    font-size: 12px;
    text-align: center;
    font-weight: bold;
    margin: 0 20px;
    margin-top: 8px !important;
}

@media(max-width:768px) {
    .icon-star-full:before {
        font-size: 16px;
        letter-spacing: 2px
    }
}

.sgb-css-id-8 .sng-box {
    border: none;
    margin: 8px auto;
    font-weight: unset;
}

.sgb-css-id-8 .wp-block-columns {
    box-shadow: var(--wp--custom--shadow--medium, 0 6px 13px -3px rgba(0, 12, 66, 0.1), 0 0px 1px rgba(0, 30, 100, 0.1));
    background: #fff;
    padding: 0;
    display: flex;
    margin-bottom: 0;
    border-radius: calc(var(--sgb--custom--box-radius, 6)* 1px);
    box-sizing: border-box;
    flex-wrap: nowrap;
    gap: 0;
    overflow: hidden;
}

.sgb-css-id-8 .wp-block-columns>* {
    width: 100%;
}

.wp-block-columns.is-not-stacked-on-mobile>.wp-block-column {
    flex-basis: 0;
    flex-grow: 1;
}

.sgb-css-id-8 .sgb-heading {
    margin: 0 !important;
}

.sgb-css-id-8 .sng-box ul,
.sgb-css-id-8 .sng-box ol {
    margin: 16px 0;
    padding: 0.2em 1.45em;
    border: none;
}

.sgb-css-id-8 li:last-child {
    border-bottom: 0;
}

.li-chevron li,
.li-check li,
.li-yubi li,
.li-niku li {
    list-style-type: none !important;
    padding: 0.5em 0;
    line-height: 1.5;
}

.li-check .sgb-css-id-4 li:before {
    content: "\f111" !important;
    font-weight: 300 !important;
    position: absolute;
    left: 0;
    font-family: "Font Awesome 5 Free" !important;
    width: 1.25em;
    color: #175491 !important;
    display: block !important;
    transform: none;
}

.sgb-heading__inner {
    display: block;
    font-weight: 900;
    line-height: 1.4;
}

.li-check .sgb-css-id-7 li:before {
    content: "\f00d" !important;
    font-weight: 900;
    position: absolute;
    left: 0;
    font-family: "Font Awesome 5 Free" !important;
    width: 1.25em;
    color: #cf2e2e !important;
    transform: none;
}

.sgb-css-id-8 {
    border: none;
    margin: 8px auto;
    font-weight: unset;
}

.sgb-css-id-8 .wp-block-columns.is-not-stacked-on-mobile>.wp-block-column:not(:first-child) {
    margin-left: 0;
    margin-top: 0 !important;
}

ul.sgb-css-id-4,
ul.sgb-css-id-7 {
    padding: 0 10px 0 10px;
}

.sgb-css-id-8 li,
.sgb-css-id-7 li {
    border-bottom: dashed 2px #dadada;
    font-size: 15px;
    padding-left: 1.4em !important;
    margin-top: 0 !important;
}

.outline-blockmerit {
    background-color: #b4e0fa24;
    padding: 0 !important;
}

.li-check ul {
    background: none;
}

.wp-block-sgb-list {
    margin-top: 6px !important;
}

.inline-blockmerit {
    background-color: #175491;
    border-color: transparent;
    font-size: 1em;
    text-align: center;
}

.outline-blockdemerit {
    background-color: #ffebeb52;
    padding: 0 !important;
}

.inline-blockdemerit {
    background-color: #cf2e2e;
    border-color: transparent;
    font-size: 1em;
    text-align: center;
}

.box1 {
    padding: 0;
}

.sgb-heading--type2 {
    border: 2px solid transparent;
    border-radius: 2px;
    padding: 0.75em 0.65em;
}

.meritto,
.demeritto {
    position: relative;
    padding: 0.8em 1em;
    margin: 4em 0 2em !important;
}

.meritto {
    border: 3px solid #175491;
}

.demeritto {
    border: 3px solid #cf2e2e;
}

.meritto .box-title,
.demeritto .box-title {
    position: absolute;
    top: -44px;
    left: -3px;
    color: white;
    line-height: 32px;
    padding: 5px 13px 3px;
    border-radius: 10px 10px 0 0;
}

.meritto .box-title {
    background: #175491;
}

.demeritto .box-title {
    background: #cf2e2e;
}

.meritto .box-title:before,
.demeritto .box-title:before {
    margin-right: 10px;
    font-size: 1.2em;
}

.meritto .box-title:before {
    content: "\f599";
}

.demeritto .box-title:before {
    content: "\f119";
}

.meritto ul,
.demeritto ul {
    list-style: none;
}

.meritto li,
.demeritto li {
    padding: .5em 0 !important;
    padding-left: 6px !important;
}

.meritto li:before,
.demeritto li:before {
    margin-left: -20px;
    margin-right: 10px;
}

.meritto li:before {
    content: "\f164" !important;
    color: #175491 !important;
    transform: none !important;
    font-size: 16px;
}

.demeritto li:before {
    content: "\f165" !important;
    color: #cf2e2e !important;
    transform: none !important;
    font-size: 16px;
}

.meritto li:before,
.meritto .box-title:before,
.demeritto li:before,
.demeritto .box-title:before {
    font-family: "Font Awesome 5 Free" !important;
    font-weight: 900;
}

@media(max-width:768px) {

    .sgb-css-id-8 li,
    .sgb-css-id-7 li {
        font-size: 15px;
    }

    .sgb-css-id-8 {
        max-width: 100%;
        padding: 10px 0;
    }

    .sgb-heading--type2 {
        padding: 10px 0;
    }

    .sgb-css-id-8 .wp-block-columns {
        display: block;
    }

    .li-chevron li,
    .li-check li,
    .li-yubi li,
    .li-niku li {
        list-style-type: none !important;
        padding: 0.5em 0;
        line-height: 2em;
    }

    a.btn_ao_b {
        padding: 20px 17px;
    }
}

.twiiter_horizontal_scroll li {
    background: #fff;
    display: block;
    position: relative;
    min-width: 320px;
    height: auto !important;
    padding: 10px;
}

.profession {
    font-size: 12px;
    padding: 4px 10px;
    background-color: #06066b;
    color: #fff;
    font-weight: bold;
    border-radius: 4px;
    margin-right: 7px;
    display: block;
    padding: 0;
    text-align: center;
    margin-bottom: 6px;
}

.age {
    font-size: 12px;
    padding: 4px 6px;
    background-color: #F57C00;
    color: #fff;
    font-weight: bold;
    border-radius: 4px;
    margin-right: 7px;
}

.three-points {
    border: 1px solid #175491;
    margin: 50px auto;
}

.three-points-content {
    display: flex;
    min-height: 90px;
}

.three-points-title {
    padding: 5px 20px;
    text-align: center;
    background-color: #175491;
    color: #fff;
    margin-bottom: 0;
    font-size: 20px;
}

.three-points-outline,
.three-points-content {
    list-style-type: none;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

.three-points-number {
    width: 85px;
    background-color: #bed9ef33 !important;
    position: relative;
    padding-bottom: 10px;
    padding-top: 9px;
}

.three-points-content:not(:last-child) {
    border-bottom: 1px solid #175491;
}

.three-points-number .points {
    position: relative;
    font-family: math;
    padding: 11px;
    border: 1px solid #175491;
    background: #fff;
    display: inline-block;
    margin: 1rem 0 6px -15px;
    line-height: 0;

}

.three-points-number .points:before {
    position: absolute;
    width: 0;
    border-left: 16px solid transparent;
    border-top: 12px solid #175491;
    left: -1px;
    content: '';
    height: 0;
    top: 100%;
}

.three-points-outline {
    list-style-type: none;
    padding-left: 0 !important;

}

.count-number {
    display: block;
    text-align: center;
    width: 50px;
    background: #175491;
    margin: 0 auto;
    border-radius: 100px;
    margin-top: 0px;
    font-size: 30px;
    margin-bottom: 10px;
    height: 50px;
    color: #fff;
    line-height: 52px;
}

.three-points-outline>li:before {
    content: none !important;
}

.three-points-section {
    padding-left: 10px;
    padding-top: 20px;
    max-width: 640px;
    /* margin: 0 auto; */
    text-align: left;
    padding-bottom: 20px;
}

.three-points-section p {
    margin-top: 0;
}

.point-title {
    font-weight: bold;
    color: #175491;
    text-decoration: underline;
}

@media(max-width:768px) {
    .three-points-number .points {
        position: relative;
        font-family: math;
        margin: 1rem 0 6px -9px;
        padding: 11px;
        background: #fff;
        border: 1px solid #175491;
        display: inline-block;
        line-height: 0;
    }

    .three-points-number {
        width: 195px;
    }

    .three-points-number .points:before {
        border-top: 12px solid #175491;
        border-left: 9px solid transparent;
    }

    .three-points-section {
        padding: 10px;
        margin-top: 5px !important;
    }
}

.twiiter_horizontal_scroll li {
    background: #fff;
    display: block;
    position: relative;
    min-width: 320px;
    height: auto !important;
    padding: 10px;
}

.twiiter_horizontal_scroll li:before {
    content: none !important;
}

.step-text,
.kuchicomitext2 {
    text-align: center;
    font-weight: bold;
    display: block;
}

.twiiter_horizontal_scroll_comment .twitter-tweet.twitter-tweet-rendered {
    margin-top: -20px !important;
}

.Qa-Box {
    width: 100%;
    margin: 0 auto;
}

.Qa-Box .Qa {
    padding: 20px 0;
    border-bottom: 1px solid #c8c8c8;
}

.Qa-Box .Qa dt,
.Qa-Box .Qa dd {
    display: flex;
    align-items: baseline;
    margin: 15px 0;
}

.Qa-Box .Qa dt p {
    margin: 0;
    padding-left: 15px;
    width: 100%;
}

.Qa-Box .Qa dd p {
    margin: 0;
    padding-left: 15px;
    width: 100%;
    color: #000;
    font-size: 98% !important;
}

.Qa-Box .Qa:last-of-type {
    border-bottom: none;
}

.Qa-Box .Qa dt::before {
    content: "Q";
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    background: #6699b7;
    width: 35px;
    height: 35px;
    font-size: 18px;
    font-weight: bold;
}

.Qa-Box .Qa dd::before {
    content: "A";
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    background: #d65556;
    width: 35px;
    height: 35px;
    font-size: 18px;
    font-weight: bold;
}

.fv-thumbnail,
.article-thumbnail {
    background: #f1f1f1;
    margin-bottom: 5px;
}

.blue {
    color: var(--color_link) !important;
    cursor: pointer;
}

.fv-thumbnail img {
    width: 60%;
    display: block;
    margin: 0 auto;
    border: 1px solid #032D70;
    margin-bottom: var(--swl-block-margin, 2em);
}

.mini-point {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 0.65em;
    border-radius: 6px;
    background-color: #eaf7ff;
    color: #0099dd;
    margin-bottom: 1.5em;
    padding: 0 0 0 10px;
    margin-top: 25px;
}

.mini-point .sng-box-msg__icon i {
    color: #0099dd;
    font-size: 21px;
}

.mini-point .mini-point-ttl {
    border-right-style: solid;
    border-width: 1px;
    font-size: 1em;
}

.mini-point .sng-box-msg__contents {
    color: #494949 !important;
    font-weight: bold;
    font-size: 16px;
    padding: 0 10px;
}

.mini-point-ttl .sng-box-msg__icon {
    color: #0099dd;
}

body {
    width: 100%;
    font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", "Noto Sans JP", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif !important;
    font-weight: 500;
    color: #191919;
    -webkit-text-size-adjust: 100%;
    word-wrap: break-word;
    overflow-wrap: break-word;
}

.li-accentbdr ol,
.li-accentbdr ul,
.li-mainbdr ol,
.li-mainbdr ul {
    margin: 5px 0;
    padding: 0 0 0 1.4em;
    border: none !important;
    box-shadow: none;
    background: transparent;
}

.ol-circle ol li {
    list-style-type: none;
}

.c-scrollHint {
    margin-top: 0;
}

.horizontal_scroll,
.twiiter_horizontal_scroll {
    overflow-x: scroll;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    padding: 0 0 12px 8px;
    display: -ms-flexbox;
    display: flex;
}

.horizontal_scroll_image {
    overflow-x: scroll;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    padding: 10px;
    display: -ms-flexbox;
    display: flex;
    padding-left: 10px !important;
    margin-top: 0 !important;
}

.slide-image {
    min-width: 280px;
    list-style-type: none;
}

.slide-image img {
    max-width: 100%;
    height: auto;
    width: 90%;
}

.horizontal_scroll li,
.twiiter_horizontal_scroll li {
    background: #fff;
    display: block;
    position: relative;
    min-width: 230px;
    height: 270px;
}

.horizontal_scroll>li,
.twiiter_horizontal_scroll>li {
    margin: 7px;
}

span.slide-title {
    background-color: #DAECF2;
    width: 100%;
    display: block;
    text-align: center;
    font-weight: bold;
    padding-top: 10px;
    font-size: 18px;
    border-bottom: 1px solid #032d70;
}

.horizontal_scroll>li:last-child,
.twiiter_horizontal_scroll>li:last-child {
    padding-right: 5px;
}

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

    .horizontal_scroll>li:last-child,
    .twiiter_horizontal_scroll>li:last-child {
        padding-right: 0;
    }
}

.horizontal_scroll img,
.twiiter_horizontal_scroll img {
    vertical-align: bottom;
}

/* タイトル */
.slider_ttl {
    color: #333;
    text-align: inherit;
    width: 100%;
    height: 40px;
    line-height: 40px;
    padding: inherit;
    margin: 0 0 20px 0;
    background-color: #e5e5e5;
    text-indent: 8px;
    font-size: 16px;
    font-weight: 700;
    box-sizing: border-box;
}

.horizontal_scroll,
.twiiter_horizontal_scroll {
    padding: 0 !important;
}

.horizontal_scroll li,
.twiiter_horizontal_scroll li {
    list-style: none !important;
}

.kuchicomi {
    display: flex;
    margin-top: 5px;
}

.horizontal_scroll img,
.twiiter_horizontal_scroll img {
    vertical-align: bottom;
    border: 1px solid #e5e5e5;
    background: #fff;
    border-radius: 50%;
}

.kuchicomi-image {
    width: 37%;
}

.people-name,
.people-career {
    width: 100%;
    display: block;
}

.people-star .icon-star-full,
.people-star .fa-star-half-alt,
.people-star .rate-star-empty {
    display: inline-block;
    font-size: 13px;
}

.kuchimomi-name {
    width: 64%;
    font-size: 14px;
    font-weight: bold;
    padding-left: 9px;
}

.horizontal_scroll,
.twiiter_horizontal_scroll,
.horizontal_scroll_image {
    border: none;
    background-color: #DAECF2;
}

.kuchicomi-text {
    margin: 0 auto;
    display: block;
    width: 89%;
    font-size: 12px;
    margin-top: 10px;
    line-height: 20px;
    max-height: 150px;
    overflow-y: hidden;
}

.twiiter_horizontal_scroll li {
    background: #fff;
    display: block;
    position: relative;
    min-width: 400px;
    height: auto !important;
    padding: 10px;
}

.twitter-tweet.twitter-tweet-rendered {
    max-height: 380px;
    overflow-y: scroll;
}

@media (max-width: 768px) {
    .people-star .icon-star-full:before {
        font-size: 13px !important;
        letter-spacing: 2px;
    }
}

@media screen and (max-width: 960px) {
    .Qa-Box {
        width: 95%;
    }
}

.rate-title {
    padding: 5px;
    margin-top: 1em;
    font-weight: bold;
    font-size: 1.25em;
    text-align: center;
}

.rate-title:before {
    color: var(--wp--preset--color--sango-main);
    content: "\f02e";
    padding-right: 5px;
    font-family: Font Awesome\ 5 Free;
    font-weight: 900;
}

.rate-star {
    display: inline-block;
    margin: 0;
    width: 47%;
    color: #002c70;
    vertical-align: middle;
}

.rate-thing {
    display: inline-block;
    padding-right: 10px;
    width: 60%;
    max-width: 380px;
    font-weight: bold;
    vertical-align: middle;
}

.rate-box .rateline:nth-child(even) {
    background: #f3f3f3;
}

.rate-box {
    max-width: 100%;
    margin: 0 auto 1em;
    font-size: 17px;
    border: solid 2px #e6e6e6;
}

.rateline {
    display: flex;
    justify-content: space-between;
    padding: 10px 10px 10px 20px;
}

.rate-star .fa,
.rate-star .fa-star-half-alt {
    color: #ffb500;
}

.rate-box .rateline.end-rate {
    background: #e8f4ff;
}

.onepoint {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 0.65em;
    border-radius: 6px;
    background-color: #ffebeb;
    color: #ff8376;
    margin-bottom: 1.5em;
    padding: 1em;
}

.onepoint_ttl {
    border-right-style: solid;
    border-width: 1px;
    font-size: 1em;
    border-right-style: solid;
    border-width: 1px;
    font-size: 1em;
}

.onepoint_ttl .sng-box-msg__icon i {
    color: inherit;
}

.onepoint_ttl .sng-box-msg__icon {
    font-size: 30px;
    background: transparent !important;
    border-radius: 50%;
    display: inline-block;
    height: 30px;
    line-height: 30px;
    margin: 0 10px 0 0;
    text-align: center;
    vertical-align: middle;
    width: 35px;
}

.p-articleMetas.-top {
    margin-top: 0;
    margin-bottom: 20px;
}

.onepoint .sng-box-msg__contents p {
    color: #545454;
    margin: 0;
}

.box30,
.box31,
.box32,
.box33 {
    margin: 2em 0;
    padding: 0 15px 10px;
    background: #002c7008;
    box-shadow: 0 2px 4px rgb(0 0 0 / 15%);
}

.box30 .box-title,
.box31 .box-title,
.box32 .box-title,
.box33 .box-title {
    margin: 0 -15px 15px;
    padding: 8px 4px;
    background: #002c70;
    color: #fff;
    font-size: 1.2em;
    text-align: center;
    line-height: 1.5;
}

.box30 .box-title:before {
    padding-right: 4px;
    content: "\f303";
    font-family: "Font Awesome 5 Free" !important;
    font-weight: 900;
}

.table-pink-title {
    background: #D37CAD !important;
    text-align: center;
    height: 27px;
    color: #fff;
}

.table-pink-title-td {
    background: #ffeff7;
    height: 39px;
    text-align: center;
}

.table-blue-title {
    background: #579EC5 !important;
    text-align: center;
    height: 27px;
    color: #fff;
}

.table-blue-title-td {
    background: #eaf4ff;
    height: 39px;
    text-align: center;
}

.button_solid004 a {
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 0 auto;
    max-width: 240px;
    padding: 10px 25px;
    margin: 0 10px;
    color: #FFF;
    transition: 0.3s ease-in-out;
    font-weight: 600;
    background: #6bb6ff;
    border-radius: 8px;
    border-bottom: solid 5px #1d7fde;
}

.button_solid004 a:after {
    position: absolute;
    top: 50%;
    right: 10px;
    font-size: 20px;
    transition: 0.2s ease-in-out;
    content: "\f0da";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    transform: translateY(-50%);
}

@media only screen and (min-width: 481px) {
    .rate-star {
        width: 164px;
    }
}

@media(max-width:769px) {
    .rate-thing {
        max-width: 160px;
        width: 40%;
    }
}

.fxbutton {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background: #e31c3d;
    color: #fff;
    font-weight: 700;
}

.fxbutton {
    position: relative;
    left: 0;
    bottom: 0;
    width: 100%;
    font-size: 21px;
    -webkit-box-shadow: inset 0 2px 0 rgba(255, 255, 255, .2), 0 2px 2px rgba(0, 0, 0, .2);
    box-shadow: inset 0 2px 0 rgba(255, 255, 255, .2), 0 2px 2px rgba(0, 0, 0, .2);
    height: 66px;
    border-radius: 70px;
}

.p-pickupBanners {
    margin-bottom: 1em;
    position: relative;
    width: 100%;
}

.c-postTitle__ttl {
    font-size: 24px;
    margin-bottom: 13px;
}

.c-postTitle__ttl {
    position: relative;
    text-align: center;
    padding: 1em;
}

.btn-outline .fxbutton {
    position: relative;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
    width: 100%;
    cursor: pointer;
}

.fxbutton::before {
    content: "\f0a4";
    font-weight: 900;
    font-family: "Font Awesome 5 Free";
    position: absolute;
    left: 49px;
    top: 40px;
    bottom: 0;
    display: flex;
    margin: auto;
    color: #EF3F56;
    align-items: center;
    width: 40px;
    height: 40px;
    position: absolute;
    border-radius: 100%;
    background-color: #fff;
    padding-left: 6px;
    transform: translate(-50%, -50%);
}

.fxbutton::after {
    right: 0;
    content: "\f105";
    font-weight: 900;
    font-family: "Font Awesome 5 Free";
    position: absolute;
    top: 40px;
    bottom: 0;
    display: flex;
    margin: auto;
    color: #fff;
    align-items: center;
    width: 40px;
    height: 40px;
    position: absolute;
    transform: translate(-50%, -50%);
}

.btn-text {
    font-size: 14px;
    font-weight: bold;
    position: relative;
    margin-bottom: 0.2em;
    text-align: center;
}

.btn-text:before {
    margin-right: 1rem;
    content: '＼';
}

.btn-text:after {
    margin-left: 1rem;
    content: '／';
}

/* account-open-flow */
.horizontal_scroll2 {
    overflow-x: scroll;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    padding: 0 0 12px 8px;
    display: -ms-flexbox;
    display: flex;
}

.horizontal_scroll2 li {
    background: #fff;
    display: block;
    position: relative;
    min-width: 360px;
    height: 360px;
}

.horizontal_scroll2>li {
    margin: 7px;
}

.horizontal_scroll2>li:last-child {
    padding-right: 5px;
}

.kuchicomi2 {
    margin: 10px;
}

.step-text,
.kuchicomitext2 {
    text-align: center;
    font-weight: bold;
    display: block;
}

.kuchicomitext2,
.steplink {
    padding: 10px;
}

@media screen and (min-width: 768px) {
    .horizontal_scroll2>li:last-child {
        padding-right: 0;
    }
}

.horizontal_scroll2 img {
    vertical-align: bottom;
}

/* タイトル */
.slider_ttl2 {
    color: #333;
    text-align: inherit;
    width: 100%;
    height: 40px;
    line-height: 40px;
    padding: inherit;
    margin: 0 0 20px 0;
    background-color: #e5e5e5;
    text-indent: 8px;
    font-size: 16px;
    font-weight: 700;
    box-sizing: border-box;
}

.horizontal_scroll2 {
    padding: 0 !important;
}

.horizontal_scroll2 li {
    list-style: none !important;
}

.horizontal_scroll2 img {
    vertical-align: bottom;
    border: 1px solid #e5e5e5;
    background: #fff;
}

.kuchicomi-image2 {
    box-shadow: 0 2px 8px rgb(0 0 0 / 10%), 0 4px 8px -4px rgb(0 0 0 / 20%);
}

.horizontal_scroll2 {
    border: none;
    background-color: #DAECF2;
}

.kuchicomi-text2 {
    margin: 0 auto;
    display: block;
    width: 89%;
    font-size: 12px;
    margin-top: 10px;
    line-height: 20px;
    max-height: 150px;
    overflow-y: hidden;
}

.tab-wrap {
    display: flex;
    flex-wrap: wrap;
    margin: 5px 0;
}

.tab-label {
    color: #000;
    font-weight: bold;
    background-color: lightgray;
    text-align: center;
    padding: .5em 1em;
    order: -1;
    position: relative;
    z-index: 1;
    cursor: pointer;
    flex: 1;
    border-radius: 2px;
    position: relative;
}

.tab-label:not(:last-of-type) {
    margin-right: 5px;
}

.align-center {
    text-align: center;
    display: block;
    margin: 0 auto;
}

.tab-content {
    width: 100%;
    height: 0;
    overflow: hidden;
    opacity: 0;
}

.tab-switch:checked+.tab-label {
    color: #fff !important;
    background-color: #055a05;
    /*背景色*/
}

.tab-switch:checked+.tab-label:after {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -15px;
    border: 10px solid transparent;
    border-top: 10px solid #055a05;
    width: 0;
    height: 0;
}

.tab-switch:checked+.tab-label+.tab-content {
    height: auto;
    overflow: auto;
    padding: 15px 0 0 0;
    opacity: 1;
    transition: .5s opacity;
}

.tab-switch {
    display: none;
}

.tab-content td {
    text-align: center;
}

.tab-content .button_solid004 a {
    max-width: 100%;
}

.sp {
    display: none;
}

@media(max-width:768px) {
    .tab-label {
        font-size: 12px;
        line-height: 1.4;
    }

    .sp {
        display: block;
    }

    .tab-content th,
    .tab-content td {
        font-size: 14px;
    }
}

@media(max-width:768px) {
    .fxbutton {
        font-size: 16px;
        height: 60px;
    }

    .fxbutton::before {
        font-size: 23px;
        padding-left: 7px;
        left: 32px;
        top: 37px;
        width: 35px;
        height: 35px;
    }

    .fxbutton::after {
        right: -23px;
        font-size: 24px;
    }

    .c-postTitle__ttl {
        font-size: 18px;
        margin-bottom: 13px;
        padding: 0.7em;
    }

    .sgb-box-simple--title-overwrap .sgb-box-simple__title {
        left: 51px;
        /* top: -14px; */
        color: #5ba9f7;
        top: -13px;
    }

    .plof-flex {
        display: block !important;
    }

    .custom_pic {
        width: 120px;
        margin: 0 auto;
        display: block;
        text-align: center;
        margin-bottom: 10px;
    }

    .scroll-table table th,
    td {
        padding: 10px 5px;
        font-size: 13px;
    }

    .scroll-table table th {
        background-color: #04384c;
        color: #ffffff;
    }
}

.scroll-table table th {
    background-color: #04384c;
    color: #ffffff;
}

.tablesorter {
    text-align: center
}

.tablesorter img {
    padding: 6px 0;
    vertical-align: middle;
    margin-right: 10px;
    margin-bottom: 0 !important
}

.tablesorter th {
    position: relative;
    cursor: pointer;
    text-align: left
}

.tablesorter th::before,
.tablesorter th::after {
    content: '';
    position: absolute;
    z-index: 2;
    right: 7px;
    width: 0;
    height: 0;
    border: 8px dashed;
    border-color: #fff transparent;
    pointer-events: none
}

.tablesorter th::before {
    border-bottom-style: solid;
    border-top: 0;
    top: 22%
}

.tablesorter th::after {
    border-top-style: solid;
    border-bottom: 0;
    bottom: 17%;
}

.tablesorter th.tablesorter-headerAsc:after {
    border: 0
}

.tablesorter th.tablesorter-headerAsc:before {
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%)
}

.tablesorter th.tablesorter-headerDesc:before {
    border: 0
}

.tablesorter th.tablesorter-headerDesc:after {
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%)
}

.tablesorter th.sorter-false:before,
.tablesorter th.sorter-false:after {
    border: 0
}

.swl-inline-list {
    display: inline-block;
    line-height: 1.5;
    padding: 2px 0 2px 1.5em;
    position: relative;
    width: 100%;
    text-align: left;
}

.swell-block-review {
    background: #d5d5d5;
    padding: 13px;
}

.swell-block-review__inner {
    max-width: 100% !important;
}

#symbolList {
    max-height: 300px;
    overflow-y: scroll;
}

.swell-block-review__rating .__stars {
    font-size: 16px !important;
}

.swell-block-review__rating .__str {
    margin-right: 0 !important;
}

.outline-flex {
    display: flex;
    justify-content: center;
    gap: 60px;
}

.rate-star-empty:before,
.icon-star-empty::before {
    color: #cfcfcf;
    content: "\f005";
    font-family: "Font Awesome 5 Free" !important;
    font-weight: 900;
}

.fa-star-half-alt,
.icon-star-half {
    color: #f9a72b;
    font-style: normal;
}

.icon-star-half::before {
    content: "\f5c0";
    font-family: "Font Awesome 5 Free" !important;
    font-weight: 900;
}

.swell-block-review__rating .__label {
    background: linear-gradient(-45deg, transparent 25%, hsla(0, 0%, 100%, .1) 0, hsla(0, 0%, 100%, .1) 50%, transparent 0, transparent 75%, hsla(0, 0%, 100%, .1) 0, hsla(0, 0%, 100%, .1));
    background-color: #111;
    background-size: 6px 6px;
    border-radius: 1px;
    color: #fff;
    display: inline-flex;
    line-height: 1;
    margin: 0 auto .5rem;
    padding: .5em;
}

.sango-list ol,
.sango-list ul {
    padding: 1em 0 1em 2.5em !important;
}

.sango-list li::before {
    left: -1.25em
}

.sango-list li::before {
    left: -1.25em
}

.sango-list.ol-circle li {
    padding-left: 1em
}

.li-accentbdr ol,
.li-accentbdr ul,
.li-mainbdr ol,
.li-mainbdr ul {
    border: solid 2px;
}

.li-dashed ol,
.li-dashed ul {
    border-style: dashed !important
}

.li-double ol,
.li-double ul {
    border-style: double !important;
    border-width: 5px !important
}


.js-scrollable td,
.js-scrollable th {
    background-color: transparent;
    white-space: normal;
    min-width: 166px;
    max-width: 330px
}

@media(max-width:768px) {
    .tab-label {
        font-size: 12px;
        line-height: 1.4;
    }

    .js-scrollable td,
    .js-scrollable th {
        min-width: 126px;
        max-width: 330px
    }

    .sp {
        display: block;
    }

    .tab-content th,
    .tab-content td {
        font-size: 14px;
    }
}

@keyframes scroll-hint-appear {
    0% {
        transform: translateX(40px);
        opacity: 0;
    }

    10% {
        opacity: 1;
    }

    50%,
    100% {
        transform: translateX(-40px);
        opacity: 0;
    }
}

.scroll-hint.is-right-scrollable {
    background: linear-gradient(270deg, rgba(0, 0, 0, .15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0));
}

.scroll-hint.is-right-scrollable.is-left-scrollable {
    background: linear-gradient(90deg, rgba(0, 0, 0, .15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0)), linear-gradient(270deg, rgba(0, 0, 0, .15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0));
}

.scroll-hint.is-left-scrollable {
    background: linear-gradient(90deg, rgba(0, 0, 0, .15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0));
}

.scroll-hint-icon {
    position: absolute;
    top: calc(50% - 25px);
    left: calc(50% - 60px);
    box-sizing: border-box;
    width: 120px;
    height: auto;
    border-radius: 5px;
    transition: opacity .3s;
    opacity: 0;
    background: rgba(0, 0, 0, .7);
    text-align: center;
    padding: 20px 10px 10px 10px;
}

.scroll-hint-icon-wrap {
    /* position: absolute; */
    /* top: 0; */
    /* left: 0; */
    /* width: 100%; */
    /* height: 100%; */
    /* max-height: 100%; */
    /* pointer-events: none; */
}

.scroll-hint-text {
    font-size: 10px;
    color: #FFF;
    margin-top: 5px;
}

.scroll-hint-icon-wrap.is-active .scroll-hint-icon {
    opacity: .8;
}

.scroll-hint-icon:before {
    display: inline-block;
    width: 40px;
    height: 40px;
    color: #FFF;
    vertical-align: middle;
    text-align: center;
    content: "";
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
    background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNS43NyIgaGVpZ2h0PSIzMC41MiIgdmlld0JveD0iMCAwIDI1Ljc3IDMwLjUyIj48dGl0bGU+44Ki44K744OD44OIIDM8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxwYXRoIGQ9Ik0yMS4zMywzMC41Mkg3Ljg1QTEuNTUsMS41NSwwLDAsMSw2LjMsMjlhMTIuNDYsMTIuNDYsMCwwLDAtLjYzLTQuNDIsMjUuMTYsMjUuMTYsMCwwLDAtNC4yNS01bC0uMDYtLjA2QTUsNSwwLDAsMSwwLDE1Ljg2YTMuNjQsMy42NCwwLDAsMSwxLjE3LTIuNjIsMy42MywzLjYzLDAsMCwxLDUuMTQuMDdWMy43N2EzLjc3LDMuNzcsMCwxLDEsNy41NCwwVjguMzNhMy4zNSwzLjM1LDAsMCwxLDEuMjYsMCwzLDMsMCwwLDEsMiwxLjIyLDMuNSwzLjUsMCwwLDEsMi0uMDYsMy4yMSwzLjIxLDAsMCwxLDIsMS41NCwzLjc0LDMuNzQsMCwwLDEsMywuNDdBNC4yMSw0LjIxLDAsMCwxLDI1Ljc0LDE1YzAsLjExLDAsLjI3LDAsLjQ2YTE5LjI2LDE5LjI2LDAsMCwxLS44NCw3Yy0uMTQuMzgtLjM2LjgxLS41NiwxLjIybC0uMTEuMjJjMCwuMDctLjA5LjE0LS4xNC4yMWE3LjEzLDcuMTMsMCwwLDAtMS4xNywyLjE3Yy0uMDYuNTYtLjA2LDIuMTUtLjA1LDIuNzFBMS41NSwxLjU1LDAsMCwxLDIxLjMzLDMwLjUyWk04LjYxLDI4LjIxaDEyYzAtLjcxLDAtMS43MS4wNy0yLjIzYTguNzQsOC43NCwwLDAsMSwxLjU5LTMuMjVsLjA2LS4xMmExMCwxMCwwLDAsMCwuNDYtMSwxNi44LDE2LjgsMCwwLDAsLjctNi4xMmMwLS4yMywwLS40MSwwLS41NGgwYTIsMiwwLDAsMC0uNjQtMS41MiwxLjMzLDEuMzMsMCwwLDAtMS41NS4wOCwxLjEzLDEuMTMsMCwwLDEtMS4xOC4yOCwxLjE1LDEuMTUsMCwwLDEtLjc4LS45NCwxLjI2LDEuMjYsMCwwLDAtLjc1LTEuMTEsMSwxLDAsMCwwLTEuMTEuMjhsLS4xLjFhMS4xNSwxLjE1LDAsMCwxLTEuMTkuMjksMS4xNiwxLjE2LDAsMCwxLS43OC0uOTVjLS4wOS0uNjgtLjIxLS43Ny0uNy0uODdhLjgyLjgyLDAsMCwwLTEsLjQ4LDEuMTYsMS4xNiwwLDAsMS0yLjE2LS41OFYzLjc3YTEuNDYsMS40NiwwLDEsMC0yLjkyLDB2Ny44NWwwLDQuMzNhMS4xNywxLjE3LDAsMCwxLS44MywxLjExLDEuMTUsMS4xNSwwLDAsMS0xLjItLjM1bC0xLS45MWMtLjQ3LS40Mi0uNzMtLjY2LS44NC0uNzdhMS4zNSwxLjM1LDAsMCwwLTItLjEyTDIuNywxNWExLjMyLDEuMzIsMCwwLDAtLjM5LDFBMi41NywyLjU3LDAsMCwwLDMsMTcuODVsMCwwYTI3LjI0LDI3LjI0LDAsMCwxLDQuNyw1LjYyQTEyLjYzLDEyLjYzLDAsMCwxLDguNjEsMjguMjFaTTIzLjIsMjMuMzVaTTYuNTEsMTYuNTlaIiBmaWxsPSIjZmZmIi8+PC9nPjwvZz48L3N2Zz4=);
}

.scroll-hint-icon:after {
    content: "";
    width: 34px;
    height: 14px;
    display: block;
    position: absolute;
    top: 10px;
    left: 50%;
    margin-left: -20px;
    background-repeat: no-repeat;
    background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMy4yOSIgaGVpZ2h0PSIxMi4wMiIgdmlld0JveD0iMCAwIDMzLjI5IDEyLjAyIj48dGl0bGU+44Ki44K744OD44OIIDE8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxsaW5lIHgxPSIxLjg1IiB5MT0iNi4wMSIgeDI9IjEwLjQiIHkyPSI2LjAxIiBmaWxsPSIjZmZmIi8+PHBhdGggZD0iTTEwLjQsNy4xN0gxLjg1YTEuMTYsMS4xNiwwLDEsMSwwLTIuMzFIMTAuNGExLjE2LDEuMTYsMCwxLDEsMCwyLjMxWiIgZmlsbD0iI2ZmZiIvPjxwYXRoIGQ9Ik03LjQsMTJhMS4xNSwxLjE1LDAsMCwxLS43Mi0uMjVsLTYuMjUtNUExLjIsMS4yLDAsMCwxLDAsNS44NywxLjE0LDEuMTQsMCwwLDEsLjQ2LDVMNi43LjIzQTEuMTYsMS4xNiwwLDAsMSw4LjEsMi4wOEwzLDUuOTEsOC4xMiwxMEExLjE2LDEuMTYsMCwwLDEsNy40LDEyWiIgZmlsbD0iI2ZmZiIvPjxsaW5lIHgxPSIzMS40NSIgeTE9IjYuMDEiIHgyPSIyMi44OSIgeTI9IjYuMDEiIGZpbGw9IiNmZmYiLz48cGF0aCBkPSJNMzEuNDUsNy4xN0gyMi44OWExLjE2LDEuMTYsMCwxLDEsMC0yLjMxaDguNTZhMS4xNiwxLjE2LDAsMCwxLDAsMi4zMVoiIGZpbGw9IiNmZmYiLz48cGF0aCBkPSJNMjUuOSwxMmExLjE4LDEuMTgsMCwwLDEtLjkxLS40M0ExLjE3LDEuMTcsMCwwLDEsMjUuMTcsMTBsNS4wOS00LjA1TDI1LjIsMi4wOEExLjE2LDEuMTYsMCwwLDEsMjYuNTkuMjNMMzIuODQsNWExLjE2LDEuMTYsMCwwLDEsLjQ1LjkxLDEuMTQsMS4xNCwwLDAsMS0uNDMuOTJsLTYuMjQsNUExLjE3LDEuMTcsMCwwLDEsMjUuOSwxMloiIGZpbGw9IiNmZmYiLz48L2c+PC9nPjwvc3ZnPg==);
    opacity: 0;
    transition-delay: 2.4s;
}

.scroll-hint-icon-wrap.is-active .scroll-hint-icon:after {
    opacity: 1;
}

.scroll-hint-icon-wrap.is-active .scroll-hint-icon:before {
    animation: scroll-hint-appear 1.2s linear;
    animation-iteration-count: 2;
}

.scroll-hint-icon-white {
    background-color: #FFF;
    box-shadow: 0 4px 5px rgba(0, 0, 0, .4);
}

.scroll-hint-icon-white:before {
    background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNS43NyIgaGVpZ2h0PSIzMC41MiIgdmlld0JveD0iMCAwIDI1Ljc3IDMwLjUyIj48dGl0bGU+44Ki44K744OD44OIIDQ8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxwYXRoIGQ9Ik0yMS4zMywzMC41Mkg3Ljg1QTEuNTUsMS41NSwwLDAsMSw2LjMsMjlhMTIuNDYsMTIuNDYsMCwwLDAtLjYzLTQuNDIsMjUuMTYsMjUuMTYsMCwwLDAtNC4yNS01bC0uMDYtLjA2QTUsNSwwLDAsMSwwLDE1Ljg2YTMuNjQsMy42NCwwLDAsMSwxLjE3LTIuNjIsMy42MywzLjYzLDAsMCwxLDUuMTQuMDdWMy43N2EzLjc3LDMuNzcsMCwxLDEsNy41NCwwVjguMzNhMy4zNSwzLjM1LDAsMCwxLDEuMjYsMCwzLDMsMCwwLDEsMiwxLjIyLDMuNSwzLjUsMCwwLDEsMi0uMDYsMy4yMSwzLjIxLDAsMCwxLDIsMS41NCwzLjc0LDMuNzQsMCwwLDEsMywuNDdBNC4yMSw0LjIxLDAsMCwxLDI1Ljc0LDE1YzAsLjExLDAsLjI3LDAsLjQ2YTE5LjI2LDE5LjI2LDAsMCwxLS44NCw3Yy0uMTQuMzgtLjM2LjgxLS41NiwxLjIybC0uMTEuMjJjMCwuMDctLjA5LjE0LS4xNC4yMWE3LjEzLDcuMTMsMCwwLDAtMS4xNywyLjE3Yy0uMDYuNTYtLjA2LDIuMTUtLjA1LDIuNzFBMS41NSwxLjU1LDAsMCwxLDIxLjMzLDMwLjUyWk04LjYxLDI4LjIxaDEyYzAtLjcxLDAtMS43MS4wNy0yLjIzYTguNzQsOC43NCwwLDAsMSwxLjU5LTMuMjVsLjA2LS4xMmExMCwxMCwwLDAsMCwuNDYtMSwxNi44LDE2LjgsMCwwLDAsLjctNi4xMmMwLS4yMywwLS40MSwwLS41NGgwYTIsMiwwLDAsMC0uNjQtMS41MiwxLjMzLDEuMzMsMCwwLDAtMS41NS4wOCwxLjEzLDEuMTMsMCwwLDEtMS4xOC4yOCwxLjE1LDEuMTUsMCwwLDEtLjc4LS45NCwxLjI2LDEuMjYsMCwwLDAtLjc1LTEuMTEsMSwxLDAsMCwwLTEuMTEuMjhsLS4xLjFhMS4xNSwxLjE1LDAsMCwxLTEuMTkuMjksMS4xNiwxLjE2LDAsMCwxLS43OC0uOTVjLS4wOS0uNjgtLjIxLS43Ny0uNy0uODdhLjgyLjgyLDAsMCwwLTEsLjQ4LDEuMTYsMS4xNiwwLDAsMS0yLjE2LS41OFYzLjc3YTEuNDYsMS40NiwwLDEsMC0yLjkyLDB2Ny44NWwwLDQuMzNhMS4xNywxLjE3LDAsMCwxLS44MywxLjExLDEuMTUsMS4xNSwwLDAsMS0xLjItLjM1bC0xLS45MWMtLjQ3LS40Mi0uNzMtLjY2LS44NC0uNzdhMS4zNSwxLjM1LDAsMCwwLTItLjEyTDIuNywxNWExLjMyLDEuMzIsMCwwLDAtLjM5LDFBMi41NywyLjU3LDAsMCwwLDMsMTcuODVsMCwwYTI3LjI0LDI3LjI0LDAsMCwxLDQuNyw1LjYyQTEyLjYzLDEyLjYzLDAsMCwxLDguNjEsMjguMjFaTTIzLjIsMjMuMzVaTTYuNTEsMTYuNTlaIi8+PC9nPjwvZz48L3N2Zz4=);
}

.scroll-hint-icon-white:after {
    background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMy4yOSIgaGVpZ2h0PSIxMi4wMiIgdmlld0JveD0iMCAwIDMzLjI5IDEyLjAyIj48dGl0bGU+44Ki44K744OD44OIIDI8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxsaW5lIHgxPSIxLjg1IiB5MT0iNi4wMSIgeDI9IjEwLjQiIHkyPSI2LjAxIi8+PHBhdGggZD0iTTEwLjQsNy4xN0gxLjg1YTEuMTYsMS4xNiwwLDEsMSwwLTIuMzFIMTAuNGExLjE2LDEuMTYsMCwxLDEsMCwyLjMxWiIvPjxwYXRoIGQ9Ik03LjQsMTJhMS4xNSwxLjE1LDAsMCwxLS43Mi0uMjVsLTYuMjUtNUExLjIsMS4yLDAsMCwxLDAsNS44NywxLjE0LDEuMTQsMCwwLDEsLjQ2LDVMNi43LjIzQTEuMTYsMS4xNiwwLDAsMSw4LjEsMi4wOEwzLDUuOTEsOC4xMiwxMEExLjE2LDEuMTYsMCwwLDEsNy40LDEyWiIvPjxsaW5lIHgxPSIzMS40NSIgeTE9IjYuMDEiIHgyPSIyMi44OSIgeTI9IjYuMDEiLz48cGF0aCBkPSJNMzEuNDUsNy4xN0gyMi44OWExLjE2LDEuMTYsMCwxLDEsMC0yLjMxaDguNTZhMS4xNiwxLjE2LDAsMCwxLDAsMi4zMVoiLz48cGF0aCBkPSJNMjUuOSwxMmExLjE4LDEuMTgsMCwwLDEtLjkxLS40M0ExLjE3LDEuMTcsMCwwLDEsMjUuMTcsMTBsNS4wOS00LjA1TDI1LjIsMi4wOEExLjE2LDEuMTYsMCwwLDEsMjYuNTkuMjNMMzIuODQsNWExLjE2LDEuMTYsMCwwLDEsLjQ1LjkxLDEuMTQsMS4xNCwwLDAsMS0uNDMuOTJsLTYuMjQsNUExLjE3LDEuMTcsMCwwLDEsMjUuOSwxMloiLz48L2c+PC9nPjwvc3ZnPg==);
}

.scroll-hint-icon-white .scroll-hint-text {
    color: #000;
}

.button_solid004 span {
    position: relative;
    display: inline-flex;
    justify-content: space-around;
    align-items: center;
    margin: 10px auto;
    max-width: 240px;
    padding: .5em 1em;
    color: #FFF !important;
    transition: 0.3s ease-in-out;
    font-weight: 600;
    background: #6bb6ff;
    border-radius: 8px;
    border-bottom: solid 5px #1d7fde;
}


.c-balloon {
    align-content: flex-start;
    display: flex;
    justify-content: space-between;
    position: relative
}

.c-balloon.-bln-right {
    flex-direction: row-reverse
}

.c-balloon__icon {
    flex-shrink: 0;
    position: relative;
    text-align: center;
    width: 60px
}

.c-balloon__iconImg {
    display: block;
    margin: 0 auto;
    -o-object-fit: cover;
    object-fit: cover
}

.c-balloon .c-balloon__iconImg {
    height: 60px;
    width: 60px
}

.-circle>.c-balloon__iconImg {
    border: 2px solid #ececec;
    border-radius: 50%
}

.c-balloon__iconName {
    display: block;
    font-size: 10px;
    line-height: 1;
    opacity: .8;
    padding-top: 4px
}

.c-balloon__body {
    align-items: flex-start;
    display: flex;
    flex-basis: 100%;
    padding: 4px 24px
}

.c-balloon__body.-thinking {
    padding-top: 8px
}

.-bln-left .c-balloon__body {
    justify-content: flex-start
}

.-bln-right .c-balloon__body {
    justify-content: flex-end
}

.c-balloon__text {
    border-radius: 8px;
    color: #333;
    line-height: 1.6;
    max-width: 560px;
    padding: 1em;
    position: relative
}

.-border-on .c-balloon__text {
    border-style: solid;
    border-width: 1px
}

.c-balloon .c-balloon__text>p {
    margin-bottom: 0;
    margin-top: 0
}

.c-balloon__shapes {
    background-color: inherit;
    border-color: inherit;
    height: 0;
    position: absolute;
    top: 16px;
    width: 0;
    z-index: 1
}

.c-balloon__text {
    background: #f7f7f7;
    /* border-color:#ccc; */
}

.c-balloon__before {
    border-right-color: #f7f7f7
}

.c-balloon__after,
.c-balloon__before {
    border-color: transparent;
    border-style: solid;
    display: block;
    height: 0;
    position: absolute;
    top: 0;
    width: 0
}

.-speaking .c-balloon__after,
.-speaking .c-balloon__before {
    border-width: 8px 10px 8px 0;
    left: -10px;
}

.post_content th {
    background: #004c8d !important;
    color: #fff !important;
    vertical-align: middle;
}

.main-bc {
    background: #004c8d !important;
}

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

.cap_box_ttl {
    align-items: center;
    background-color: #082d70;
    color: #fff;
    display: flex;
    gap: .5em;
    justify-content: center;
    line-height: 1.5;
    margin-bottom: 0 !important;
    padding: .5em;
    position: relative;
    text-align: center;
    z-index: 1;
}

.cap_box_ttl i {
    font-size: -.25em;
}

.cap_box_ttl i:not(.-right) {
    margin-left: -.25em;
}

.cap_box_ttl i.-right {
    margin-left: .4em;
}

.cap_box_ttl svg {
    height: var(--the-icon-size);
    width: var(--the-icon-size);
}

.cap_box_ttl svg:not(.-right) {
    margin-left: -.25em;
}

.cap_box_ttl svg.-right {
    margin-right: -.25em;
}

.cap_box_content {
    background-color: white;
    border: 1px solid #082d70;
    clear: both;
    margin-top: -2px;
    padding: 1.25em;
    position: relative;
    z-index: 0;
}


.xm-tabs-reviews {
    max-width: 100%;
    margin: 2rem auto;
    padding: 1rem;
    font-family: 'Hiragino Sans', 'Hiragino Kaku Gothic ProN', 'Noto Sans JP', sans-serif;
    color: #2d3748;
    overflow: hidden;
}

.xm-tabs-reviews__header {
    text-align: center;
    margin-bottom: 2rem;
}

.xm-tabs-reviews__title {
    font-size: 1.8rem;
    font-weight: 700;
    margin-bottom: 0.75rem;
    padding-bottom: 0.5rem;
    position: relative;
    display: inline-block;
}

.xm-tabs-reviews__title:after {
    content: '';
    position: absolute;
    left: 25%;
    bottom: 0;
    width: 50%;
    height: 3px;
    background: linear-gradient(90deg, rgba(255, 185, 0, 1) 0%, rgba(255, 139, 0, 1) 100%);
    border-radius: 2px;
}

.xm-tabs-reviews__subtitle {
    font-size: 0.95rem;
    color: #718096;
    max-width: 600px;
    margin: 0 auto;
}

.xm-tabs-reviews__container {
    position: relative;
}

.xm-tabs-reviews__tabs {
    display: flex;
    border-bottom: 1px solid #e2e8f0;
    margin-bottom: 1.5rem;
    overflow-x: auto;
    scrollbar-width: none;
    -ms-overflow-style: none;
}

.xm-tabs-reviews__tabs::-webkit-scrollbar {
    display: none;
}

.xm-tabs-reviews__tab {
    flex: 0 0 auto;
    padding: 0.75rem 1.25rem;
    white-space: nowrap;
    font-weight: 500;
    color: #718096;
    border-bottom: 2px solid transparent;
    cursor: pointer;
    transition: all 0.2s ease;
}

.xm-tabs-reviews__tab.active {
    color: #ff9d00;
    border-bottom-color: #ff9d00;
}

.xm-tabs-reviews__content {
    overflow: hidden;
}

.xm-tabs-reviews__panel {
    display: none;
}

.xm-tabs-reviews__panel.active {
    display: block;
}

.xm-tabs-reviews__cards {
    display: flex;
    gap: 1rem;
    overflow-x: auto;
    padding: 0.5rem 0.25rem 1.5rem;
    scroll-snap-type: x mandatory;
    scrollbar-width: thin;
    scrollbar-color: #cbd5e0 #f7fafc;
}

.xm-tabs-reviews__cards::-webkit-scrollbar {
    height: 6px;
}

.xm-tabs-reviews__cards::-webkit-scrollbar-track {
    background: #f7fafc;
    border-radius: 10px;
}

.xm-tabs-reviews__cards::-webkit-scrollbar-thumb {
    background-color: #cbd5e0;
    border-radius: 10px;
}

.xm-tabs-reviews__card {
    flex: 0 0 300px;
    scroll-snap-align: start;
    background-color: #fff;
    border-radius: 10px;
    padding: 1.5rem;
    border: 1px solid #edf2f7;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
    position: relative;
}

.xm-tabs-reviews__card:hover {
    transform: translateY(-5px);
    box-shadow: 0 12px 24px rgba(0, 0, 0, 0.1);
}

.xm-tabs-reviews__tag {
    position: absolute;
    top: 1rem;
    right: 1rem;
    background: #fffaf0;
    color: #ff9d00;
    font-size: 0.7rem;
    font-weight: 500;
    padding: 0.25rem 0.75rem;
    border-radius: 20px;
    border: 1px solid #feebc8;
}

.xm-tabs-reviews__profile {
    display: flex;
    align-items: center;
    margin-bottom: 1rem;
    padding-bottom: 1rem;
    border-bottom: 1px dashed #edf2f7;
}

.xm-tabs-reviews__avatar {
    width: 52px;
    height: 52px;
    border-radius: 50%;
    overflow: hidden;
    margin-right: 1rem;
    background-color: #f7fafc;
    border: 2px solid #edf2f7;
}

.xm-tabs-reviews__avatar img {
    width: 100%;
    height: auto;
}

.xm-tabs-reviews__user {
    flex: 1;
}

.xm-tabs-reviews__name {
    font-weight: 600;
    margin-bottom: 0.25rem;
    color: #2d3748;
    font-size: 1rem;
}

.xm-tabs-reviews__meta {
    display: flex;
    flex-wrap: wrap;
    font-size: 0.8rem;
    color: #718096;
}

.xm-tabs-reviews__meta span:not(:last-child):after {
    content: '•';
    margin: 0 0.5rem;
}

.xm-tabs-reviews__stars {
    display: flex;
    align-items: center;
    margin: 0.75rem 0;
}

.xm-tabs-reviews__stars-value {
    font-size: 0.9rem;
    font-weight: 600;
    color: #ff9d00;
    margin-right: 0.5rem;
}

.xm-tabs-reviews__stars-icons {
    display: flex;
    color: #ff9d00;
    font-size: 0.85rem;
}

.xm-tabs-reviews__comment {
    line-height: 1.6;
    color: #4a5568;
    font-size: 0.9rem;
    margin-bottom: 1rem;
}

.xm-tabs-reviews__features {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-top: 1rem;
}

.xm-tabs-reviews__feature {
    background-color: #f7fafc;
    color: #4a5568;
    font-size: 0.75rem;
    padding: 0.2rem 0.75rem;
    border-radius: 5px;
    border: 1px solid #edf2f7;
}

.xm-tabs-reviews__controls {
    display: flex;
    justify-content: center;
    gap: 0.75rem;
    margin-top: 1.5rem;
}

.xm-tabs-reviews__btn {
    background-color: white;
    border: 1px solid #edf2f7;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s ease;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.05);
    font-size: 1.2rem;
    line-height: 1;
    color: #718096;
}

.xm-tabs-reviews__btn:hover {
    background-color: #fffaf0;
    border-color: #feebc8;
    color: #ff9d00;
}