﻿/* ==============================
   main_style-inline-css
   ============================== */
.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 8px;
   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
}

ol,
ul {
   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";
   margin-right: .4em
}

.c-categoryList {
   color: var(--color_main)
}

.c-categoryList:before {
   content: "\e92f";
   margin-right: .4em
}

.c-tagList:before {
   color: inherit;
   content: "\e935";
   margin-right: .4em
}

.c-categoryList__link,
.c-tagList__link,
.c-taxList__link {
   display: block;
   line-height: 1;
   margin: .25em .25em .25em 0;
   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(https://www.marubeni-idigio.com/insight-hub/wp-content/themes/swell/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
}

.c-postTimes__modified,
.c-postTimes__posted {
   margin-right: .4em
}

.c-postTimes__modified:before,
.c-postTimes__posted:before {
   margin-right: .25em;
   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: "\e923";
   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;
   list-style: none;
   overflow: hidden;
   width: 100%
}

.p-breadcrumb__item {
   align-items: center;
   display: inline-flex;
   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, 0)/2);
      width: calc(100vw - var(--swl-scrollbar_width, 0))
   }
}

.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: var(--thead-color--bg, var(--color_main));
   color: var(--thead-color--txt, #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 ul {
   list-style: disc
}

.post_content ol {
   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 0
}

.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: "\e923"
}

.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
}

.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>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%
}
.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.is-resized {
   display: block
}

.wp-block-image>figure {
   display: block !important
}

.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 .lb-img-wrap,.size_s img,
img.size_s {
   display: block;
   margin: auto;
   max-width: calc(100% - var(--img-space--s, 8%)*2)
}

.size_xs .lb-img-wrap,.size_xs img,
img.size_xs {
   display: block;
   margin: auto;
   max-width: calc(100% - var(--img-space--xs, 16%)*2)
}

.size_s .lb-img-wrap {
   display: block;
   margin: auto;
   max-width: calc(100% - var(--img-space--s, 8%)*2)
}

.size_xs .lb-img-wrap {
   display: block;
   margin: auto;
   max-width: calc(100% - var(--img-space--xs, 16%)*2)
}

.size_s .lb-img-wrap img, .size_xs .lb-img-wrap img {
   max-width: 100%
}

.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: "\e923";
   -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 {
   color: var(--color_list_check);
   content: "\e923"
}

.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_] a {
   background: var(--the-btn-bg);
   border-radius: var(--the-btn-radius, 0);
   display: inline-block;
   letter-spacing: var(--swl-letter_spacing, 1px);
   line-height: 1.5;
   margin: 0;
   min-width: var(--the-min-width);
   padding: var(--the-padding);
   position: relative;
   text-decoration: none;
   width: var(--the-width)
}

[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-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
}

@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%
   }
}

.has-text-align-center {
   text-align: center
}

.has-text-align-left {
   text-align: left
}

.has-text-align-right {
   text-align: right
}
