@charset "UTF-8";

.slick-slider {
    position: relative;
    display: block;
    box-sizing: border-box;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
    touch-action: pan-y;
    -webkit-tap-highlight-color: transparent
}

.slick-list {
    position: relative;
    display: block;
    overflow: hidden;
    margin: 0;
    padding: 0
}

.slick-list:focus {
    outline: 0
}

.slick-list.dragging {
    cursor: pointer;
    cursor: hand
}

.slick-slider .slick-list,
.slick-slider .slick-track {
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    -o-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
}

.slick-track {
    position: relative;
    top: 0;
    left: 0;
    display: block;
    margin-left: auto;
    margin-right: auto
}

.slick-track:after,
.slick-track:before {
    display: table;
    content: ''
}

.slick-track:after {
    clear: both
}

.slick-loading .slick-track {
    visibility: hidden
}

.slick-slide {
    display: none;
    float: left;
    height: 100%;
    min-height: 1px
}

[dir=rtl] .slick-slide {
    float: right
}

.slick-slide img {
    display: block
}

.slick-slide.slick-loading img {
    display: none
}

.slick-slide.dragging img {
    pointer-events: none
}

.slick-initialized .slick-slide {
    display: block
}

.slick-loading .slick-slide {
    visibility: hidden
}

.slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent
}

.slick-arrow.slick-hidden {
    display: none
}

@font-face {
    font-family: swiper-icons;
    src: url('data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA');
    font-weight: 400;
    font-style: normal
}

:root {
    --swiper-theme-color: #007aff
}

.swiper {
    margin-left: auto;
    margin-right: auto;
    position: relative;
    overflow: hidden;
    list-style: none;
    padding: 0;
    z-index: 1
}

.swiper-vertical>.swiper-wrapper {
    flex-direction: column
}

.swiper-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: flex;
    transition-property: transform;
    box-sizing: content-box
}

.swiper-android .swiper-slide,
.swiper-wrapper {
    transform: translate3d(0, 0, 0)
}

.swiper-pointer-events {
    touch-action: pan-y
}

.swiper-pointer-events.swiper-vertical {
    touch-action: pan-x
}

.swiper-slide {
    flex-shrink: 0;
    width: 100%;
    height: 100%;
    position: relative;
    transition-property: transform
}

.swiper-slide-invisible-blank {
    visibility: hidden
}

.swiper-autoheight,
.swiper-autoheight .swiper-slide {
    height: auto
}

.swiper-autoheight .swiper-wrapper {
    align-items: flex-start;
    transition-property: transform, height
}

.swiper-3d,
.swiper-3d.swiper-css-mode .swiper-wrapper {
    perspective: 1200px
}

.swiper-3d .swiper-cube-shadow,
.swiper-3d .swiper-slide,
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-wrapper {
    transform-style: preserve-3d
}

.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 10
}

.swiper-3d .swiper-slide-shadow {
    background: rgba(0, 0, 0, .15)
}

.swiper-3d .swiper-slide-shadow-left {
    background-image: linear-gradient(to left, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0))
}

.swiper-3d .swiper-slide-shadow-right {
    background-image: linear-gradient(to right, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0))
}

.swiper-3d .swiper-slide-shadow-top {
    background-image: linear-gradient(to top, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0))
}

.swiper-3d .swiper-slide-shadow-bottom {
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0))
}

.swiper-css-mode>.swiper-wrapper {
    overflow: auto;
    scrollbar-width: none;
    -ms-overflow-style: none
}

.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar {
    display: none
}

.swiper-css-mode>.swiper-wrapper>.swiper-slide {
    scroll-snap-align: start start
}

.swiper-horizontal.swiper-css-mode>.swiper-wrapper {
    scroll-snap-type: x mandatory
}

.swiper-vertical.swiper-css-mode>.swiper-wrapper {
    scroll-snap-type: y mandatory
}

.swiper-centered>.swiper-wrapper::before {
    content: '';
    flex-shrink: 0;
    order: 9999
}

.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child {
    margin-inline-start: var(--swiper-centered-offset-before)
}

.swiper-centered.swiper-horizontal>.swiper-wrapper::before {
    height: 100%;
    min-height: 1px;
    width: var(--swiper-centered-offset-after)
}

.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child {
    margin-block-start: var(--swiper-centered-offset-before)
}

.swiper-centered.swiper-vertical>.swiper-wrapper::before {
    width: 100%;
    min-width: 1px;
    height: var(--swiper-centered-offset-after)
}

.swiper-centered>.swiper-wrapper>.swiper-slide {
    scroll-snap-align: center center
}

.swiper-virtual.swiper-css-mode .swiper-wrapper::after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    pointer-events: none
}

.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after {
    height: 1px;
    width: var(--swiper-virtual-size)
}

.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after {
    width: 1px;
    height: var(--swiper-virtual-size)
}

:root {
    --swiper-navigation-size: 44px
}

.swiper-button-next,
.swiper-button-prev {
    position: absolute;
    top: 50%;
    width: calc(var(--swiper-navigation-size)/ 44 * 27);
    height: var(--swiper-navigation-size);
    margin-top: calc(0px - (var(--swiper-navigation-size)/ 2));
    z-index: 10;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--swiper-navigation-color, var(--swiper-theme-color))
}

.swiper-button-next.swiper-button-disabled,
.swiper-button-prev.swiper-button-disabled {
    opacity: .35;
    cursor: auto;
    pointer-events: none
}

.swiper-button-next:after,
.swiper-button-prev:after {
    font-family: swiper-icons;
    font-size: var(--swiper-navigation-size);
    text-transform: none !important;
    letter-spacing: 0;
    text-transform: none;
    font-variant: initial;
    line-height: 1
}

.swiper-button-prev,
.swiper-rtl .swiper-button-next {
    left: 10px;
    right: auto
}

.swiper-button-prev:after,
.swiper-rtl .swiper-button-next:after {
    content: 'prev'
}

.swiper-button-next,
.swiper-rtl .swiper-button-prev {
    right: 10px;
    left: auto
}

.swiper-button-next:after,
.swiper-rtl .swiper-button-prev:after {
    content: 'next'
}

.swiper-button-lock {
    display: none
}

.swiper-pagination {
    position: absolute;
    text-align: center;
    transition: .3s opacity;
    transform: translate3d(0, 0, 0);
    z-index: 10
}

.swiper-pagination.swiper-pagination-hidden {
    opacity: 0
}

.swiper-horizontal>.swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal,
.swiper-pagination-custom,
.swiper-pagination-fraction {
    bottom: 10px;
    left: 0;
    width: 100%
}

.swiper-pagination-bullets-dynamic {
    overflow: hidden;
    font-size: 0
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transform: scale(.33);
    position: relative
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
    transform: scale(1)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
    transform: scale(1)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
    transform: scale(.66)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
    transform: scale(.33)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
    transform: scale(.66)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
    transform: scale(.33)
}

.swiper-pagination-bullet {
    width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));
    height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));
    display: inline-block;
    border-radius: 50%;
    background: var(--swiper-pagination-bullet-inactive-color, #000);
    opacity: var(--swiper-pagination-bullet-inactive-opacity, .2)
}

button.swiper-pagination-bullet {
    border: none;
    margin: 0;
    padding: 0;
    box-shadow: none;
    -webkit-appearance: none;
    appearance: none
}

.swiper-pagination-clickable .swiper-pagination-bullet {
    cursor: pointer
}

.swiper-pagination-bullet:only-child {
    display: none !important
}

.swiper-pagination-bullet-active {
    opacity: var(--swiper-pagination-bullet-opacity, 1);
    background: var(--swiper-pagination-color, var(--swiper-theme-color))
}

.swiper-pagination-vertical.swiper-pagination-bullets,
.swiper-vertical>.swiper-pagination-bullets {
    right: 10px;
    top: 50%;
    transform: translate3d(0, -50%, 0)
}

.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0;
    display: block
}

.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    top: 50%;
    transform: translateY(-50%);
    width: 8px
}

.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    display: inline-block;
    transition: .2s transform, .2s top
}

.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px)
}

.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap
}

.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transition: .2s transform, .2s left
}

.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transition: .2s transform, .2s right
}

.swiper-pagination-progressbar {
    background: rgba(0, 0, 0, .25);
    position: absolute
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    background: var(--swiper-pagination-color, var(--swiper-theme-color));
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    transform: scale(0);
    transform-origin: left top
}

.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    transform-origin: right top
}

.swiper-horizontal>.swiper-pagination-progressbar,
.swiper-pagination-progressbar.swiper-pagination-horizontal,
.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,
.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
    width: 100%;
    height: 4px;
    left: 0;
    top: 0
}

.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite,
.swiper-pagination-progressbar.swiper-pagination-vertical,
.swiper-vertical>.swiper-pagination-progressbar {
    width: 4px;
    height: 100%;
    left: 0;
    top: 0
}

.swiper-pagination-lock {
    display: none
}

.swiper-scrollbar {
    border-radius: 10px;
    position: relative;
    -ms-touch-action: none;
    background: rgba(0, 0, 0, .1)
}

.swiper-horizontal>.swiper-scrollbar {
    position: absolute;
    left: 1%;
    bottom: 3px;
    z-index: 50;
    height: 5px;
    width: 98%
}

.swiper-vertical>.swiper-scrollbar {
    position: absolute;
    right: 3px;
    top: 1%;
    z-index: 50;
    width: 5px;
    height: 98%
}

.swiper-scrollbar-drag {
    height: 100%;
    width: 100%;
    position: relative;
    background: rgba(0, 0, 0, .5);
    border-radius: 10px;
    left: 0;
    top: 0
}

.swiper-scrollbar-cursor-drag {
    cursor: move
}

.swiper-scrollbar-lock {
    display: none
}

.swiper-zoom-container {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center
}

.swiper-zoom-container>canvas,
.swiper-zoom-container>img,
.swiper-zoom-container>svg {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain
}

.swiper-slide-zoomed {
    cursor: move
}

.swiper-lazy-preloader {
    width: 42px;
    height: 42px;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -21px;
    margin-top: -21px;
    z-index: 10;
    transform-origin: 50%;
    animation: swiper-preloader-spin 1s infinite linear;
    box-sizing: border-box;
    border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
    border-radius: 50%;
    border-top-color: transparent
}

.swiper-lazy-preloader-white {
    --swiper-preloader-color: #fff
}

.swiper-lazy-preloader-black {
    --swiper-preloader-color: #000
}

@keyframes swiper-preloader-spin {
    100% {
        transform: rotate(360deg)
    }
}

.swiper .swiper-notification {
    position: absolute;
    left: 0;
    top: 0;
    pointer-events: none;
    opacity: 0;
    z-index: -1000
}

.swiper-free-mode>.swiper-wrapper {
    transition-timing-function: ease-out;
    margin: 0 auto
}

.swiper-grid>.swiper-wrapper {
    flex-wrap: wrap
}

.swiper-grid-column>.swiper-wrapper {
    flex-wrap: wrap;
    flex-direction: column
}

.swiper-fade.swiper-free-mode .swiper-slide {
    transition-timing-function: ease-out
}

.swiper-fade .swiper-slide {
    pointer-events: none;
    transition-property: opacity
}

.swiper-fade .swiper-slide .swiper-slide {
    pointer-events: none
}

.swiper-fade .swiper-slide-active,
.swiper-fade .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.swiper-cube {
    overflow: visible
}

.swiper-cube .swiper-slide {
    pointer-events: none;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    z-index: 1;
    visibility: hidden;
    transform-origin: 0 0;
    width: 100%;
    height: 100%
}

.swiper-cube .swiper-slide .swiper-slide {
    pointer-events: none
}

.swiper-cube.swiper-rtl .swiper-slide {
    transform-origin: 100% 0
}

.swiper-cube .swiper-slide-active,
.swiper-cube .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.swiper-cube .swiper-slide-active,
.swiper-cube .swiper-slide-next,
.swiper-cube .swiper-slide-next+.swiper-slide,
.swiper-cube .swiper-slide-prev {
    pointer-events: auto;
    visibility: visible
}

.swiper-cube .swiper-slide-shadow-bottom,
.swiper-cube .swiper-slide-shadow-left,
.swiper-cube .swiper-slide-shadow-right,
.swiper-cube .swiper-slide-shadow-top {
    z-index: 0;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.swiper-cube .swiper-cube-shadow {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    opacity: .6;
    z-index: 0
}

.swiper-cube .swiper-cube-shadow:before {
    content: '';
    background: #000;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    filter: blur(50px)
}

.swiper-flip {
    overflow: visible
}

.swiper-flip .swiper-slide {
    pointer-events: none;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    z-index: 1
}

.swiper-flip .swiper-slide .swiper-slide {
    pointer-events: none
}

.swiper-flip .swiper-slide-active,
.swiper-flip .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.swiper-flip .swiper-slide-shadow-bottom,
.swiper-flip .swiper-slide-shadow-left,
.swiper-flip .swiper-slide-shadow-right,
.swiper-flip .swiper-slide-shadow-top {
    z-index: 0;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.swiper-creative .swiper-slide {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    overflow: hidden;
    transition-property: transform, opacity, height
}

.swiper-cards {
    overflow: visible
}

.swiper-cards .swiper-slide {
    transform-origin: center bottom;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    overflow: hidden
}

html {
    font-size: 62.5%
}

body {
    font-family: "Noto Sans JP", sans-serif;
    height: 100%;
    background-color: #fff;
    font-size: 1.4rem;
    line-height: 1.4;
    width: 100%;
    line-height: 1.8;
    word-wrap: break-word;
    position: relative
}

.clearfix:after {
    visibility: hidden;
    display: block;
    font-size: 0;
    content: " ";
    clear: both;
    height: 0
}

.clearfix {
    display: inline-block
}

.mt30 {
    margin-top: 30px
}

* html .clearfix {
    height: 1%
}

.center {
    text-align: center
}

.clearfix {
    display: block
}

* {
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

a:link {
    text-decoration: none
}

a {
    display: block;
    -webkit-transition: all .3s ease;
    -o-transition: all .3s ease;
    transition: all .3s ease;
    color: #333;
    font-size: 1.4rem
}

a:hover {
    opacity: .7
}

img {
    max-width: 100%
}

p {
    line-height: 1.5
}

a,
article,
b,
blockquote,
caption,
code,
dd,
div,
dl,
dt,
em,
figcaption,
figure,
form,
h1,
h2,
h3,
h4,
h5,
h6,
i,
input,
li,
ol,
p,
pre,
select,
span,
strong,
table,
tbody,
td,
textarea,
tfoot,
th,
thead,
tr,
u,
ul {
    font-size: 1.4rem
}

::selection {
    background: #ef5153
}

::-moz-selection {
    background: #ef5153
}

code {
    font-weight: 400
}

em {
    font-style: italic
}

abbr[title],
dfn[title] {
    border-bottom: none;
    text-decoration: unset
}

.sp_area {
    width: 100%;
    height: auto;
    margin-bottom: 10px
}

.sp_area p {
    margin-bottom: 10px
}

ol.sp_ol,
ul.sp_ul {
    background-color: #f9f9f9;
    padding-top: 20px;
    padding-left: 40px;
    padding-bottom: 20px;
    border: 1px solid #f2f2f2;
    border-radius: 5px;
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .02);
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, .02)
}

ul.sp_ul01 {
    list-style: disc;
    margin-left: 20px
}

code {
    background-color: #eee;
    padding: 0 5px 0;
    border-radius: 2px;
    margin: 0 5px;
    border: solid 1px #bbb;
    color: #333;
    font-size: 1.4rem;
    line-height: 39px
}

.exhibition p {
    font-size: 1.2rem;
    color: #999
}

.exhibition p a {
    font-size: 1.2rem;
    color: #999
}

blockquote {
    padding: 30px;
    border: 1px solid #666;
    position: relative;
    margin-bottom: 30px
}

blockquote p {
    margin-bottom: 0 !important
}

blockquote:before {
    content: "\F10D";
    font-family: fontello;
    font-size: 2rem;
    width: 2rem;
    height: 2rem;
    background: #fff;
    top: -6px;
    left: -6px;
    position: absolute;
    color: #666
}

blockquote:after {
    content: "\F10E";
    font-family: fontello;
    font-size: 2rem;
    width: 2rem;
    height: 2rem;
    background: #fff;
    bottom: -6px;
    right: -6px;
    position: absolute;
    color: #666
}

.textlimit {
    overflow: hidden;
    -o-text-overflow: ellipsis;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    height: 100%
}

.textline__1 {
    line-height: 20px;
    max-height: 20px;
    -webkit-line-clamp: 1
}

.textline__2 {
    line-height: 20px;
    max-height: 40px;
    -webkit-line-clamp: 2
}

.textline__3 {
    line-height: 20px;
    max-height: 60px;
    -webkit-line-clamp: 3
}

.montserrat {
    font-family: Montserrat, sans-serif
}

.pc {
    display: block
}

.sp {
    display: none
}

@media only screen and (max-width:768px) {
    .pc {
        display: none
    }

    .sp {
        display: block
    }
}

.container {
    max-width: 1200px;
    width: 100%;
    margin: auto
}

@media print,
screen and (max-width:1000px) {
    .container {
        width: 95%
    }
}

.c-btn01 {
    display: inline-block;
    background: #ef5153;
    border-radius: 50px;
    color: #fff;
    padding: 5px 20px
}

.c-btn02 {
    text-align: center;
    margin-top: 30px;
    cursor: pointer
}

.c-btn02 a,
.c-btn02 span {
    display: inline-block;
    background: #fbd347;
    border-radius: 50px;
    color: #333;
    padding: 10px 20px;
    width: 300px;
    text-align: center;
    margin: 0 auto;
    position: relative;
    font-weight: 700;
    max-width: 100%
}

.c-btn02.arrow-right a:after,
.c-btn02.arrow-right span:after {
    content: "\F178";
    margin-left: 15px;
    font-family: fontello
}

.c-btn02.arrow-down a:after,
.c-btn02.arrow-down span:after {
    content: "\F175";
    margin-left: 15px;
    font-family: fontello
}

.c-tlt01 h2 {
    font-size: 4rem;
    line-height: 1.6;
    position: relative;
    display: flex;
    align-items: center
}

.c-tlt01.c-line h2:after {
    content: "";
    width: 50px;
    height: 2px;
    background: #ef5153;
    display: block;
    margin-left: 20px
}

.c-tlt01.c-center h2 {
    justify-content: center
}

.mg50 {
    margin: 50px 0
}

.pd50 {
    padding: 50px 0
}

.l-header {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    padding: 15px 0;
    position: relative
}

.h-logo img {
    max-width: 200px;
    width: 100%;
    height: auto
}

.h-menu {
    display: flex;
    flex-wrap: wrap;
    align-items: center
}

.h-menu ul {
    display: flex;
    flex-wrap: wrap;
    align-items: center
}

.h-menu--nav a {
    display: block;
    font-size: 1.4rem;
    padding: 10px;
    line-height: 1.6
}

.h-menu--btn {
    display: flex;
    flex-wrap: wrap;
    align-items: center
}

.h-menu--btn .h-search {
    padding: 0 10px
}

.l-header .search-form .p-keywork {
    border: 1px solid #e5e5e5;
    border-radius: 50px;
    padding: 5px 10px;
    position: relative;
    z-index: 2;
    background: #fff
}

.l-header .search-form .p-keywork.is-active {
    border-color: #333
}

.l-header .search-form [type=text] {
    -webkit-appearance: textfield;
    outline-offset: -2px;
    border: 0;
    outline: 0;
    color: #595757;
    width: 100px;
    -webkit-transition: width .2s ease;
    -o-transition: width .2s ease;
    transition: width .2s ease;
    font-size: 1.4rem;
    width: 130px
}

.l-header .search-form [type=submit] {
    border: none;
    background: 0 0;
    -webkit-transition: width .2s ease;
    -o-transition: width .2s ease;
    transition: width .2s ease;
    color: #ef5153
}

.l-header .search-form [type=submit]:after {
    content: '\E807';
    font-family: fontello;
    position: absolute;
    top: 50%;
    right: 0;
    border: none;
    height: 45px;
    width: 34px;
    background: 0 0;
    display: inline-block;
    font-size: 1.4rem;
    color: #aaa !important;
    line-height: 0
}

.menu_icon {
    position: absolute;
    top: 50%;
    right: 0;
    width: 50px;
    height: 50px;
    display: none;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    border-radius: 50%;
    background: #e5e5e5;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    z-index: 999
}

@media only screen and (max-width:768px) {
    .menu_icon {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex
    }
}

.menu_icon_bar {
    position: relative;
    display: block;
    width: 30px;
    height: 3px
}

.menu_icon_bar:after,
.menu_icon_bar:before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    background: #000;
    position: absolute;
    left: 0;
    -webkit-transition: all .3s;
    -moz-transition: all .3s;
    -ms-transition: all .3s;
    -o-transition: all .3s;
    transition: all .3s
}

.menu_icon_bar:before {
    top: -5px
}

.menu_icon_bar:after {
    top: 5px
}

.h-menu--logo {
    display: none
}

@media only screen and (max-width:768px) {
    .h-menu--logo {
        display: block;
        background: #f7f7f7;
        padding: 20px;
        width: 100%
    }

    .h-menu--logo img {
        max-width: 180px
    }

    .l-header {
        padding: 20px 0
    }

    .h-menu {
        display: block;
        width: 70%;
        height: 100%;
        position: fixed;
        top: 50px;
        left: -100%;
        background: #fff;
        z-index: 999;
        -webkit-transition: all .3s;
        -moz-transition: all .3s;
        -ms-transition: all .3s;
        -o-transition: all .3s;
        transition: all .3s
    }

    .h-menu li {
        width: 100%;
        padding: 5px 0
    }

    .l-header .search-form [type=text] {
        width: 180px
    }

    .l-header .search-form .p-keywork {
        padding: 8px 10px
    }

    .l-header .search-form [type=submit] {
        position: absolute;
        right: 0;
        top: 50%;
        transform: translateY(-50%)
    }

    .h-contact .c-btn01 {
        padding: 8px 0;
        width: 200px;
        text-align: center;
        margin-top: 20px;
        margin-left: 10px
    }

    .l-header.openMenu .h-menu {
        left: 0
    }

    .l-header.openMenu .menu_close {
        display: block
    }

    .l-header.openMenu .menu_icon {
        background: 0 0
    }

    .l-header.openMenu .menu_icon_bar:after,
    .l-header.openMenu .menu_icon_bar:before {
        top: 0;
        background: #333
    }

    .l-header.openMenu .menu_icon_bar:before {
        -webkit-transform: rotate(135deg);
        -moz-transform: rotate(135deg);
        -ms-transform: rotate(135deg);
        -o-transform: rotate(135deg);
        transform: rotate(135deg)
    }

    .l-header.openMenu .menu_icon_bar:after {
        -webkit-transform: rotate(-135deg);
        -moz-transform: rotate(-135deg);
        -ms-transform: rotate(-135deg);
        -o-transform: rotate(-135deg);
        transform: rotate(-135deg)
    }
}

.menu_close {
    display: none;
    position: fixed;
    top: 50px;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(34, 34, 34, .6);
    z-index: 998
}

.layout__col {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

@media print,
screen and (max-width:768px) {
    .layout__col .layout__col__main {
        max-width: 100%
    }

    .layout__col {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        flex-wrap: wrap
    }
}

.layout__col .layout__col__main {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    max-width: calc(97% - 300px)
}

.layout__col .layout__col__sub {
    max-width: 300px;
    width: 32%;
    margin-left: 3%
}

body:not(.home) main {
    margin-bottom: 50px
}

@media print,
screen and (max-width:768px) {
    .layout__col .layout__col__main {
        max-width: 100%
    }

    .layout__col .layout__col__sub {
        margin-top: 60px;
        width: 100%;
        margin-left: 0;
        max-width: inherit
    }
}

@media print,
screen and (min-width:769px) {
    .layout__col.has_sidebar_fixed .layout__col__sub {
        position: fixed;
        right: calc((100% - 1200px)/ 2)
    }

    .layout__col.has_sidebar_absolute .layout__col__sub {
        position: absolute;
        right: 0
    }
}

@media print,
screen and (max-width:768px) {
    .layout__col .layout__col__sub {
        margin-top: 60px;
        margin-left: 0;
        max-width: 100%
    }
}

.l-visual--main {
    display: flex;
    flex-wrap: wrap
}

.l-visual--main ._mv {
    width: 45%
}

.l-visual--main ._mv-tlt img {
    max-width: 400px;
    width: 100%
}

.l-visual--main ._mv-txt {
    margin: 30px 0
}

.l-visual--main ._mv-txt p {
    font-size: 2rem;
    line-height: 1.6;
    font-weight: 700
}

.l-visual--main ._mv-box {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
}

.l-visual--main ._mv-box a {
    display: block;
    width: 150px
}

.l-visual--main ._mv-box figure {
    display: block;
    width: 250px
}

.l-visual--main ._banner {
    width: 55%
}

.l-category .c-catsList {
    margin-top: 50px;
    margin-left: calc((100vw - 1200px)/ 2)
}

.l-category .c-catsList ._items {
    width: calc(100%/4 - 30px);
    margin: 0 15px;
    overflow: hidden;
    max-width: 400px
}

.c-catsList {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
}

.c-catsList ._items {
    width: 18%;
    padding: 10px
}

.c-catsList ._items-tlt h3 {
    text-align: center;
    font-size: 1.6rem;
    line-height: 1.6
}

.c-catsList ._items-img {
    margin-top: 15px;
    text-align: center
}

.c-catsList ._items-img figure {
    box-shadow: 7px 11px 43px 0 rgba(0, 0, 0, .15);
    text-shadow: 7px 11px 43px rgba(0, 0, 0, .15);
    width: 210px;
    height: 210px;
    position: relative;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 auto
}

.c-catsList ._items-img img {
    height: 100px;
    width: auto
}

.c-catsList ._items-txt {
    margin-top: 15px
}

.c-catsList ._items-txt p {
    font-size: 1.4rem;
    line-height: 1.6
}

.l-new .c-newList {
    margin-top: 50px;
    padding-left: 0;
    margin-left: calc((100vw - 1200px)/ 2)
}

.c-newList {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: -30px
}

.c-newList ._items {
    width: calc(100%/3 - 30px);
    margin: 0 15px;
    overflow: hidden;
    margin-bottom: 30px;
    background: #fff;
    max-width: 400px
}

.c-newList ._items-img {
    width: 100%
}

.c-newList ._items-inner {
    padding: 10px
}

.c-newList ._items-img figure {
    width: 100%;
    height: 210px;
    position: relative;
    overflow: hidden;
    border-radius: 5px
}

.c-newList ._items-img figure img {
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    height: 100%;
    object-fit: cover;
    object-position: center
}

.c-newList ._items-box {
    display: flex;
    flex-wrap: wrap
}

.c-newList ._items-box p,
.c-newList ._items-box span {
    font-size: 1.4rem;
    line-height: 1.6
}

.c-newList ._items-box span {
    padding: 0 10px
}

.c-newList ._items-tlt {
    font-size: 1.6rem;
    line-height: 1.6;
    margin-top: 3px;
    min-height: 50px
}

.c-list_popular .c-newList ._items-box p,
.c-list_popular .c-newList ._items-box span {
    font-size: 1.2rem
}

.c-list_entries .c-newList ._items-box p,
.c-list_entries .c-newList ._items-box span {
    font-size: 1.2rem
}

.c-list_entries .c-newList ._items-img figure,
.c-list_popular .c-newList ._items-img figure {
    height: 135px
}

.l-contact {
    background: #F7F8F8;
    padding: 0 0;
    position: relative
}

.l-contact .container{
    max-width: 1269px;
}

.l-contact figure {
    margin: -5px 0;
}

.l-contact:after {
    content: "CONTACT";
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    font-size: 12rem;
    line-height: 1;
    font-weight: 700;
    color: #fff;
    opacity: .2;
    letter-spacing: 10px;
    z-index: 1;
    font-family: Montserrat, sans-serif;
    display:none;
}

.l-contact .c-tlt01 {
    position: relative;
    z-index: 2
}

.l-contact figure {
    margin-top: 10px;
    position: relative;
    z-index: 2
}

.l-tag {
    background: #f7f7f7
}

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

.c-tagList a {
    background: #383838;
    display: inline-block;
    color: #fff;
    font-size: 1.4rem;
    padding: 5px 20px;
    margin: 5px 10px;
    border-radius: 5px
}

.l-new .c-newList02 {
    margin-top: 50px
}

.c-newList02 {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: -30px
}

.c-newList02 ._items {
    width: calc(100%/3 - 30px);
    margin: 0 15px;
    margin-bottom: 30px;
    background: #fff
}

.c-newList02 ._items-img {
    width: 100%
}

.c-newList02 ._items-img figure {
    width: 100%;
    height: 194px;
    overflow: hidden;
    position: relative;
    border-radius: 5px
}

.c-newList02 ._items-img img {
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    height: 100%;
    object-fit: cover;
    object-position: center
}

.c-newList02 ._items-inner {
    padding: 10px
}

.c-newList02 ._items-box {
    display: flex;
    flex-wrap: wrap;
    margin-top: 15px
}

.c-newList02 ._items-box p,
.c-newList02 ._items-box span {
    font-size: 1.4rem;
    line-height: 1.6
}

.c-newList02 ._items-box span {
    padding: 0 10px
}

.c-newList02 ._items-tlt {
    font-size: 1.6rem;
    line-height: 1.6;
    margin: 10px 0;
    min-height: 50px
}

.slide-main .slick-arrow {
    font-size: 0;
    border: 0;
    margin: 0;
    padding: 0;
    width: 50px;
    height: 50px;
    background: #ef5153;
    position: absolute;
    top: -105px;
    right: 0;
    cursor: pointer;
    border-radius: 50%
}

.slide-main .slick-arrow:after {
    content: "a";
    position: absolute;
    color: #fff;
    font-size: 2rem;
    font-family: fontello;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    line-height: 1
}

.slide-main .slick-arrow.slick-prev {
    right: 60px
}

.slide-main .slick-arrow.slick-prev:after {
    content: "\F177"
}

.slide-main .slick-arrow.slick-next:after {
    content: "\F178"
}

.l-rank .c-newList ._items-img {
    position: relative
}

.l-rank .c-newList ._rank-num {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    background: #ddd;
    padding: 10px;
    display: flex;
    align-items: center;
    font-weight: 700;
    line-height: 1px;
    color: #fff
}

.l-rank .c-newList ._rank-num:before {
    content: "";
    width: 22px;
    height: 13px;
    margin-right: 5px;
    display: block;
    background: url('../img/rank-icon02.png');
    background-size: 22px 13px;
    background-repeat: no-repeat
}

.l-rank .c-newList ._rank-num1:before {
    background: url('../img/rank-icon01.png');
    background-size: 22px 13px;
    background-repeat: no-repeat
}

.l-rank .c-newList ._rank-num2:before {
    background: url('../img/rank-icon02.png');
    background-size: 22px 13px;
    background-repeat: no-repeat
}

.l-rank .c-newList ._rank-num3:before {
    background: url('../img/rank-icon02.png');
    background-size: 22px 13px;
    background-repeat: no-repeat
}

.l-rank .c-newList ._rank-num1 {
    background: #fbca0f
}

.l-rank .c-newList ._rank-num2 {
    background: #a6a6a6
}

.l-rank .c-newList ._rank-num3 {
    background: #c7a00c
}

.page_archive .c-newList {
    margin-top: 30px
}

._items-hover {
    transition: color .3s ease, background .3s ease, transform .3s ease, opacity .3s ease, border .3s ease, padding .3s ease, left .3s ease, bottom .3s ease, box-shadow .3s ease
}

._items-hover:hover ._items-img img {
    -webkit-transform: scale(1.2);
    -ms-transform: scale(1.2);
    transform: scale(1.2);
    opacity: .5
}

._items-hover ._items-img img {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-transform: scale(1);
    -webkit-transition-property: opacity, scale, -webkit-transform, transform;
    -webkit-transition-duration: .35s;
    -moz-transform: scale(1);
    -moz-transition-property: opacity, scale, -moz-transform, transform;
    -moz-transition-duration: .35s;
    -ms-transform: scale(1);
    -ms-transition-property: opacity, scale, -ms-transform, transform;
    -ms-transition-duration: .35s;
    -o-transform: scale(1);
    -o-transition-property: opacity, scale, -o-transform, transform;
    -o-transition-duration: .35s;
    transform: scale(1);
    -webkit-transition-property: opacity, scale, -webkit-transform;
    transition-property: opacity, scale, -webkit-transform;
    -o-transition-property: opacity, scale, transform;
    transition-property: opacity, scale, transform;
    transition-property: opacity, scale, transform, -webkit-transform;
    transition-duration: .35s
}

@-moz-keyframes bounce {

    0%,
    100%,
    20%,
    50%,
    80% {
        -moz-transform: translateY(0);
        transform: translateY(0)
    }

    40% {
        -moz-transform: translateY(-30px);
        transform: translateY(-30px)
    }

    60% {
        -moz-transform: translateY(-15px);
        transform: translateY(-15px)
    }
}

@-webkit-keyframes bounce {

    0%,
    100%,
    20%,
    50%,
    80% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    40% {
        -webkit-transform: translateY(-30px);
        transform: translateY(-30px)
    }

    60% {
        -webkit-transform: translateY(-15px);
        transform: translateY(-15px)
    }
}

@keyframes bounce {

    0%,
    100%,
    20%,
    50%,
    80% {
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    40% {
        -moz-transform: translateY(-20px);
        -ms-transform: translateY(-20px);
        -webkit-transform: translateY(-20px);
        transform: translateY(-20px)
    }

    60% {
        -moz-transform: translateY(-10px);
        -ms-transform: translateY(-10px);
        -webkit-transform: translateY(-10px);
        transform: translateY(-10px)
    }
}

.bounce-hover:hover {
    -moz-animation: bounce 3s infinite;
    -webkit-animation: bounce 3s infinite;
    animation: bounce 3s infinite;
    opacity: 1
}

.l-footer {
    background: #000;
}

.l-footer_inner {
    padding: 30px 0
}

.l-footer .logo {
    text-align: center;
    margin: 30px 0
}

.l-footer .logo img {
    max-width: 250px
}

.l-footer .fnav-menu {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: center;
    flex-wrap: wrap
}

.l-footer .fnav-menu li {
    margin: 10px 15px
}

.l-footer .fnav-menu a {
    color: #fff;
    font-size: 1.4rem
}

.copyright {
    background: #212121;
    color: #fff;
    font-size: 1.2rem;
    text-align: center;
    padding: 5px
}

#breadcrumb.none .container {
    display: none
}

#breadcrumb {
    background: #f5f6f7;
    margin-bottom: 30px
}

#breadcrumb .breadcrumbs {
    padding: 10px 0
}

#breadcrumb span {
    font-size: 1.2rem;
    display: inline-block
}

#breadcrumb span a {
    color: #333;
    display: inline
}

#breadcrumb span a:after {
    font-family: fontello;
    content: "\E803";
    padding: 0 10px
}

.pre-next {
    margin-bottom: 30px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

@media (max-width:767px) {
    .pre-next {
        flex-direction: column;
        margin: 20px 0
    }
}

.pre-next li {
    position: relative;
    border: 0 solid #ddd;
    font-size: 14px;
    list-style: none;
    -webkit-transition: background .2s ease;
    -o-transition: background .2s ease;
    transition: background .2s ease;
    width: 50%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    overflow: hidden
}

.pre-next li:first-child {
    border-width: 1px 0 1px 1px;
    border-radius: 6px 0 0 6px
}

.pre-next li:first-child:after {
    content: '';
    display: block;
    width: 1px;
    height: calc(100% - 30px);
    background: #ddd
}

.pre-next li:last-child {
    border-width: 1px 1px 1px 0;
    border-radius: 0 6px 6px 0
}

.pre-next li:only-child {
    border-width: 1px;
    border-radius: 6px
}

.pre-next li:only-child:after {
    display: none
}

@media print,
screen and (max-width:768px) {

    .pre-next li:first-child,
    .pre-next li:last-child,
    .pre-next li:only-child {
        border-width: 1px;
        border-radius: 4px
    }
}

.pre-next li:before {
    font-size: 1.4rem;
    height: 100%;
    top: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: absolute;
    background: #ef5153;
    color: #fff;
    padding: 0 7px;
    pointer-events: none
}

.pre-next li a {
    color: #333;
    width: 100%;
    padding: 15px 40px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

@media print,
screen and (max-width:768px) {
    .pre-next li:before {
        padding: 0 3px
    }

    .pre-next li {
        width: 100%;
        margin: 10px 0;
        border: 1px solid #ddd
    }

    .pre-next li a {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center
    }
}

.pre-next li a .image {
    width: 120px;
    overflow: hidden
}

@media print,
screen and (max-width:768px) {
    .pre-next li a .image {
        max-width: 95px
    }
}

.pre-next li a .image .thumb {
    width: 100%;
    padding-top: 60%;
    position: relative
}

.pre-next li a .image .thumb img {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center
}

.pre-next li a span {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    margin: 0 10px;
    font-size: 1.6rem;
    line-height: 1.4;
    max-height: 100%;
    -webkit-line-clamp: 3
}

@media (max-width:767px) {
    .pre-next li a {
        padding: 10px 30px
    }
}

.pre-next .pre-post:before {
    left: 0
}

.pre-next .next-post:before {
    right: 0
}

.pre-next .next-post a {
    text-align: right;
    width: 100%
}

.pre-next .pre-post a {
    padding-right: 20px
}

.pre-next .pre-post a span {
    margin-right: 0;
    margin-left: 15px
}

.pre-next .next-post a {
    padding-left: 20px
}

.pre-next .next-post a span {
    margin-left: 0;
    margin-right: 15px
}

@media print,
screen and (max-width:768px) {
    .pre-next li a span {
        font-size: 1.2rem
    }

    .pre-next .pre-post a span {
        margin-left: 10px
    }

    .pre-next .next-post a span {
        margin-right: 10px
    }
}

.wp-pagenavi {
    text-align: center;
    width: 100%;
    display: block;
    margin: 40px 0
}

.wp-pagenavi a {
    background: #f6f6f6;
    color: #000;
    text-decoration: none
}

@media only screen and (max-width:667px) {
    .wp-pagenavi .inner {
        width: 90%;
        margin: 0 5%;
        position: relative;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        height: 46px
    }

    .wp-pagenavi .page-of {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 2;
        -webkit-order: 2;
        order: 2;
        position: absolute;
        left: 37%;
        width: 26%;
        font-weight: 700;
        color: #fff;
        background: #ef5153;
        height: 46px;
        line-height: 46px;
        font-size: 1.3rem
    }

    .wp-pagenavi .m-prev {
        -webkit-box-ordinal-group: 0;
        -ms-flex-order: 0;
        -webkit-order: 0;
        order: 0;
        width: 15%;
        position: absolute;
        left: 0
    }

    .wp-pagenavi .pn-prev {
        -webkit-box-ordinal-group: 1;
        -ms-flex-order: 1;
        -webkit-order: 1;
        order: 1;
        width: 22%;
        position: absolute;
        left: 15%
    }

    .wp-pagenavi .pn-next {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 3;
        -webkit-order: 3;
        order: 3;
        width: 22%;
        position: absolute;
        left: 63%
    }

    .wp-pagenavi .m-next {
        -webkit-box-ordinal-group: 4;
        -ms-flex-order: 4;
        -webkit-order: 4;
        order: 4;
        width: 15%;
        position: absolute;
        left: 85%
    }

    .wp-pagenavi a {
        line-height: 46px;
        height: 46px;
        font-weight: 700;
        font-size: 1.4rem
    }
}

.wp-pagenavi .pages {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-bottom: 10px;
    font-weight: 700
}

.wp-pagenavi .page-of {
    display: block;
    width: 100%;
    color: #000;
    text-align: center;
    margin-bottom: 2em
}

.wp-pagenavi .current,
.wp-pagenavi a {
    display: inline-block;
    padding: 0 1.5em;
    font-weight: 700;
    line-height: 50px;
    height: 50px
}

.wp-pagenavi .page,
.wp-pagenavi a {
    display: inline-block;
    padding: 0 1.5em;
    font-weight: 700;
    line-height: 50px;
    height: 50px
}

.wp-pagenavi .current {
    background: #ababab;
    color: #fff
}

.wp-pagenavi a:hover {
    background: #ababab;
    color: #fff
}

.pagination {
    text-align: center;
    width: 100%;
    display: block
}

.pagination a {
    border: 1px solid #eee;
    color: #333;
    text-decoration: none
}

@media only screen and (max-width:667px) {
    .pagination .inner {
        width: 90%;
        margin: 0 5%;
        position: relative;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        /* height: 46px; */
        flex-wrap: wrap;
    }

    .pagination .page-of {
        flex: 1 1 100%;
        font-size: 1.1rem;
        margin-bottom: 5px;
    }

    .pagination .m-prev {
        -webkit-box-ordinal-group: 0;
        -ms-flex-order: 0;
        -webkit-order: 0;
        order: 0;
        width: 15%;
        position: absolute;
        left: 0
    }

    .pagination .pn-prev,
    .pagination .prev {
        -webkit-box-ordinal-group: 1;
        -ms-flex-order: 1;
        -webkit-order: 1;
        order: 1;
        width: 22%;
        position: absolute;
        left: 15%
    }

    .pagination .next,
    .pagination .pn-next {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 3;
        -webkit-order: 3;
        order: 3;
        width: 22%;
        position: absolute;
        left: 63%
    }

    .pagination .m-next {
        -webkit-box-ordinal-group: 4;
        -ms-flex-order: 4;
        -webkit-order: 4;
        order: 4;
        width: 15%;
        position: absolute;
        left: 85%
    }

    .pagination .current {
        background: #ef5153;
        color: #fff;
    }

    .pagination .current,
    .pagination .pn-numbers {
        display: inline-block;
        padding: 0;
        font-weight: 700;
        width: 30px;
        height: 30px;
        line-height: 30px;
        border-radius: 50%;
        font-size: 1.1rem;
        margin: 5px;
    }

    .pagination a {
        line-height: 46px;
        height: 46px;
        font-weight: 700;
        font-size: 1.2rem
    }
}

@media only screen and (min-width:668px) {
    .pagination .page-of {
        display: block;
        width: 100%;
        color: #333;
        text-align: center;
        margin-bottom: 10px;
        margin-top: 20px;
        font-size: 1.2rem
    }

    .pagination .current,
    .pagination a {
        display: inline-block;
        padding: 0;
        font-weight: 700;
        width: 60px;
        height: 60px;
        line-height: 60px;
        border-radius: 50%;
        font-size: 1.2rem;
        margin: 5px
    }

    .pagination .current {
        background: #ef5153;
        color: #fff
    }

    .pagination a:hover {
        background: #ef5153;
        color: #fff;
        opacity: 1
    }
}

.fontello {
    position: relative
}

.fontello:after,
.fontello:before {
    font-family: fontello
}

.l-arrow:before {
    content: "\E802"
}

.r-arrow:before {
    content: "\E803"
}

.wpcf7-response-output {
    font-size: 1.2rem !important
}

.wpcf7-not-valid {
    background: #ffb6c1 !important
}

span.wpcf7-not-valid-tip {
    font-size: 1rem !important
}

.wpcf7 .wpcf7-validation-errors {
    color: #b94a48;
    background-color: #f2dede !important;
    border: 1px solid #eed3d7 !important
}

div.wpcf7-validation-errors {
    border: 1px solid red;
    color: red;
    background: #f2dede;
    padding: 10px
}

div.wpcf7-mail-sent-ok {
    background: #e6faeb;
    border: 1px solid #159867;
    color: #159867;
    padding: 10px
}

.c-single p {
    margin-bottom: 30px;
    line-height: 2;
    font-size: 1.6rem;
    word-wrap: break-word;
    letter-spacing: .5px
}

.c-single strong {
    line-height: 2;
    font-size: 1.6rem
}

.c-single p a {
    font-size: 1.6rem;
    line-height: 2;
    color: #16b5d5;
    position: relative;
    text-decoration: underline;
    display: inline-block;
    word-break: break-all
}

.c-single p a:after {
    content: "\f35d";
    font-family: "Font Awesome 5 Free", "Font Awesome 5 Brands", Aharoni, "Arial Black", Impact, Arial, sans-serif;
    font-size: 1.4rem;
    font-weight: 900
}

.c-single p a.none-icon:after {
    content: none
}

#single_page .single-content {
    margin-bottom: 30px
}

.single-content ul {
    background: #f9f9f9;
    padding: 20px;
    padding-left: 40px;
    list-style: disc;
    margin-bottom: 30px
}

.single-content ul li {
    padding: 7px 0;
    font-size: 1.6rem;
    position: relative
}

.single-content ul li p {
    font-size: 1.4rem;
    color: #333
}

.single-content ol {
    background: #f9f9f9;
    padding: 20px;
    padding-left: 40px;
    list-style-type: decimal;
    margin-bottom: 30px
}

.single-content ol li {
    padding: 7px 0;
    position: relative
}

.single-content ol li {
    font-size: 1.6rem;
    color: #333
}

.single-content ol li a,
.single-content ol li strong {
    font-size: inherit
}

.btnStyle01 {
    margin-bottom: 30px
}

.btnStyle01 a {
    background: #ef5153;
    color: #fff;
    font-size: rem(7.68);
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 240px;
    height: 50px;
    -webkit-box-shadow: 3px 5px 6px #e2e2e2;
    box-shadow: 3px 5px 6px #e2e2e2;
    position: relative;
    font-size: 16px;
    text-decoration: none
}

.btnStyle01 a:hover {
    background-color: #004db6
}

.btnStyle01.btnBig a {
    width: 300px;
    height: 70px
}

.btnStyle02 {
    margin-bottom: 30px
}

.btnStyle02 a {
    background: #ef5153;
    color: #fff;
    border-radius: 5px;
    width: 240px;
    height: 50px;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-shadow: 0 5px 0 #006f87;
    box-shadow: 0 5px 0 #006f87;
    position: relative;
    font-size: 16px;
    text-decoration: none
}

.btnStyle02 a:hover {
    background-color: #004db6;
    top: 3px;
    -webkit-box-shadow: 0 0 0 #006f87;
    box-shadow: 0 0 0 #006f87
}

.btnStyle02.btnBig a {
    width: 300px;
    height: 70px
}

#toc_container {
    padding: 1em 2em 1em !important;
    min-width: 100%;
    margin: auto;
    background: #fff !important;
    background: rgba(255, 255, 255, .5) !important;
    border: 1px solid #eee;
    margin-bottom: 30px
}

#toc_container ul {
    margin: 0 !important
}

#toc_container li a {
    display: block;
    padding: .5em 0;
    border-top: 1px dotted #ddd;
    font-size: 1.4rem
}

#toc_container li li a {
    padding-left: .7em
}

#toc_container a {
    text-decoration: none;
    text-shadow: none
}

#toc_container p.toc_title {
    position: relative;
    padding: 0 65px
}

.c-single .toc_toggle {
    position: absolute;
    top: 50%;
    left: calc(100%);
    height: 26px;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
    text-indent: -9999px
}

.c-single .toc_toggle a {
    position: absolute;
    right: 0;
    top: 0;
    text-indent: 0;
    display: inline-block;
    text-align: center;
    border: none;
    cursor: pointer;
    line-height: 1;
    font-size: 1.2rem;
    color: #707070;
    background-color: #f2f2f2;
    padding: 8px 12px;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    text-decoration: none;
    width: 50px
}

.c-single .toc_toggle a:after {
    display: none
}

.cqt-comment-left {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 30px
}

.cqt-comment-left dt {
    text-align: center
}

.cqt-comment-left dt figure {
    width: 90px;
    height: 90px;
    border-radius: 50%;
    border: 2px solid #ef5153;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.cqt-comment-left dt figure img {
    width: 60px;
    height: 60px;
    position: relative;
    -o-object-fit: contain;
    object-fit: contain
}

.cqt-comment-left dt span {
    font-size: rem(6.72);
    text-align: center;
    color: #646464;
    font-weight: 500;
    margin-top: 5px;
    display: block
}

.cqt-comment-left dd {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    margin-left: 30px
}

.cqt-comment-left dd p {
    border: 2px solid #ef5153;
    padding: 15px 25px;
    position: relative;
    font-size: 1.4rem
}

.cqt-comment-left dd p:before {
    content: "";
    position: absolute;
    left: -16px;
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 14px 20px 14px 0;
    z-index: 3;
    top: 10px;
    border-color: transparent #fff transparent transparent
}

.cqt-comment-left dd p:after {
    content: "";
    position: absolute;
    left: -20px;
    display: block;
    width: 0;
    height: 0;
    top: 10px;
    border-style: solid;
    border-width: 14px 20px 14px 0;
    z-index: 2;
    border-color: transparent #ef5153 transparent transparent
}

.cqt-commentBg-left {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 30px
}

.cqt-commentBg-left dt {
    text-align: center
}

.cqt-commentBg-left dt figure {
    width: 90px;
    height: 90px;
    border-radius: 50%;
    border: 2px solid #ef5153;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.cqt-commentBg-left dt figure img {
    width: 60px;
    height: 60px;
    position: relative;
    -o-object-fit: contain;
    object-fit: contain
}

.cqt-commentBg-left dt span {
    font-size: rem(6.72);
    text-align: center;
    color: #646464;
    font-weight: 500;
    margin-top: 5px;
    display: block
}

.cqt-commentBg-left dd {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    margin-left: 30px
}

.cqt-commentBg-left dd p {
    padding: 15px 25px;
    position: relative;
    font-size: 1.4rem;
    color: #fff
}

.cqt-commentBg-left dd p:before {
    content: "";
    position: absolute;
    left: -16px;
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 14px 20px 14px 0;
    z-index: 3;
    top: 10px;
    border-color: transparent #fff transparent transparent
}

.cqt-commentBg-left dd p:after {
    content: "";
    position: absolute;
    left: -20px;
    display: block;
    width: 0;
    height: 0;
    top: 10px;
    border-style: solid;
    border-width: 14px 20px 14px 0;
    z-index: 2;
    border-color: transparent #ef5153 transparent transparent
}

.cqt-comment-right {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 30px
}

.cqt-comment-right dt {
    text-align: center;
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2
}

.cqt-comment-right dt figure {
    width: 90px;
    height: 90px;
    border-radius: 50%;
    border: 2px solid #e3e3e3;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.cqt-comment-right dt figure img {
    width: 60px;
    height: 60px;
    position: relative;
    -o-object-fit: contain;
    object-fit: contain
}

.cqt-comment-right dt span {
    font-size: rem(6.72);
    text-align: center;
    color: #646464;
    font-weight: 500;
    margin-top: 5px;
    display: block
}

.cqt-comment-right dd {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    margin-right: 30px
}

.cqt-comment-right dd p {
    border: 2px solid #e3e3e3;
    padding: 15px 25px;
    position: relative;
    font-size: 1.4rem;
    margin-bottom: 0
}

.cqt-comment-right dd p:before {
    content: "";
    position: absolute;
    right: -16px;
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 14px 0 14px 20px;
    z-index: 3;
    top: 10px;
    border-color: transparent transparent transparent #fff
}

.cqt-comment-right dd p:after {
    content: "";
    position: absolute;
    right: -20px;
    display: block;
    width: 0;
    height: 0;
    top: 10px;
    border-style: solid;
    border-width: 14px 0 14px 20px;
    z-index: 2;
    border-color: transparent transparent transparent #e3e3e3
}

.cqt-commentBg-right {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 30px
}

.cqt-commentBg-right dt {
    text-align: center;
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2
}

.cqt-commentBg-right dt figure {
    width: 90px;
    height: 90px;
    border-radius: 50%;
    border: 2px solid #e3e3e3;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.cqt-commentBg-right dt figure img {
    width: 60px;
    height: 60px;
    position: relative;
    -o-object-fit: contain;
    object-fit: contain
}

.cqt-commentBg-right dt span {
    font-size: rem(6.72);
    text-align: center;
    color: #646464;
    font-weight: 500;
    margin-top: 5px;
    display: block
}

.cqt-commentBg-right dd {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    margin-right: 30px
}

.cqt-commentBg-right dd p {
    padding: 15px 25px;
    position: relative;
    font-size: 1.4rem;
    margin-bottom: 0;
    color: #fff
}

.cqt-commentBg-right dd p:before {
    content: "";
    position: absolute;
    right: -16px;
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 14px 0 14px 20px;
    z-index: 3;
    top: 10px;
    border-color: transparent transparent transparent #fff
}

.cqt-commentBg-right dd p:after {
    content: "";
    position: absolute;
    right: -20px;
    display: block;
    width: 0;
    height: 0;
    top: 10px;
    border-style: solid;
    border-width: 14px 0 14px 20px;
    z-index: 2;
    border-color: transparent transparent transparent #e3e3e3
}

.cqt-box01 {
    border: 1px solid #ef5153;
    margin-bottom: 30px
}

.cqt-box01 .tlt {
    text-align: center;
    background: #ef5153;
    padding: 15px 0;
    color: #fff
}

.cqt-box01 .tlt p {
    color: #fff;
    font-size: 1.4rem;
    margin-bottom: 0
}

.cqt-box01 .content {
    padding: 20px
}

.cqt-box01 .content p {
    margin-bottom: 0
}

.cqt-box02 {
    position: relative;
    padding-top: 25px;
    margin-bottom: 30px;
    background: #eafbff;
    margin-top: 57px
}

.cqt-box02 .tlt {
    text-align: center;
    background: #ef5153;
    padding: 15px;
    position: absolute;
    top: -27px;
    left: 30px;
    font-size: 1.4rem;
    color: #fff
}

.cqt-box02 .tlt p {
    color: #fff;
    font-size: 1.4rem;
    margin-bottom: 0
}

.cqt-box02 .content {
    padding: 20px
}

.cqt-box02 .content p {
    margin-bottom: 0
}

.cqt-box03 {
    margin-bottom: 30px
}

.cqt-box03 dl {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    border: 1px solid #ddd
}

.cqt-box03 dl~dl {
    border-top: none
}

.cqt-box03 dl dt {
    width: 30%;
    padding: 15px;
    font-size: 1.4rem;
    background: #f5f5f5;
    text-align: center
}

.cqt-box03 dl dd {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    padding: 15px;
    font-size: 1.4rem
}

.cqt-box04 {
    background: #ffe3e5;
    padding: 20px;
    margin-bottom: 30px
}

.cqt-box04 p {
    color: #e45a62;
    margin-bottom: 0
}

.cqt-button {
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 30px;
    text-align: center
}

.cqt-button a {
    vertical-align: middle;
    background-color: #f39800;
    color: #fff;
    border-radius: 5px;
    width: 100%;
    height: 60px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: relative
}

.cqt-button.not_light a {
    background: #0094c8;
    -webkit-box-shadow: 0 4px 0 #007eaa;
    box-shadow: 0 4px 0 #007eaa
}

.cqt-button.small a {
    max-width: 350px;
    width: 100%;
    margin: 0 auto
}

@media print,
screen and (max-width:768px) {
    .cqt-button.small a {
        max-width: 240px
    }
}

@keyframes shiny {

    100%,
    20% {
        opacity: 0;
        -webkit-transform: translate(1000px, 0);
        transform: translate(1000px, 0)
    }

    0% {
        opacity: 0
    }

    10% {
        opacity: 1
    }
}

@-webkit-keyframes shiny {

    100%,
    20% {
        opacity: 0;
        -webkit-transform: translate(1000px, 0);
        transform: translate(1000px, 0)
    }

    0% {
        opacity: 0
    }

    10% {
        opacity: 1
    }
}

@-moz-keyframes shiny {

    100%,
    20% {
        opacity: 0;
        transform: translate(1000px, 0)
    }

    0% {
        opacity: 0
    }

    10% {
        opacity: 1
    }
}

.cqt-button a:hover {
    -webkit-transform: translateY(4px);
    -ms-transform: translateY(4px);
    transform: translateY(4px);
    -webkit-box-shadow: 0 0 0 #c07800 !important;
    box-shadow: 0 0 0 #c07800 !important;
    -webkit-transition: all .01 ease-in-out;
    -o-transition: all .01 ease-in-out;
    transition: all .01 ease-in-out
}

table.cps-table03 {
    width: 100%;
    border: 1px solid #dedede;
    border-collapse: collapse
}

table.cps-table03 th {
    text-align: center
}

table.cps-table03 td,
table.cps-table03 th {
    vertical-align: middle;
    font-size: 1.4rem;
    border: 1px solid #dedede;
    border-collapse: collapse;
    letter-spacing: 0;
    line-height: 1.5;
    padding: 15px 0
}

table.cps-table03 th {
    background: #fffaf0
}

@media (max-width:767px) {
    table.cps-table03 th {
        font-weight: 600
    }
}

@media (min-width:768px) {
    table.cps-table03 th {
        font-weight: 500
    }
}

table.cps-table03 th.ranking-title {
    padding: 12px;
    font-size: 1.4rem;
    text-align: left
}

@media (max-width:767px) {
    table.cps-table03 td {
        padding: 10px 7px
    }
}

@media (min-width:768px) {
    table.cps-table03 td {
        padding: 7px 10px
    }
}

table.cps-table03 td.rankinginfo {
    vertical-align: middle;
    text-align: left
}

table.cps-table03 td img {
    display: block;
    margin: 0 auto;
    margin-top: 0;
    margin-bottom: 0 !important;
    padding-top: 0;
    padding-bottom: 0
}

table.cps-table03 img.star {
    width: 150px;
    height: auto
}

table.cps-table03 td.rankinginfo {
    width: 70% !important
}

table.cps-table03 td.rankinginfo {
    width: 70% !important
}

.ranking01,
.ranking02,
.ranking03 {
    margin-bottom: 10px
}

table.cps-table03 {
    margin-bottom: 30px
}

.ranking01 .ranking-title01,
.ranking01 .ranking-title02,
.ranking01 .ranking-title03,
.ranking02 .ranking-title01,
.ranking02 .ranking-title02,
.ranking02 .ranking-title03,
.ranking03 .ranking-title01,
.ranking03 .ranking-title02,
.ranking03 .ranking-title03 {
    border-bottom: 1px solid;
    letter-spacing: 0;
    position: relative;
    margin-bottom: 20px
}

@media (max-width:767px) {

    .ranking01 .ranking-title01,
    .ranking01 .ranking-title02,
    .ranking01 .ranking-title03,
    .ranking02 .ranking-title01,
    .ranking02 .ranking-title02,
    .ranking02 .ranking-title03,
    .ranking03 .ranking-title01,
    .ranking03 .ranking-title02,
    .ranking03 .ranking-title03 {
        font-size: 2.1rem;
        font-weight: 700;
        padding-left: 60px
    }
}

@media (min-width:768px) {

    .ranking01 .ranking-title01,
    .ranking01 .ranking-title02,
    .ranking01 .ranking-title03,
    .ranking02 .ranking-title01,
    .ranking02 .ranking-title02,
    .ranking02 .ranking-title03,
    .ranking03 .ranking-title01,
    .ranking03 .ranking-title02,
    .ranking03 .ranking-title03 {
        font-size: 2.6rem;
        font-weight: 400;
        padding-left: 75px
    }
}

.ranking01 .ranking-title01 img,
.ranking01 .ranking-title02 img,
.ranking01 .ranking-title03 img,
.ranking02 .ranking-title01 img,
.ranking02 .ranking-title02 img,
.ranking02 .ranking-title03 img,
.ranking03 .ranking-title01 img,
.ranking03 .ranking-title02 img,
.ranking03 .ranking-title03 img {
    position: absolute;
    height: auto
}

@media (max-width:767px) {

    .ranking01 .ranking-title01 img.ranking-number,
    .ranking01 .ranking-title02 img.ranking-number,
    .ranking01 .ranking-title03 img.ranking-number,
    .ranking02 .ranking-title01 img.ranking-number,
    .ranking02 .ranking-title02 img.ranking-number,
    .ranking02 .ranking-title03 img.ranking-number,
    .ranking03 .ranking-title01 img.ranking-number,
    .ranking03 .ranking-title02 img.ranking-number,
    .ranking03 .ranking-title03 img.ranking-number {
        width: 55px;
        bottom: 2px;
        left: 2px
    }
}

@media (min-width:768px) {

    .ranking01 .ranking-title01 img.ranking-number,
    .ranking01 .ranking-title02 img.ranking-number,
    .ranking01 .ranking-title03 img.ranking-number,
    .ranking02 .ranking-title01 img.ranking-number,
    .ranking02 .ranking-title02 img.ranking-number,
    .ranking02 .ranking-title03 img.ranking-number,
    .ranking03 .ranking-title01 img.ranking-number,
    .ranking03 .ranking-title02 img.ranking-number,
    .ranking03 .ranking-title03 img.ranking-number {
        width: 65px;
        bottom: 5px;
        height: 100%;
        left: 5px
    }
}

@media (max-width:767px) {

    .ranking01 .ranking-title01 img.ranking-number-girly,
    .ranking01 .ranking-title02 img.ranking-number-girly,
    .ranking01 .ranking-title03 img.ranking-number-girly,
    .ranking02 .ranking-title01 img.ranking-number-girly,
    .ranking02 .ranking-title02 img.ranking-number-girly,
    .ranking02 .ranking-title03 img.ranking-number-girly,
    .ranking03 .ranking-title01 img.ranking-number-girly,
    .ranking03 .ranking-title02 img.ranking-number-girly,
    .ranking03 .ranking-title03 img.ranking-number-girly {
        width: 55px;
        bottom: -18px;
        left: 2px
    }
}

@media (min-width:768px) {

    .ranking01 .ranking-title01 img.ranking-number-girly,
    .ranking01 .ranking-title02 img.ranking-number-girly,
    .ranking01 .ranking-title03 img.ranking-number-girly,
    .ranking02 .ranking-title01 img.ranking-number-girly,
    .ranking02 .ranking-title02 img.ranking-number-girly,
    .ranking02 .ranking-title03 img.ranking-number-girly,
    .ranking03 .ranking-title01 img.ranking-number-girly,
    .ranking03 .ranking-title02 img.ranking-number-girly,
    .ranking03 .ranking-title03 img.ranking-number-girly {
        width: 65px;
        bottom: -17px;
        left: 5px
    }
}

@media (max-width:767px) {

    .ranking01 .ranking-title01 img.ranking-number-rich,
    .ranking01 .ranking-title02 img.ranking-number-rich,
    .ranking01 .ranking-title03 img.ranking-number-rich,
    .ranking02 .ranking-title01 img.ranking-number-rich,
    .ranking02 .ranking-title02 img.ranking-number-rich,
    .ranking02 .ranking-title03 img.ranking-number-rich,
    .ranking03 .ranking-title01 img.ranking-number-rich,
    .ranking03 .ranking-title02 img.ranking-number-rich,
    .ranking03 .ranking-title03 img.ranking-number-rich {
        width: 44px;
        bottom: -36px;
        left: 8px
    }
}

@media (min-width:768px) {

    .ranking01 .ranking-title01 img.ranking-number-rich,
    .ranking01 .ranking-title02 img.ranking-number-rich,
    .ranking01 .ranking-title03 img.ranking-number-rich,
    .ranking02 .ranking-title01 img.ranking-number-rich,
    .ranking02 .ranking-title02 img.ranking-number-rich,
    .ranking02 .ranking-title03 img.ranking-number-rich,
    .ranking03 .ranking-title01 img.ranking-number-rich,
    .ranking03 .ranking-title02 img.ranking-number-rich,
    .ranking03 .ranking-title03 img.ranking-number-rich {
        width: 50px;
        bottom: -38px;
        left: 10px
    }
}

.ranking01 .ranking-title01,
.ranking02 .ranking-title01,
.ranking03 .ranking-title01 {
    border-color: #ffcf24
}

.ranking01 .ranking-title02,
.ranking02 .ranking-title02,
.ranking03 .ranking-title02 {
    border-color: #a0a9b1
}

.ranking01 .ranking-title03,
.ranking02 .ranking-title03,
.ranking03 .ranking-title03 {
    border-color: #b26a2b
}

.ranking01 .ranking-img01,
.ranking01 .ranking-img02,
.ranking01 .ranking-img03,
.ranking02 .ranking-img01,
.ranking02 .ranking-img02,
.ranking02 .ranking-img03,
.ranking03 .ranking-img01,
.ranking03 .ranking-img02,
.ranking03 .ranking-img03 {
    width: 300px;
    height: auto;
    display: block
}

@media (min-width:768px) {

    .ranking01 .ranking-img01,
    .ranking01 .ranking-img02,
    .ranking01 .ranking-img03,
    .ranking02 .ranking-img01,
    .ranking02 .ranking-img02,
    .ranking02 .ranking-img03,
    .ranking03 .ranking-img01,
    .ranking03 .ranking-img02,
    .ranking03 .ranking-img03 {
        float: left;
        margin-right: 20px
    }
}

.ranking01 .ranking-img01 img,
.ranking01 .ranking-img02 img,
.ranking01 .ranking-img03 img,
.ranking02 .ranking-img01 img,
.ranking02 .ranking-img02 img,
.ranking02 .ranking-img03 img,
.ranking03 .ranking-img01 img,
.ranking03 .ranking-img02 img,
.ranking03 .ranking-img03 img {
    max-width: 100%;
    height: auto;
    display: block
}

.ranking01 .ranking-img01 br,
.ranking01 .ranking-img01 img[width="1"],
.ranking01 .ranking-img02 br,
.ranking01 .ranking-img02 img[width="1"],
.ranking01 .ranking-img03 br,
.ranking01 .ranking-img03 img[width="1"],
.ranking02 .ranking-img01 br,
.ranking02 .ranking-img01 img[width="1"],
.ranking02 .ranking-img02 br,
.ranking02 .ranking-img02 img[width="1"],
.ranking02 .ranking-img03 br,
.ranking02 .ranking-img03 img[width="1"],
.ranking03 .ranking-img01 br,
.ranking03 .ranking-img01 img[width="1"],
.ranking03 .ranking-img02 br,
.ranking03 .ranking-img02 img[width="1"],
.ranking03 .ranking-img03 br,
.ranking03 .ranking-img03 img[width="1"] {
    display: none
}

@media (min-width:768px) {

    .ranking01 .ranking-info01,
    .ranking01 .ranking-info02,
    .ranking01 .ranking-info03,
    .ranking02 .ranking-info01,
    .ranking02 .ranking-info02,
    .ranking02 .ranking-info03,
    .ranking03 .ranking-info01,
    .ranking03 .ranking-info02,
    .ranking03 .ranking-info03 {
        display: inline;
        line-height: 1.5
    }
}

@media (max-width:767px) {

    .ranking01 .ranking-info01,
    .ranking01 .ranking-info02,
    .ranking01 .ranking-info03,
    .ranking02 .ranking-info01,
    .ranking02 .ranking-info02,
    .ranking02 .ranking-info03,
    .ranking03 .ranking-info01,
    .ranking03 .ranking-info02,
    .ranking03 .ranking-info03 {
        margin-bottom: 20px;
        line-height: 1.5
    }
}

.ranking01 .clearfix,
.ranking02 .clearfix,
.ranking03 .clearfix {
    height: 5px
}

.single-content h2 {
    font-size: 24px;
    line-height: 1.5;
    margin-bottom: 30px;
    border-bottom: 2px solid #d4d4d4;
    padding-bottom: 25px;
    position: relative;
    margin-top: 70px
}

.single-content h2:after {
    content: '';
    position: absolute;
    width: 111px;
    height: 4px;
    background: #333;
    bottom: -2.5px;
    left: 0
}

.single-content h2 span {
    font-size: inherit
}

.single-content h3 {
    font-size: 2rem;
    border-left: 4px solid #333;
    margin-bottom: 30px;
    line-height: 1.5;
    padding: 0 0 0 15px;
    margin-top: 50px
}

.single-content h3 span {
    font-size: inherit
}

.single-content h4 {
    font-size: 1.8rem;
    margin-bottom: 30px;
    background: #f4f4f4;
    padding: 5px 15px;
    margin-top: 40px
}

.single-content h4 span {
    font-size: inherit
}

.single-content h5 {
    color: #181818;
    font-size: 1.8rem;
    padding: 5px 0;
    border-bottom: 5px solid #ef5153;
    margin-bottom: 30px
}

.single-content table {
    width: 100%;
    font-size: .92em;
    border: 1px solid #efefef;
    margin-bottom: 30px
}

.single-content table caption {
    margin: 0 0 7px;
    font-size: .75em;
    color: #9fa6b4;
    text-transform: uppercase;
    letter-spacing: 1px
}

.single-content tr {
    border-bottom: 1px solid #efefef
}

.single-content td {
    padding: .8em;
    border: 1px solid #cfcfcf;
    background: #fff;
    background: rgba(255, 255, 255, .6)
}

.single-content td input {
    margin: 3px 0
}

.single-content th {
    background-color: #eee;
    background-color: rgba(0, 0, 0, .1);
    border: 1px solid #cfcfcf;
    padding: .8em
}

.single-content .post-cta+h2,
.single-content .post-cta+h3,
.single-content .post-cta+h4 {
    margin-top: 0
}

.single-content #toc_container+h2,
.single-content #toc_container+h3,
.single-content #toc_container+h4 {
    margin-top: 0
}

#main-visual {
    margin-top: 20px;
    margin-bottom: 40px;
    position: relative
}

@media print,
screen and (max-width:768px) {
    #main-visual {
        margin-top: 0
    }
}

#main-visual .pc {
    display: block
}

@media print,
screen and (max-width:768px) {
    #main-visual .pc {
        display: none
    }
}

#main-visual .sp {
    display: none
}

@media print,
screen and (max-width:768px) {
    #main-visual .sp {
        display: block
    }
}

#main-visual .main-visual_img img {
    width: 100%;
    height: auto
}

#main-visual .main-visual_block {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

#main-visual .main-visual_tlt {
    text-align: center
}

#main-visual .main-visual_tlt p {
    font-size: 2.4rem;
    color: #333;
    font-weight: 700;
    word-break: break-word
}

#main-visual .main-visual_txt {
    text-align: center;
    margin: 30px 0
}

#main-visual .main-visual_txt p {
    font-size: 1.4rem;
    color: #333;
    word-break: break-word
}

.sidebar-main {
    margin-bottom: 40px
}

.sidebar-main:last-child {
    margin-bottom: 0
}

.sidebar-main .sidebar-title {
    font-size: 1.4rem;
    padding: 12px;
    background: #ef5153;
    color: #fff;
    text-align: center;
    border-radius: 10px;
    margin-bottom: 20px
}

.wide-layout ul {
    list-style-type: none;
    padding: 0;
    margin-top: 0;
    margin-bottom: 0
}

.wide-layout ul li {
    margin-bottom: 30px
}

.wide-layout ul li .side-ranking-title {
    font-size: 17px;
    line-height: 1.5;
    font-weight: 400;
    position: relative
}

@media (max-width:767px) {
    .wide-layout ul li .side-ranking-title {
        font-weight: 500
    }
}

.wide-layout ul li .side-ranking-meta {
    margin-top: 15px
}

.wide-layout ul li .side-ranking-meta .side-ranking-img img {
    display: none
}

.wide-layout ul li .side-ranking-meta .side-ranking-img a {
    overflow: hidden;
    display: block
}

.wide-layout ul li .side-ranking-meta .side-ranking-img a img {
    width: 100%;
    height: auto;
    display: block;
    background: #fff;
    -webkit-transition: color .3s ease, background .3s ease, transform .3s ease, opacity .3s ease, border .3s ease, padding .3s ease, left .3s ease, bottom .3s ease, box-shadow .3s ease;
    -webkit-transition: color .3s ease, background .3s ease, opacity .3s ease, border .3s ease, padding .3s ease, left .3s ease, bottom .3s ease, -webkit-transform .3s ease, -webkit-box-shadow .3s ease;
    transition: color .3s ease, background .3s ease, opacity .3s ease, border .3s ease, padding .3s ease, left .3s ease, bottom .3s ease, -webkit-transform .3s ease, -webkit-box-shadow .3s ease;
    -o-transition: color .3s ease, background .3s ease, transform .3s ease, opacity .3s ease, border .3s ease, padding .3s ease, left .3s ease, bottom .3s ease, box-shadow .3s ease;
    transition: color .3s ease, background .3s ease, transform .3s ease, opacity .3s ease, border .3s ease, padding .3s ease, left .3s ease, bottom .3s ease, box-shadow .3s ease;
    transition: color .3s ease, background .3s ease, transform .3s ease, opacity .3s ease, border .3s ease, padding .3s ease, left .3s ease, bottom .3s ease, box-shadow .3s ease, -webkit-transform .3s ease, -webkit-box-shadow .3s ease
}

.wide-layout ul li .side-ranking-meta .side-ranking-img a:hover img {
    -webkit-filter: opacity(0.8);
    filter: opacity(.8)
}

.wide-layout ul li .side-ranking-meta .side-ranking-info {
    font-size: 1.4rem;
    line-height: 1.5;
    margin-top: 10px;
    margin-bottom: 10px
}

.wide-layout ul li .side-btn-box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

@media (max-width:768px) {
    .wide-layout ul li .side-btn-box {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }
}

.wide-layout ul li .side-ranking-btn {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1
}

@media (max-width:768px) {
    .wide-layout ul li .side-btn-box {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }

    .wide-layout ul li .side-ranking-btn {
        -webkit-box-flex: inherit;
        -ms-flex: inherit;
        flex: inherit;
        width: 100%;
        margin: 5px auto
    }
}

.wide-layout ul li .side-ranking-btn a {
    width: 100%;
    height: auto;
    padding-left: 10px;
    padding-right: 10px
}

.wide-layout ul li:last-child {
    margin-bottom: 0
}

.wide-layout ul li:first-child .side-ranking-title {
    border-color: #ffcf24
}

.wide-layout ul li:nth-child(2) .side-ranking-title {
    border-color: #a0a9b1
}

.wide-layout ul li:nth-child(3) .side-ranking-title {
    border-color: #b26a2b
}

.simple-style .side-ranking-title {
    border-bottom: 1px solid;
    padding-left: 45px;
    padding-bottom: 3px;
    letter-spacing: 0
}

.simple-style .side-ranking-title img {
    width: 45px;
    position: absolute;
    left: -2px;
    bottom: 4px
}

.c-profile {
    text-align: center
}

.c-profile .img {
    width: 110px;
    height: 110px;
    margin: 0 auto 10px auto;
    position: relative;
    overflow: hidden;
    border-radius: 50%
}

.c-profile .img img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center
}

.c-profile .name {
    font-weight: 700;
    font-size: 1.4rem;
    margin-bottom: 5px
}

.c-profile .job {
    font-size: 1.4rem;
    color: #999;
    margin-bottom: 3px
}

.c-profile .profile-sns {
    margin-top: 10px
}

.link--wrap a {
    display: inline-block;
    vertical-align: top;
    margin: 4px;
    padding: 8px 12px;
    font-size: 1.3rem;
    font-weight: 500;
    line-height: 13px;
    color: #fff;
    background: #666
}

.searchform {
    position: relative
}

.searchform .screen-reader-text {
    display: none
}

.searchform .label__submit {
    display: inherit;
    margin-bottom: 10px
}

.searchform input[type=text] {
    background-color: #fff;
    border: 1px solid #ddd;
    height: 45px;
    width: 100%;
    margin: 0;
    padding: 0 10px;
    padding-right: 40px;
    border-radius: 50px;
    font-size: 1.3rem;
    -webkit-transition: color .3s ease, background .3s ease, transform .3s ease, opacity .3s ease, border .3s ease, padding .3s ease, left .3s ease, bottom .3s ease, box-shadow .3s ease;
    -webkit-transition: color .3s ease, background .3s ease, opacity .3s ease, border .3s ease, padding .3s ease, left .3s ease, bottom .3s ease, -webkit-transform .3s ease, -webkit-box-shadow .3s ease;
    transition: color .3s ease, background .3s ease, opacity .3s ease, border .3s ease, padding .3s ease, left .3s ease, bottom .3s ease, -webkit-transform .3s ease, -webkit-box-shadow .3s ease;
    -o-transition: color .3s ease, background .3s ease, transform .3s ease, opacity .3s ease, border .3s ease, padding .3s ease, left .3s ease, bottom .3s ease, box-shadow .3s ease;
    transition: color .3s ease, background .3s ease, transform .3s ease, opacity .3s ease, border .3s ease, padding .3s ease, left .3s ease, bottom .3s ease, box-shadow .3s ease;
    transition: color .3s ease, background .3s ease, transform .3s ease, opacity .3s ease, border .3s ease, padding .3s ease, left .3s ease, bottom .3s ease, box-shadow .3s ease, -webkit-transform .3s ease, -webkit-box-shadow .3s ease
}

.searchform input[type=text]:focus {
    border: 2px solid #ef5153;
    outline: 0;
    background: #fff
}

.searchform input[type=submit] {
    display: none
}

.searchform .label__submit:before {
    content: '\E807';
    font-family: fontello;
    position: absolute;
    top: 0;
    right: 0;
    border: none;
    height: 45px;
    width: 34px;
    background: 0 0;
    display: inline-block;
    font-size: 2rem;
    color: #aaa !important;
    line-height: 45px
}

.tagcloud a {
    background: #383838;
    display: inline-block;
    color: #fff;
    font-size: 1.2rem !important;
    padding: 5px 10px;
    margin: 3px 5px;
    border-radius: 5px
}

.recent-post.c-list01 .c-list01_items {
    width: 100%;
    margin-right: 0
}

.post-sidebar .items {
    width: 100%;
    position: relative;
    margin-bottom: 20px
}

.post-sidebar .items:last-child {
    margin-bottom: 0
}

.post-sidebar .items a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.post-sidebar .items .img {
    width: 33%;
    margin-right: 2%
}

.post-sidebar .items .img .thumb {
    padding-top: 60%;
    position: relative;
    width: 100%;
    overflow: hidden;
    border-radius: 5px
}

.post-sidebar .items .img .thumb img {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center
}

.post-sidebar .items .content {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    position: relative
}

.post-sidebar .items .inner {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    bottom: 0;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end
}

.post-sidebar .items .inner .date {
    margin-right: 10px
}

.post-sidebar .items .tlt p {
    font-size: 1.4rem;
    font-weight: 500;
    color: #333;
    font-weight: 700;
    margin-bottom: 3px
}

@media print,
screen and (max-width:768px) {
    .post-sidebar .items .tlt p {
        font-size: 1.4rem
    }
}

.post-sidebar .items .view p {
    font-size: 1.2rem;
    color: #aaa;
    padding-left: 15px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.post-sidebar .items .view span:before {
    content: "\E812";
    font-family: fontello;
    position: absolute;
    font-size: 1.2rem;
    left: -15px;
    top: 0;
    bottom: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.post-sidebar .items .date p {
    font-size: 1.2rem;
    color: #aaa
}

.widget_pages ul li {
    border-bottom: 1px dotted #ddd;
    margin: 0;
    padding: 0;
    position: relative
}

.widget_pages ul li:last-child {
    border-bottom: none
}

.widget_pages ul li a {
    display: block;
    padding: 10px;
    margin: 0;
    position: relative;
    color: #666
}

.widget_pages ul li a:hover:after {
    right: 5px;
    -webkit-transform: translate(1px, 0);
    -ms-transform: translate(1px, 0);
    transform: translate(1px, 0);
    -webkit-transition: .3s;
    -o-transition: .3s;
    transition: .3s
}

.widget_pages ul li a:after {
    content: "\E806";
    font-family: fontello;
    position: absolute;
    font-size: 1.4rem;
    right: 10px;
    color: #666
}

.widget_popularpost_widget .post-sidebar .img {
    position: relative
}

.widget_popularpost_widget .post-sidebar .img:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    width: 20px;
    height: 20px;
    font-size: 1.2rem;
    background: #333;
    color: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.widget_popularpost_widget .post-sidebar .items:nth-child(1) .img:before {
    content: "1";
    background: gold
}

.widget_popularpost_widget .post-sidebar .items:nth-child(2) .img:before {
    content: "2";
    background: silver
}

.widget_popularpost_widget .post-sidebar .items:nth-child(3) .img:before {
    content: "3";
    background: #c47222
}

.widget_popularpost_widget .post-sidebar .items:nth-child(4) .img:before {
    content: "4"
}

.widget_popularpost_widget .post-sidebar .items:nth-child(5) .img:before {
    content: "5"
}

.widget_popularpost_widget .post-sidebar .items:nth-child(6) .img:before {
    content: "6"
}

.widget_popularpost_widget .post-sidebar .items:nth-child(7) .img:before {
    content: "7"
}

.widget_popularpost_widget .post-sidebar .items:nth-child(8) .img:before {
    content: "8"
}

.widget_popularpost_widget .post-sidebar .items:nth-child(9) .img:before {
    content: "9"
}

.widget_popularpost_widget .post-sidebar .items:nth-child(10) .img:before {
    content: "10"
}

.widget_categories ul li {
    border-bottom: 1px dotted #ddd;
    margin: 0;
    padding: 0;
    position: relative
}

.widget_categories ul li a {
    display: block;
    padding: 10px;
    margin: 0;
    position: relative;
    color: #666
}

.widget_categories ul li a:hover:after {
    right: 5px;
    -webkit-transform: translate(1px, 0);
    -ms-transform: translate(1px, 0);
    transform: translate(1px, 0);
    -webkit-transition: .3s;
    -o-transition: .3s;
    transition: .3s
}

.widget_categories ul li a:after {
    content: "\E806";
    font-family: fontello;
    position: absolute;
    font-size: 1.4rem;
    right: 10px;
    color: #666
}

.widget_categories label {
    font-size: 0;
    position: relative;
    display: none
}

.widget_categories select {
    width: 100%;
    height: 40px;
    border: 1px solid #ddd;
    padding-left: 10px;
    z-index: 1;
    background: 0 0;
    position: relative;
    font-size: 1.4rem;
    -webkit-appearance: none;
    background: url("../img/60781.png");
    background-size: 15px 15px;
    background-repeat: no-repeat;
    background-position: calc(100% - 10px) center
}

.widget_categoryC select {
    width: 100%;
    height: 40px;
    border: 1px solid #e5e5e5;
    padding-left: 10px;
    z-index: 1;
    background: 0 0;
    position: relative;
    font-size: 1.4rem;
    -webkit-appearance: none;
    background: url("../img/60781.png");
    background-size: 15px 15px;
    background-repeat: no-repeat;
    background-position: calc(100% - 10px) center
}

.widget_meta ul li {
    border-bottom: 1px dotted #ddd;
    margin: 0;
    padding: 0;
    position: relative
}

.widget_meta ul li a {
    display: block;
    padding: 10px;
    margin: 0;
    position: relative;
    color: #666
}

.widget_meta ul li a:hover:after {
    right: 5px;
    -webkit-transform: translate(1px, 0);
    -ms-transform: translate(1px, 0);
    transform: translate(1px, 0);
    -webkit-transition: .3s;
    -o-transition: .3s;
    transition: .3s
}

.widget_meta ul li a:after {
    content: "\E806";
    font-family: fontello;
    position: absolute;
    font-size: 1.4rem;
    right: 10px;
    color: #666
}

.widget_archive ul li {
    border-bottom: 1px dotted #ddd;
    margin: 0;
    padding: 0;
    position: relative
}

.widget_archive ul li a {
    display: block;
    padding: 10px;
    margin: 0;
    position: relative;
    color: #666
}

.widget_archive ul li a:hover:after {
    right: 5px;
    -webkit-transform: translate(1px, 0);
    -ms-transform: translate(1px, 0);
    transform: translate(1px, 0);
    -webkit-transition: .3s;
    -o-transition: .3s;
    transition: .3s
}

.widget_archive ul li a:after {
    content: "\E806";
    font-family: fontello;
    position: absolute;
    font-size: 1.4rem;
    right: 10px;
    color: #666
}

.widget_archive label {
    font-size: 0;
    position: relative;
    display: none
}

.widget_archive select {
    width: 100%;
    height: 40px;
    border: 1px solid #ddd;
    padding-left: 10px;
    z-index: 1;
    background: 0 0;
    position: relative;
    font-size: 1.4rem;
    -webkit-appearance: none;
    background: url("../img/60781.png");
    background-size: 15px 15px;
    background-repeat: no-repeat;
    background-position: calc(100% - 10px) center
}

.widget_calendar table caption {
    padding: 8px 0;
    margin-bottom: 8px;
    background: #ececec
}

.widget_calendar table tr th {
    text-align: center;
    padding: 3px 0
}

.widget_calendar table tr td {
    text-align: center;
    font-size: 1.4rem;
    padding: 3px 0
}

.widget_calendar #calendar_wrap {
    background: #fff;
    padding-bottom: 8px
}

.widget_calendar #prev a {
    color: #333 !important;
    font-size: 1.4rem
}

.widget_calendar #next a {
    color: #333 !important
}

.widget_pages ul li {
    border-bottom: 1px dotted #ddd;
    margin: 0;
    padding: 0;
    position: relative
}

.widget_pages ul li:last-child {
    border-bottom: none
}

.widget_pages ul li a {
    display: block;
    padding: 10px;
    margin: 0;
    position: relative;
    color: #666
}

.widget_pages ul li a:hover:after {
    right: 5px;
    -webkit-transform: translate(1px, 0);
    -ms-transform: translate(1px, 0);
    transform: translate(1px, 0);
    -webkit-transition: .3s;
    -o-transition: .3s;
    transition: .3s
}

.widget_pages ul li a:after {
    content: "\E806";
    font-family: fontello;
    position: absolute;
    font-size: 1.4rem;
    right: 10px;
    color: #666
}

.intro-site .intro-text {
    margin-top: 5px;
    text-align: center;
    color: #333
}

.widget_rss h4 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.widget_rss h4 .rsswidget {
    font-size: 1.4rem;
    color: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-right: 5px
}

.widget_rss ul li {
    padding: 10px 0;
    border-bottom: 1px solid #ddd
}

.widget_rss ul li a {
    font-size: 1.4rem;
    color: #333;
    font-weight: 700;
    display: block
}

.widget_rss ul li .rss-date {
    font-size: 1.4rem;
    padding: 5px 0;
    display: block
}

.widget_rss ul li .rssSummary {
    font-size: 1.4rem;
    display: block
}

.widget_rss ul li cite {
    display: none
}

.widget_nav_menu ul li {
    border-bottom: 1px dotted #ddd;
    margin: 0;
    padding: 0;
    position: relative
}

.widget_nav_menu ul li .sub-menu {
    padding-left: 15px
}

.widget_nav_menu ul li .sub-menu a {
    border-bottom: none
}

.widget_nav_menu ul .menu-item-has-children {
    border-bottom: none
}

.widget_nav_menu ul .menu-item-has-children a {
    border-bottom: 1px dotted #ddd
}

.widget_nav_menu ul li a {
    display: block;
    padding: 10px;
    margin: 0;
    position: relative;
    color: #666
}

.widget_nav_menu ul li a:hover:after {
    right: 5px;
    -webkit-transform: translate(1px, 0);
    -ms-transform: translate(1px, 0);
    transform: translate(1px, 0);
    -webkit-transition: .3s;
    -o-transition: .3s;
    transition: .3s
}

.widget_nav_menu ul li a:after {
    content: "\E806";
    font-family: fontello;
    position: absolute;
    font-size: 1.4rem;
    right: 10px;
    color: #666
}

.gallery {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.gallery dt a {
    width: 100%;
    display: block;
    position: relative;
    padding-top: 100%
}

.gallery dt a img {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center
}

.calendar_wrap {
    background: #fff
}

#toTop {
    background: #434343;
    color: #fff;
    text-align: center;
    width: 100%;
    z-index: 9;
    padding: 10px;
    cursor: pointer
}

@media print,
screen and (max-width:768px) {
    #toTop {
        right: 0;
        bottom: 60px
    }
}

#toTop:hover {
    opacity: .7
}

#toTop span {
    cursor: pointer
}

.u-clearfix::after {
    clear: both;
    content: " ";
    display: table
}

.l-author {
    background: #f6f6f6;
    padding: 30px
}

.p-entry .l-author {
    margin-bottom: 30px
}

.p-entry .l-author+.l-author {
    margin-top: -30px
}

.l-author_image {
    border-radius: 50%;
    display: block;
    float: left;
    margin-left: 5px;
    overflow: hidden;
    height: 130px;
    width: 130px;
    -webkit-backface-visibility: hidden;
    -webkit-transform: translate3d(0, 0, 0)
}

@media only screen and (max-width:639px) {
    .l-author_image {
        float: inherit;
        margin: 0 auto
    }
}

.l-author_image img {
    display: block;
    height: 100%;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.l-author_info {
    margin-left: 165px
}

@media only screen and (max-width:639px) {
    .l-author_info {
        width: 100%;
        margin-left: 0;
        margin-top: 20px
    }
}

.l-author_tlt {
    display: inline-block;
    font-size: 1.4rem;
    line-height: 1.8;
    margin-right: 18px;
    font-weight: 700
}

.l-author_txt {
    color: #666;
    line-height: 1.5;
    margin-top: 10px
}

.l-author_txt p+p {
    margin-top: 12px
}

.l-author_inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: 20px;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.l-author_info .l-author_nav {
    font-size: 12px
}

.l-author_link {
    color: #333;
    font-size: 1.2rem;
    padding-top: 5px
}

@media print,
screen and (max-width:768px) {
    .l-author_link {
        padding-top: 0
    }
}

.l-author_link::after {
    content: "\E803";
    font-family: fontello;
    padding-left: 5px
}

.l-author_nav__item {
    display: inline-block;
    margin-right: 16px
}

.l-author_nav__item:last-child {
    margin-right: 0
}

.l-author_nav__item a {
    color: #333
}

.l-author_nav__item a::before {
    font-family: fontello;
    font-size: 1.4rem
}

.l-author_nav__item--instagram a::before {
    content: "\F16D"
}

.l-author_nav__item--twitter a::before {
    content: "\F099"
}

.l-author_nav__item--pinterest a::before {
    content: "\F231"
}

.l-author_nav__item--facebook a::before {
    content: "\F09A"
}

.l-author_nav__item--youtube a::before {
    content: "\F315"
}

.l-author_nav__item--contact a::before {
    content: "\E81A"
}

.l-author_nav__item--url a::before {
    content: "\E817"
}

.l-author_nav__item--rss a::before {
    content: "\F09E"
}

.sns {
    margin-bottom: 30px
}

.sns ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    align-items: center;
    clear: both
}

.sns ul p {
    margin-bottom: 0;
    margin-right: 5px;
    font-weight: 700
}

.sns ul li {
    width: 40px;
    height: 40px;
    margin-right: 10px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center
}

.sns ul li:hover {
    opacity: .7
}

.sns ul li a {
    color: #fff;
    display: inline-block;
    font-size: 1.2rem;
    width: 100%;
    position: relative;
    text-align: center
}

@media print,
screen and (max-width:768px) {
    .sns ul li a {
        font-size: 0;
        width: 100%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center
    }
}

.sns ul li a:before {
    font-family: fontello;
    font-size: 1.4rem
}

@media print,
screen and (max-width:768px) {
    .sns ul li a:before {
        text-align: center;
        width: 100%;
        margin-right: 0
    }
}

.sns ul .twitter {
    background: #55acee
}

.sns ul .twitter a:before {
    content: "\F099"
}

.sns ul .facebook {
    background: #315096
}

.sns ul .facebook a:before {
    content: "\F09A"
}

.sns ul .hatena {
    background: #008fde
}

.sns ul .hatena a:before {
    content: "B!";
    font-weight: 700
}

.sns ul .google {
    background: #dd4b39
}

.sns ul .google a:before {
    content: "\F0D5"
}

.sns ul .pocket {
    background: #ff0047
}

.sns ul .pocket a:before {
    content: "\F265"
}

.sns ul .feedly {
    background: #6cc655
}

.sns ul .feedly a:before {
    content: "\F09E"
}

.sns.fixed {
    max-width: 80px;
    width: 100%;
    position: fixed;
    left: 0;
    top: 0;
    background: #eee;
    padding: 15px 0;
    top: 50%;
    z-index: 10;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%)
}

@media print,
screen and (max-width:768px) {
    .sns.fixed {
        width: 100%;
        max-width: inherit;
        left: 0;
        bottom: 0;
        top: inherit;
        -webkit-transform: inherit;
        -ms-transform: inherit;
        transform: inherit;
        margin-bottom: 0;
        height: 60px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }

    .sns.fixed ul {
        width: 100%
    }
}

.sns.fixed ul {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

@media print,
screen and (max-width:768px) {
    .sns.fixed ul {
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        padding: 0 10px;
        margin-bottom: 0
    }
}

.sns.fixed li {
    width: 50px;
    height: 50px;
    margin: 5px 0
}

.sns.fixed li a {
    font-size: 0;
    width: 100%;
    height: 100%
}

.sns.fixed li a:before {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 1.6rem;
    margin-right: 0
}

.post__views span:before {
    content: "\E812";
    font-family: fontello;
    font-size: 1.4rem
}

.c-list_head h2,
.c-list_head p {
    font-size: 2.8rem;
    font-weight: 700;
    padding-bottom: 5px;
    border-bottom: 1px solid #555
}

.c-entries_list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: 20px;
    margin-bottom: 30px
}

.c-entries_items {
    width: 32%;
    margin-bottom: 15px;
    -webkit-transition: color .3s ease, background .3s ease, opacity .3s ease, border .3s ease, padding .3s ease, left .3s ease, bottom .3s ease, -webkit-transform .3s ease, -webkit-box-shadow .3s ease;
    transition: color .3s ease, background .3s ease, opacity .3s ease, border .3s ease, padding .3s ease, left .3s ease, bottom .3s ease, -webkit-transform .3s ease, -webkit-box-shadow .3s ease;
    -o-transition: color .3s ease, background .3s ease, transform .3s ease, opacity .3s ease, border .3s ease, padding .3s ease, left .3s ease, bottom .3s ease, box-shadow .3s ease;
    transition: color .3s ease, background .3s ease, transform .3s ease, opacity .3s ease, border .3s ease, padding .3s ease, left .3s ease, bottom .3s ease, box-shadow .3s ease;
    transition: color .3s ease, background .3s ease, transform .3s ease, opacity .3s ease, border .3s ease, padding .3s ease, left .3s ease, bottom .3s ease, box-shadow .3s ease, -webkit-transform .3s ease, -webkit-box-shadow .3s ease;
    margin-right: 1.3%
}

.c-entries_items ._items {
    box-shadow: none
}

.c-entries_items ._items ._items-img figure {
    height: 145px
}

.page_404 .c-entries_items ._items ._items-img figure {
    height: 210px
}

@media only screen and (max-width:639px) {
    .c-entries_items {
        width: 48%;
        margin-right: 4%
    }

    .c-entries_items:nth-child(2n) {
        margin-right: 0
    }
}

.c-entries_items .c-entries_link {
    position: relative;
    padding: 0;
    height: 100%
}

.c-entries_items .c-entries_post {
    position: relative;
    border-radius: 2px;
    background: #fff
}

.c-entries_items .c-entries_thumb {
    width: 100%;
    height: auto;
    position: relative;
    padding-top: 60%;
    overflow: hidden
}

.c-entries_items .c-entries_thumb img {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0
}

.c-entries_items .c-entries_conts {
    padding: 10px 5px
}

@media print,
screen and (max-width:768px) {
    .c-entries_items .c-entries_conts {
        padding: 5px
    }
}

.c-entries_items .c-entries_cat {
    top: 0;
    left: 0;
    font-weight: 400;
    padding: 2px 10px;
    display: inline;
    margin-right: 0;
    letter-spacing: 0;
    position: absolute;
    color: #fff !important;
    font-size: 1rem
}

.c-entries_items .c-entries_headline {
    font-size: 1.4rem;
    color: #333;
    font-weight: 700;
    line-height: 1.4
}

.c-entries_items .c-entries_inner {
    font-size: 1.2rem;
    margin-top: 5px;
    padding-bottom: 0;
    color: #333;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 100%;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

@media print,
screen and (max-width:768px) {
    .c-entries_items .c-entries_inner {
        padding: 10px 0;
        padding-bottom: 0;
        margin-top: 0
    }
}

.c-entries_items .c-entries_date {
    font-size: 1rem;
    color: #aaa;
    margin-right: 5px
}

.c-entries_items .c-entries_view {
    font-size: 1rem;
    color: #aaa
}

.c-entries_items .author-info {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    margin-top: 5px
}

.c-entries_items .author-info img {
    margin: 0;
    display: block;
    -webkit-flex-basis: 40px;
    -ms-flex-preferred-size: 40px;
    flex-basis: 40px;
    max-width: 40px;
    width: 40px;
    height: 40px;
    border: 3px solid #fff;
    border-radius: 50%;
    box-shadow: 0 2px 6px rgba(0, 0, 0, .24);
    -webkit-transition: opacity .25s ease;
    transition: opacity .25s ease
}

.c-entries_items .author-info span {
    font-weight: 400;
    display: block;
    font-size: 1.2rem;
    margin-bottom: 10px
}

.c-entries_items .author-info p {
    display: inline-block;
    margin: 0 0 0 5px;
    font-size: 1rem;
    font-weight: 700;
    line-height: 1;
    color: #181818;
    -webkit-transition: color .25s ease;
    transition: color .25s ease
}

@media (max-width:639px) {
    .c-entries_items .author-info {
        margin-top: 5px
    }

    .c-entries_items .author-info img {
        -webkit-flex-basis: 30px;
        -ms-flex-preferred-size: 30px;
        flex-basis: 30px;
        max-width: 30px;
        width: 30px;
        height: 30px
    }

    .c-entries_items .author-info p {
        font-size: 1.2rem
    }
}

.c-post_hover img {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-transform: scale(1);
    -webkit-transition-property: opacity, scale, -webkit-transform, transform;
    -webkit-transition-duration: .35s;
    -moz-transform: scale(1);
    -moz-transition-property: opacity, scale, -moz-transform, transform;
    -moz-transition-duration: .35s;
    -ms-transform: scale(1);
    -ms-transition-property: opacity, scale, -ms-transform, transform;
    -ms-transition-duration: .35s;
    -o-transform: scale(1);
    -o-transition-property: opacity, scale, -o-transform, transform;
    -o-transition-duration: .35s;
    transform: scale(1);
    -webkit-transition-property: opacity, scale, -webkit-transform;
    transition-property: opacity, scale, -webkit-transform;
    -o-transition-property: opacity, scale, transform;
    transition-property: opacity, scale, transform;
    transition-property: opacity, scale, transform, -webkit-transform;
    transition-duration: .35s
}

.c-post_hover:hover img {
    -webkit-transform: scale(1.2);
    -ms-transform: scale(1.2);
    transform: scale(1.2);
    opacity: .5
}

.c-post_hover:hover .author-info img {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1)
}

.c-post_hover:hover a,
.c-post_hover:hover p,
.c-post_hover:hover span {
    color: #888;
    opacity: .7
}

.c-image_hover img {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-transform: scale(1);
    -webkit-transition-property: opacity, scale, -webkit-transform, transform;
    -webkit-transition-duration: .35s;
    -moz-transform: scale(1);
    -moz-transition-property: opacity, scale, -moz-transform, transform;
    -moz-transition-duration: .35s;
    -ms-transform: scale(1);
    -ms-transition-property: opacity, scale, -ms-transform, transform;
    -ms-transition-duration: .35s;
    -o-transform: scale(1);
    -o-transition-property: opacity, scale, -o-transform, transform;
    -o-transition-duration: .35s;
    transform: scale(1);
    -webkit-transition-property: opacity, scale, -webkit-transform;
    transition-property: opacity, scale, -webkit-transform;
    -o-transition-property: opacity, scale, transform;
    transition-property: opacity, scale, transform;
    transition-property: opacity, scale, transform, -webkit-transform;
    transition-duration: .35s
}

.c-image_hover:hover img {
    -webkit-transform: scale(1.2);
    -ms-transform: scale(1.2);
    transform: scale(1.2);
    opacity: .5
}

.c-related_list {
    margin-top: 20px
}

.c-related_list .items {
    margin-top: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid #ddd;
    background: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    position: relative;
    transition: color .3s ease, background .3s ease, transform .3s ease, opacity .3s ease, border .3s ease, padding .3s ease, left .3s ease, bottom .3s ease, box-shadow .3s ease, -webkit-transform .3s ease, -webkit-box-shadow .3s ease;
    border-radius: 2px
}

.c-related_list .items ._wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    position: relative;
    transition: color .3s ease, background .3s ease, transform .3s ease, opacity .3s ease, border .3s ease, padding .3s ease, left .3s ease, bottom .3s ease, box-shadow .3s ease, -webkit-transform .3s ease, -webkit-box-shadow .3s ease;
    border-radius: 2px;
    width: 100%
}

@media print,
screen and (max-width:768px) {
    .c-related_list .items {
        margin: 0;
        margin-bottom: 20px
    }
}

.c-related_list .items ._readmore {
    display: block;
    width: 120px;
    font-size: 1.4rem;
    line-height: 1.6;
    text-align: center;
    border: 1px solid #333;
    border-radius: 50px;
    margin-left: auto;
    margin-top: 10px
}

.c-related_list .items ._readmore:hover {
    background: #000;
    color: #fff;
    text-decoration: underline
}

.c-related_list .items__left {
    width: 240px;
    overflow: hidden
}

@media print,
screen and (max-width:768px) {
    .c-related_list .items__left {
        width: 30%;
        margin-right: 2%
    }
}

.c-related_list .items__left .thumb {
    width: 100%;
    position: relative;
    height: 144px;
    border-radius: 5px;
    overflow: hidden
}

.c-related_list .items__left .thumb img {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center
}

.c-related_list .items__left .items__cat {
    top: 0;
    left: 0;
    font-weight: 400;
    padding: 2px 10px;
    display: inline;
    letter-spacing: 0;
    position: absolute;
    color: #fff !important;
    font-size: 1rem
}

.c-related_list .items__right {
    position: relative;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    margin-left: 15px
}

@media print,
screen and (max-width:768px) {
    .c-related_list .items__right {
        margin-left: 0
    }
}

.c-related_list .items__right .items__title {
    font-size: 1.6rem;
    font-weight: 700;
    color: #333;
    margin-bottom: 0;
    line-height: 1.6
}

.c-related_list .single_tag {
    margin: 0
}

.c-related_list .single_tag_wrap {
    margin-top: 10px
}

.c-related_list .single_tag li a,
.c-related_list .single_tag li span {
    font-size: 1.2rem
}

.c-related_list .items__right .items__content {
    font-size: 1.2rem;
    margin-top: 5px
}

.c-related_list .items__right .items__inner {
    font-size: 1.2rem;
    padding-bottom: 0;
    position: relative;
    margin-bottom: 5px;
    color: #333;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 100%;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.c-related_list .items-box {
    display: flex;
    flex-wrap: wrap;
    margin-top: 5px
}

.c-related_list .items-box p,
.c-related_list .items-box span {
    font-size: 1.4rem;
    line-height: 1.6
}

.c-related_list .items-box p {
    margin-bottom: 0
}

.c-related_list .items-box span {
    padding: 0 10px
}

@media print,
screen and (max-width:768px) {
    .c-related_list .items__right .items__inner {
        bottom: 0
    }
}

.c-related_list .items__right .items__date {
    color: #aaa;
    font-size: 1.2rem;
    margin-right: 10px
}

@media print,
screen and (max-width:768px) {
    .c-related_list .items__right .items__date {
        font-size: 1.2rem
    }
}

.c-related_list .items__right .items__views {
    color: #aaa;
    font-size: 1.2rem
}

@media print,
screen and (max-width:768px) {
    .c-related_list .items__right .items__title {
        font-size: 1.4rem
    }

    .c-related_list .items-box ._items-date {
        font-size: 1.2rem
    }

    .c-related_list .items__right .items__views {
        font-size: 1.2rem
    }
}

.c-related_list .items__right .author-info {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    margin-top: 10px
}

.c-related_list .items__right .author-info img {
    margin: 0;
    display: block;
    -webkit-flex-basis: 45px;
    -ms-flex-preferred-size: 45px;
    flex-basis: 45px;
    max-width: 45px;
    width: 45px;
    height: 45px;
    border: 3px solid #fff;
    border-radius: 50%;
    box-shadow: 0 2px 6px rgba(0, 0, 0, .24);
    -webkit-transition: opacity .25s ease;
    transition: opacity .25s ease
}

.c-related_list .items__right .author-info span {
    font-weight: 400;
    display: block;
    font-size: 1.2rem;
    margin-bottom: 10px
}

.c-related_list .items__right .author-info p {
    display: inline-block;
    margin: 0 0 0 10px;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1;
    color: #181818;
    -webkit-transition: color .25s ease;
    transition: color .25s ease
}

@media (max-width:639px) {
    .c-related_list .items__right .author-info {
        margin-top: 5px
    }

    .c-related_list .items__right .author-info img {
        -webkit-flex-basis: 30px;
        -ms-flex-preferred-size: 30px;
        flex-basis: 30px;
        max-width: 30px;
        width: 30px;
        height: 30px
    }

    .c-related_list .items__right .author-info p {
        font-size: 1.2rem
    }
}

.c-related_list .items__cat {
    top: 0;
    left: 0;
    font-weight: 400;
    padding: 2px 10px;
    display: inline;
    letter-spacing: 0;
    color: #aaa;
    font-size: 1.2rem;
    margin-bottom: 0
}

.c-related_list .items__cat:before {
    content: "\E808";
    font-family: fontello;
    font-size: 1.2rem
}

.page_author .author__part {
    margin-bottom: 50px;
    padding-top: 0
}

.page_author p.page-title {
    margin-bottom: 15px
}

.c-single {
    background: #fff;
    position: relative
}

.c-single p img {
    margin: 10px 0;
    height: auto;
    display: block
}

.l-single_thumbnail {
    position: relative;
    margin-bottom: 30px;
    overflow: hidden
}

.l-single_thumbnail img {
    width: 100%;
    height: auto
}

.c-single .cats a {
    display: inline-block;
    padding: 4px 12px 3px;
    font-size: 1.2rem;
    font-weight: 700;
    letter-spacing: .08em;
    line-height: 1;
    color: #333;
    border-radius: 20px;
    border: 1px solid #333;
    overflow: hidden;
    margin: 3px 3px 3px 0;
}

.c-single .cats {
    margin-bottom: 20px
}

.c-single .cats a:hover {
    background: #333;
    color: #fff
}

.single-banner {
    margin-bottom: 30px
}

.single-banner img {
    width: 100%;
    height: auto
}

.author__wrapper .author-info {
    margin-bottom: 10px
}

.author__wrapper .author-info a {
    display: flex;
    align-items: center;
    flex-wrap: wrap
}

.author__wrapper .author-info img {
    margin: 0;
    display: block;
    -webkit-flex-basis: 62px;
    -ms-flex-preferred-size: 62px;
    flex-basis: 62px;
    max-width: 62px;
    width: 62px;
    height: 62px;
    border: 3px solid #fff;
    border-radius: 50%;
    box-shadow: 0 2px 6px rgba(0, 0, 0, .24);
    -webkit-transition: opacity .25s ease;
    transition: opacity .25s ease
}

.author__wrapper .author-info span {
    font-weight: 400;
    display: block;
    font-size: 1.2rem;
    margin-bottom: 10px
}

.author__wrapper .author-info p {
    display: inline-block;
    margin: 0 0 0 10px;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1;
    color: #181818;
    -webkit-transition: color .25s ease;
    transition: color .25s ease
}

.c-single .headline {
    margin-top: 10px;
    margin-bottom: 15px
}

.c-single .headline h1 {
    font-size: 3rem;
    font-weight: 700;
    margin-bottom: 0;
    line-height: 1.5;
    letter-spacing: .02em
}

.c-single .date {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.c-single .date p {
    font-size: 1.4rem;
    color: #afafaf;
    margin-bottom: 0
}

.c-single .date .pub span:before {
    content: "\E80F"
}

.c-single .date .update {
    margin-left: 15px
}

.c-single .date .update span:before {
    content: "\E80C"
}

.c-single .date .views {
    margin-left: 15px
}

.single_tag {
    margin-bottom: 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.page_404 .c-newList,
.page_search .c-newList {
    margin: 50px 0
}

p.page-title {
    font-size: 2.8rem;
    font-weight: 700;
    text-align: left
}

.tagscats_list {
    margin-bottom: 30px
}

.totop_btn a {
    display: block;
    max-width: 300px;
    height: 60px;
    border: 1px solid #ef5153;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    color: #fff;
    font-size: 1.4rem;
    margin: 30px auto;
    border-radius: 50px;
    background: #ef5153
}

.cats404_list {
    margin-bottom: 30px
}

.cats404_list ul,
.tags404_list ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: 16px
}

.cats404_list ul {
    margin-bottom: -10px
}

.cats404_list ul a {
    padding: 5px 15px;
    border: 1px solid #333;
    border-radius: 50px
}

.cats404_list li {
    margin-right: 10px;
    margin-bottom: 10px
}

.tags404_list ul a {
    background: #f1f1f1;
    display: block;
    border-radius: 5px;
    padding: 3px 10px;
    font-size: 1.6rem;
    line-height: 1.4;
    white-space: nowrap;
    text-decoration: none
}

.tags404_list li {
    margin-right: 10px;
    margin-bottom: 10px
}

p.txt_404 {
    text-align: center;
    margin: 15px 0
}

.page_404 .searchform {
    margin-bottom: 30px
}

.page_404 p.page-title {
    text-align: center
}

.page_search p.page-title {
    margin-bottom: 15px
}

.page_search .txt_404 {
    text-align: left
}

.post-cta {
    color: #fff;
    margin-bottom: 30px;
    font-size: 1.4rem
}

.post-cta h3 {
    text-align: center;
    margin-bottom: 10px;
    font-size: 2.5rem
}

.post-cta--content img {
    height: auto
}

p:empty {
    display: none
}

.aligncenter,
div.aligncenter {
    display: block;
    margin: 5px auto 5px auto
}

.alignright {
    float: right;
    margin: 5px 0 20px 20px
}

.alignleft {
    float: left;
    margin: 5px 20px 20px 0
}

a img.alignright {
    float: right;
    margin: 5px 0 20px 20px
}

a img.alignnone {
    margin: 5px 20px 20px 0
}

a img.alignleft {
    float: left;
    margin: 5px 20px 20px 0
}

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

.wp-caption {
    background: #fff;
    border: 1px solid #f0f0f0;
    max-width: 96%;
    padding: 5px 3px 10px;
    text-align: center
}

.wp-caption.alignnone {
    margin: 5px 20px 20px 0
}

.wp-caption.alignleft {
    margin: 5px 20px 20px 0
}

.wp-caption.alignright {
    margin: 5px 0 20px 20px
}

.wp-caption img {
    border: 0 none;
    height: auto;
    margin: 0;
    max-width: 98.5%;
    padding: 0;
    width: auto
}

.wp-caption p.wp-caption-text {
    font-size: 11px;
    line-height: 17px;
    margin: 0;
    padding: 0 4px 5px
}

.screen-reader-text {
    border: 0;
    clip: rect(1px, 1px, 1px, 1px);
    -webkit-clip-path: inset(50%);
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute !important;
    width: 1px;
    word-wrap: normal !important
}

.screen-reader-text:focus {
    background-color: #eee;
    clip: auto !important;
    -webkit-clip-path: none;
    clip-path: none;
    color: #444;
    display: block;
    font-size: 1em;
    height: auto;
    left: 5px;
    line-height: normal;
    padding: 15px 23px 14px;
    text-decoration: none;
    top: 5px;
    width: auto;
    z-index: 100000
}

.marker4 {
    background-color: #fff1a3;
    font-weight: 700
}

.marker5 {
    background-color: #a9eaf2;
    font-weight: 700
}

.marker6 {
    background-color: #ff92f7;
    font-weight: 700
}

.long-desc {
    margin-top: -30px;
    display: none
}

.moreContent,
.moreContentL {
    clear: both;
    display: block;
    color: #333;
    text-align: center;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 1.2rem;
    border-top: 1px solid #f0f0f0;
    padding-top: 10px
}

.moreContent span,
.moreContentL span {
    -webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg);
    display: block;
    margin-left: 10px
}

.moreContent span:after,
.moreContentL span:after {
    content: "\E804";
    font-family: fontello;
    font-size: 1.4rem
}

.lessContent,
.lessContentL {
    clear: both;
    display: block;
    color: #333;
    text-align: center;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 1.2rem;
    border-top: 1px solid #f0f0f0;
    padding-top: 10px
}

.lessContent span,
.lessContentL span {
    display: block;
    margin-left: 10px
}

.lessContent span:after,
.lessContentL span:after {
    content: "\E804";
    font-family: fontello;
    font-size: 1.4rem
}

.c-list_popular {
    position: relative
}

.c-list_entries {
    position: relative
}

.top-slider {
    position: relative;
    padding-bottom: 40px
}

.top-slider:hover .s-arrow {
    display: block !important
}

.top-slider .top-slider_items {
    position: relative
}

.top-slider .top-slider_items .image {
    overflow: hidden
}

.top-slider .top-slider_items .image .thumb {
    position: relative;
    padding-top: 60%
}

.top-slider .top-slider_items .image .thumb img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-position: center;
    object-position: center;
    -o-object-fit: cover;
    object-fit: cover
}

.top-slider .top-slider_items .cats {
    font-weight: 400;
    padding: 3px 10px;
    display: inline;
    margin-right: 10px;
    position: absolute;
    top: 0;
    left: 0;
    letter-spacing: 0;
    color: #fff;
    font-size: 1.4rem
}

.top-slider .top-slider_items .inner {
    background: #fff;
    width: 100%;
    padding: 15px 10px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.top-slider .top-slider_items .inner .tlt {
    margin-top: 5px;
    margin-bottom: 5px;
    width: 100%
}

.top-slider .top-slider_items .inner .tlt p {
    color: #333;
    font-size: 2rem
}

.top-slider .top-slider_items .inner .txt {
    color: #333;
    font-size: 1.4rem
}

.top-slider .top-slider_items .inner .views {
    width: 100%
}

.top-slider .top-slider_items .inner .views p {
    color: #fff;
    font-size: 1.4rem;
    text-align: right
}

.top-slider .s-arrow {
    display: none !important
}

@media print,
screen and (max-width:768px) {
    .top-slider .s-arrow {
        display: block !important
    }
}

.top-slider .s-arrow:before {
    font-family: fontello;
    position: absolute;
    top: calc(50% - 20px);
    width: 40px;
    height: 40px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    color: #fff;
    cursor: pointer;
    font-size: 5rem
}

.l-visual .top-slider .s-arrow:before {
    font-family: fontello;
    position: absolute;
    top: calc(50% - 20px);
    width: 40px;
    height: 40px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    color: #333;
    cursor: pointer;
    font-size: 5rem
}

@media print,
screen and (max-width:768px) {
    .top-slider .s-arrow:before {
        font-size: 3.5rem
    }
}

.top-slider .s-prev:before {
    content: "\E802";
    left: 10px
}

@media print,
screen and (max-width:768px) {
    .top-slider .s-prev:before {
        left: 0
    }
}

.top-slider .s-next:before {
    content: "\E803";
    right: 10px
}

@media print,
screen and (max-width:768px) {
    .top-slider .s-next:before {
        right: 0
    }
}

.c-top_list01 {
    margin-top: 0
}

.c-top_list01 a:nth-child(1) .items {
    margin-top: 0
}

.c-top_list02 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.c-top_list02.c-entries_list {
    margin-top: 0
}

.partA .top-slider {
    margin-top: 0;
    padding-top: 0;
    padding-bottom: 0;
    margin-bottom: 40px
}

.partA .top-slider.--footer {
    margin-bottom: 0;
    padding-top: 30px
}

.partA .top-slider .cats {
    position: absolute;
    top: 0;
    left: 0
}

.partA .top-slider .inner .tlt p {
    font-size: 1.4rem
}

.tbl01 {
    width: 100%;
    border-collapse: collapse;
    line-height: 1.6;
    margin-bottom: 30px
}

.tbl01 th {
    padding: 14px 20px;
    border: 1px solid #fafafa;
    background-color: #e0e0e0;
    text-align: center;
    font-size: 1.8rem
}

.tbl01 td {
    padding: 18px 20px;
    border: 1px solid #e8e8e8;
    vertical-align: middle;
    text-align: center;
    font-size: 1.8rem
}

.wpcf7-response-output {
    font-size: 1.2rem !important
}

.wpcf7-not-valid {
    background: #ffb6c1 !important
}

span.wpcf7-not-valid-tip {
    font-size: 1rem !important
}

.wpcf7 .wpcf7-validation-errors {
    color: #b94a48;
    background-color: #f2dede !important;
    border: 1px solid #eed3d7 !important
}

div.wpcf7-validation-errors {
    border: 1px solid red;
    color: red;
    background: #f2dede;
    padding: 10px
}

div.wpcf7-mail-sent-ok {
    background: #e6faeb;
    border: 1px solid #159867;
    color: #159867;
    padding: 10px
}

.c-form {
    width: 100%;
    margin: 0 auto
}

.c-form dl {
    display: flex;
    flex-wrap: wrap;
    padding: 20px 0;
    border-bottom: 1px solid #e8e8e8
}

.c-form .checkBox {
    margin-top: 30px
}

.c-form .checkBox a {
    border-bottom: 1px solid #333;
    padding-bottom: 1px;
    line-height: 1.6;
    color: #333
}

.c-form dt {
    flex: 0 0 280px;
    font-size: 1.6rem;
    color: #333;
    line-height: 1.6;
    font-weight: 700;
    position: relative
}

.c-form dt:after {
    content: '必須';
    background: #ef5153;
    color: #fff;
    font-size: 1.2rem;
    line-height: 1;
    padding: 5px 10px;
    border-radius: 4px;
    position: absolute;
    right: 10px
}

.c-form dd {
    padding: 0 20px;
    flex: 1
}

.c-form dd input[type=email],
.c-form dd input[type=tel],
.c-form dd input[type=text] {
    height: 50px;
    background: 0 0;
    max-width: 500px;
    width: 100%;
    font-size: 1.4rem;
    padding: 0 10px;
    border: 1px solid #aaa;
    background: #fff;
    border-radius: 5px
}

.c-form dd input:focus {
    background: #fff;
    outline: 0;
    border: 3px solid #ef5153
}

.c-form dd select {
    height: 50px;
    background: 0 0;
    max-width: 500px;
    width: 100%;
    font-size: 1.4rem;
    padding: 0 10px;
    border: 1px solid #aaa;
    background: #fff;
    border-radius: 5px
}

.c-form dd input[type=email].is-error,
.c-form dd input[type=tel].is-error,
.c-form dd input[type=text].is-error,
select.is-error,
textarea.is-error {
    color: #b94a48 !important;
    background-color: #f2dede !important;
    border: 1px solid #eed3d7 !important
}

.c-form dd textarea {
    height: 200px;
    max-width: 500px;
    width: 100%;
    font-size: 1.4rem;
    padding: 10px;
    font-family: inherit;
    display: block;
    border: 1px solid #aaa;
    font-family: none;
    border-radius: 5px
}

.c-form dd input[type=radio] {
    width: 20px;
    height: 20px;
    border: 1px solid #aaa;
    margin-right: 5px
}

.c-form dd .wpcf7-list-item {
    margin: 0;
    margin-right: 20px
}

.c-form dd .wpcf7-radio .wpcf7-list-item {
    display: block;
    margin-right: 0
}

.c-form dd .wpcf7-list-item label {
    display: flex;
    align-items: center
}

.c-form .check-rule span.wpcf7-list-item label {
    display: flex;
    align-items: center
}

.c-form .check-rule .wpcf7-list-item-label {
    font-size: 1.4rem;
    line-height: 1.6
}

.c-form .check-rule input[type=checkbox] {
    width: 20px;
    height: 20px;
    border: 1px solid #333;
    margin-right: 5px
}

.error_empty,
.error_mail,
.error_mail_confirm,
.error_tel {
    color: red;
    font-size: 1.2rem;
    display: none;
    margin-top: 3px
}

.error_display {
    background: #ffb6c1 !important
}

.error_checked {
    color: red;
    font-size: 1.2rem;
    display: none;
    text-align: center;
    margin-top: 5px
}

.c-form .contact-btn {
    display: flex;
    justify-content: center;
    margin-top: 30px
}

.c-form .bnt-contact {
    display: inline-block;
    background: #fbd347;
    border-radius: 50px;
    color: #333;
    padding: 10px 20px;
    width: 400px;
    height: 60px;
    text-align: center;
    margin: 0 auto;
    position: relative;
    font-weight: 700;
    border: none;
    overflow: hidden;
}

.c-form .bnt-contact input {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: 0 0;
    border: none;
    font-weight: 700
}

.c-form .bnt-contact button {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: 0 0;
    border: none;
    font-weight: 700
}

.mw_wp_form_input .bnt-prev-confirm {
    display: none
}

.mw_wp_form_confirm .bnt-contact.bnt-prev-confirm {
    background: #f1f1f1
}

.mw_wp_form_confirm .bnt-contact.bnt-prev-confirm:after {
    content: "\F177";
    right: inherit;
    left: 20px
}

.mw_wp_form_confirm .pp {
    display: none
}

.mw_wp_form_confirm .checkBox {
    display: none
}

.c-form .bnt-contact input:focus {
    outline: 0
}

.c-form .bnt-contact:after {
    content: "\F178";
    font-family: fontello;
    position: absolute;
    z-index: 10;
    top: 50%;
    transform: translateY(-50%);
    right: 20px
}

.c-form .contact-btn .btn {
    margin: 0 10px
}

.c-form.c-form--confirm dd input[type=email],
.c-form.c-form--confirm dd input[type=tel],
.c-form.c-form--confirm dd input[type=text] {
    border: none
}

.c-form.c-form--confirm dd textarea {
    border: none;
    height: auto
}

.c-form .fieldRadio {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

@media only screen and (max-width:768px) {
    .c-form .fieldRadio {
        padding: 5px 0
    }
}

.c-form .fieldRadio label {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.c-form .mw_wp_form .horizontal-item {
    margin-right: 20px;
    margin-bottom: 5px;
    width: 100%
}

.c-form .fieldRadio .mwform-radio-field-text {
    position: relative;
    font-size: 1.4rem;
    line-height: 1.6;
    font-weight: 700;
    padding-left: 35px
}

@media only screen and (max-width:768px) {
    .c-form .fieldRadio .mwform-radio-field-text {
        padding-left: 25px
    }
}

.c-form .fieldRadio .mwform-radio-field-text:before {
    content: '';
    display: block;
    width: 15px;
    height: 15px;
    background: #fff;
    border: 3px solid #ddd;
    border-radius: 50%;
    position: absolute;
    left: 0;
    top: 0
}

@media only screen and (max-width:768px) {
    .c-form .fieldRadio .mwform-radio-field-text:before {
        top: 3px;
        border-width: 2px
    }
}

.c-form .fieldRadio input {
    display: none
}

.c-form .fieldRadio input:checked~.mwform-radio-field-text:before {
    background: #ef5153
}

.c-cfbtn {
    margin: 0 10px;
    position: relative;
    cursor: pointer
}

.thanks-page--main {
    margin-top: 40px
}

.thanks-txt {
    text-align: center;
    font-size: 1.4rem;
    line-height: 1.6
}

.thanks-txt a {
    color: #333;
    text-align: center;
    text-decoration: underline
}

.thanks-btn {
    text-align: center
}

.thanks-btn .c-btn02 a {
    background: #ef5153;
    color: #fff;
    padding: 15px 20px
}

.thanks-btn .c-btn02.arrow-down a:after {
    content: none
}

.thanks-btn .btn {
    margin: 0 auto;
    border: 2px solid #333;
    width: 300px;
    text-align: center;
    display: inline-block;
    font-size: 1.4rem;
    color: #333;
    padding: 20px 0;
    background: #fff;
    cursor: pointer
}

.thanks-btn .btn:hover {
    background: #333;
    color: #fff
}

@media only screen and (max-width:639px) {
    .c-form dt {
        flex: inherit;
        width: 100%;
        margin-bottom: 10px;
        text-align: left
    }

    .c-form dd {
        padding: 0
    }

    .c-form .contact-btn {
        flex-wrap: wrap
    }

    .c-cfbtn {
        margin: 10px 0
    }

    div.wpcf7 .ajax-loader {
        display: none
    }
}

.popup-bottom {
    position: fixed;
    bottom: 0;
    right: 0;
    z-index: 9999;
    transition: all .5s ease 0s
}

.popup-bottom.none {
    bottom: -100%
}

.popup-bottom.none-always {
    bottom: -100% !important
}

.popup-bottom a:hover {
    opacity: 1
}

.popup-bottom .close {
    color: #fff;
    width: 30px;
    height: 30px;
    background: #333;
    display: flex;
    position: absolute;
    justify-content: center;
    align-items: center;
    top: 27px;
    cursor: pointer
}

.popup-bottom .close svg {
    fill: #fff;
    width: 13px;
    height: 13px
}

.popup-bottom .close svg line {
    stroke: #fff
}

.scroll-table {
    overflow: auto;
    white-space: nowrap
}

#c-radio01 span.horizontal-item {
    display: block;
    margin-left: 0
}

.mw_wp_form .error+input[type=text] {
    color: red
}

.l-message {
    background: #fff;
}

.l-message--main {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    -ms-align-items: center;
    align-items: center
}

.l-message--main h3 {
    color: #ef5153;
    font-weight: 700;
    font-size: 2.4rem;
    margin-bottom: 10px
}

.l-message--main p {
    font-size: 1.4rem;
    color: #171717
}

.l-message--img {
    width: 30%;
    margin-right: 30px;
    max-width: 250px
}

.l-message--inner {
    flex: 1
}

.fixedBanner {
    display: none;
    position: fixed;
    bottom: 0;
    right: 0;
    z-index: 9999
}

.fixedBanner_inner {
    max-width: 350px;
    position: relative
}

.fixedBanner_close {
    position: absolute;
    top: -15px;
    right: 6%;
    width: 32px;
    height: 32px;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    -ms-align-items: center;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    border: 2px solid #ef5153;
    cursor: pointer;
    background: #fff
}

.fixedBanner_close span {
    color: #ef5153
}

.relatepost_shortcode {
    background: #fff;
    border: 1px solid #eee;
    box-shadow: 1px 1px 0 #efefef;
    text-decoration: none;
    display: block;
    overflow: hidden;
    padding: .9em;
    margin-bottom: 20px
}

.relatepost_shortcode .items {
    margin-bottom: 0;
    margin-top: 0;
    padding-bottom: 0;
    border-bottom: none
}

.relatepost_shortcode .items__title:before {
    content: '関連記事';
    font-size: .7em;
    font-weight: 700;
    color: #fff;
    background: #111;
    width: 5em;
    display: inline-block;
    padding: .2em;
    position: relative;
    top: -2px;
    text-align: center;
    margin-right: .5em;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
    border-radius: 2px
}

.recopost_shortcode {
    background: #fff;
    border: 1px solid #eee;
    box-shadow: 1px 1px 0 #efefef;
    text-decoration: none;
    display: block;
    overflow: hidden;
    padding: .9em;
    margin-bottom: 20px
}

.recopost_shortcode .items {
    margin-bottom: 0;
    margin-top: 0;
    padding-bottom: 0;
    border-bottom: none
}

.recopost_shortcode .items__title:before {
    content: 'おすすめ記事';
    font-size: .7em;
    font-weight: 700;
    color: #fff;
    background: #ef5153;
    display: inline-block;
    padding: .3em;
    position: relative;
    top: -2px;
    text-align: center;
    margin-right: .5em;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
    border-radius: 2px
}

.single_tag_wrap {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    -ms-align-items: baseline;
    align-items: baseline;
    margin-top: 16px
}

.single_tag_wrap h2 {
    font-size: 1.4rem;
    font-weight: 700
}

.single_tag {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.single_tag li {
    margin: 0 6px 6px 0
}

.single_tag li a,
.single_tag li span {
    background: #f1f1f1;
    display: block;
    border-radius: 5px;
    padding: 3px 10px;
    font-size: 1.6rem;
    line-height: 1.4;
    white-space: nowrap;
    text-decoration: none
}

.page-title {
    font-size: 2.8rem;
    line-height: 1.6;
    margin-bottom: 20px;
    position: relative;
    padding-bottom: 10px
}

.page-title:before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    background: #ddd;
    height: 2px
}

.page-title:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    max-width: 200px;
    width: 100%;
    background: #333;
    height: 2px
}

.page-thanks .page-title {
    text-align: center
}

.page-thanks .page-title:before {
    content: none
}

.page-thanks .page-title:after {
    content: none
}

.loadmore-content ._items {
    display: none
}

.scroll-to-fixed-fixed {
    top: 72px !important
}

.toc_widget ul {
    margin: 0
}

.toc_widget ul li:after,
.toc_widget ul li:before {
    content: "";
    display: table
}

@media only screen and (min-width:769px) {
    .toc_widget ul li {
        margin-bottom: .75em
    }

    .toc_widget ul li ul {
        margin-top: .75em;
        padding-left: 1em
    }
}

@media only screen and (max-width:768px) {
    .pd50 {
        padding: 30px 0
    }

    .mg50 {
        margin: 30px 0
    }

    .l-contact {
        padding: 40px 0
    }

    .l-contact figure{
        margin:0;
    }

    .l-visual--main ._mv {
        width: 100%
    }

    .l-visual--main ._banner {
        width: 100%;
        margin-top: 0
    }

    .l-visual--main ._mv-tlt {
        text-align: center
    }

    .l-visual--main ._mv-tlt img {
        max-width: 250px
    }

    .l-visual--main ._mv-txt {
        margin: 15px 0;
        text-align: center
    }

    .l-visual--main ._mv-txt p {
        font-size: 1.8rem
    }

    .l-visual--main ._mv-box {
        display: none
    }

    .l-visual--main ._mv-box a {
        width: 60px;
        margin-right: 30px
    }

    .l-visual--main ._mv-box figure {
        width: 100px
    }

    .l-category .c-catsList {
        margin-left: 0
    }

    .l-category .c-catsList ._items {
        width: 100%;
        margin: 0 15px;
        overflow: hidden;
        max-width: 200px
    }

    .c-catsList {
        justify-content: center
    }

    .c-catsList ._items {
        width: 50%;
        margin-bottom: 20px
    }

    .c-catsList ._items-tlt h3 {
        min-height: 50px
    }

    .c-catsList ._items-img figure {
        width: 150px;
        height: 150px;
        margin: 0 auto
    }

    .c-catsList ._items-img img {
        height: 70px
    }

    .l-new .c-newList {
        margin-left: 2.5%
    }

    .l-new .c-newList ._items {
        max-width: 300px;
        display: block;
        margin-right: 30px
    }

    .c-newList ._items {
        width: 100%;
        margin: 0;
        margin-bottom: 30px
    }

    .c-newList ._items:last-child {
        margin-bottom: 0
    }

    .c-newList02 ._items {
        width: 100%;
        margin: 0;
        margin-bottom: 20px
    }

    .c-newList02 ._items-tlt {
        min-height: inherit
    }

    .c-newList02 ._items:last-child {
        margin-bottom: 0
    }

    .l-contact:after {
        font-size: 7rem;
        letter-spacing: 2px;
        top: 5px
    }

    .c-tlt01 h2 {
        font-size: 3rem
    }

    .l-contact .c-tlt01 h2 {
        font-size: 2.4rem
    }

    .c-tagList a {
        font-size: 1.2rem;
        margin: 5px
    }

    .l-message--main {
        flex-wrap: wrap
    }

    .l-message--img {
        width: 100%;
        margin-right: 0;
        margin: 0 auto
    }

    .l-message--inner {
        flex: inherit;
        width: 100%;
        margin-top: 30px
    }

    .c-related_list .single_tag {
        display: none
    }

    .c-related_list .items__left .thumb {
        height: auto
    }

    .c-related_list .items__left .thumb img {
        height: auto;
        position: static
    }

    .c-single .headline p {
        font-size: 2.4rem
    }

    .c-single p {
        font-size: 1.6rem
    }

    .tbl01 td {
        font-size: 1.6rem
    }

    .tbl01 th {
        font-size: 1.6rem
    }

    .c-list_head h2,
    .c-list_head p {
        font-size: 2.4rem
    }

    .fixedBanner {
        max-width: 200px
    }

    .sidebar-main_fixed {
        display: none !important
    }

    .fixedBanner_close {
        top: -20px;
        right: 10px
    }
}

#sitemap_list li li {
    padding: 10px 0 !important;
    padding-left: 15px !important;
    background: url('https://blog.shopify-works.com/wp-content/plugins/ps-auto-sitemap/images/simple/ico_list_square.gif') no-repeat 0 16px !important
}

#sitemap_list li {
    background: 0 0 !important
}

#sitemap_list li a {
    font-size: 2rem;
    line-height: 1.6;
    font-weight: 700;
    padding-bottom: 10px;
    border-bottom: 3px solid #ddd
}

#sitemap_list li li a {
    font-weight: 400;
    font-size: 1.4rem;
    border-bottom: none;
    padding-bottom: 0
}

.page-privacypolicy p {
    font-size: 1.6rem;
    line-height: 1.6;
    margin-bottom: 15px
}

.page-privacypolicy p strong {
    font-size: 1.6rem;
    line-height: 1.6;
    margin-bottom: 5px;
    display: inline-block
}

._label-checkbox {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: baseline;
    -ms-flex-align: baseline;
    align-items: baseline;
    justify-content: center;
    font-size: 1.6rem;
    line-height: 30px;
    margin-bottom: 10px
}

._label-checkbox:last-child {
    margin-bottom: 0
}

@media only screen and (max-width:639px) {
    ._label-checkbox {
        font-size: 1.2rem
    }
}

._label-checkbox.error_checkbox ._checkmark:before {
    border-color: red;
    background: #ffb6c1
}

._label-checkbox ._checkmark {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    cursor: pointer;
    display: inline-block;
    padding: 0 12px;
    position: relative;
    width: auto;
    margin-top: -4px;
    padding-left: 25px
}

._label-checkbox ._checkmark:before {
    background: #fff;
    border: 1px solid #ef5153;
    border-radius: 3px;
    content: '';
    display: block;
    height: 16px;
    left: 5px;
    margin-top: -15px;
    position: absolute;
    top: 50%;
    width: 16px
}

@media only screen and (max-width:639px) {
    ._label-checkbox ._checkmark:before {
        height: 14px;
        width: 14px
    }
}

._label-checkbox ._checkmark:after {
    border-right: 6px solid #ef5153;
    border-bottom: 3px solid #ef5153;
    content: '';
    display: block;
    height: 20px;
    left: 7px;
    margin-top: -21px;
    opacity: 0;
    position: absolute;
    top: 50%;
    -webkit-transform: rotate(45deg) translate3d(0, 2px, 0) scale3d(.7, .7, 1);
    transform: rotate(45deg) translate3d(0, 2px, 0) scale3d(.7, .7, 1);
    -webkit-transition: opacity .2s ease-in-out, -webkit-transform .2s ease-in-out;
    transition: opacity .2s ease-in-out, -webkit-transform .2s ease-in-out;
    -o-transition: transform .2s ease-in-out, opacity .2s ease-in-out;
    transition: transform .2s ease-in-out, opacity .2s ease-in-out;
    transition: transform .2s ease-in-out, opacity .2s ease-in-out, -webkit-transform .2s ease-in-out;
    width: 9px
}

._label-checkbox input[type=checkbox] {
    display: none
}

._label-checkbox input[type=checkbox]:checked+._checkmark::before {
    border-color: #666
}

._label-checkbox input[type=checkbox]:checked+._checkmark::after {
    opacity: 1;
    -webkit-transform: rotate(45deg) scale3d(1, 1, 1);
    transform: rotate(45deg) scale3d(1, 1, 1)
}

.pp {
    height: 200px;
    overflow: auto;
    margin-top: 30px;
    padding: 30px;
    border: 1px solid #d3d3d3
}

input.disabled {
    background: #ddd !important;
    margin: 0 !important
}

.checked-widget .sidebar-main {
    padding-top: 0
}

.checked-widget .sidebar-main {
    border-top: none
}

.checked-widget .sidebar-main:before {
    content: none
}

.checked-widget .sidebar-main .sidebar-title {
    text-align: center;
    background: #e5c300 !important;
    color: #fff;
    padding: 10px 0;
    margin-bottom: 0;
    border-radius: 0;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    display: block
}

.checked-widget .sidebar-main .sidebar-title:before {
    content: '\f521';
    font-family: "Font Awesome 5 Free", "Font Awesome 5 Brands", Aharoni, "Arial Black", Impact, Arial, sans-serif;
    margin-right: 5px
}

.checked-widget .sidebar-main .post-sidebar {
    border: 2px solid #e5c300;
    padding: 10px 5px;
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px
}

.wp-block-image {
    margin-bottom: 20px
}

@media only screen and (max-width:768px) {
    .scrollable-table table {
        min-width: 500px
    }

    .scrollable-table {
        overflow-x: auto;
        max-width: calc(95vw - 20px)
    }
}

.page_404 .page-title:after,
.page_404 .page-title:before {
    display: none
}

#header .container {
    max-width: 1300px
}

.f-concert {
    font-family: 'Concert One', cursive;
    font-weight: 400
}

.c-form dt.no-required:after {
    display: none
}

.c-table {
    width: 100%;
    margin: 0 auto
}

.c-table dl {
    display: flex;
    flex-wrap: wrap;
    padding: 20px 0;
    border-bottom: 1px solid #e8e8e8
}

.c-table dt {
    flex: 0 0 280px;
    font-size: 1.6rem;
    color: #333;
    line-height: 1.6;
    font-weight: 700;
    position: relative
}

.c-table dd {
    padding: 0 20px;
    flex: 1
}

@media only screen and (max-width:639px) {
    .c-table dt {
        flex: inherit;
        width: 100%;
        margin-bottom: 10px;
        text-align: left
    }

    .c-table dd {
        padding: 0
    }
}

img {
    height: auto
}

.author__wrapper .author {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    align-items: flex-start;
    padding: 20px 15px
}

.author__wrapper .author .image {
    border-radius: 50%;
    overflow: hidden;
    width: 90px;
    margin-right: 18px
}

.author__wrapper .author .head {
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.author__wrapper .author .role {
    font-size: 12px;
    font-weight: 700;
    line-height: 2.25;
    letter-spacing: .05em;
    background: #222;
    color: #fff;
    margin-right: 18px;
    padding: 0 6px 0 11px;
    position: relative
}

.author__wrapper .author .role:after {
    border-color: transparent transparent transparent #222;
    border-style: solid;
    border-width: 14px 0 13px 11px;
    content: '';
    display: block;
    left: 100%;
    position: absolute;
    top: 0
}

.author__wrapper .author .name {
    text-decoration: underline;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.5;
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
    min-width: 0
}

.author__wrapper .author .name a {
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit
}

.author__wrapper .author .desc_sub {
    font-size: 12px;
    line-height: 1.75;
    color: #a1a1a1;
    margin-top: 7px;
    width: 100%;
    margin-bottom: 10px
}

.author__wrapper .author .desc_main {
    font-size: 14px;
    line-height: 1.75;
    margin-bottom: 0;
    margin-top: 10px
}

@media screen and (max-width:768px) {
    .author__wrapper .author {
        position: relative
    }

    .author__wrapper .author .image {
        position: absolute;
        top: 20px;
        left: 15px;
        margin-right: 8px;
        width: 72px
    }

    .author__wrapper .author .head {
        display: block;
        margin: 3px 0 8px;
        padding-left: 80px
    }

    .author__wrapper .author .role {
        font-size: 11px;
        line-height: 2;
        display: inline-block;
        margin: 0 0 4px;
        padding: 0 4px 0 8px
    }

    .author__wrapper .author .role:after {
        border-width: 11px 0 11px 9px
    }

    .author__wrapper .author .name {
        font-size: 13px;
        line-height: 1.75
    }

    .author__wrapper .author .desc_sub {
        font-size: 10px;
        line-height: 1.3;
        margin-top: 6px
    }

    .author__wrapper .author .desc_main {
        font-size: 12px;
        clear: left
    }
}

#breadcrumb span {
    display: inline
}

#breadcrumb .breadcrumbs {
    line-height: 1.4
}

.author__wrapper .author__ttl {
    font-size: 1.6rem;
    border-bottom: 2px solid #ccc;
    position: relative;
    padding-bottom: 10px;
    font-weight: 700
}

.author__wrapper {
    background: #f5f6f7;
    padding: 20px;
    margin-bottom: 20px
}

.author__wrapper .author__ttl:after {
    content: '';
    height: 2px;
    width: 193px;
    background: #4a4a4a;
    position: absolute;
    bottom: -2px;
    left: 0
}

.author__wrapper .author__name {
    font-size: 1.6rem;
    font-weight: 700
}

.author__wrapper .author .image {
    flex-shrink: 0;
    width: 150px
}

.author__btn {
    width: 220px;
    border: 3px solid #333;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    border-radius: 30px
}

.author__btn:hover {
    background: #333;
    opacity: 1;
    color: #fff
}

.author__wrapper .author .desc_main {
    margin-bottom: 30px
}

@media screen and (max-width:768px) {
    .author__btn {
        border-width: 2px
    }

    .author__wrapper .author .image {
        width: 72px;
        position: static
    }
}

.c-form .checkBox small {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: center
}

.fixed_banner {
    position: fixed;
    bottom: 10px;
    right: 10px;
    display: none;
    z-index: 99
}

.fixed_banner img {
    width: 350px
}

.fixed_banner ._close {
    position: absolute;
    top: -30px;
    right: 20px;
    cursor: pointer;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: #333
}

.fixed_banner ._close:after {
    content: "\E80B";
    font-family: fontello;
    font-size: 2rem;
    color: #333;
    color: #fff;
    top: 0;
    left: 0;
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center
}

@media only screen and (max-width:768px) {
    .fixed_banner img {
        width: 250px
    }
}

@media only screen and (max-width:639px) {
    .fixed_banner {
        display: none !important
    }
}

.bnt-contact.backBtn {
    display: none
}

.mw_wp_form.mw_wp_form_confirm .bnt-contact.backBtn {
    display: block
}

.bnt-contact.backBtn:after {
    right: auto;
    left: 20px;
    transform: translateY(-50%) scaleX(-1)
}

.txtColor01 {
    color: #ef5153;
    font-size: inherit
}

.c-btn02.red a,
.c-btn02.red span {
    background: #ef5153;
    color: #fff
}

.c-btn02.red a:after,
.c-btn02.red span:after {
    color: #fff
}

.single-content h2>*,
.single-content h2>*>* {
    font-weight: inherit !important
}

.single-content h3>*,
.single-content h3>*>* {
    font-weight: inherit !important
}

.single-content h4>*,
.single-content h4>*>* {
    font-weight: inherit !important
}

.single-content h5>*,
.single-content h5>*>* {
    font-weight: inherit !important
}

.single-content h6>*,
.single-content h6>*>* {
    font-weight: inherit !important
}

.fixed-bot.hide {
    display: none !important
}

.fixed-bot {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    background: rgba(0, 0, 0, .85);
    height: 70px;
    z-index: 1000;
    display: none
}

.fixed-bot .wr {
    display: flex;
    align-items: center;
    justify-content: center;
    height: inherit
}

.fixed-bot .icon {
    position: absolute;
    top: 38px;
    right: 20px;
    height: 28px;
    width: 28px;
    background: #3e3e3e;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 50%;
    transform: translateY(-100%);
    color: #fff;
    cursor: pointer;
    border-radius: 50%;
    font-size: 1.8rem
}

.fixed-bot .inner {
    max-width: 790px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    padding: 0 15px
}

.fixed-bot .content {
    display: flex;
    align-items: center;
    margin-right: 15px
}

.fixed-bot .content img {
    width: 198px
}

.fixed-bot .content span {
    font-size: 2.5rem;
    font-weight: 700;
    color: #fff;
    line-height: 1;
    margin-left: 5px
}

.fixed-bot .inner .btn {
    background: #fbd347;
    width: 362px;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 47px;
    font-size: 2rem;
    font-weight: 700;
    border-radius: 8px;
    position: relative
}

.fixed-bot .inner .arrow {
    height: 20px;
    width: 20px;
    background: #333;
    border-radius: 50%;
    position: absolute;
    right: 22.5px;
    font-size: .8rem;
    font-weight: 400;
    display: flex;
    justify-content: center;
    align-items: center
}

.fixed-bot .inner .arrow:after {
    content: "\E806";
    font-family: fontello;
    color: #fbd347;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    line-height: 1;
    font-size: 1rem;
    margin-left: 1px
}

.fixed-bot .icon img {
    width: 11px
}

@media screen and (max-width:1024px) {
    .fixed-bot {
        padding-right: 50px
    }
}

@media screen and (max-width:800px) {
    .fixed-bot {
        padding-right: 0;
        height: auto;
        padding: 13px 0
    }

    .fixed-bot .inner {
        max-width: 330px;
        padding-left: 0;
        padding-right: 20px
    }

    .fixed-bot .content {
        flex-direction: column;
        align-items: flex-start
    }

    .fixed-bot .content span {
        font-size: 1.6rem;
        margin-left: 24px
    }

    .fixed-bot .content img {
        width: 138px;
        margin-bottom: 7px
    }

    .fixed-bot .inner .btn {
        width: 174px;
        font-size: 1.4rem
    }

    .fixed-bot .icon {
        height: 22px;
        width: 22px;
        font-size: 1.4rem;
        top: 30px;
        right: 5px;
        line-height: 1
    }

    .fixed-bot .inner .arrow {
        position: relative;
        margin-left: 10px;
        right: 0
    }

    .fixed-bot .icon img {
        width: 10px
    }
}

@media screen and (max-width:320px) {
    .fixed-bot .inner {
        padding-right: 30px
    }
}

.image-hover img {
    transition: .3s ease
}

.image-hover:hover img {
    opacity: .7
}

.layout__col .layout__col__main.one-col {
    max-width: 100%
}

.l-pageDownload_main {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding-top: 20px
}

.l-pageDownload_main ._boxs {
    width: 30%;
    margin-bottom: 8rem;
    position: relative
}

.l-pageDownload_main ._boxs:hover ._boxs_content a {
    -webkit-box-shadow: 0 5px 8px 2px rgb(0 0 0 / 40%);
    box-shadow: 0 5px 8px 2px rgb(0 0 0 / 40%);
    -webkit-transform: translateY(-1px);
    transform: translateY(-1px)
}

.l-pageDownload_main ._boxs:hover img {
    transform: scale(1.2)
}

.l-pageDownload_main ._boxs:not(:nth-child(3n)) {
    margin-right: 5%
}

@media screen and (max-width:767px) {
    .l-pageDownload_main ._boxs:not(:nth-child(3n)) {
        margin-right: 0
    }

    .l-pageDownload_main ._boxs {
        width: 100%;
        margin-bottom: 6rem
    }
}

.l-pageDownload_main ._boxs_image {
    margin-bottom: 2rem;
    max-height: 215px;
    overflow: hidden;
    border-radius: 16px
}

@media screen and (max-width:767px) {
    .l-pageDownload_main ._boxs_image {
        margin-bottom: 1.5rem
    }
}

.l-pageDownload_main ._boxs_image img {
    transition: all .7s
}

@media screen and (max-width:767px) {
    .l-pageDownload_main ._boxs_image img {
        width: 100%
    }
}

.l-pageDownload_main ._boxs_content h2 {
    font-size: 1.8rem;
    line-height: 24px;
    font-weight: 700;
    color: #09929e;
    margin-bottom: 1.5rem
}

.l-pageDownload_main ._boxs_content .ellipsis {
    min-height: 81px;
    margin-bottom: 3rem
}

.l-pageDownload_main ._boxs_content p {
    font-size: 1.6rem;
    line-height: 27px;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    display: -webkit-box
}

@media screen and (max-width:767px) {
    .l-pageDownload_main ._boxs_content p {
        margin-bottom: 2rem
    }
}

.l-pageDownload_main ._boxs_content a {
    font-size: 1.6rem;
    line-height: 50px;
    max-width: 288px;
    height: 50px;
    padding: 0;
    margin: 0 auto
}

.l-pageDownload_main ._boxs_btn {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 99
}

.l-commonContact__btn {
    position: relative;
    display: block;
    max-width: 440px;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    font-size: 1.8rem;
    line-height: 60px;
    font-weight: 700;
    padding: 10px;
    border-radius: 50px;
    text-align: center;
    margin: 0 10px
}

.l-commonContact__btn:hover {
    -webkit-box-shadow: 0 5px 8px 2px rgb(0 0 0 / 16%);
    box-shadow: 0 5px 8px 2px rgb(0 0 0 / 16%);
    -webkit-transform: translateY(-1px);
    transform: translateY(-1px)
}

@media screen and (max-width:767px) {
    .l-commonContact__btn {
        font-size: 1.8rem;
        padding: 5px 10px;
        margin: 0 auto
    }

    .l-commonContact__btn:first-child {
        margin-bottom: 20px
    }
}

.l-commonContact__btn input {
    font-family: inherit;
    font-size: inherit;
    color: inherit;
    background: 0 0;
    border: none;
    font-weight: inherit;
    padding: 0;
    margin: 0
}

.l-commonContact__btnWrap {
    max-width: 960px;
    width: 100%;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-bottom: 50px
}

@media screen and (max-width:767px) {
    .l-commonContact__btnWrap {
        display: block;
        margin-bottom: 30px
    }
}

.l-commonContact__btn svg {
    position: absolute;
    top: 50%;
    right: 40px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

@media only screen and (max-width:920px) {
    .l-commonContact__btn svg {
        right: 30px
    }
}

@media only screen and (max-width:320px) {
    .l-commonContact__btn svg {
        right: 15px
    }
}

.c-btn__gra--blu {
    color: #fff;
    background: -webkit-gradient(linear, left top, right top, from(#2dba9a), color-stop(99%, #04acc7), to(#04acc7));
    background: linear-gradient(90deg, #2dba9a 0, #04acc7 99%, #04acc7 100%)
}

.c-btn__gra--org {
    color: #fff;
    background: -webkit-gradient(linear, left top, right top, from(#f7881f), to(#f26522));
    background: linear-gradient(90deg, #f7881f 0, #f26522 100%)
}

.c-btn__gra--red {
    color: #fff;
    background: #ef5153
}

.l-pageDownload-single_main {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start
}

@media screen and (max-width:767px) {
    .l-pageDownload-single_main {
        display: block
    }
}

.l-pageDownload-single_main ._block {
    width: 50%
}

@media screen and (max-width:767px) {
    .l-pageDownload-single_main ._block {
        width: 100%;
        padding-left: 0
    }
}

.l-pageDownload-single_main ._block h2 {
    font-size: 3.6rem;
    line-height: 54px;
    font-weight: 700;
    margin-bottom: 4rem
}

@media screen and (max-width:767px) {
    .l-pageDownload-single_main ._block h2 {
        font-size: 2rem;
        line-height: 30px;
        margin-bottom: 2rem
    }
}

.l-pageDownload-single_main ._block .image {
    margin-bottom: 4rem
}

@media screen and (max-width:767px) {
    .l-pageDownload-single_main ._block .image {
        margin-bottom: 2rem
    }
}

.l-pageDownload-single_main ._block .text p {
    font-size: 1.6rem;
    line-height: 27px;
    margin-bottom: 2rem
}

@media screen and (max-width:767px) {
    .l-pageDownload-single_main ._block .text {
        overflow: hidden;
        text-overflow: ellipsis;
        -webkit-line-clamp: 4;
        -webkit-box-orient: vertical;
        display: -webkit-box
    }

    .l-pageDownload-single_main ._block .text p {
        width: 100%;
        margin-bottom: 0
    }
}

.l-pageDownload-single_main ._block .text_01 {
    padding: 30px 0 30px 30px;
    background-color: #fff;
    font-size: 1.6rem;
    line-height: 27px;
    max-width: 450px;
    margin: 0 auto 3rem
}

@media screen and (max-width:767px) {
    .l-pageDownload-single_main ._block .text_01 {
        padding: 2rem
    }
}

.l-pageDownload-single_main ._block .text_01 p {
    margin-bottom: 1rem
}

.l-pageDownload-single_main ._block .text_01 ul li {
    margin-bottom: .5rem
}

.l-pageDownload-single_main ._block a {
    color: #04acc7;
    font-size: 1.4rem;
    line-height: 22px;
    text-align: right;
    display: block;
    margin-bottom: 2rem
}

.l-pageDownload-single_main ._block .more-close {
    display: none
}

.l-pageDownload-single_main ._block .is-active .more-text {
    display: none
}

.l-pageDownload-single_main ._block .is-active .more-close {
    display: inline-block
}

.l-pageDownload-single_main ._block .list_images {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.l-pageDownload-single_main ._block .list_images .item {
    width: 32%;
    margin-right: 2%
}

.l-pageDownload-single_main ._block .list_images .item:last-child {
    margin-right: 0
}

.l-pageDownload-single_main ._form {
    width: 45%;
    background-color: #fff;
    -webkit-box-shadow: 0 3px 20px rgb(0 0 0 / 10%);
    box-shadow: 0 3px 20px rgb(0 0 0 / 10%);
    border-radius: 26px;
    padding: 5rem 5rem 6rem
}

@media screen and (max-width:767px) {
    .l-pageDownload-single_main ._form {
        width: 100%;
        padding: 3rem 2rem
    }
}

.l-pageDownload-single_main ._form_title>* {
    font-size: 2.2rem;
    padding: 15px 0;
    font-weight: 700;
    color: #ef5153;
    text-align: center;
    border-bottom: 1px solid #ef5153;
    margin-bottom: 4rem
}

@media screen and (max-width:767px) {
    .l-pageDownload-single_main ._form_title>* {
        font-size: 2rem;
        margin-bottom: 3rem
    }
}

.l-pageDownload-single_main ._form dl dt {
    font-size: 1.8rem;
    font-weight: 700;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 15px
}

.l-pageDownload-single_main ._form dl dt .require {
    font-size: 1.2rem;
    line-height: 25px;
    height: 25px;
    background-color: #ef5153;
    color: #fff;
    padding: 0 1rem;
    margin: 0 1rem
}

.l-pageDownload-single_main ._form dl dt .no-require {
    font-size: 1.2rem;
    line-height: 25px;
    height: 25px;
    background-color: #afafaf;
    color: #fff;
    padding: 0 1rem;
    margin: 0 1rem
}

.l-pageDownload-single_main ._form dl dt .text {
    font-size: 1.2rem;
    color: #ef5153;
    font-weight: 400
}

.l-pageDownload-single_main ._form dl dd {
    margin-bottom: 3rem
}

@media screen and (max-width:767px) {
    .l-pageDownload-single_main ._form dl dd {
        margin-bottom: 2rem
    }
}

.l-pageDownload-single_main ._form dl dd input,
.l-pageDownload-single_main ._form dl dd textarea {
    outline: 0;
    border: 1px solid #ccc;
    border-radius: 5px;
    width: 100%;
    padding: 10px 15px;
    font-size: 1.6rem;
    font: 400 16px "游ゴシック体", "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    height: 50px
}

.l-pageDownload-single_main ._form dl dd textarea {
    height: 150px
}

.l-pageDownload-single_main ._form dl dd input:focus,
.l-pageDownload-single_main ._form dl dd textarea:focus {
    outline: 0;
    border: 3px solid #ef5153
}

.l-pageDownload-single_main ._form dl dd input::-webkit-input-placeholder,
.l-pageDownload-single_main ._form dl dd textarea::-webkit-input-placeholder {
    font: 400 16px "游ゴシック体", "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif
}

.l-pageDownload-single_main ._form dl dd input:-ms-input-placeholder,
.l-pageDownload-single_main ._form dl dd textarea:-ms-input-placeholder {
    font: 400 16px "游ゴシック体", "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif
}

.l-pageDownload-single_main ._form dl dd input::-ms-input-placeholder,
.l-pageDownload-single_main ._form dl dd textarea::-ms-input-placeholder {
    font: 400 16px "游ゴシック体", "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif
}

.l-pageDownload-single_main ._form dl dd input::placeholder,
.l-pageDownload-single_main ._form dl dd textarea::placeholder {
    font: 400 16px "游ゴシック体", "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif
}

.l-pageDownload-single_main ._form_text p {
    font-size: 1.6rem;
    line-height: 28px;
    margin-bottom: 4rem
}

.l-pageDownload-single_main ._form_text a {
    display: inline-block
}

@media screen and (max-width:767px) {
    .l-pageDownload-single_main ._form_text p {
        margin-bottom: 2rem
    }
}

.l-pageDownload-single_main ._form_text a {
    color: #09929e
}

@media screen and (max-width:767px) {
    .l-pageDownload-single_main ._form_text br {
        display: none
    }
}

.l-pageDownload-single_main ._form_btn label {
    height: 70px;
    line-height: 70px;
    font-size: 2rem;
    padding: 0;
    cursor: pointer
}

@media screen and (max-width:767px) {
    .l-pageDownload-single_main ._form_btn label {
        font-size: 1.6rem;
        height: 60px;
        line-height: 60px
    }
}

.l-pageDownload-single_main ._form_btn label input {
    display: none !important
}

input[type=email].is-error,
input[type=text].is-error,
select.is-error,
textarea.is-error {
    color: #b94a48 !important;
    background-color: #f2dede !important;
    border: 1px solid #eed3d7 !important
}

.page-head {
    border: 2px solid #ddd;
    border-radius: 8px;
    padding: 20px;
    margin-bottom: 30px
}

.page-head p {
    font-size: 1.2rem;
    line-height: 1.4
}

.c-btn02.big a,
.c-btn02.big span {
    width: 400px;
    height: 60px;
    max-width: 100%;
    display: flex;
    justify-content: center;
    align-items: center
}

.c-btn02.w100 a,
.c-btn02.w100 span {
    width: 100%;
    height: auto;
    min-height: 60px
}

@media only screen and (max-width:667px) {
    .pagination .page-numbers:not(.prev):not(.next) {
        display: none
    }
}

.btn-content {
    max-width: 644px;
    height: 72px;
    margin: 0 auto 40px;
    overflow: hidden;
    position: relative
}

.btn-content a {
    position: relative;
    color: #fff;
    font-size: 1.8rem;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    max-width: 100%;
    height: 100%;
    border: 2px solid #333;
    color: #333;
    overflow: hidden;
    border: 2px solid #ef5153;
    color: #fff
}

.btn-content:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transition: .3s ease;
    color: #fff;
    background-color: #ef5153
}

.btn-content a:after {
    position: absolute;
    content: "";
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
    background-image: url(../img/arrow-white.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 9px 14px;
    width: 9px;
    height: 14px
}

.btn-content:hover a {
    color: #ef5153;
    opacity: 1;
    border-color: #ef5153
}

.btn-content:hover::before {
    width: 0%;
    left: auto;
    right: 0
}

.btn-content:hover a::after {
    filter: initial;
    filter: brightness(0) saturate(100%) invert(34%) sepia(56%) saturate(3549%) hue-rotate(335deg) brightness(104%) contrast(87%)
}

@media only screen and (max-width:768px) {
    .btn-content {
        width: 95%;
        margin-bottom: 30px
    }

    .btn-content a {
        font-size: 1.5rem
    }

    .btn-content a:after {
        right: 10px
    }
}

@media only screen and (max-width:359px) {
    .btn-content a {
        font-size: 1.3rem
    }
}

.p-sdesign {
    letter-spacing: .0125em
}

.p-sdesign .l-intro {
    width: 710px;
    margin: 0 auto 70px;
    max-width: 100%;
    font-size: 1.2rem;
    font-weight: 500;
    line-height: 1.35
}

.p-sdesign .design-list {
    display: flex;
    flex-wrap: wrap
}

.p-sdesign .design-list .design {
    width: 30.7%;
    margin-bottom: 50px
}

.p-sdesign .design-list .design:not(:nth-child(3n)) {
    margin-right: 3.95%
}

.p-sdesign .design-list .design .image {
    position: relative;
    box-shadow: 0 1.5px 10px rgba(0, 0, 0, .16);
    margin-bottom: 20px
}

.p-sdesign .design-list .design .image img {
    width: 100%
}

.p-sdesign .design-list .design .image-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, .7);
    display: flex;
    align-items: flex-end;
    opacity: 0;
    pointer-events: none;
    transition: .3s ease
}

.p-sdesign .design-list .design .cat-list {
    padding: 15px;
    width: 100%
}

.p-sdesign .design-list .design .cat-list_main {
    font-size: 1.1rem;
    font-weight: 700;
    color: #959595;
    margin-top: 15px
}

.p-sdesign .design-list .design .cat-list_child {
    font-size: 1.2rem;
    color: #fff;
    margin-right: 18px;
    display: inline-block;
    margin-bottom: 5px
}

.p-sdesign .design .ttl {
    font-size: 1.4rem;
    margin-bottom: 4px
}

.p-sdesign .design .url {
    font-size: 1.1rem;
    color: #8b8b8b
}

.p-sdesign .l-content>.container>.title {
    font-size: 2.8rem;
    font-weight: 700;
    text-align: center;
    margin-bottom: 50px
}

.sdesign-icon {
    position: fixed;
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: #ef5053;
    box-shadow: 0 1.5px 10px rgb(0 0 0 / 16%);
    bottom: 85px;
    right: 50px;
    cursor: pointer;
    transition: .3s ease;
    z-index: 11
}

.sdesign-icon:hover {
    opacity: .7
}

.sdesign-icon>* {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    transition: .3s ease
}

.sdesign-icon .init {
    width: 22.5px
}

.sdesign-icon .close {
    width: 21px;
    opacity: 0
}

.sdesign-icon.is-active .init {
    opacity: 0
}

.sdesign-icon.is-active .close {
    opacity: 1
}

.sdesign_menu {
    position: fixed;
    top: 0;
    right: 0;
    width: 470px;
    max-width: 100%;
    z-index: 10;
    background: #fff;
    height: 100%;
    overflow-y: auto;
    padding: 50px 60px 120px;
    right: -470px;
    transition: .3s ease
}

.sdesign_menu.is-active {
    right: 0
}

.sdesign_menu .sdesign_menu_main {
    margin-top: 40px;
    font-size: 1.6rem;
    font-weight: 700;
    margin-bottom: 5px
}

.sdesign_menu .sdesign_menu_child {
    font-size: 1.4rem;
    font-weight: 500;
    border-bottom: 1px dotted #ddd;
    color: #666;
    padding: 10px 30px 10px 0;
    position: relative
}

.sdesign_menu .sdesign_menu_child:after {
    content: '';
    height: 6px;
    width: 6px;
    border: 3px solid;
    display: block;
    border-left: none;
    border-bottom: none;
    transform: rotate(45deg);
    position: absolute;
    right: 13px;
    top: 16px
}

.sdesign_overlay {
    position: fixed;
    top: 0;
    left: 0;
    background: rgba(0, 0, 0, .5);
    width: 100%;
    height: 100%;
    z-index: 5;
    opacity: 0;
    transition: .3s ease;
    pointer-events: none
}

.sdesign_overlay.is-active {
    opacity: 1;
    pointer-events: initial
}

body.sdesign_menu_active #header {
    position: relative;
    z-index: 9;
    background: #fff
}

body.sdesign_menu_active #breadcrumb {
    position: relative;
    z-index: 9
}

.p-sdesign .page-title {
    font-weight: 700
}

.p-sdesign .l-content {
    padding-top: 20px
}

.p-sdesign .design:hover {
    opacity: 1
}

@media screen and (min-width:769px) {
    .p-sdesign .design:hover .image-overlay {
        opacity: 1;
        pointer-events: initial
    }
}

@media screen and (max-width:768px) {
    .p-sdesign .l-intro {
        margin-bottom: 30px
    }

    .p-sdesign .design-list .design:not(:nth-child(3n)) {
        margin-right: 0
    }

    .p-sdesign .design-list {
        justify-content: space-between
    }

    .p-sdesign .design-list .design {
        width: 100%;
        margin-bottom: 40px
    }

    .p-sdesign .design-list .design .image {
        margin-bottom: 12px
    }

    .p-sdesign .design-list .design .cat-list {
        padding: 10px
    }

    .p-sdesign .design-list .design .cat-list_main {
        margin-top: 10px
    }

    .p-sdesign .design-list .design .cat-list_child {
        font-size: 1.1rem;
        margin-right: 15px
    }

    .p-sdesign .design .ttl {
        margin-bottom: 0
    }

    .sdesign-icon {
        width: 50px;
        height: 50px;
        bottom: 2.5%;
        right: 2.5%
    }

    .sdesign-icon .init {
        width: 19.5px
    }

    .sdesign-icon .close {
        width: 17px
    }

    .sdesign_menu {
        width: 85%;
        padding: 30px 20px 80px
    }

    .sdesign_menu .sdesign_menu_main {
        margin-top: 30px
    }

    .p-sdesign .l-content {
        padding-top: 0
    }
}

@media screen and (max-width:768px) {
    .single-content h2 {
        font-size: 2.1rem;
        padding-bottom: 15px;
        border-width: 1px;
        margin-bottom: 20px
    }

    .single-content h2:after {
        width: 55.5px
    }

    .single-content h3 {
        font-size: 1.8rem;
        margin-bottom: 20px;
        padding: 3px 14px;
        border-left: 3px solid #333;
        margin-top: 40px
    }

    .single-content h4 {
        font-size: 1.6rem;
        padding: 3px 15px;
        margin-bottom: 20px
    }

    .single-content h5 {
        margin-bottom: 20px;
        font-size: 1.6rem
    }

    .single-content h6 {
        margin-bottom: 20px;
        font-size: 1.6rem
    }

    .c-single .headline {
        margin-top: 10px;
        margin-bottom: 15px
    }

    .c-single .headline h1 {
        font-size: 2.2rem
    }

    .c-single .cats a {
        padding: 5px 12px 5px
    }

    .single_tag_wrap {
        margin-top: 10px
    }

    .single_tag li a,
    .single_tag li span {
        font-size: 1.4rem
    }

    .sns {
        margin-bottom: 20px
    }

    body.single main .container {
        width: 100%;
        padding: 0 15px
    }

    .single-content ol li,
    .single-content ul li {
        font-size: 1.6rem
    }

    .c-single .cats {
        margin-bottom: 10px
    }
}

.c-single p strong {
    font-size: inherit
}

.p-sdesign .l-intro a {
    display: inline-block;
    border-bottom: 1px solid;
    font-size: inherit
}

.p-sdesign .l-intro p {
    font-size: inherit
}

.p-service .pagettl {
    background: url('../img/service/service_pagettl.png') no-repeat;
    background-size: cover;
    background-position: center center;
    padding-bottom: 85px
}

.p-service #breadcrumb {
    background: 0 0
}

.p-service .pagettl-block .ttl {
    background: #fbd759;
    display: inline-block;
    font-size: 5rem;
    font-weight: 700;
    line-height: 1.5;
    padding: 10px 50px;
    position: relative;
    z-index: 1
}

.p-service .pagettl-block .box {
    background: #fff;
    margin-left: 17px;
    display: flex;
    padding: 75px 100px 35px 40px;
    margin-top: -47px
}

.p-service .pagettl-block .ttl:after {
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 17px 17px 0;
    border-color: transparent #d3a812 transparent transparent;
    position: absolute;
    bottom: 0;
    left: 0;
    transform: translateY(100%)
}

.p-service .pagettl-block .content {
    width: 725px
}

.p-service .pagettl-block .box-ttl {
    font-size: 4rem;
    font-weight: 700;
    line-height: 1.5;
    margin-bottom: 25px
}

.p-service .pagettl-block .box p {
    font-size: 1.8rem;
    font-weight: 500;
    line-height: 2
}

.p-service .pagettl-block .box .ico {
    width: 325px;
    text-align: right;
    display: flex;
    align-items: center;
    justify-content: flex-end
}

.p-service .l-point {
    background: #f5f5f5;
    padding: 65px 0 50px
}

.p-service .l-point .ttl {
    text-align: center;
    margin-bottom: 50px
}

.p-service .l-point .ttl small {
    font-size: 1.6rem;
    display: block;
    line-height: 1.5
}

.p-service .l-point .ttl span {
    font-size: 3.6rem;
    letter-spacing: .05em;
    display: block;
    line-height: 1.5
}

.p-service .point-list {
    display: flex;
    justify-content: space-between
}

.p-service .point-list .point {
    background: #fff;
    border-radius: 10px;
    width: 48.8%;
    text-align: center;
    padding: 35px 15px 55px
}

.p-service .point-list .num {
    color: #95bf47;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px
}

.p-service .point-list .num dt {
    font-size: 2.5rem;
    border-bottom: 3px solid;
    line-height: 1.3
}

.p-service .point-list .num dd {
    font-size: 5rem;
    line-height: 1;
    margin-left: 10px
}

.p-service .point-list .point>p {
    font-weight: 700;
    font-size: 2.5rem;
    line-height: 1.36;
    margin-bottom: 50px
}

@media screen and (min-width:768px) {
    .p-service .point-list .point>p.sameHeight {
        min-height: 68px;
        display: flex;
        align-items: center;
        justify-content: center
    }
}

.p-service .l-group {
    padding: 100px 0
}

.p-service .group {
    display: flex;
    max-width: 1000px;
    margin: 0 auto;
    padding-bottom: 80px
}

.p-service .group.group--custom {
    display: block
}

.p-service .group .image {
    width: 445px;
    text-align: left
}

.p-service .group .content {
    width: 565px
}

.p-service .group .ttl {
    font-size: 2.4rem;
    border-bottom: 1px solid #dedede;
    padding-bottom: 15px;
    margin-bottom: 25px
}

.p-service .group .content p {
    font-size: 1.4rem;
    font-weight: 500;
    line-height: 1.35
}

.p-service .group:last-child {
    padding-bottom: 0
}

.p-service .flow-list .flow {
    display: flex;
    margin-bottom: 30px
}

.p-service .flow-list .num {
    width: 77px;
    height: 77px;
    flex-shrink: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    background: #95bf47;
    border-radius: 50%;
    color: #fff;
    font-size: 3.5rem;
    font-weight: 500;
    letter-spacing: .025em;
    box-shadow: 0 1.5px 10px rgba(0, 0, 0, .16);
    margin-right: 25px
}

.p-service .flow-list .content {
    width: 100%;
    background: #fff;
    box-shadow: 0 1.5px 10px rgba(0, 0, 0, .03);
    padding: 25px 30px 25px 35px;
    position: relative
}

.p-service .flow-list .flow:last-child {
    margin-bottom: 0
}

.p-service .flow-list .content::after {
    content: '';
    width: 22px;
    height: 22px;
    background: #fff;
    box-shadow: 0 1.5px 10px rgba(0, 0, 0, .03);
    position: absolute;
    top: 30px;
    left: 11px;
    transform: translateX(-100%) rotate(45deg)
}

.p-service .flow-ttl {
    font-weight: 700;
    color: #6a9b0f;
    font-size: 1.7rem;
    margin-bottom: 20px
}

.p-service .l-contact {
    background: 0 0;
    padding: 0;
    position: static
}

.p-service {
    background: #fbfbfb;
    margin-bottom: 0 !important
}

.p-service .l-other .ttl {
    font-size: 4rem;
    text-align: center;
    margin-bottom: 60px
}

.p-service .l-other {
    padding: 100px 0
}

.p-service .other-list {
    display: flex;
    flex-wrap: wrap;
    max-width: 900px;
    margin: 0 auto -50px
}

.p-service .other-list .other {
    border: 5px solid #d8e3c3;
    border-radius: 10px;
    width: 32.22%;
    margin-bottom: 50px;
    background: #f9ffef;
    position: relative;
    padding: 50px 20px 60px;
    text-align: center
}

.p-service .other-list .other:not(:nth-child(3n)) {
    margin-right: 1.67%
}

.p-service .other-list .other .lbl {
    font-size: 1.6rem;
    font-weight: 700;
    background: #fbd347;
    border-radius: 2px;
    padding: 4px 10px;
    position: absolute;
    top: -15px;
    left: 20px;
    display: inline-block
}

.p-service .other-list .other-ttl {
    font-weight: 700;
    font-size: 2.4rem;
    line-height: 1.33;
    min-height: 65px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 15px
}

.p-service .other-list .other .ico {
    width: 167.5px;
    margin: 0 auto 20px
}

.p-service .other-list .other p {
    text-align: left;
    font-weight: 500;
    line-height: 1.7;
    margin-bottom: 40px
}

.p-service .other-list .other .button,
.p-service .other-list .other a {
    height: 45px;
    background: #fbd347;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 25px;
    font-size: 1.4rem;
    font-weight: 700
}

@media screen and (min-width:768px) {

    .p-service .other-list .other .button,
    .p-service .other-list .other a {
        position: absolute;
        width: 100%;
        bottom: 15px;
        left: 0;
        max-width: 240px;
        right: 0;
        margin: 0 auto
    }
}

@media screen and (max-width:992px) {
    .p-service .pagettl-block .box {
        flex-direction: column-reverse
    }

    .p-service .pagettl-block .box .ico {
        margin-bottom: 20px
    }

    .p-service .pagettl-block .content {
        width: 100%
    }
}

@media screen and (max-width:767px) {
    .p-service .pagettl-block .ttl {
        font-size: 2.4rem;
        padding: 5px 15px
    }

    .p-service .pagettl-block .ttl:after {
        border-width: 0 10px 10px 0
    }

    .p-service .pagettl-block .box {
        margin-left: 10px;
        margin-top: -21px;
        padding: 50px 15px 20px
    }

    .p-service .pagettl-block .box .ico {
        width: 160px;
        margin: 0 auto 30px
    }

    .p-service .pagettl-block .box-ttl {
        font-size: 2rem;
        margin-bottom: 15px
    }

    .p-service .pagettl-block .box p {
        font-size: 1.5rem;
        line-height: 1.8
    }

    .p-service .pagettl {
        padding-bottom: 50px
    }

    .p-service .l-point {
        padding: 50px 0
    }

    .p-service .l-point .ttl {
        margin-bottom: 30px
    }

    .p-service .l-point .ttl small {
        font-size: 1.3rem
    }

    .p-service .l-point .ttl span {
        font-size: 2rem
    }

    .p-service .point-list {
        display: block
    }

    .p-service .point-list .point {
        width: 100%;
        margin-top: 30px;
        padding: 20px 15px
    }

    .p-service .point-list .num dt {
        font-size: 1.6rem;
        border-width: 2px
    }

    .p-service .point-list .num dd {
        font-size: 3rem;
        margin-left: 8px
    }

    .p-service .point-list .point>p {
        font-size: 1.7rem;
        margin-bottom: 30px
    }

    .p-service .group {
        display: block;
        padding-bottom: 50px
    }

    .p-service .group .image {
        width: 222px;
        margin: 0 auto 25px
    }

    .p-service .group .content {
        width: 100%
    }

    .p-service .l-group {
        padding: 50px 0
    }

    .p-service .group .ttl {
        font-size: 1.7rem;
        line-height: 1.36;
        padding-bottom: 10px;
        margin-bottom: 15px
    }

    .p-service .flow-list .num {
        width: 50px;
        height: 50px;
        font-size: 2.6rem;
        margin-right: 20px
    }

    .p-service .group .content {
        padding: 15px
    }

    .p-service .flow-ttl {
        font-size: 1.6rem;
        margin-bottom: 10px
    }

    .p-service .group .content p {
        font-size: 1.4rem
    }

    .p-service .flow-list .content::after {
        width: 15px;
        height: 15px;
        top: 17px;
        left: 7.5px
    }

    .p-service .l-other {
        padding: 50px 0
    }

    .p-service .l-other .ttl {
        font-size: 2rem;
        margin-bottom: 30px
    }

    .p-service .other-list .other:not(:nth-child(3n)) {
        margin-right: 0
    }

    .p-service .other-list .other {
        width: 100%;
        margin-top: 30px;
        margin-bottom: 0;
        padding: 20px 15px;
        padding-top: 40px;
        padding-bottom: 30px
    }

    .p-service .other-list .other .lbl {
        font-size: 1.3rem;
        left: 15px
    }

    .p-service .other-list .other-ttl {
        font-size: 1.8rem;
        margin-bottom: 20px;
        min-height: auto
    }

    .p-service .other-list .other .ico {
        width: 120px
    }

    .p-service .other-list .other p {
        font-size: 1.3rem;
        margin-bottom: 20px
    }
}

.p-service .group--revert {
    flex-direction: row-reverse
}

.p-service .group--revert .image {
    text-align: right
}

.p-service .group-list {
    margin-bottom: 20px;
    margin-top: 20px
}

.p-service .group-list li {
    position: relative;
    font-weight: 700;
    font-size: 1.4rem;
    padding-left: 25px;
    padding-bottom: 5px
}

.p-service .group-list li::after {
    content: '';
    position: absolute;
    top: 8px;
    left: 0;
    width: 15px;
    height: 12px;
    background: url('../img/service/ico-check.png') no-repeat;
    background-size: contain
}

.p-service .sec-achie {
    background: #f5f5f5;
    padding: 80px 0 50px
}

.p-service .sec-achie .ttl {
    text-align: center;
    font-size: 3.6rem;
    line-height: 1;
    margin-bottom: 40px
}

.p-service .sec-achie .intro {
    text-align: center;
    font-size: 1.4rem;
    font-weight: 500;
    margin-bottom: 45px
}

.p-service .sec-achie .achie-list {
    background: #fff;
    padding: 38px 23px 0;
    border-radius: 10px;
    display: flex;
    flex-wrap: wrap
}

.p-service .sec-achie .achie-list .item {
    width: 32%;
    margin-bottom: 40px
}

.p-service .sec-achie .achie-list .item:not(:nth-child(3n)) {
    margin-right: 2%
}

.p-service .sec-achie .achie-list .title {
    font-size: 1.7rem;
    font-weight: 700;
    min-height: 54px;
    display: flex;
    line-height: 1.6;
    align-items: center;
    margin-bottom: 20px
}

.p-service .sec-achie .achie-list .image {
    margin-bottom: 15px
}

.p-service .sec-achie .box {
    background: #fcfcfc;
    padding: 15px;
    margin-bottom: 15px
}

.p-service .sec-achie .box-line {
    display: flex;
    align-items: center
}

.p-service .sec-achie .box-line .ico--play {
    width: 16px
}

.p-service .sec-achie .box-line .ico {
    display: flex;
    align-items: center;
    margin-right: 7px;
    flex-shrink: 0
}

.p-service .sec-achie .box-line .ico--heart {
    width: 15px
}

.p-service .sec-achie .box-line .ico--user {
    width: 11px
}

.p-service .sec-achie .box-line dd {
    font-size: 1.4rem
}

.p-service .sec-achie .achie-list .item>p {
    font-size: 1.5rem;
    line-height: 1.36
}

.p-service--tiktok .sec-achie {
    margin-bottom: 80px
}

@media screen and (max-width:767px) {
    .p-service .sec-achie .achie-list {
        display: block;
        padding: 20px 15px
    }

    .p-service .sec-achie .achie-list .item {
        width: 100%
    }

    .p-service .sec-achie .achie-list .item:last-child {
        margin-bottom: 0
    }

    .p-service .sec-achie {
        padding: 60px 0 40px
    }

    .p-service .sec-achie .ttl {
        font-size: 2rem;
        margin-bottom: 20px
    }

    .p-service .sec-achie .intro {
        font-size: 1.3rem;
        margin-bottom: 20px
    }

    .p-service .sec-achie .achie-list .image {
        margin-bottom: 10px
    }

    .p-service .sec-achie .achie-list .title {
        min-height: 100%;
        margin-bottom: 10px
    }

    .p-service .sec-achie .box {
        margin-bottom: 10px
    }

    .p-service .sec-achie .achie-list .item>p {
        font-size: 1.3rem
    }

    .p-service .sec-achie .achie-list .item:not(:nth-child(3n)) {
        margin-right: 0
    }

    .p-service--tiktok .sec-achie {
        margin-bottom: 40px
    }
}

.p-service .point-listText {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    margin: 0 auto
}

.p-service .point-listText .item {
    width: 366px;
    background: #fff;
    border: 1px solid #bfbfbf;
    font-size: 1.7rem;
    font-weight: 700;
    padding: 11px 37px;
    border-radius: 5px;
    margin-bottom: 10px;
    margin: 0 4px 10px
}

.p-service .group .image.center {
    text-align: center
}

.p-service .group--revert .image.center {
    text-align: center
}

@media screen and (max-width:768px) {
    .p-service .point-listText {
        justify-content: space-between;
        padding: 0 15px
    }

    .p-service .point-listText .item {
        font-size: 1.3rem;
        width: 100%;
        margin: 0 0 3%;
        padding: 7px 15px
    }
}

.p-service .group.group--custom p {
    margin-bottom: 25px
}

.p-service .flow-list.flow-list--noNum .content::after {
    display: none
}

@media screen and (min-width:768px) {
    .p-service .point-list.point-list--small {
        flex-wrap: wrap;
        justify-content: center
    }

    .p-service .point-list.point-list--small .point {
        width: 388px;
        margin: 0 9px 38.5px;
        padding: 35px 15px 32px
    }

    .p-service .point-list--small .point>p {
        font-size: 1.6rem;
        margin-bottom: 20px
    }
}

.marker1 {
    background-color: #fbd347;
    font-weight: 700
}

@media screen and (min-width:768px) {
    .p-service--ec .pagettl-block .box .ico {
        position: absolute;
        top: -50px;
        right: 70px
    }

    .p-service--ec .pagettl-block .box {
        position: relative
    }

    .p-service--ec .pagettl-block .box {
        position: relative
    }

    .p-service--ec .pagettl-block .content {
        width: 100%
    }
}

@media screen and (min-width:768px) {
    .p-service--sub .pagettl-block .box .ico {
        position: absolute;
        top: -43px;
        right: 130px
    }

    .p-service--sub .pagettl-block .box {
        position: relative
    }

    .p-service--sub .pagettl-block .box {
        position: relative
    }

    .p-service--sub .pagettl-block .content {
        width: 100%
    }
}

@media screen and (max-width:1024px) and (min-width:768px) {
    .p-service--sub .pagettl-block .box .ico {
        right: 30px
    }
}

.p-service .pagettl-block .box .note {
    font-size: 1.3rem;
    font-weight: 500;
    line-height: 1.8;
    margin-top: 15px
}

@media screen and (min-width:768px) {
    .p-service--brand .pagettl-block .box .ico {
        position: absolute;
        top: -45px;
        right: 70px
    }

    .p-service--subrandb .pagettl-block .box {
        position: relative
    }

    .p-service--brand .pagettl-block .box {
        position: relative
    }

    .p-service--brand .pagettl-block .content {
        width: 100%
    }
}

@media screen and (max-width:1024px) {
    .p-service--brand .pagettl-block .box .ico {
        justify-content: center;
        width: 100%
    }
}

.p-service .l-contact a {
    display: block
}

.p-service .flow-list.flow-list--noNum p {
    margin-bottom: 0
}

#media_image-4 {
    margin-bottom: 20px
}

.l-mv {
    background: url('../img/top/mv_bg.png') no-repeat;
    background-size: cover;
    background-position: center
}

.l-mv .container {
    position: relative;
    padding-left: 355px;
    padding-top: 60px;
    padding-bottom: 60px;
    padding-right: 40px
}

.l-mv__box {
    background: #fff;
    padding: 40px;
    margin-bottom: 42.5px
}

.l-mv__img {
    position: absolute;
    left: 0;
    top: 60px;
    width: 355px;
    text-align: center
}

.l-mv__box h2 {
    font-size: 3rem;
    line-height: 1.5;
    font-weight: 700;
    margin-bottom: 20px
}

.l-mv__box h2 span {
    font-size: inherit
}

.l-mv__box h2 span:not(.marker) {
    color: #5e8e3e
}

.l-mv__box h2 span.marker {
    background: #fbd759;
    line-height: 1.2;
    display: inline-block
}

.l-mv__box p {
    color: #727272;
    font-size: 1.8rem;
    font-weight: 500
}

.l-mv__img img {
    width: 225px;
    text-align: center
}

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

.l-mv__btn {
    width: 47.8125%;
    display: flex;
    align-items: center;
    background: #ef5153;
    border-radius: 10px;
    height: 122px;
    box-shadow: 5px 10px 10px rgba(0, 0, 0, .16);
    padding: 0 25px;
    position: relative
}

.l-mv__btn .content {
    font-size: 1.9rem;
    font-weight: 700;
    color: #fff;
    line-height: 1.5
}

.l-mv__btn .arrow {
    width: 22px;
    position: absolute;
    top: 50%;
    right: 25px;
    transform: translateY(-50%)
}

.l-mv__btn .arrow.down {
    transform: translateY(-50%) rotate(90deg)
}

.l-mv__btn.l-mv__btn--1 .icon {
    width: 62px;
    margin-right: 14px
}

.l-mv__btn.l-mv__btn--1 .content span {
    font-size: inherit;
    color: #f5ff00
}

.l-mv__btn.l-mv__btn--2 {
    padding: 0 17px;
    background: #95bf47
}

.l-mv__btn.l-mv__btn--2 .icon {
    width: 62.5px
}

.l-mv__btn .content .lbl {
    background: #fff;
    color: #95bf47;
    font-weight: 700;
    font-size: 1.6rem;
    display: block;
    width: 100%;
    max-width: 243px;
    background: #fff;
    text-align: center;
    padding: 2px 5px;
    border-radius: 14px;
    margin-top: 10px
}

.p-top .l-new {
    background: #f5f5f5;
    padding: 85px 0 15px
}

.c-ttl01 {
    text-align: center;
    font-family: Montserrat, sans-serif;
    letter-spacing: .05em;
    font-size: 4rem;
    margin-bottom: 50px;
    line-height: 1.4;
    letter-spacing: .1em
}

.section__intro {
    text-align: center;
    font-size: 1.4rem;
    font-weight: 500;
    margin-bottom: 40px
}

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

.c-list__item {
    width: 23%;
    margin-bottom: 70px
}

@media screen and (min-width:769px) {
    .c-list__item:not(:nth-child(4n)) {
        margin-right: 2.66%
    }
}

.c-list__thumb {
    margin-bottom: 15px;
    position: relative
}

.c-list__head {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin-bottom: 15px
}

.c-list__date {
    font-size: 1.2rem;
    color: #898989;
    margin-right: 15px
}

.c-list__cat {
    font-size: 1rem;
    display: inline-block;
    border: 1px solid #707070;
    padding: 1px 15px;
    border-radius: 12px;
    margin:3px 3px 3px 0;
}

.c-list .ttl {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.5;
    margin-bottom: 12px
}

.c-list__tag {
    display: inline-block;
    font-size: 1rem;
    font-weight: 500;
    color: #5f5f5f;
    background: #e3e3e3;
    border-radius: 2px;
    padding: 1px 13px;
    margin-right: 3px;
    margin-bottom: 3px
}

@media screen and (max-width:768px) {
    .c-list {
        justify-content: space-between
    }

    .c-list__item {
        width: 48%;
        margin-bottom: 30px
    }

    .c-list__thumb {
        margin-bottom: 7px
    }

    .c-list__head {
        display: block;
        margin-bottom: 10px
    }

    .c-list__date {
        display: block;
        margin-right: 0
    }

    .c-list .ttl {
        font-size: 1.4rem;
        margin-bottom: 7px
    }
}

.section__intro strong {
    font-size: 2.8rem;
    display: block;
    line-height: 1.5;
    margin-bottom: 20px
}

.p-top .l-service {
    padding: 110px 0 30px
}

.p-top .l-service .c-ttl01 {
    margin-bottom: 40px
}

.p-top .l-service .section__intro {
    margin-bottom: 90px
}

.p-top .p-service .other-list {
    justify-content: center;
    max-width: 100%;
    margin-bottom: 0
}

.p-top .p-service .other-list .other {
    width: 24.16%;
    margin: 0 .42% 55px
}

.p-top .l-category {
    background: #FBFBFB;
    padding: 100px 0 70px
}

.p-top .l-category__list {
    display: flex;
    flex-wrap: wrap
}

.p-top .l-category__item {
    width: 32%;
    margin-bottom: 30px
}

.p-top .l-category__item:not(:nth-child(3n)) {
    margin-right: 2%
}

.p-top .l-category__content {
    background: #fff;
    border-radius: 10px;
    padding: 75px 15px 25px;
    text-align: center;
    box-shadow: 5px 10px 10px rgba(0, 0, 0, 0.06);
}

.p-top .l-category__icon {
    width: 111px;
    margin: 0 auto;
    box-shadow: 0 1.5px 10px rgba(0, 0, 0, .16);
    border-radius: 50%;
    margin-bottom: -55.5px;
    position: relative
}

.p-top .l-category__content .ttl {
    font-size: 1.8rem;
    font-weight: 700;
    margin-bottom: 10px
}

.p-top .l-category__content p {
    font-size: 1.4rem;
    font-weight: 500;
    line-height: 1.71;
    margin-bottom: 20px
}

.p-top .l-category__content .c-btn01 {
    width: 245px;
    max-width: 100%;
    height: 43px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 auto;
    background: #fbd347;
    color: initial
}

.p-top .l-category .section__intro {
    margin-bottom: 45px
}

.p-top .l-contact {
    background: #F7F8F8;
    padding: 50px 0
}

.p-top .l-design {
    background: #f5f5f5;
    padding: 75px 0 60px
}

.c-btn03 {
    width: 245px;
    max-width: 100%;
    height: 43px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 auto;
    background: #fbd347;
    color: initial;
    font-size: 1.3rem;
    font-weight: 700;
    transition: .3s ease;
    border-radius: 25px
}

.c-btn03:hover {
    opacity: .7
}

.p-top .l-pickup {
    padding: 80px 0 20px
}

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

.l-pickup__top .l-pickup__ttl {
    width: 52.95%
}

.l-pickup__top .c-list {
    flex: 1
}

.c-list.c-list--cols-1 .c-list__item {
    width: 100%;
    margin-right: 0
}

.c-list.c-list--cols-1 .c-list__item .ttl {
    font-size: 2.4rem
}

.c-list .excerpt {
    font-size: 1.4rem;
    font-weight: 500;
    line-height: 1.71;
    padding-top: 10px;
    margin-bottom: 20px
}

.l-pickup__top .l-pickup__ttl {
    padding: 0 30px
}

.l-pickup__top .l-pickup__ttl .c-ttl01 {
    text-align: left;
    font-size: 4.5rem
}

.l-pickup__top .section__intro {
    text-align: left;
    font-size: 1.6rem
}

.c-list.c-list--cols-2 {
    justify-content: space-between
}

.c-list.c-list--cols-2 .c-list__item {
    width: 47.35%;
    margin-right: 0
}

.l-pickup--2 {
    background: #f5f5f5
}

.l-pickup--2 .l-pickup__top .l-pickup__ttl {
    width: 51.5%
}

.p-top .l-ranking {
    padding: 80px 0 20px
}

.c-list__rank {
    position: absolute;
    top: 0;
    left: 0;
    width: 79px;
    height: 32px;
    background: #ddd;
    display: flex;
    align-items: center;
    color: #fff;
    font-weight: 700;
    font-size: 1.4rem;
    justify-content: center
}

.c-list__rank .icon {
    width: 16px;
    display: flex;
    align-items: center;
    margin-right: 5px
}

.c-list__rank.c-list__rank--1 {
    background: #fbca0f
}

.c-list__rank.c-list__rank--2 {
    background: #a6a6a6
}

.c-list__rank.c-list__rank--3 {
    background: #c7a00c
}

.p-top .l-all {
    padding: 80px 0 85px;
    background: #f5f5f5
}

@media screen and (max-width:992px) {
    .l-mv__box h2 {
        font-size: 2.6rem
    }

    .l-mv__box p {
        font-size: 1.6rem
    }

    .l-mv__img {
        position: static;
        text-align: left;
        width: 300px
    }

    .l-mv .container {
        padding: 60px 0
    }

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

    .l-mv__list {
        display: block;
        flex: auto;
        max-width: 360px
    }

    .l-mv__btn {
        width: 100%;
        margin-bottom: 25px
    }

    .l-mv__btn:last-child {
        margin-bottom: 0
    }

    .p-top .p-service .other-list .other {
        width: 48%;
        margin: 0 1% 30px
    }

    .p-top .l-category__item:not(:nth-child(3n)) {
        margin-right: 0
    }

    .p-top .l-category__list {
        justify-content: space-between
    }

    .p-top .l-category__item {
        width: 48%
    }

    .l-pickup__top .l-pickup__ttl .c-ttl01 {
        font-size: 2.8rem
    }
}

@media screen and (max-width:768px) {
    .l-mv .container {
        padding: 15px 0 30px
    }

    .l-mv__box {
        text-align: center;
        padding: 20px;
        margin-bottom: 20px
    }

    .l-mv__box h2 {
        font-size: 1.9rem;
        line-height: 1.8;
        margin-bottom: 10px
    }

    .l-mv__box h2 span.marker {
        display: inline
    }

    .l-mv__box p {
        font-size: 1.4rem;
        line-height: 1.71
    }

    .l-mv__img {
        width: 20vw;
        max-width: 90px;
        margin-right: 10px
    }

    .l-mv__list {
        flex: 1;
        max-width: 260px
    }

    .l-mv__btn.l-mv__btn--1 .icon {
        width: 40px;
        margin-right: 5px
    }

    .l-mv__btn.l-mv__btn--2 .icon {
        width: 45px
    }

    .l-mv__btn {
        padding: 20px 10px 15px 10px;
        height: 98px;
        margin-bottom: 15px
    }

    .l-mv__btn.l-mv__btn--2 {
        padding: 20px 10px 15px 10px
    }

    .l-mv__btn .content {
        font-size: 1.4rem;
        line-height: 1.71
    }

    .l-mv__btn .content .lbl {
        font-size: 1.2rem;
        margin-top: 5px
    }

    .l-mv__btn .arrow {
        right: 10px;
        width: 16px
    }
}

.section__intro p {
    font-size: inherit
}

@media screen and (max-width:768px) {
    .c-ttl01 {
        font-size: 2.6rem;
        margin-bottom: 20px
    }

    .section__intro {
        font-size: 1.3rem;
        margin-bottom: 30px
    }

    .p-top .l-new {
        padding: 50px 0 10px
    }

    .p-top .l-service {
        padding: 50px 0 20px
    }

    .section__intro strong {
        font-size: 1.8rem
    }

    .p-top .l-service .section__intro {
        margin-bottom: 50px
    }

    .p-top .l-category {
        padding: 50px 0 20px
    }

    .p-top .l-category__icon {
        width: 80px;
        margin-bottom: -40px
    }

    .p-top .l-category__content {
        padding: 55px 15px 25px
    }

    .p-top .l-category__content .ttl {
        font-size: 1.6rem
    }

    .p-top .l-category__content p {
        font-size: 1.2rem
    }

    .p-top .l-contact {
        padding: 30px 0
    }

    .p-top .l-design {
        padding: 50px 0
    }

    .l-pickup__top {
        display: block
    }

    .l-pickup__top .l-pickup__ttl {
        width: 100%;
        padding: 0 0
    }

    .l-pickup__top .l-pickup__ttl .c-ttl01 {
        text-align: center;
        font-size: 2.6rem
    }

    .l-pickup__top .section__intro {
        text-align: center;
        font-size: 1.3rem
    }

    .l-pickup--2 .l-pickup__top .l-pickup__ttl {
        width: 100%
    }

    .c-list.c-list--cols-1 .c-list__item .ttl {
        font-size: 1.6rem
    }

    .c-list .excerpt {
        display: none
    }

    .c-list.c-list--cols-2 .c-list__item {
        width: 48%
    }

    .p-top .l-pickup,
    .p-top .l-ranking {
        padding: 50px 0 20px
    }

    .p-top .l-all {
        padding: 50px 0
    }
}

@media screen and (max-width:640px) {
    .p-top .l-category__item {
        width: 100%
    }

    .p-top .p-service .other-list .other {
        width: 100%;
        margin: 0 0;
        margin-bottom: 30px
    }
}

@media screen and (max-width:320px) {
    .l-mv__btn .content {
        font-size: 1.2rem
    }
}

body.home {
    background-color: #fbfbfb
}

.other-list.other-list--center {
    justify-content: center;
    max-width: 100%;
    margin-bottom: 0
}

.other-list.other-list--center .other {
    width: 24.16%;
    margin: 0 .42% 55px !important
}

@media screen and (max-width:992px) {
    .other-list.other-list--center .other {
        width: 48%;
        margin: 0 1% 30px !important
    }
}

@media screen and (max-width:640px) {
    .other-list.other-list--center .other {
        width: 100%;
        margin: 0 0 !important;
        margin-bottom: 30px !important
    }
}

.p-service.p-service--owned .pagettl-block .box .ico {
    position: absolute;
    right: 60px;
    top: 70px
}

.p-service.p-service--owned .pagettl-block .box {
    position: relative
}

.p-service.p-service--owned .pagettl-block .content {
    width: 100%
}

.p-service--ec .pagettl-block .content {
    position: relative;
    z-index: 1
}

@media screen and (max-width:992px) {
    .p-service.p-service--owned .pagettl-block .box .ico {
        position: static;
        display: block;
        text-align: left
    }
}

.d-flex {
    display: flex
}

.j-between {
    justify-content: space-between
}

.j-start {
    justify-content: flex-start
}

.j-end {
    justify-content: flex-end
}

.a-start {
    align-items: flex-start
}

.a-center {
    align-items: center
}

.a-end {
    align-items: flex-end
}

.f-nav a {
    color: #fff;
    font-size: 1.3rem;
    padding-bottom: 10px
}

.f-nav a.f-nav__parent {
    font-size: 1.5rem;
    border-bottom: 1px solid #fff;
    padding-bottom: 10px;
    margin-bottom: 15px;
    font-weight: 700
}

.f-nav__block.f-nav__block4 {
    max-width: 20%;
    margin-top: -50px;
    margin-bottom: 80px
}

.f-nav__block.f-nav__block5 {
    border-top: 1px solid #fff;
    padding-top: 10px;
    margin-bottom: 10px
}

.f-nav__block.f-nav__block5 ul li {
    display: inline-block;
    margin-right: 25px
}

.f-logo {
    max-width: 175px;
    margin-bottom: 10px
}

.f-logo.unity.f-logo--d2c {
    max-width: 434px;
}

.l-footer .logo {
    text-align: left
}

.f-nav__block.f-nav__block5 a {
    font-size: 1.4rem
}

@media screen and (max-width:992px) {
    .f-nav__block.f-nav__block4 {
        margin-top: 0
    }
}

@media screen and (max-width:768px) {
    .f-nav .d-flex {
        display: block;
        width: 100% !important
    }

    .f-nav .f-nav__block {
        width: 100% !important
    }

    .f-nav__sub {
        display: none;
        margin-bottom: 20px
    }

    .f-nav ul {
        width: 100% !important
    }

    .f-nav__block.f-nav__block4 {
        max-width: 100%;
        margin-bottom: 0
    }

    .f-nav__block.f-nav__block5 .f-nav__sub {
        display: block
    }

    .f-nav__block.f-nav__block5 a {
        font-size: 1.4rem
    }

    .f-nav a {
        font-size: 1.2rem;
        opacity: 1
    }

    .f-nav__block.f-nav__block5 ul li {
        display: block
    }

    .f-nav a.f-nav__parent {
        position: relative;
        padding-bottom: 0;
        margin-bottom: 0;
        padding: 15px 0;
        border-color: #e8a7a7;
        font-size: 1.4rem
    }

    .f-nav a.f-nav__parent.is-active {
        border-color: #fff;
        opacity: 1
    }

    .f-nav a.f-nav__parent.is-active::before {
        transform: rotate(90deg)
    }

    .f-nav a.f-nav__parent::before {
        content: '';
        position: absolute;
        top: 25px;
        right: 7px;
        height: 15px;
        width: 1px;
        background: #fff;
        transition: .3s ease
    }

    .f-nav a.f-nav__parent::after {
        content: '';
        position: absolute;
        top: 32px;
        right: 0;
        width: 15px;
        height: 1px;
        background: #fff
    }

    .f-nav__block.f-nav__block5 {
        padding-top: 0;
        border-top: none
    }

    .f-nav__block.f-nav__block5 a {
        padding: 15px 0;
        font-weight: 700
    }

    .f-nav a {
        padding: 12px 0;
        border-bottom: 1px solid #2b2b2b;
    }

    .f-nav__block.f-nav__block5 ul li {
        margin-right: 0
    }

    .f-logo {
        margin-top: 35px
    }

    .l-footer .logo {
        margin-bottom: 15px;
        margin-top: 5px
    }

    .l-footer>.container {
        width: 100%;
        padding: 0 20px
    }
}

@media screen and (min-width:769px) {
    .f-nav__parent.no-click {
        pointer-events: none
    }
}

.sdesign-icon--big {
    width: 73px;
    height: 73px
}

.sdesign-icon--big>img {
    margin-top: -7px
}

.sdesign-icon--big>span {
    color: #fff;
    width: 100%;
    text-align: center;
    position: absolute;
    bottom: 0;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: flex-end;
    font-size: 1rem;
    font-weight: 700;
    padding-bottom: 10px
}

@media screen and (max-width:768px) {
    .sdesign-icon--big {
        width: 64px;
        height: 64px
    }
}

@keyframes reflect {
    0% {
        transform: scale(0) rotate(45deg);
        opacity: 0
    }

    80% {
        transform: scale(0) rotate(45deg);
        opacity: .5
    }

    81% {
        transform: scale(4) rotate(45deg);
        opacity: 1
    }

    100% {
        transform: scale(50) rotate(45deg);
        opacity: 0
    }
}

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

    80% {
        transform: scale(0) rotate(45deg);
        opacity: .5
    }

    81% {
        transform: scale(4) rotate(45deg);
        opacity: 1
    }

    100% {
        transform: scale(50) rotate(45deg);
        opacity: 0
    }
}

.fixed-bot .inner .btn {
    overflow: hidden
}

.fixed-bot .inner .btn:after {
    content: "";
    display: block;
    width: 30px;
    height: 100%;
    position: absolute;
    top: -180px;
    left: 0;
    background-color: #fff;
    opacity: 0;
    transform: rotate(45deg);
    animation: reflect 2s ease-in-out infinite;
    -webkit-transform: rotate(45deg);
    -webkit-animation: reflect 2s ease-in-out infinite
}

.p-sdesign .l-intro .title {
    font-size: 2.8rem;
    font-weight: 700;
    text-align: center;
    margin-bottom: 30px
}

.p-service .l-contact::after {
    display: none
}

.f-nav a object a {
    display: inline-block;
    font-size: inherit;
    border: none;
    padding: 0;
    margin: 0
}

.f-nav__parent.no-child::before {
    display: none
}

.f-nav__parent.no-child::after {
    display: none
}

.p-sdesign .design .ttl {
    font-weight: 700
}

.c-tagList.max-height {
    max-height: 135.6px;
    overflow: hidden
}

@media screen and (max-width:768px) {
    .c-tagList.max-height {
        max-height: 120px
    }
}

#cursor {
    position: fixed;
    z-index: 10000;
    left: 0;
    top: 0;
    pointer-events: none;
    will-change: transform;
    transition: .2s ease-out
}

@media (hover:hover) and (pointer:fine) {
    .cursor__circle {
        width: 5rem;
        height: 5rem;
        margin-top: -50%;
        margin-left: -50%;
        border-radius: 50%;
        border: solid 2px #383838;
        -webkit-transition: opacity .3s cubic-bezier(.25, 1, .5, 1), background-color .3s cubic-bezier(.25, 1, .5, 1), border-color .3s cubic-bezier(.25, 1, .5, 1), width .3s cubic-bezier(.25, 1, .5, 1), height .3s cubic-bezier(.25, 1, .5, 1);
        transition: opacity .3s cubic-bezier(.25, 1, .5, 1), background-color .3s cubic-bezier(.25, 1, .5, 1), border-color .3s cubic-bezier(.25, 1, .5, 1), width .3s cubic-bezier(.25, 1, .5, 1), height .3s cubic-bezier(.25, 1, .5, 1)
    }

    #cursor.is-active .cursor__circle {
        width: 8rem;
        height: 8rem;
        background: #ef5153;
        border-color: #ef5153
    }

    #cursor.common .cursor__circle {
        width: 20px;
        height: 20px;
        background-color: rgba(239, 81, 83, .9);
        border-color: rgba(239, 81, 83, .9)
    }

    #cursor.is-active::after {
        content: 'View';
        position: absolute;
        left: -50%;
        top: -50%;
        width: 100%;
        height: 100%;
        font-size: 1.2rem;
        font-family: Montserrat, sans-serif;
        font-weight: 500;
        text-align: center;
        line-height: 4rem;
        color: #fff;
        opacity: 1;
        background-repeat: no-repeat;
        background-position: center
    }
}

#header {
    /* position: fixed; */
    position:sticky;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 9999
}

/* main {
    margin-top: 80px
} */

.l-pickup {
    padding-top: 70px
}

@media screen and (max-width:768px) {
    .l-pickup {
        padding-top: 30px
    }
}

.c-form dt {
    padding-right: 60px
}

.c-form dt:after {
    top: 0
}

.c-form dt.option::after {
    display: none
}

.home .l-ranking {
    padding: 50px 0 25px
}

.home .l-all {
    padding: 50px 0;
}

.tagcloud.max-height {
    max-height: 150px;
    overflow: hidden
}

@media screen and (max-width: 768px) {
    .canada-banner {
        margin-bottom: 30px;
    }
}

/* 01-14-2022 */
.c-faqBlock {
    background: #FAFAFA;
    padding: 50px 20px 50px;
    margin-bottom: 40px;
}

.c-faqBlock__inner {
    max-width: 800px;
    margin: 0 auto;
}

.c-faqBlock__inner .ttl {
    font-size: 2.4rem;
    font-weight: bold;
    line-height: 1;
    margin-bottom: 40px;
}

.c-faqList .q {
    font-size: 1.8rem;
    font-weight: bold;
    padding-left: 25px;
    position: relative;
    margin-bottom: 10px;
}

.c-faqList span,
.c-faqList p {
    font-size: inherit;
    line-height: 1.4;
}

.c-faqList .letter {
    position: absolute;
    top: 0;
    left: 0;
}

.c-faqList .a {
    position: relative;
    padding-left: 25px;
    font-size: 1.6rem;
}

.c-faqBlock .faq {
    margin-bottom: 50px;
}

.c-faqBlock .faq:last-child {
    margin-bottom: 0;
}

@media screen and (max-width: 767px) {
    .c-faqBlock {
        padding: 30px 15px;
        margin-bottom: 30px;
    }

    .c-faqBlock__inner .ttl {
        font-size: 2rem;
    }

    .c-faqList .q {
        font-size: 1.6rem;
    }

    .c-faqBlock .faq {
        margin-bottom: 35px;
    }

    .c-faqList .a {
        font-size: 1.4rem;
    }
}

/* 01-20-2022 */
@media screen and (max-width: 767px) {
    .other-list .other .inner {
        display: flex;
    }

    .other-list .other .inner .ico {
        width: 80px;
        flex-shrink: 0;
        margin-right: 15px;
    }
}

.p-top .l-category__icon {
    position: absolute;
    top: -55px;
    left: 0;
    right: 0;
    margin: 0 auto;
}

.p-top .l-category__content {
    position: relative;
}

.p-top .l-category__item {
    margin-bottom: 0;
    margin-top: 85.5px;
}

@media screen and (max-width: 640px) {
    .p-top .l-category__item {
        max-width: 420px;
        margin: 0 auto 30px !important;
    }

    .p-top .l-category__content {
        padding: 20px 20px 25px;
    }

    .p-top .l-category__icon {
        position: static;
        width: 70px;
        flex-shrink: 0;
        margin: 0 0;
        margin-right: 15px;
    }

    .p-top .l-category__content .wrapper {
        display: flex;
        align-items: flex-start;
    }

    .p-top .l-category__content .inner {
        text-align: left;
    }

    .p-top .l-category__content .c-btn03 {
        width: 100%;
        height: 45px;
    }
}

.l-link a,
.l-link div {
    font-size: 1.5rem;
    font-weight: 500;
    position:relative;
    padding-left:80px;
}

.l-link a span,
.l-link div span {
    flex: 0 0 71px;
    margin-right: 12px;
    background: linear-gradient(to right, #7DD4B5, #81F794);
    color: #fff;
    font-size: 1.5rem;
    padding: 1px 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 25px;
    position:absolute;
    top:0;
    left:0;
}

.banner-second {
    display: flex;
    justify-content: space-between;
    margin-bottom: 40px;
}

.banner-second-spacing a {
    width: 49%;
}

@media screen and (max-width: 768px) {

    .l-link a,
    .l-link div {
        margin: 0;
    }

    .banner-second {
        margin-top: 30px;
        flex-wrap: wrap;
    }

    .banner-second-spacing a {
        width: 100%;
        margin-top: 10px;
    }

    .banner-second a {
        display: block;
        margin-bottom: 20px;
    }
}

/* 03-10-2022 */
.f-logoList {
    display: flex;
}

.f-logo.unity p {
    font-size: 1.2rem;
    color: #fff;
}

.f-logo.unity {
    margin-left: 30px;
    max-width: 195px;
}

.f-logo.unity img {
    margin: 0 auto 10px;
}

.f-logo.unity.f-logo--d2c img {
    margin: 0 auto 22px;
}

@media screen and (max-width: 768px) {
    .f-logoList {
        flex-direction: column;
    }

    .f-logo.unity {
        margin-left: 0;
        margin-top: 15px;
    }
}

/* 04-01-2022 */
.c-youtube {
    position: relative;
    padding-bottom: 56.25%;
}

.c-youtube iframe {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    object-fit: cover;
}

.p-top .l-service .c-youtube {
    margin-bottom: 70px;
    max-width: 70%;
    margin-left: auto;
    margin-right: auto;
    padding-bottom: 39.25%;
}

@media screen and (max-width: 768px) {
    .p-top .l-service .c-youtube {
        margin-bottom: 40px;
        max-width: 100%;
        padding-bottom: 56.25%;
    }
}

/* 04-11-2022 */
.h-contact.h-contact--new .c-btn01 {
    width: 170px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 4px;
    text-align: center;
    line-height: 1.3;
    /* font-weight: bold; */
    font-size: 1.6rem;
}

.h-contact.h-contact--color1 .c-btn01 {
    background: #79B701;
}

#h-btn2 .c-btn01 {
    font-size: 1.4rem;
    margin-left: 12px;
}

@media screen and (max-width: 768px) {
    .h-menu--btn {
        flex-direction: column;
        align-items: flex-start;
    }

    .h-contact.h-contact--new .c-btn01 {
        width: 200px;
    }

    #h-btn2 .c-btn01 {
        margin-left: 10px;
    }
}

.cta-banner {
    position: fixed;
    bottom: 85px;
    right: 15px;
    max-width: 320px;
    z-index: 1000;
    display: none;
}

.cta-banner__btn {
    position: absolute;
    right: 5px;
    max-width: 26px;
    top: 5px;
    z-index: 100;
    cursor: pointer;
}

.cta-banner__btn:hover {
    opacity: 0.7;
}

.cta-banner a:hover {
    opacity: 1;
}

@media screen and (max-width: 768px) {
    .cta-banner {
        max-width: 240px;
    }
}

.hidden {
    display: none !important;
}

.c-btn04 {
    font-size: 2.4rem;
    font-weight: bold;
    border-radius: 4px;
    height: 80px;
    width: 780px;
    max-width: 100%;
    position: relative;
    display: flex !important;
    justify-content: center;
    align-items: center;
    background: #EF5153;
    color: #fff;
    margin: 0 auto 40px;
    text-align: center;
    line-height: 1.5;
    padding: 0 35px;
}

.c-btn04:after {
    content: '';
    background-image: url('https://shopi-lab.com/wp-content/themes/SP_swblog/assets/img/top/arrow.png');
    background-size: contain;
    width: 21px;
    height: 21px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 40px;
    background-repeat: no-repeat;
}

.p-service .l-contact a.c-btn04 {
    margin-bottom: 60px;
}

@media screen and (max-width: 768px) {
    .c-btn04 {
        font-size: 1.6rem;
        height: 60px;
        margin-bottom: 20px;
    }

    .c-btn04:after {
        width: 16px;
        height: 16px;
        right: 15px;
    }

    .p-service .l-contact a.c-btn04 {
        margin-bottom: 30px;
    }
}

/* 03-03-2022 */
.single-new.c-single {
    min-height: 322px;
    margin-bottom: 50px;
}

.l-single_thumbnail {
    position: absolute;
    top: 0;
    right: 0;
    width: 51%;
    margin-bottom: 0;
}

.single-new__content {
    width: 45.83%;
    position: relative;
}

.single-new__content .sns {
    margin-top: 30px;
    margin-bottom: 0;
}

.single-new__content .date-cat {
    display: flex;
    align-items: center;
}

.single-new__content .date {
    margin-bottom: 0;
    margin-right: 20px;
}

.single-new__content .cats {
    margin-bottom: 0;
    line-height: 1;
}

.single-new__content .single_tag_wrap {
    margin-top: 10px;
    margin-bottom: 0;
}

.single-new__content .single_tag {
    margin-bottom: 0;
}

.single-new__content .headline {
    margin: 0;
    margin-bottom: 0;
}

.single-box {
    width: 45.83%;
    margin-top: auto;
    padding-top: 30px;
}

.single-boxLink {
    border: 1px solid #EDEDED;
    text-align: center;
    padding: 20px 10px;
}

.single-new__wrapper {
    display: flex;
    flex-direction: column;
    min-height: inherit;
}

.single-new.c-single .single-boxLink p {
    margin-bottom: 5px;
    font-size: 1.6rem;
    font-weight: bold;
}

.single-boxLink .btn {
    width: 390px;
    max-width: 100%;
    height: 50px;
    background: #2955B7;
    margin: 0 auto;
    border-radius: 25px;
    color: #fff;
    font-size: 1.6rem;
    font-weight: bold;
    display: flex;
    justify-content: center;
    align-items: center;
}

.single-boxLink .icon {
    max-width: 17px;
    display: flex;
    margin-left: 40px;
}

@media screen and (max-width: 1024px) {
    .single-new__content .sns {
        position: static;
        margin-top: 15px;
    }
}

@media screen and (max-width: 992px) {
    .l-single_thumbnail {
        position: static;
        width: 100%;
    }

    .single-new__content {
        width: 100%;
    }

    .single-box {
        width: 100%;
    }
}

@media screen and (max-width: 768px) {
    .single-box {
        display: flex;
        justify-content: space-between;
        padding-top: 0;
        align-items: center;
    }

    .l-single_thumbnail {
        width: 45.21%;
    }

    .single-boxLink {
        border: none;
        width: 53%;
        padding: 0;
    }

    .single-new.c-single .single-boxLink p {
        font-size: 1rem;
        line-height: 1.6;
    }

    .single-boxLink .btn {
        height: 35px;
        font-size: 1.2rem;
    }

    .single-boxLink .icon {
        display: none;
    }

    .single-new.c-single {
        min-height: 100%;
        margin-bottom: 30px;
    }
}

@media screen and (min-width: 769px) {
    .c-single .headline h1 {
        font-size: 2.4rem;
    }

    .single_tag li a,
    .single_tag li span {
        font-size: 1.4rem;
    }
}

body.category,
body.single-post {
    background: #fbfbfb;
}

body.category .c-related_list .items,
body.single-post .c-single {
    background: transparent;
}

/* 06-14-2022 */
.c-form .checkBox a::after {
    display: none;
}

.c-form .checkBox a {
    text-decoration: none;
}

.page-title span {
    font-size: inherit;
}

/* 10-17-2022 */
#h-btn1 {
    font-size: 1.4rem;
}

/* 10-20-2022 */
.btn-search {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background: #fff;
    outline: none;
    border: 1px solid #E5E5E5;
    color: #7B7B7B;
    cursor: pointer;
}

.h-menu--btn .h-search {
    padding: 0 20px 0 10px;
}

.g-searchBox {
    background: #F4F4F4;
    padding: 30px 0;
    position: sticky;
    top: 80px;
    left: 0;
    width: 100%;
    z-index: 10;
}

.c-search-form .search-field {
    width: 100%;
    height: 50px;
    border: 1px solid #EEEEEE;
    font-size: 16px;
    border-radius: 25px;
    padding: 0 20px;
    outline: none;
}

.c-search-form .search-field:focus {
    border-color: #333;
}

.c-search-form .search-field::placeholder {
    color: #AFAFAF;
}

.c-search-form .search-submit {
    border: none;
    background: transparent;
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    right: 22px;
    color: #7B7B7B;
}

.c-search-form .search-submit i {
    font-size: 1.6rem;
}

.c-search-form {
    position: relative;
    max-width: 800px;
    margin: 0 auto;
}

.g-searchBox .inner {
    padding: 0 50px;
    position: relative;
}

.g-searchBox .btn-close {
    position: absolute;
    top: 0;
    right: 0;
}

.g-searchBox .container {
    max-width: 1300px;
}

.container.container--xl {
    max-width: 1300px;
}

.btn-close {
    border: none;
    background: transparent;
    color: #7B7B7B;
    cursor: pointer;
}

.btn-close i {
    font-size: 2rem;
}

@media screen and (max-width: 768px) {
    .g-searchBox .inner {
        padding: 0 40px 0 0;
    }
}

/* 10-21-2022 */
.l-mvSlider {
    background: #fbfbfb;
    padding: 35px 0;
}

.p-top .l-new {
    padding-top: 15px;
    padding-bottom: 10px;
    background: #FBFBFB;
}

.p-top .l-topNew {
    background: #F5F5F5;
    padding: 50px 0 0;
}

.p-top .l-topNew .c-list {
    margin-bottom: -20px;
}

#swiper-topMv .swiper-slide {
    width: 680px;
    margin: 0 25px;
}

#swiper-topMv .swiper-pagination {
    position: static;
    line-height: 0;
    margin: 15px 0;
}

#swiper-topMv .swiper-pagination-bullet {
    width: 11px;
    height: 11px;
    background: #ddd;
    opacity: 1;
}

#swiper-topMv .swiper-pagination-bullet-active {
    background: #EF5153;
}

#swiper-topMv .swiper-button {
    width: 32px;
    height: 32px;
    background: #fff;
    border-radius: 50%;
}

#swiper-topMv .swiper-button:after {
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    color: #333;
    font-size: 1.2rem;
}

#swiper-topMv .swiper-button-prev:after {
    content: '\f060';
}

#swiper-topMv .swiper-button-next:after {
    content: '\f061';
}

#swiper-topMv .container {
    position: absolute;
    left: 0;
    right: 0;
    top: 50%;
    transform: translateY(calc(-50% - 11px));
    width: 100%;
    z-index: 1;
}

.l-topDownload {
    padding-top: 10px;
    padding-bottom: 25px;
}

.p-top .l-new .c-list {
    margin-bottom: -35px;
}

.p-top .l-service {
    padding: 50px 0 0;
    margin-bottom: -5px;
}

.p-top .l-category {
    padding: 50px 0;
}

.p-top .l-design {
    padding: 50px 0;
}

.l-pickup {
    padding-top: 50px;
}

.l-pickup .c-list {
    margin-bottom: -20px;
}

.home .l-ranking {
    padding: 50px 0 0;
}

.home .l-ranking .c-list {
    margin-bottom: -20px;
}

.home .l-all {
    padding: 50px 0;
}

@media screen and (max-width: 768px) {
    #swiper-topMv .swiper-slide {
        width: 340px;
        margin: 0 10px;
    }

    .p-top .l-new {
        padding: 15px 0 20px;
    }

    .p-top .l-new .c-list {
        margin-bottom: 0;
    }

    .p-top .l-service {
        padding: 50px 0 20px;
        margin-bottom: 0;
    }

    .p-top .l-category {
        padding: 50px 0 20px;
    }

    .l-pickup .c-list {
        margin-bottom: 0;
    }

    .l-pickup {
        padding-bottom: 20px;
    }

    .home .l-ranking .c-list {
        margin-bottom: 0;
    }

    .home .l-all {
        padding: 20px 0 50px;
    }

    .g-searchBox {
        top: 73px;
    }
}

/* 11-02-2022 */
.l-topMv {
    background: url('../img/topnew/bg-mv.png');
    background-size: cover;
}

.l-topMv .container {
    display: flex;
    align-items: center;
    position: relative;
    min-height: 423px;
}

.l-topMv .inner {
    display: flex;
    align-items: flex-end;
}

.l-topMv .content {
    color: #fff;
    font-weight: bold;
    width: 100%;
    position: relative;
    z-index: 1;
    padding-right: 400px;
}

.l-topMv .text1 {
    font-size: 3rem;
}

.l-topMv .text2 {
    font-size: 3.5rem;
    display: flex;
    align-items: center;
    margin-bottom: 30px;
}

.l-topMv .text2 .shopilab {
    position: relative;
    top: 5px;
}

.l-topMv .image {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 0;
    max-width: 440px;
}

.l-topMv .content p {
    font-size: 2.1rem;
    line-height: 1.76;
}

.l-topCta {
    padding: 40px 0 30px;
    text-align: center;
    background: #FBFBFB;
}

.l-topCta .head {
    font-size: 2.8rem;
    font-weight: bold;
    line-height: 1;
    margin-bottom: 10px;
}

.l-topCta .head .num {
    font-size: 5.3rem;
    line-height: 1;
    display: inline-block;
}

.l-topCta .head .point {
    position: relative;
}

.l-topCta .head .point:before {
    content: '';
    width: 5px;
    height: 5px;
    background: #333;
    position: absolute;
    border-radius: 50%;
    top: -2px;
    left: 0;
    right: 0;
    margin: 0 auto;
    transform: translateY(-100%);
}

.l-topCta .btn {
    display: block;
    max-width: 445px;
    margin: 0 auto;
}

.l-topCta .note {
    font-size: 1.4rem;
    font-weight: 500;
}

.l-topCta {
    padding: 40px 0 30px;
    text-align: center;
}

.l-topCta .head {
    font-size: 2.8rem;
    font-weight: bold;
    line-height: 1;
    margin-bottom: 10px;
}

.l-topCta .head .num {
    font-size: 5.3rem;    
    line-height: 1;
    display: inline-block;
    font-family: "DIN 2014";
}

.l-topCta .head .point {
    position: relative;
}

.l-topCta .head .point:before {
    content: '';
    width: 5px;
    height: 5px;
    background: #333;
    position: absolute;
    border-radius: 50%;
    top: -3px;
    left: 0;
    right: 0;
    margin: 0 auto;
}

.l-topCta .btn {
    display: block;
    max-width: 445px;
    margin: 0 auto;
    box-shadow: 5px 10px 10px rgba(0, 0, 0, .16);
    border-radius: 50px;
}

.l-topCta .note {
    font-size: 1.4rem;
    font-weight: 500;
}

.l-topProblem {
    background: #F5F5F5;
    padding: 65px 0;
}

.c-ttl02>* {
    display: block;
}

.c-ttl02 {
    text-align: center;
    margin-bottom: 35px;
}

.c-ttl02 .en {
    font-size: 4rem;
    font-family: Montserrat, sans-serif;
    letter-spacing: .1em;
    line-height: 1;
    text-transform: uppercase;
    margin-bottom: 15px;
}

.c-ttl02 .ja {
    font-size: 2.8rem;
    line-height: 1.4;
}

.l-topProblem .box {
    background: #fff;
    max-width: 763px;
    margin: 0 auto;
    padding: 30px 15px;
}

.l-topProblem .box ul {
    max-width: 680px;
    margin: 0 auto;
}

.c-checkList {
    font-size: 1.4rem;
    font-weight: bold;
}

.c-checkList li {
    position: relative;
    padding-left: 22px;
}

.c-checkList li:before {
    content: '';
    position: absolute;
    top: 8px;
    left: 0;
    width: 14.5px;
    height: 12px;
    background-image: url('../img/icon/ico-check.png');
    background-size: contain;
    background-repeat: no-repeat;
}

.l-topProblem .balloon {
    width: 141px;
    height: 141px;
    background: #EF5154;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    font-size: 2rem;
    font-weight: bold;
    border-radius: 50%;
    margin: 0 auto 60px;
    position: relative;
}

.l-topProblem .balloon::after {
    content: '';
    position: absolute;
    bottom: 0;
    width: 1px;
    height: 33px;
    background: #EF5154;
    margin: 0 auto;
    transform: translateY(100%);
}

.l-topProblem .text p {
    font-size: 2.8rem;
    font-weight: bold;
}

.txtStyle01 {
    display: inline;
    /* background: repeating-linear-gradient(to top, #FCD247 0, #FCD247 8px, transparent 8px, transparent 100%); */
    background: repeating-linear-gradient(to top, #F4ED3C 0, #F4ED3C 8px, transparent 8px, transparent 100%);
}

.l-topProblem .box {
    margin-bottom: 30px;
}

.l-topWorks {
    padding: 70px 0 40px;
}

.txtDecoration01 {
    text-align: center;
    font-size: 2.2rem;
    font-weight: bold;
    margin-bottom: 30px;
    line-height: 1.4;
}

.txtDecoration01 span {
    position: relative;
    padding: 0 20px;
    font-size: inherit;
    display:inline-block;
}

.txtDecoration01 span:before {
    content: '';
    position: absolute;
    width: 13px;
    height: 21px;
    background-image: url('../img/icon/ico-decorText1.png');
    background-size: contain;
    background-repeat: no-repeat;
    bottom: 3px;
    left: 0;
}

.txtDecoration01 span:after {
    content: '';
    position: absolute;
    width: 13px;
    height: 21px;
    background-image: url('../img/icon/ico-decorText1.png');
    background-size: contain;
    background-repeat: no-repeat;
    bottom: 3px;
    right: 0;
    transform: scaleX(-1);
}

.l-topWorks .works__list {
    display: flex;
    flex-wrap: wrap;
}

.l-topWorks .works__list .item {
    width: 23%;
    margin-bottom: 25px;
}

.l-topWorks .works__list .item:not(:nth-child(4n)) {
    margin-right: 2.66%;
}

.l-topWorks .works__list .image {
    box-shadow: 0 5px 10px rgba(0, 0, 0, .16);
    margin-bottom: 15px;
}

.l-topWorks .works__list p {
    font-size: 1.5rem;
    font-weight: bold;
}

.l-topFeature {
    background: #F5F5F5;
    padding: 65px 0;
}

.txtStyle02 {
    display: inline;
    font-size: 2.2rem;
    font-weight: bold;
    color: #fff;
    background: repeating-linear-gradient(to bottom, #EF5154, #EF5154);
    line-height: 1.8;
}

.c-thought {
    text-align: center;
}

.l-topFeature .text {
    margin-bottom: 35px;
}

.c-thought__box {
    max-width: 600px;
    margin: 0 auto;
    background: #EBEBEB;
    border-radius: 12px;
    font-size: 1.4rem;
    font-weight: bold;
    padding: 15px;
    position: relative;
}

.c-thought__box::before {
    content: '';
}

.c-thought__image {
    max-width: 120px;
    margin: 0 auto;
    margin-top: 25px;
    position: relative;
}

.c-thought__image::before {
    content: '';
    position: absolute;
    width: 20px;
    height: 20px;
    background: #ebebeb;
    border-radius: 50%;
    top: -35px;
    left: 8px;
}

.c-thought__image::after {
    content: '';
    position: absolute;
    background: #ebebeb;
    border-radius: 50%;
    width: 10px;
    height: 10px;
    top: -15px;
    left: 23px;
}

.l-topFeature .c-thought {
    margin-bottom: 35px;
}

.l-topFeature .feature .item {
    background: #fff;
    border-radius: 10px;
    margin-bottom: 20px;
    padding: 28px 50px 30px 35px;
    display: flex;
    align-items: center;
}

.l-topFeature .feature .item:last-child {
    margin-bottom: 0;
}

.l-topFeature .feature .image {
    flex-basis: 163px;
    flex-shrink: 0;
    margin-right: 30px;
}

.l-topFeature .feature .ttl {
    font-size: 1.8rem;
    font-weight: bold;
    margin-bottom: 22px;
}

.l-topFeature .feature .ttl span {
    font-size: inherit;
}

.l-topFeature .feature .item p {
    font-size: 1.4rem;
    line-height: calc(48 / 28);
    font-weight: 500;
}

.l-topMerit .c-ttl02 {
    position: relative;
}

.l-topMerit .c-ttl02::before {
    content: '';
    position: absolute;
    width: 223px;
    height: 223px;
    background: #FBD347;
    border-radius: 50%;
    top: -55px;
    left: 0;
    margin: 0 auto;
    right: 0;
}

.l-topMerit .c-ttl02::after {
    content: '';
    position: absolute;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 14px 13.5px 0 13.5px;
    border-color: #fff transparent transparent transparent;
    bottom: -50px;
    left: 0;
    right: 0;
    margin: 0 auto;
    transform: translateY(100%);
}

.l-topMerit .c-ttl02>* {
    position: relative;
    z-index: 1;
}

.l-topMerit {
    padding: 100px 0 55px;
    background: #FBFBFB;
}

.l-topMerit .merit-list {
    max-width: 780px;
    margin: 0 auto;
    margin-top: 75px;
}

.l-topMerit .merit-list .number {
    width: 57px;
    height: 57px;
    border: 5px solid #EF5153;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    font-size: 2.7rem;
    font-weight: bold;
    color: #EF5153;
    font-family: 'DIN 2014';
    line-height: 1;
    margin: 0 auto;
    background: #fff;
    margin-bottom: -19px;
    position: relative;
}

.l-topMerit .merit-list .box {
    border: 7.5px solid #EF5153;
    border-radius: 10px;
    background: #fff;
}

.l-topMerit .merit-list .item {
    padding-top: 30px;
}

.l-topMerit .merit-list .box__ttl {
    background: #EF5153;
    color: #fff;
    text-align: center;
    font-weight: bold;
    font-size: 2rem;
    padding: 18px 15px 15px;
    line-height: 1.35;
}

.l-topMerit .merit-list .box__content {
    padding: 30px 15px;
    text-align: center;
}

.l-topMerit .merit-list .box__content p {
    font-size: 1.4rem;
    font-weight: 500;
    line-height: 1.7;
}

.c-grayBox {
    background: #FBFBFB;
    padding: 13px 23px;
}

.l-topMerit .merit-list .c-grayBox {
    display: inline-block;
    text-align: left;
    margin: 10px 0;
}

.txtStyle03 {
    display: inline;
    background: #FCD247;
}

.l-topCta.l-topCta--bg {    
    position:relative;
    background-image: url('../img/topnew2023/bg-cta.png');    
    padding: 70px 0 55px;
    background-size:cover;
}

.l-topCta.l-topCta--bg p {
    font-size: 2.2rem;
    font-weight: bold;
    line-height: 1.8;
    margin-bottom: 30px;
}

.l-topCta.l-topCta--bg p span {
    font-size: inherit;
}

.l-topCta.l-topCta--bg .head {
    margin-bottom: 20px;
}

.l-topCta.l-topCta--bg .text-box {
    background: #fff;
    border: 3px solid #EF5153;
    display: inline-block;
    font-size: 3.7rem;
    font-weight: bold;
    color: #EF5153;
    line-height: 1.3;
    padding: 10px 20px;
    box-shadow: 6px 6px 0px #ef5153;
    margin-bottom: 30px;
    letter-spacing: .5rem;
}

@media screen and (max-width: 1024px) {
    .l-topMv .content {
        padding-right: 300px;
    }

    .l-topMv .image {
        max-width: 300px;
    }
}

@media screen and (max-width: 768px) {
    .l-topMv .text1 {
        font-size: 2rem;
    }

    .l-topMv .text2 {
        font-size: 2.2rem
    }

    .l-topMv .text2 {
        display: block;
        margin-bottom: 20px;
    }

    .l-topMv .text2 .experts {
        width: 200px;
    }

    .l-topMv .text2 .shopilab {
        width: 140px;
    }

    .l-topMv .text1 {
        margin-bottom: 5px;
    }

    .l-topMv .container {
        min-height: auto;
    }

    .l-topMv .content {
        padding-right: 0;
    }

    .l-topMv .image {
        position: static;
        transform: none;
    }

    .l-topMv .inner {
        display: block;
        width: 100%;
        margin: 0 auto;
    }

    .l-topMv .content {
        margin-bottom: 20px;
    }

    .l-topMv {
        padding: 30px 0;
    }

    .l-topMv .content p {
        font-size: 1.8rem;
    }

    .l-topCta {
        padding: 30px 0;
    }

    .l-topCta .head {
        font-size: 2.5rem;
        margin-bottom: 15px;
    }

    .l-topCta .head .num {
        font-size: 3.5rem;
    }

    .l-topCta .head .point:before {
        width: 4px;
        height: 4px;
        top: -2px;
    }

    .l-topProblem {
        padding: 50px 0;
    }

    .c-ttl02 .en {
        font-size: 2.6rem;
        margin-bottom: 10px;
    }

    .c-ttl02 .ja {
        font-size: 1.8rem;
    }

    .c-ttl02 {
        margin-bottom: 30px;
    }

    .l-topProblem .balloon {
        width: 120px;
        height: 120px;
        font-size: 1.8rem;
        margin-bottom: 50px;
    }

    .l-topProblem .text p {
        font-size: 1.8rem;
    }

    .l-topProblem .box {
        margin-bottom: 25px;
    }

    .l-topWorks {
        padding: 50px 0 25px;
    }

    .l-topWorks .works__list .item:not(:nth-child(4n)) {
        margin-right: 0;
    }

    .l-topWorks .works__list .item {
        width: 48%;
        margin-bottom: 25px;
    }

    .l-topWorks .works__list {
        justify-content: space-between;
    }

    .l-topWorks .works__list p {
        font-size: 1.4rem;
    }

    .l-topFeature {
        padding: 50px 0;
    }

    .txtStyle02 {
        font-size: 1.6rem;
    }

    .l-topFeature .text {
        margin-bottom: 30px;
    }

    .l-topFeature .c-thought {
        margin-bottom: 30px;
    }

    .txtDecoration01 {
        font-size: 1.6rem;
        margin-bottom: 20px;
    }

    .txtDecoration01 span:before {
        bottom: 0px;
    }

    .txtDecoration01 span:after {
        bottom: 0;
    }

    .l-topFeature .feature .item {
        padding: 25px 15px;
        display: block;
    }

    .l-topFeature .feature .image {
        max-width: 120px;
        margin: 0 auto 15px;
    }

    .l-topFeature .feature .ttl {
        font-size: 1.6rem;
        margin-bottom: 10px;
    }

    .l-topMerit .c-ttl02::before {
        width: 180px;
        height: 180px;
    }

    .l-topMerit .c-ttl02::after {
        bottom: -15px;
    }

    .l-topMerit {
        padding: 100px 0 50px;
    }

    .l-topMerit .merit-list .box__ttl {
        font-size: 1.8rem;
    }

    .l-topMerit .merit-list .box {
        border-width: 4px;
    }

    .l-topMerit .merit-list .number {
        border-width: 3px;
    }

    .l-topCta.l-topCta--bg p {
        font-size: 1.7rem;
        margin-bottom: 20px;
    }

    .l-topCta.l-topCta--bg .text-box {
        font-size: 2.2rem;
        border-width: 2px;
        box-shadow: 4px 4px 0 #ef5153;
        margin-bottom: 20px;
        padding: 10px;
    }

    .l-topCta.l-topCta--bg {
        padding: 40px 0 50px;
    }

    .c-checkList li:not(:last-child) {
        margin-bottom: 10px;
    }

    .l-topMerit .merit-list .box__content li {
        font-size: 1.6rem;
    }
}

@media screen and (min-width: 769px) {
    .l-topProblem .c-checkList li {
        font-size: 1.6rem;
    }

    .c-thought__box p {
        font-size: 2rem;
    }

    .l-topMerit .merit-list .box__content p,
    .l-topMerit .merit-list .box__content p>* {
        font-size: 1.6rem;
    }

    .l-topMerit .merit-list .c-checkList li {
        font-size: 1.8rem;
    }
}

.bold {
    font-weight: bold;
}

/* 11-04-2022 */
.l-topWorks .c-grayBox {
    max-width: 750px;
    width: 100%;
    background-color: #f5f5f5;
    margin: 0 auto;
    padding: 20px 10px;
    text-align: center;
    margin-bottom: 40px;
}

.l-topMv .group-text1 {
    display: flex;
    align-items: flex-end;
    font-weight: bold;
    font-size: 1.7rem;
    line-height: 1;
    margin-bottom: 25px;
}

.l-topMv .group-text1 .shopify {
    position: relative;
    top: 1px;
}

.l-topMv .group-text1 .check {
    font-size: 2.7rem;
    color: #FDDD01;
    line-height: 1;
    display: flex;
    align-items: center;
    margin-right: 10px;
}

.l-topMv .group-text1 .check:before {
    content: '\f058';
    font-family: "Font Awesome 5 Free";
    font-size: 1.7rem;
    margin-right: 3px;
}

.l-topMv .group-text1 .check:nth-child(3) {
    /* margin-right: 10px; */
    margin-left: 5px;
}

.l-topMv .group-text1 .check:nth-child(4) {
    margin-right: 5px;
}

.l-topMv .group-text2 {
    margin-bottom: 13px;
}

.l-topMv .group-text2 .box {
    background: #FDDD01;
    display: inline-block;
    font-weight: bold;
    font-size: 3.2rem;
    color: #1753AE;
    line-height: 1.4;
    padding: 5px 10px;
    position: relative;
}

.l-topMv .group-text2 .box .num {
    font-family: 'DIN 2014';
    font-size: 4.8rem;
    display: inline-block;
    line-height: 1;
}

.l-topMv .group-text2 .box .s1 {
    font-size: 2.7rem;
}

.l-topMv .group-text2 .box .s2 {
    font-size: 2.2rem;
}

.l-topMv .group-text2 .box:after {
    content: '';
    position: absolute;
    bottom: -8px;
    right: -8px;
    width: 100%;
    height: 100%;
    background: linear-gradient(45deg, #195CC0, #144795);
    z-index: -1;
    opacity: .86;
}

.l-topMv .group-text3 {
    font-size: 2.9rem;
    display: flex;
    align-items: center;
    line-height: 1;
    margin-bottom: 43px;
    flex-wrap: wrap;
}

.l-topMv .group-text3 .shopilab {
    position: relative;
    top: 5px;
}

.l-topMv .group-text4__1 {
    font-weight: bold;
    font-size: 2.1rem;
    line-height: 1;
    margin-bottom: 10px;
}

.l-topMv .group-text4__1 small {
    font-size: 1.6rem;
}

.l-topMv .group-text4__1 span {
    font-size: inherit;
    line-height: 1;
    display: inline-block;
}

.l-topMv .group-text4 .dot {
    position: relative;
}

.l-topMv .group-text4 .dot:before {
    content: '';
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: #fff;
    position: absolute;
    top: -3px;
    left: 0;
    right: 0;
    margin: 0 auto;
    transform: translateY(-115%);
}

.l-topMv .group-text4__2 {
    font-size: 2.2rem;
    font-weight: bold;
    text-decoration: underline;
    text-decoration-color: #FCD247;
    text-decoration-thickness: 2px;
    display: inline;
    text-underline-offset: 5px;
}

.l-topMv .group-text4__2 span {
    font-size: inherit;
    color: #FCD247;
}

@media screen and (max-width: 768px) {
    .l-topMv .group-text1 {
        display: block;
        line-height: 2.2;
        margin-bottom: 20px;
    }

    .l-topMv .content {
        text-align: center;
    }

    .l-topMv .group-text1 .check {
        display: inline-flex;
        margin: 0 5px !important;
        font-size: 2.2rem;
    }

    .l-topMv .group-text1 .check:nth-child(3) {
        margin-left: 0;
    }

    .l-topMv .group-text1 .check:nth-child(4) {
        margin-right: 0;
    }


    .l-topMv .group-text1 .shopify {
        top: 0;
    }

    .l-topMv .group-text2 {
        margin-bottom: 28px;
    }

    .l-topMv .group-text3 {
        display: block;
        font-size: 2rem;
        line-height: 1.6;
        margin-bottom: 23px;
    }

    .l-topMv .group-text3 .experts {
        width: 171.5px;
    }

    .l-topMv .group-text3 .shopilab {
        width: 267px;
        margin: 10px 0;
    }

    .l-topMv .group-text4__1 {
        font-size: 1.9rem;
    }

    .l-topMv .group-text4__1 small {
        font-size: 1.45rem;
    }

    .l-topMv .group-text4__2 {
        font-size: 2rem;
        text-decoration-thickness: 1px;
    }

    .l-topMv .image {
        margin: 0 auto;
        max-width: 222px;
    }

    .l-topWorks .c-grayBox {
        margin-bottom: 30px;
    }
}

.l-topPartners {
    padding: 70px 0 50px;
    background: #fff;
}

.l-topPartners .partners-list {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
}

.l-topPartners .partners-list .item {
    flex-basis: 146.5px;
    margin: 0 15px;
    min-height: 85.5px;
    display: flex;
    align-items: center;
}

@media screen and (max-width: 768px) {
    .l-topPartners {
        padding: 50px 0 30px;
    }

    .l-topPartners .partners-list .item {
        flex-basis: 120px;
        min-height: 70px;
    }
}

/* 11-11-2022 */
.l-topDownload .c-btn02 {
    margin-top: 0;
}

@media screen and (max-width: 768px) {
    .l-topDownload .c-btn02 {
        margin-top: 15px;
    }
}

.l-topExpert {
    background: #F5F5F5;
    padding: 25px 0;
}

.l-topExpert .box {
    border: 1px solid #DDDDDD;
    background: #fff;
    max-width: 832px;
    margin: 0 auto;
    padding: 20px 10px 25px;
    text-align: center;
    font-size: 1.6rem;
    font-weight: bold;
}

.l-topExpert .box:last-child {
    margin-top: 15px;
}

.l-topExpert .box span {
    color: #EF5153;
}

.l-topExpert .box .logo {
    margin-bottom: 15px;
}

a.link {
    display: inline;
    text-decoration: underline;
}

.agree-box {
    text-align: center;
    margin-bottom: 30px;
}

.agree-box input {
    transform: scale(1.2);
}

@media screen and (max-width: 768px) {
    .agree-box {
        margin-bottom: 20px;
    }
}

/** 12.12.2022 **/
.l-serviceForm {
    padding: 0 0 100px;
}

.l-serviceForm__ttl {
    font-size: 4rem;
    text-align: center;
    margin-bottom: 60px;
}

.l-serviceForm__form {
    max-width: 1000px;
    margin: 0 auto;
}

.l-serviceForm .c-form dd {
    flex: auto;
}

.l-serviceForm .c-form dd>* {
    max-width: 100% !important;
}

.l-serviceForm .c-form .bnt-contact {
    margin-top: 0;
}

@media screen and (max-width: 767px) {
    .l-serviceForm {
        padding: 0 0 50px;
    }

    .l-serviceForm__ttl {
        font-size: 2rem;
        margin-bottom: 10px;
    }
}

/* 12-13-2022 */
@media screen and (max-width: 768px) {
    .single-new__content .date-cat {
        display: block;
    }

    .single-new__content .date {
        margin-right: 0;
        margin-bottom: 5px;
    }

    .single-new__content .single_tag_wrap {
        margin-top: 12px;
    }

    .single-new__content .sns {
        display: none;
    }

    .single-new__content .headline {
        margin-bottom: 15px;
    }

    .single-box {
        display: block;
    }

    .l-single_thumbnail {
        width: 100%;
    }

    .single-boxLink {
        width: 100%;
        margin-top: 15px;
    }

    .single-new.c-single .single-boxLink p {
        font-size: 1.4rem;
        margin-bottom: 10px;
    }

    .single-boxLink .btn {
        height: 50px;
        font-size: 1.4rem;
    }
}

/* 12-14-2022 */
.modal.modal--thanks {
    background: transparent;
    box-shadow: none;
    width: 100%;
    max-width: 800px;
}

.modal.modal--thanks .page-thanks {
    background: #fff;
    padding: 30px;
    border-radius: 10px;
}

.modal.modal--thanks .page-thanks .page-title {
    font-weight: bold;
}

.modal .close-btn {
    max-width: 30px;
    margin-left: auto;
    margin-bottom: 10px;
}

.single-form .bnt-contact {
    margin-top: 0;
    margin-bottom: 50px;
}

@media screen and (max-width: 768px) {
    .single-form .bnt-contact {
        margin-bottom: 40px;
    }
}

@media screen and (max-width: 375px) {
    .l-topMv .group-text2 .box {
        font-size: 2.2rem;
    }

    .l-topMv .group-text2 .box .num {
        font-size: 3.8rem
    }

    .l-topMv .group-text2 .box .s1 {
        font-size: 2.2rem;
    }

    .l-topMv .group-text2 .box .s2 {
        font-size: 2rem;
    }
}

.c-form dt.optional:after {
    content: '任意';
    background: #eee;
    color: #333;
}

@media screen and (max-width: 768px) {
    .l-topMv .group-text2 .box .num {
        font-family: inherit;
    }

    .l-topMerit .merit-list .number {
        font-family: inherit;
    }
}

.l-contact_form .required.optional:after {
    content: '任意';
    background: #eee;
    color: #333;
}

.sidebar-fixed {
    max-width: 300px;
}

/** 12-22-2022 **/
.l-countDown {
    padding: 50px 0 0;
}

.c-countDown {
    max-width: 700px;
    margin: 0 auto;
    border: 7px solid #EF5153;
}

.c-coundDown__head {
    text-align: center;
    padding: 15px;
}

.c-coundDown__head .ttl {
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: bold;
    font-size: 2.7rem;
    color: #EF5153;
    line-height: 1.2;
}

.c-coundDown__head .ttl .icon-clock {
    width: calc(55px/2);
    display: flex;
    align-items: center;
    margin-right: 5px;
}

.c-coundDown__head .date {
    font-weight: bold;
    font-size: 2.7rem;
    line-height: 1.2;
}

.c-coundDown__head .num {
    font-size: 3.6rem;
    line-height: 1.2;
}

.c-countDown__time {
    background: #EF5153;
    padding: 15px;
    text-align: center;
}

.c-countDown__time .time {
    color: #fff;
    font-weight: bold;
    font-size: 3.8rem;
    line-height: 1;
}

.c-countDown__time .num {
    display: inline-block;
    background: #fff;
    color: #EF5153;
    padding: 3px 5px;
    margin: 0 5px;
    font-size: 4rem;
}

.l-countDown .l-marqueeText {
    margin-top: 15px;
    background-image: url('https://shopi-lab.com/wp-content/themes/SP_swblog/assets/img/lp04/marquee-text.png');
    background-repeat: repeat-x;
    background-position: 0 0;
    background-size: cover;
    -webkit-animation: scrollroop 20s linear infinite;
    animation: scrollroop 20s linear infinite;
    width: 100%;
    height: calc(75px / 2);
}

@-webkit-keyframes scrollroop {
    from {
        background-position: 0 0;
    }

    to {
        background-position: -1800px 0;
    }
}

@keyframes scrollroop {
    from {
        background-position: 0 0;
    }

    to {
        background-position: -1800px 0;
    }
}

@media screen and (max-width: 768px) {
    .c-coundDown__head .ttl {
        font-size: 2rem;
    }

    .c-coundDown__head .ttl .icon-clock {
        width: 22px;
    }

    .c-coundDown__head .date {
        font-size: 1.8rem;
    }

    .c-coundDown__head .num {
        font-size: 2.2rem;
    }

    .c-countDown__time .time {
        font-size: 1.8rem;
    }

    .c-countDown__time .num {
        font-size: 2.2rem;
        margin: 0 2px;
    }

    .l-countDown {
        padding: 30px 0 0;
    }
}

/* .marker_yellow_futo {
    background: linear-gradient(#FBD347 0, #FBD347 9px, transparent 9px, transparent 100%);
} */

.marker_yellow_futo {
    background: linear-gradient(transparent 0%, #FBD347 0%);
}

.marker_yellow_hoso {
    background: linear-gradient(transparent 60%, #FBD347 60%);
}

.l-topCountDown {
    background: url(https://shopi-lab.com/wp-content/themes/SP_swblog/assets/img/lp04/mv-bg.png);
    background-size: cover;
    padding: 40px 0 50px;
}

.l-topCountDown .box {
    max-width: calc(1656px / 2);
    margin: 0 auto;
    border: 5px solid #EF5153;
    background: #fff;
    border-radius: 5px;
}

.l-topCountDown .box .c-countDown {
    border: none;
    background: #EF5153;
    max-width: 100%;
    padding: 15px 15px 20px;
}

.l-topCountDown .c-coundDown__head {
    padding: 0;
    margin-bottom: 20px;
}

.l-topCountDown .c-coundDown__head .ttl {
    font-size: 2.2rem;
    color: #fff;
}

.l-topCountDown .c-coundDown__head .ttl span {
    font-size: inherit;
    position: relative;
    padding: 0 40px;
}

.l-topCountDown .c-coundDown__head .ttl span:before,
.l-topCountDown .c-coundDown__head .ttl span:after {
    content: '';
    width: 31px;
    height: 27.5px;
    background-image: url(https://shopi-lab.com/wp-content/themes/SP_swblog/assets/img/icon/ico-warning.png);
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    top: 0;
    left: 0;
}

.l-topCountDown .c-coundDown__head .ttl span:after {
    left: auto;
    right: 0;
}

.l-topCountDown .c-countDown__time {
    padding: 0;
}

.l-topCountDown .box__content {
    padding: 20px 15px 30px;
    text-align: center;
}

.l-topCountDown .box__content .p1 {
    font-weight: bold;
    font-size: 4rem;
    line-height: 1.2;
}

.l-topCountDown .box__content .p1 strong {
    font-size: 6rem;
}

.l-topCountDown .box__content .p1 .num {
    font-size: 10rem;
    color: #EF5153;
    line-height: 1;
    display: inline-block;
    font-family: 'DIN 2014';
}

.l-topCountDown .box__content .p2 {
    font-weight: bold;
    font-size: 2.2rem;
    margin-bottom: 20px;
}

.l-topCountDown .box__content .p2 span {
    font-size: inherit;
}

.l-topCountDown .box__content a {
    max-width: calc(890px/2);
    margin: 0 auto;
}

.l-topCountDown .box__content a img {
    box-shadow: 5px 10px 10px rgba(0, 0, 0, .16);
    border-radius: 50px;
}

@media screen and (max-width: 768px) {

    .l-topCountDown .c-coundDown__head .ttl {
        font-size: 1.8rem;
    }

    .l-topCountDown .c-coundDown__head .ttl span {
        padding: 0 35px;
    }

    .l-topCountDown .c-coundDown__head .ttl span:before,
    .l-topCountDown .c-coundDown__head .ttl span:after {
        width: 25px;
        height: 22px;
    }

    .l-topCountDown .c-coundDown__head {
        margin-bottom: 15px;
    }

    .l-topCountDown .box__content .p1 {
        font-size: 1.8rem;
        margin-bottom: 7px;
    }

    .l-topCountDown .box__content .p1 strong {
        font-size: 2.2rem;
    }

    .l-topCountDown .box__content .p1 .num {
        font-size: 4rem;
        font-family: inherit;
    }

    .l-topCountDown .box__content .p2 {
        font-size: 1.8rem;
        margin-bottom: 15px;
    }

    .l-topCountDown .box__content {
        padding: 15px 15px 25px;
    }

    .l-topCountDown {
        padding: 35px 0 40px;
    }
}

.single-countDown {
    background:#FBD347;
    /* margin-top: -30px; */
    padding: 7px 0;
}

.single-countDown .inner{
    display:flex;
    flex-wrap:wrap;
    position: relative;
    align-items: center;
    min-height: 32px;
    padding-right: 260px;
}

.single-countDown .inner p {
    font-size: 1.4rem;
    font-weight: bold;
    margin-right: 35px;
}

.single-countDown .inner .p1 .icon {
    filter: brightness(0) saturate(100%) invert(14%) sepia(61%) saturate(5564%) hue-rotate(354deg) brightness(101%) contrast(119%);
    width: 17px;
    display: inline-flex;
    align-items: center;
    position: relative;
    top: 2px;
}

.single-countDown .time {
    color: inherit;
    font-size: 1.6rem;
}

.single-countDown .num {
    font-size: 1.8rem;
    color: #EB0000;
    background: transparent;
    padding: 0;
    margin: 0;
}

.single-countDown .inner a {
    width: 253px;
    position: absolute;
    top: 0;
    right: 0;
}

@media screen and (max-width: 992px){
    .single-countDown .inner a {
        position:static;
    }

    .single-countDown .inner{
        flex-direction: column;
        padding-right:0;
        align-items: flex-start;
    }
    .single-countDown .inner p{
        margin-right:0;
        margin-bottom: 5px;
    }
}

.info-popupBtn {
    height: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    font-weight: bold;
    background: #E30003;
    font-size:1.6rem;
    position:fixed;
    top:0;
    left:0;
    width:100%;
    z-index:2;
    cursor: pointer;
}

/* body:not(.single-download) #header{
    top:40px;
}

body:is(.single-download) main{
    margin-top: 40px;
} */

#infoPopup {
    max-width: 800px;
    width: 100%;
    z-index: 100;
    padding: 40px 15px;
    text-align: center;
}

.jquery-modal.blocker {
    z-index: 10000;
    padding: 35px 20px;
}

#infoPopup .close-btn {
    position: absolute;
    top: -8px;
    right: 0;
    transform: translateY(-100%);
    max-width: 22px;
}

#infoPopup .ttl {
    font-size: 2rem;
    font-weight: bold;
    margin-bottom: 20px;
}

#infoPopup .content p {
    font-size: 1.6rem;
    font-weight: 500;
    line-height: calc(22 / 16);
}

#infoPopup .content a {
    color: #EF5153;
}

#infoPopup .close-modal {
    display: none;
}

/* body:not(.single-download) main{
    margin-top: calc(80px + 40px);
} */

@media screen and (max-width: 768px){
    /* body:not(.single-download) main{
        margin-top: calc(73px + 35px);
    }

    body:not(.single-download) #header{
        top:35px;
    }

    body:is(.single-download) main{
        margin-top: 35px;
    } */

    .info-popupBtn {
        font-size: 3vw;
        height: 35px;        
    }

    #infoPopup{
        padding:30px 15px;
    }

    #infoPopup .ttl {
        font-size: 1.6rem;
        line-height: 1.5;
    }

    #infoPopup .content p {
        font-size: 1.4rem;
    }
}

.l-topCountDown .c-coundDown__head .date {
    color: #fff;
    margin-top: 10px;
}

/* 12-26-2022 */
@-webkit-keyframes buttonAnimation {
    from {
      -webkit-transform: scale(0.9, 0.9);
              transform: scale(0.9, 0.9);
    }
    to {
      -webkit-transform: scale(1, 1);
              transform: scale(1, 1);
    }
  }
  @keyframes buttonAnimation {
    from {
      -webkit-transform: scale(0.9, 0.9);
              transform: scale(0.9, 0.9);
    }
    to {
      -webkit-transform: scale(1, 1);
              transform: scale(1, 1);
    }
  }
  
.btn-content{
    overflow:initial;
    border-radius: 50px;
    -webkit-animation: buttonAnimation 0.8s ease 0s infinite alternate;
    animation: buttonAnimation 0.8s ease 0s infinite alternate;
    -webkit-transform-origin: center;
    transform-origin: center;
}

.btn-content:before{
    display:none;
}

.btn-content a{
    background:#ef5153;
    border-radius:50px;
    box-shadow:0 10px 10px rgba(0, 0, 0, .1);
}

.btn-content:hover a{
    color:#fff;
}

.btn-content:hover a::after{
    filter:none;
}
.l-author_txt a {
    text-decoration: underline;
    color: #ef5153;
    text-underline-offset: 5px;
	display:block;
	margin:10px 0;
}

/* 02-06-2023 */
.page-id-2221 .c-table dd a{
    display:inline-block;
    color:#ef5153;
    text-decoration: underline;
}

.form-note {
    font-size: 1.2rem!important;
    margin-top: 5px!important;
    line-height: 1.2;
}

/* 02-06-2023 */
.row-list .row {
    display: flex;
    align-items: flex-start;
    margin-bottom: 10px;
}

.row-list .row .head {
    font-weight: bold;
    color: #919191;
    flex-basis: 45px;
    flex-shrink: 0;
    border-right: 1px solid #DDD;
    padding-right: 5px;
    margin-right: 15px;
}

.row-list .row:last-child {
    margin-bottom: 0;
}

/* 02-15-2023 */
.c-grayBox01{
    background-color: #f5f5f5;
    text-align:center;
    display:flex;
    justify-content: center;
    align-items: center;
    padding:15px;
}

/* 02-17-2023 */
.thumbnail-source {
    font-size: 12px;
    text-align:center;
    margin-top: 5px;
    color:#666666;
}

/* 03-06-2023 */
.p-sdesign .l-intro .box {
    width: 100%;
    background: #F5F5F5;
    padding: 20px;
    text-align: center;
    margin-top: 30px;
}

.p-sdesign .l-intro .box p {
    font-size: 1.6rem;
    font-weight: bold;
    margin-bottom: 10px;
}

.p-sdesign .l-intro .box p span {
    position: relative;
}

.p-sdesign .l-intro .c-btn01 {
    display: block;
    max-width: 320px;
    height: 50px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.6rem;
    font-weight: bold;
    box-shadow: 0 3px 20px rgba(0, 0, 0, .16);
}

.l-links {
    max-width: 875px;
    margin: 0 auto;
}

.l-links .l-link:not(:last-child){
    margin-bottom:40px;
}

.l-links .l-link:last-child{
    margin-bottom:0;
}

.home .l-linksWr .pagination{
    display:none;
}

/* 03-08-2023 */
.single-design .content {    
    width:56%;
    position: relative;
}

.single-design .content .image {
}

.single-design .heading .title {
    font-size: 2.4rem;
    line-height: 1.6;
    letter-spacing: 0.05em;
}

.c-url {
    font-size: 1.4rem;
    color: #EF5053;
    letter-spacing: 0.05em;
}

.c-url:after {
    content: '';
    background-image:url('../img/icon/icon-external.png');
    background-repeat:no-reapeat;
    background-size:contain;
    width:11px;
    height:11px;
    background-position:center;
    margin-left:7px;
    display:inline-block;
}

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

.c-cat__item {
    border: 1px solid #6E6E6E;
    margin-right: 7.5px;
    color: #6E6E6E;
    font-size: 1.2rem;
    border-radius: 25px;
    padding: 2.5px 10px;
    margin-bottom: 8px;
    letter-spacing: 0.05em;
}

.single-design .heading .title {
    margin-bottom: 7px;
}

.single-design .heading .c-url {
    margin-bottom: 20px;
}

.single-design .heading {
    margin-bottom: 40px;
}

.single-design .group-text .text1 {
    font-size: 2rem;
    margin-bottom: 5px;
    letter-spacing: 0.05em;
}

.single-design .group-text .txtDecoration01 span:before,
.single-design .group-text .txtDecoration01 span:after
{
    width:15px;
    height:20px;
    bottom: -3px;
}

.single-design .group-text .text2 {
    text-align: center;
    font-weight: bold;
    font-size: 2.8rem;
    letter-spacing: 0.05em;
    line-height: 1.5;
    margin-bottom: 15px;    
}

.single-design .group-text .text2 .logo {
    max-width: 214px;
    display: inline-block;
    vertical-align: top;
}

.single-design .group-text .text3 {
    display: flex;
    justify-content: center;
    margin-bottom: 5px;
    flex-wrap: wrap;
}

.single-design .group-text .lbl {
    color: #fff;
    background: #EF5053;
    width: 255px;
    display: flex;
    justify-content: center;
    font-size: 1.4rem;
    font-weight: bold;
    padding: 2px 10px;
    margin: 0 5px 10px;
    letter-spacing: 0.05em;
}

.single-design .group-text > p {
    text-align: center;
    letter-spacing: 0.05em;
}

.single-design .group-text {
    margin-bottom: 20px;
}

.single-design .layout{
    display:flex;
    justify-content: space-between;
    padding:10px 0;
}

.single-design .layout > .image{
    width:40%;
}

.single-design .layout > .image img{
    width:100%;
}

.single-design .content .image img{
    width:100%;
}

@media screen and (max-width: 768px){
    .single-design .layout {
        display: block;
    }
    
    .single-design .content {
        width: 100%;
    }
    
    .single-design .heading .title {
        margin-bottom: 5px;
    }
    
    .single-design .heading {
        margin-bottom: 30px;
    }
    
    .single-design .content .image {
        margin-bottom: 40px;
    }

    .single-design .group-text .text1 {
        font-size: 1.6rem;
        line-height: 1.5;
        margin-bottom: 15px;
    }
    
    .single-design .group-text .txtDecoration01 span:before, .single-design .group-text .txtDecoration01 span:after {
        bottom: auto;
        top: 6px;
    }
    
    .single-design .group-text .text2 .logo {
        max-width: 172.5px;
    }
    
    .single-design .group-text .text2 {
        font-size: 2.2rem;
        margin-bottom: 10px;
    }
    
    .single-design .group-text .text3 {
        margin-bottom: 20px;
    }
}


@media screen and (min-width: 769px){
body .h-menu--nav a {
    font-size: 1.2rem;
    font-weight: bold;
    color: #354341;
}

body .menu__items.parent > a::after {
    border-width: 1.5px;
    width: 4px;
    height: 4px;
    top: 8px;
    position: static;
    display: inline-block;
    vertical-align: 3px;
    margin-left: 8px;
}

body .menu__items.parent > a {
    margin: 0;
    padding: 0;
    margin-left: 20px;
    margin-right: 10px;
}

body .h-menu--nav a {
    padding: 0 10px;
    margin-left: 10px;
}
}

.c-announcement {
    padding: 16px 0;
    background: #000;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow:hidden;
}

.c-announcement .inner {
    display: inline-flex;
    align-items: center;
    letter-spacing: .2px;
    line-height: 1.5;
    animation: none;  
}

.c-announcement .lbl {
    background-color: #EF5153;
    border-radius: 4px;
    font-family: Roboto;
    font-size: 10px;
    font-weight: bolder;
    padding: 2px 8px;
    margin-right: 16px;
	flex: 0 0 auto;
}

.c-announcement .inner a {
    color: inherit;
    color: #fff;
    font-size: 12px;
    font-weight: 500;
/*     white-space: nowrap; */
}

.c-announcement .inner p {
    color: inherit;
    color: #fff;
    font-size: 12px;
    font-weight: 500;
/*     white-space: nowrap; */
}

@media screen and (max-width: 768px){
    .c-announcement .inner {
/*         -webkit-animation: gomrje0 10s linear 3s forwards,gomrje1 15s linear 15s infinite;
        animation: gomrje0 10s linear 3s forwards,gomrje1 15s linear 15s infinite; */
		padding: 0 10px;
    }
}

@-webkit-keyframes gomrje0 {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }

    to {
        -webkit-transform: translateX(-110%);
        transform: translateX(-110%)
    }
}

@keyframes gomrje0 {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }

    to {
        -webkit-transform: translateX(-110%);
        transform: translateX(-110%)
    }
}

@-webkit-keyframes gomrje1 {
    0% {
        -webkit-transform: translateX(100%);
        transform: translateX(100%)
    }

    to {
        -webkit-transform: translateX(-110%);
        transform: translateX(-110%)
    }
}

@keyframes gomrje1 {
    0% {
        -webkit-transform: translateX(100%);
        transform: translateX(100%)
    }

    to {
        -webkit-transform: translateX(-110%);
        transform: translateX(-110%)
    }
}

.page-id-6733, .single-shopify-design, .tax-shopify_design_cat{
    background:#fbfbfb;
}

.fixed-bot--new1 .inner--new1 {
    color: #fff;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    padding: 0 15px;
}

.fixed-bot--new1 .squareText {
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.2;
    width: 56px;
    height: 56px;    
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 7.5px;
    background:#FFD00D;
    color:#040707;
}

.fixed-bot--new1 .content--new1 {
    display: flex;
    align-items: flex-end;
    margin-right: 15px;
}

.fixed-bot--new1 .content--new1 p {
    font-size: 3rem;
    font-weight: bold;
    line-height: 1;
    color:#FFD00D;
    letter-spacing: 0.2rem;
}

.fixed-bot--new1 .content--new1 p .num {
    font-size: 5rem;
    font-family: 'DIN 2014';
    vertical-align: -2px;
}

.fixed-bot--new1 .btn--new1 {
    width: 378px;
    max-width: 100%;
    background: linear-gradient(to right, #7DD4B5, #81F794);
    height: 50px;
    font-size: 1.8rem;
    color: #040707;
    font-weight: bold;
    border-radius: 30px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.fixed-bot--new1 .btn--new1 img {
    width: 162px;
    margin-right:3px;
}

.fixed-bot--new1 .content--new1 .num-part {
    position: relative;
    font-size: 2.5rem;
}

.fixed-bot--new1 .content--new1 .num-part:after {
    content: '';
    height: 7px;
    width: 100%;
    background: #CC0000;
    position: absolute;
    bottom: 0px;
    left: 0;
    z-index: -1;
}

@media screen and (max-width: 992px){
    .fixed-bot--new1 .content--new1 p{
        font-size:2.6rem;
        line-height: 1.3;
    }

    .fixed-bot--new1 .content--new1 p .num{
        font-size:4rem;
    }

    .fixed-bot--new1 .content--new1 .num-part{
        font-size: 2.2rem;
    }
}


@media screen and (max-width: 768px){
    .fixed-bot--new1 .btn--new1 {        
        font-size: 1.6rem;
        width: 100%;
        max-width: 400px;
        height: 35px;
    }
    
    .fixed-bot--new1 .content--new1 p{
        font-size: 1.6rem;
    }

    .fixed-bot--new1 .content--new1 p .num{
        font-size: 2.2rem;
        vertical-align: -1px;
    }

    .fixed-bot--new1 .content--new1 .num-part{
        font-size: 1.6rem;
    }

    .fixed-bot--new1 .squareText {                
        line-height: 1.2;                        
        margin-right: 5px;
        display: inline-flex;
        width: auto;
        height: auto;
        padding: 5px;
        font-size: 1.3rem;
    }

    .fixed-bot--new1 .content--new1{
        margin-bottom: 5px;
    }

    .fixed-bot--new1 .inner--new1{
        padding: 0 15px;
        flex-direction: column;
    }

    .fixed-bot--new1 .btn--new1 img{
        width:130px;
    }

    .fixed-bot--new1 .content--new1 .num-part:after{
        height:4px;
    }

    .fixed-bot.fixed-bot--new1 {
        padding: 10px 0 20px!important;
    }
}

/* 03-20-2023 */
.l-topMv2023 {
    position:relative;
    background: linear-gradient(to right, #CAF6FA, #E0FFEF);
    padding: 40px 0;
}

.l-topMv2023::before{
    content:'';
    top:0;
    left:0;
    position:absolute;
    width:100%;
    height:100%;
    background-size: 20px 20px;
    background-image: linear-gradient(to right, #EFEFEF 1px, transparent 1px), linear-gradient(to bottom, #EFEFEF 1px, transparent 1px);
    z-index: 0;
}

.l-topMv2023 > * {
    position: relative;
    z-index: 1;
}

.l-topMv2023 .inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.l-topMv2023 .inner .content {
    padding-left: 35px;
    flex: auto;
    padding-right: 30px;
}

.l-topMv2023 .p1 .logo {
    max-width: 99px;
    display: inline-block;
}

.l-topMv2023 .p1 {
    font-size: 1.7rem;
    font-weight: bold;
    display: inline-flex;
    align-items: center;
    margin-bottom: 5px;
}

.l-topMv2023 .p2 {
    font-weight: bold;
    font-size: 2rem;
    margin-bottom: 5px;
}

.l-topMv2023 .p2 > span {
    font-size: 3rem;
}

.l-topMv2023 .p2 .num {
    font-size: 4.5rem;
    font-family: 'DIN 2014';
    line-height: 1;
}

.l-topMv2023 .p2 .num small {
    font-size: 2.5rem;
}

.l-topMv2023 .p3 .logo:first-child {
    max-width: 180px;
    display: inline-block;
}

.l-topMv2023 .p3 .logo:last-child {
    max-width: 190px;
    display: inline-block;
}

.l-topMv2023 .p3 {
    font-weight: bold;
    font-size: 2.9rem;
    display: inline-flex;
    align-items: center;
}

.l-topMv2023 .inner .image {
    flex-basis: 604px;
}

.c-btn05 {
    width: 240px;
    max-width: 100%;
    height: 50px;
    border-radius: 25px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(to right, #7DD4B5, #81F794);
    font-size: 1.4rem;
    font-weight: bold;
    color: #040707;
    box-shadow: 5px 10px 10px rgba(0, 0, 0, .16);
    margin:50px auto 0;
}

.c-btn05--big{
    width: 260px;
    height: 64px;
    border-radius: 40px;
    font-size: 1.6rem;
}

@media screen and (max-width: 768px){
    .c-btn05--big{
        width: 240px;
        height: 54px;
    }
}

.c-btn05--black {
    background: #040707;
    color: #F4ED3C;
}

.l-topMv2023 .buttons {
    display: flex;
    margin-top: 33px;
}

.l-topMv2023 .buttons .c-btn05:first-child {
    margin-right: 20px;
}

.l-topBlock2023 {
    padding: 40px 0;
    background:#f9f9f9;
}

.l-topBlock2023 .block-list {
    display: flex;
    justify-content: center;
}

.l-topBlock2023 .block {
    margin: 0 60px;
    text-align: center;
}

.l-topBlock2023 .block:first-child .block-ttl img {
    max-width: 100px;
}

.l-topBlock2023 .block:last-child .block-ttl img {
    max-width: 167px;
}

.l-topBlock2023 .block-ttl {
    line-height: 0;
    margin-bottom: 20px;
}

.l-topBlock2023 .block .content p {
    font-size: 2.2rem;
    font-weight: bold;
    margin-bottom:15px;
}

.l-topBlock2023 .block .content p span{
    font-size: inherit;
}

.l-topBlock2023 .block .content .c-btn05 {
    margin: 0 auto;
}

.l-topPartners.l-topPartners--2023 .partners-list {
    max-width: 720px;    
    margin: 0 auto;
}

.l-topPartners.l-topPartners--2023 {
    padding: 20px 0 45px;
}

.l-topExpert.l-topExpert--2023 {
    background: #fff;
    padding: 0 0 40px;
}

.l-topExpert.l-topExpert--2023 .box {
    margin-top: 0;
}
.c-btn05--yellow {
    background: #F4ED3C;
}

@media screen and (max-width: 992px){
    .l-topMv2023 .inner .content{
        padding-left:0;
        padding-right:0;
    }
}

@media screen and (max-width: 860px){
    .l-topMv2023 .inner{
        display:block;
    }
    .l-topMv2023 .inner .content{
        margin-bottom:30px;
    }

    .l-topBlock2023 .block{
        margin: 0 0;
        flex:auto;
    }

    .l-topBlock2023 .block .content p{
        font-size:1.8rem
    }
}

@media screen and (max-width: 768px){

.l-topMv2023 .buttons {    
    display:block;
}

.l-topMv2023 .buttons .c-btn05:first-child {
    margin-right: 0;
}

.l-topBlock2023 .block-list {
    display: block;
}

.l-topBlock2023 .block:not(:last-child){
    margin-bottom: 50px;
}

.l-topPartners.l-topPartners--2023 {
    padding-top: 0;
    padding-bottom: 25px;
}
}

.l-contact2023 .ttl {
    text-align: center;
    font-size: 3.2rem;
    margin-bottom: 25px;
}

.l-contact2023 .contact-list {
    display: flex;
    justify-content: center;
}

.contact-list__item:not(:last-child) {
    border-right: 1px solid #E5E5E5;
}

.contact-list__item {
    padding: 20px 50px 35px;
    text-align: center;
}

.contact-list__item .icon.icon--file {
    max-width: 38px;
}

.contact-list__item .icon {
    display: inline-flex;
    min-height: 43px;
    align-items: center;
    margin-bottom: 20px;
}

.contact-list__item .icon.icon--mail {
    max-width: 42px;
}

.contact-list__item .icon.icon--screen {
    max-width: 38px;
}

.contact-list__item p {
    font-weight: bold;
    font-size: 2.2rem;
    margin-bottom: 35px;
}

.l-contact2023 {
    padding: 60px 0;
    background: #fff;
}

@media screen and (max-width: 992px){
    .contact-list__item {
        width: 33.33%;
        padding-left: 20px;
        padding-right: 20px;
    }
}

@media screen and (max-width: 768px){
.l-topMv2023 .inner .image {
    flex: auto;
    margin: 0 -2.5%;
}
.l-contact2023 .ttl {
    font-size: 2.6rem;
}

.l-contact2023 .contact-list {
    flex-wrap: wrap;
}

.contact-list__item {
    width: 100%;    
    padding: 35px 0;
}

.contact-list__item:not(:last-child) {
    border-right: none;
    border-bottom: 1px solid #E5E5E5;
}

.contact-list__item .c-btn05 {
    margin: 0 auto;
}

.contact-list__item p {
    font-size: 1.8rem;
    margin-bottom: 25px;
}

.l-contact2023 {
    padding: 60px 0 30px;
}
}

@media screen and (max-width: 768px){
    .l-topMv2023 .p1 {
        display: block;
        text-align: center;
        font-size: 17px;
        line-height: 1.8;
        margin-bottom: 10px;
    }
    
    .l-topMv2023 .p1 .logo {
        max-width: 99px;
        vertical-align: 5px;
    }
    
    .l-topMv2023 .p2 {
        text-align: center;
        font-size: 2rem;
        margin-bottom: 10px;
    }
    
    .l-topMv2023 .p2 .num small {
        font-size: 2.5rem;
    }
    
    .l-topMv2023 .p2 .num {
        font-size: 4.5rem;
    }
    
    .l-topMv2023 .p2 > span {
        font-size: 3rem;
    }
    
    .l-topMv2023 .p3 {
        display: block;
        text-align: center;
        font-size: 2.1rem;
    }
    
    .l-topMv2023 .p3 .logo:first-child {
        vertical-align: 12px;
    }
    
    .l-topMv2023 .p3 .logo:last-child {
        max-width: 255px;
    }
    
    .l-topMv2023 .buttons {
        margin-top: 33px;
    }
    
    .l-topMv2023 .buttons .c-btn05 {
        width: 240px;
        margin: 0 auto!important;
    }
    
    .l-topMv2023 .buttons .c-btn05:first-child {
        margin-bottom: 17.5px!important;
    }
    
    .l-topMv2023 {
        padding: 35px 0 20px;
    }

    .fixed-bot--new1 .btn-wr {
        width: 100%;
        margin-top: 5px;
    }
}

.fixed-bot.fixed-bot--new1 {
    height: auto;
    padding: 10px 0;
}

.fixed-bot--new1 .btn-wr .text {
    text-align: center;
    font-size: 1.5rem;
    font-weight: bold;
    color: #FFD00D;
    line-height: 1;
    margin-bottom: 5px; 
}

.fixed-bot--new1 .btn-wr .text span {
    position: relative;
    padding: 0 12.5px;
    display: inline-block;
}

.fixed-bot--new1 .btn-wr .text span:before, 
.fixed-bot--new1 .btn-wr .text span:after {
    content: '';
    height: 10px;
    width: 1px;
    background: #FFD00D;
    position: absolute;
    left: 0;
    bottom: 0;
    transform: rotate(-25deg);
}

.fixed-bot--new1 .btn-wr .text span:after{
    left:auto;
    right:0;
    transform: rotate(25deg);
}

/* 03-28-2023 */
.c-list__item {
    background: #fff;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 4px 4px rgba(0,0,0,0.01), 0 12px 36px rgba(0,0,0,0.04);
}

.c-list__item:hover{
    opacity:1;
    box-shadow: 0 8px 30px rgba(0,16,14,0.12), 0 4px 4px rgba(0,0,0,0.01), 0 12px 36px rgba(0,0,0,0.04);
}

.c-list__content{
    padding: 10px 15px 20px;    
}

.c-list__thumb {
    margin-bottom: 0;
}

.c-list__head {
    margin-bottom: 7px;
}

.c-list .ttl {
    margin-bottom: 5px;
}

/* 03-29-2023 */
.c-btn05--center{
    margin:0 auto;
}

.l-tag .c-btn05 {
    margin-top: 30px;
}

.home .l-all .c-btn05 {
    margin-top: -20px;
}

.p-top .l-contact .container {
    max-width: 1269px;    
}

.p-top .l-contact {
    padding: 0;
}

.p-top .l-contact figure {
    margin: -5px 0;
}

.l-message--img {
    width: 38%;
    max-width: 100%;
    margin-right: 0;
}

.l-message--main {
    max-width: 1130px;
    margin: 0 auto;
}

.l-message--inner {
    width: 62%;
    padding-left: 4.64%;
}

.l-message--main h3 {
    font-size: 3.1rem;
    color: #333;
    display: inline-block;
    background: linear-gradient(to right, #EBF8F4 0%, #D9EBFC 40%, #F1EEFD 100%);
    padding: 5px 10px;
    margin-bottom: 20px;
    line-height: 1.4;
}

.l-message--main p {
    color: #333;    
}

.l-topMv2023 .c-btn05 {
    width: 260px;
    height: 64px;
    border-radius: 40px;
    font-size: 1.6rem;
    margin-top:0;
}

@media screen and (max-width: 768px){
    .p-top .l-contact {
        padding: 40px 0;
    }

    .p-top .l-contact figure {
        margin: 0;
    }

    .l-message--inner {
        width: 100%;
        padding-left: 0;
    }
    
    .l-message--img {
        width: 100%;
    }

    .l-message--main h3 {
        font-size: 2.4rem;
        margin-bottom: 15px;
    }

    .l-topMv2023 .c-btn05 {
        width: 270px;
        height: 54px;
    }
}

/* 04-07-2023 */
.c-ttl03 {
    font-size: 3.1rem;
    font-weight: bold;
    text-align: center;
    margin-bottom: 50px;
    line-height: 1.8;
}

.l-topNews {
    padding: 60px 0 50px;
    background: #fff;
}

.l-topDownload {
    padding: 50px 0 60px;
    background: #fff;
}

.d-cardList .c-btn05 {
    margin-top: 5px;
    width:160px;
    height:37px;
    font-size: 1.3rem;
    position:absolute;
    bottom:25px;
    left:0;
    right:0;
}

.d-cardList .c-btn05 .ico {
    max-width: 15px;
    display: inline-flex;
    margin-left: 5px;
    filter: brightness(0) saturate(100%) invert(96%) sepia(12%) saturate(2314%) hue-rotate(359deg) brightness(96%) contrast(101%);
}

.l-topCta--new .head-top {
    font-size: 4rem;
    font-weight: bold;
    line-height: 1.4;
    margin-bottom: 20px;
}

.p-top .l-design .c-btn05 {
    margin-top: 25px;
}

.p-top .l-design .swiper-scrollbar-drag{
    background:#000000;
}

.p-top .l-design .swiper-container .swiper-button-prev{    
    background:linear-gradient(45deg, #7DD4B5, #81F794);
}

.p-top .l-design .swiper-container .swiper-button-next{
    background:linear-gradient(-45deg, #7DD4B5, #81F794);
}

.p-top .l-design .work-listSlider .item img{
    border-radius: 6px;
    box-shadow: 5px 15px 15px rgba(0, 0, 0, .06);
}

.l-serviceNew {
    background: #F6F7F7;
    padding: 75px 0;
}

.c-heading .text{
    text-align:center;
    font-weight: bold;
    font-size: 1.2rem;
}

.c-heading .c-ttl03 {
    margin-bottom: 35px;
}

.c-heading {
    margin-bottom: 40px;
}

section.l-serviceNew .content .image {
    max-width: calc(1311px / 2);
    margin: 0 auto 50px;
}

.l-serviceNew .service-list {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: -50px;
}

.l-serviceNew .service-list .item {
    width: 48%;
    background: #fff;
    margin-bottom: 50px;
    border-radius: 10px;
    box-shadow: 5px 10px 10px rgba(0, 0, 0, .06);
    padding: 25px 23px 50px;
    position: relative;
}

@media screen and (min-width: 993px){
    .l-serviceNew .service-list .item:not(:nth-child(4n)) {
        margin-right: 2.46%;
    }
    .l-serviceNew .service-list .item {
        width: 23.15%;
    }
}

@media screen and (min-width: 769px) and (max-width: 992px){
    .l-serviceNew .service-list .item:not(:nth-child(3n)) {
        margin-right: 3.5%;
    }
    .l-serviceNew .service-list .item {
        width: 31%;
    }
}

.l-serviceNew .service-list .lbl {
    position: absolute;
    top: 0;
    left: 23px;
    background: #040707;
    color: #fff;
    font-weight: bold;
    font-size: 1.2rem;
    border-radius: 10px;
    padding: 6px 11px;
    transform: translateY(-50%);
}

.l-serviceNew .service-list .head {
    display: flex;
    align-items: center;
    font-size: 1.4rem;
    font-weight: bold;
    margin-bottom: 15px;
}

.l-serviceNew .service-list .head .icon {
    flex-basis: 40px;
    flex-shrink: 0;
    margin-right: 10px;
}

.l-serviceNew .service-list .item > p {
    font-weight: 500;
    font-size: 1.2rem;
    line-height: 1.8;
}

.l-serviceNew .service-list .item:after {
    content:'';
    width: 6px;
    height: 6px;
    border: 1px solid;
    position:absolute;
    bottom: 18px;
    right: 18px;
    transform:rotate(45deg);
    border-left:none;
    border-bottom:none;
}

.l-topFeatureNew {
    padding: 70px 0 90px;
    background: #fff;
}

.l-topFeatureNew .feature-balloon-wr{
    width:50%;
    padding-left:50px;
    margin-bottom: -110px;
    margin-left: auto;    
}

.l-topFeatureNew .feature-balloon {
    font-size: 1.7rem;
    font-weight: bold;
    box-shadow:0 1.5px 50px rgba(120, 180, 153, .42);
    max-width: 427.5px;
    border-radius:10px;
    line-height: 1.8;
    padding: 35px;
    position: relative;
    margin-left: auto;    
}

.l-topFeatureNew .feature-balloon:after {
    content:'';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 20px 30px 0 0;
    border-color: #fff transparent transparent transparent;
    position:absolute;
    bottom:0;
    left:55px;
    transform:translateY(100%);
}

.l-topFeatureNew .feature-part {
    max-width: 908.5px;
    margin: 0 auto;
}

.l-topFeatureNew .feature-list__item{
    width: 50%;
}

.l-topFeatureNew .feature-list__item:nth-child(odd){
    text-align: right;    
}

.l-topFeatureNew .feature-list__item:nth-child(odd) > * {
    padding-right:50px;
}

.l-topFeatureNew .feature-list__item:nth-child(odd) .image{
    margin-left:auto;
}

.l-topFeatureNew .feature-list__item:nth-child(even){
    margin-left:auto;    
}

.l-topFeatureNew .feature-list__item:nth-child(even) > *{
    padding-left:50px;
}

.l-topFeatureNew .feature-list__item#feature1 .image {
    max-width: 202px;
}

.l-topFeatureNew .feature-list__item#feature2 .image {
    max-width: 145px;
}

.l-topFeatureNew .feature-list__item#feature3 .image {
    max-width: 275px;
}

.l-topFeatureNew .feature-list__item#feature4 .image {
    max-width: 211px;
}

.l-topFeatureNew .feature-list .num {
    font-size: 1.2rem;
    font-weight: bold;
    color: #7ED9B1;
    line-height: 1;
    margin-bottom: 8px;
}

.l-topFeatureNew .feature-list .ttl span {
    font-size: 2rem;
    font-weight: bold;
    display: inline-block;
    padding:0 5px;
    background:linear-gradient(to right, #EBF8F4, #D9EBFC 40%, #F1EEFD);
}

.l-topFeatureNew .feature-list .ttl span:not(:first-child) {
    margin-top: 8px;
}

.l-topFeatureNew .feature-list .ttl {
    margin-bottom: 15px;
}

.l-topFeatureNew .feature-list .content p {
    font-size: 1.4rem;
    font-weight: 500;
    line-height: 1.8;
}

.l-topFeatureNew .feature-list {
    position: relative;
}

.l-topFeatureNew .feature-list:after{
    content:'';
    position:absolute;
    top:130px;
    left:50%;
    width:1px;
    height:calc(100% - 130px);
    background:#7ED9B1;
}

.l-topFeatureNew .feature-list__item .content{
    position:relative;
}

.l-topFeatureNew .feature-list__item .circle{
    content:'';
    position:absolute;
    width:17px;
    height:17px;
    background:#7ED9B1;
    border-radius:50%;
}


.l-topFeatureNew .feature-list__item:nth-child(odd) .circle{
    top:0;
    right: -9px;    
}

.l-topFeatureNew .feature-list__item .circle2x{    
    position:absolute;
    width:31px;
    height:31px;
    background: rgba(126, 217, 177, .2);
    border-radius:50%;
    top: -7px;
    right: -16px;
    z-index: 1;
}

.l-topFeatureNew .feature-list__item .circle2x:after{
    content:'';
    position:absolute;
    width:17px;
    height:17px;
    background:#7ED9B1;
    border-radius:50%;
    top:50%;
    left:50%;
    transform:translate(-50%, -50%);
}

.l-topFeatureNew .feature-list__item:nth-child(even) .circle{
    top:0;
    left: -8px;
    z-index: 2;
}

.l-topFeatureNew .feature-list__item .image{
    position:relative;
    padding-bottom: 8px;
}

.l-topFeatureNew .feature-list__item:first-child .image:after{
    content:'';
    width: 15px;
    height:calc(100% - 130px);
    background: #fff;
    top:130px;
    right: -8px;
    position:absolute;
    z-index: 1;
}

.l-topFeatureNew .feature-list__item:last-child .content:after{
    content:'';
    width: 15px;
    height:100%;
    background: #fff;
    top:0;
    left: -7px;
    position:absolute;
    z-index: 1;
}

.l-topFeatureNew .feature-list__item#feature2 {
    margin-top: -88px;
}

.l-topFeatureNew .feature-list__item#feature3 {
    margin-top:-168px;
}

.l-topFeatureNew .feature-list__item#feature4 {
    margin-top:-245px;
}

.l-topMeritNew {
    background: #fff;
    padding: 70px 0 75px;
}

.l-topMeritNew .c-ttl03 {
    margin-bottom: 35px;
}

.l-topMeritNew .list {
    max-width: 1000px;
    margin: 0 auto;
}

.l-topMeritNew .list .item {
    background: #F6F7F7;
    position: relative;
    padding:50px 20px;
}

.l-topMeritNew .list .item:after{
    content: '';
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:136.5px;
    background-image: url('../img/topnew2023/merit/merit-bg.png');
    background-size: contain;
}

.l-topMeritNew .list .item > * {
    position:relative;
    z-index:1;
}

.l-topMeritNew .list .heading {
    text-align: center;
    font-weight: bold;
}

.l-topMeritNew .list .num {
    font-size: 1.2rem;
    color: #6C7CDF;
    line-height: 1;
}

.l-topMeritNew .list .heading .ttl {
    font-size: 3rem;
    display: inline-block;
    line-height: 1.8;
    border-bottom: 2px dashed #BDC0C0;
    margin-bottom: 40px;
}

.l-topMeritNew .list .inner {
    max-width: 850px;
    margin: 0 auto;
    display: flex;
}

.l-topMeritNew .list .item:not(:last-child) {
    margin-bottom: 35px;
}

.l-topMeritNew .list .inner .image {
    width: 50%;
}

.l-topMeritNew .list .inner .content {
    width: 50%;
    padding-left: 25px;
}

.l-topMeritNew .list .inner .content-ttl {
    font-size: 2.2rem;
    font-weight: bold;
    line-height: 1.8;
    margin-bottom: 25px;
}

.l-topMeritNew .list .inner .content p {
    font-size: 1.3rem;
    font-weight: bold;
    line-height: 1.8;
}

.l-topMeritNew .list .item--1 .inner .image img {
    width: 389px;
}

.l-topMeritNew .list .item--2 .inner .image img {
    width: 391px;
}

.l-topMeritNew .list .item--3 .inner .image img {
    width: 391px;
}

.l-topMeritNew .list .item--4 .inner .image img {
    width: 370px;
}

@media screen and (max-width: 768px){
    .c-btn05{
        margin-top:35px;
    }

    .c-ttl03 {
        font-size: 2.2rem;
        margin-bottom: 35px;
    }
    
    .l-topFeatureNew .feature-balloon-wr {
        margin-bottom: 40px;
        width: 100%;
        padding-left: 40px;
    }
    
    .l-topFeatureNew .feature-list__item#feature2 {
        margin-top: 0;
    }
    
    .l-topFeatureNew .feature-list__item#feature3 {
        margin-top: 0;
    }
    
    .l-topFeatureNew .feature-list__item#feature4 {
        margin-top: 0;
    }
    
    .l-topFeatureNew .feature-list__item:nth-child(odd) > * {
        padding-right: 0;
        padding-left: 40px;
    }
    
    .l-topFeatureNew .feature-list__item {
        width: 100%;
    }
    
    .l-topFeatureNew .feature-list__item:nth-child(odd) {
        text-align: left;
    }
    
    .l-topFeatureNew .feature-list__item:nth-child(odd) .image {
        margin-left: 0;
    }
    
    .l-topFeatureNew .feature-list:after {
        left: 10px;
    }
    
    .l-topFeatureNew .feature-list__item .circle2x {
        right: auto;
        left: -3px;
        width: 27px;
        height: 27px;
    }
    
    .l-topFeatureNew .feature-list__item .circle2x:after {
        width: 15px;
        height: 15px;
    }
    
    .l-topFeatureNew .feature-list__item .circle {
        width: 15px;
        height: 15px;
    }
    
    .l-topFeatureNew .feature-list__item:nth-child(even) .circle {
        left: 3px;
    }
    
    .l-topFeatureNew .feature-list__item:nth-child(odd) .circle {
        right: auto;
        left: 3px;
    }
    
    .l-topFeatureNew .feature-balloon {
        font-size: 1.5rem;
        padding: 20px 15px;
    }
    
    .l-topFeatureNew .feature-list__item#feature1 .image {
        max-width: 150px;
    }
    
    .l-topFeatureNew .feature-list__item#feature2 .image {
        max-width: 130px;
    }
    
    .l-topFeatureNew .feature-list__item#feature3 .image {
        max-width: 190px;
    }
    
    .l-topFeatureNew .feature-list__item#feature4 .image {
        max-width: 160px;
    }
    
    .l-topFeatureNew .feature-list__item:not(:last-child) {
        margin-bottom: 50px;
    }
    
    .l-topFeatureNew .feature-list .ttl span {
        font-size: 1.6rem;
    }
    
    .l-topFeatureNew .feature-balloon:after {
        border-width: 15px 25px 0 0;
    }
    
    .l-topFeatureNew {
        padding: 60px 0;
    }
    
    .l-topFeatureNew .feature-list__item:last-child .content:after {
        left: 1px;
    }
    
    .l-topMeritNew {
        padding: 60px 0;
    }
    
    .l-topMeritNew .list .heading .ttl {
        font-size: 2.2rem;
        padding-bottom: 5px;
        margin-bottom: 30px;
    }
    
    .l-topMeritNew .list .num {
        margin-bottom: 5px;
    }
    
    .l-topMeritNew .list .inner {
        display: block;
    }
    
    .l-topMeritNew .list .inner .image {
        width: 100%;
        text-align: center;
        margin-bottom: 20px;
    }
    
    .l-topMeritNew .list .inner .content {
        width: 100%;
        padding-left: 0;
    }
    
    .l-topMeritNew .list .inner .content-ttl {
        font-size: 1.7rem;
        margin-bottom: 15px;
    }
    
    .l-topMeritNew .list .item:after {
        height: 100px;
    }
    
    .l-topMeritNew .list .item {
        padding: 40px 15px;
    }
    
    .l-topMeritNew .list .item--1 .inner .image img {
        width: 280px;
    }
    
    .l-topMeritNew .list .item--2 .inner .image img {
        width: 280px;
    }
    
    .l-topMeritNew .list .item--3 .inner .image img {
        width: 280px;
    }
    
    .l-topMeritNew .list .item--4 .inner .image img {
        width: 280px;
    }

    .l-topMeritNew .list .item:not(:last-child){
        margin-bottom: 30px;
    }

    .l-topCta--new .head-top {
        font-size: 2.6rem;
    }
    
    .l-links .l-link:not(:last-child) {
        margin-bottom: 20px;
    }
    
    .l-link a span, .l-link div span {
        font-size: 1.1rem;
        margin-right: 10px;
    }
    
    .l-link a, .l-link div {
        font-size: 1.4rem;
        padding-left:70px;
    }
    
    .l-serviceNew {
        padding: 60px 0;
    }
    
    .l-serviceNew .service-list {
        display: block;
    }
    
    .l-serviceNew .service-list .item {
        width: 100%;
        margin-bottom: 30px;
    }

    .l-serviceNew .service-list .item.item--lbl:not(:first-child) {
        margin-top: 48px;
    }
}

/* 04-10-2023 */
.l-topServiceVideo {
    padding:50px 0;
    background:#fff;
}

.l-topServiceVideo .c-youtube{
    max-width:828px;
    margin:0 auto;
    padding-bottom: 38.667%;
}

/* 04-17-2023 */
#header .container {
    max-width: 100%;
    padding-left: 50px;
}

.h-contact.h-contact--2023 {
    display: flex;
    align-items: center;
}

.h-contact.h-contact--2023 .c-btn05#h-btn1 {
    margin-top: 0;
    text-align: center;
    height: 50px;
    font-size: 1.4rem;
    line-height: 1.416;
    margin-right: 20px;
    width: 196.5px;
}

.l-header {
    padding: 0;
}

.h-contact.h-contact--2023 #h-btn2 {
    background: rgb(104,109,228);
    background: linear-gradient(135deg, rgba(104,109,228,1) 0%, rgba(138,234,183,1) 100%);
    color:#fff;
    font-weight:bold;
    height:80px;
    display:flex;
    align-items:center;
    width:185px;
    padding-left:18.5px;
}

.h-contact.h-contact--2023 #h-btn2 .inner{
    font-size:1.2rem;
    line-height:1.583;
    position:relative;
}

.h-contact.h-contact--2023 #h-btn2 .inner:after{
    content:'\f0a9';
    font-family:'Font Awesome 5 Free', sans-serif;
    font-weight:bold;
    font-size: 14px;
    position: absolute;
    top: 50%;
    right: -7.5px;
    transform: translateX(100%) translateY(-50%);
}

.h-menu {
    flex: auto;
    justify-content: flex-end;
}

.txtColor02 {
    color: #F4ED3C;
}

@media screen and (max-width: 1350px){
    #header .container{
        padding-left:20px;
        width: 100%;
    }

    .h-contact.h-contact--2023 #h-btn2{
        padding-left: 10px;
        width: 165px;
    }

    
    .h-contact.h-contact--2023 .c-btn05#h-btn1 {
        width: 190px;
    }
}

@media screen and (max-width: 1267px){
    .l-header{
        padding-top:15px;
    }
}

@media only screen and (max-width: 768px){
    .l-header{
        padding:20px 0;
    }

    .h-menu .h-tel{
        margin-bottom: 15px;
    }

    .h-contact.h-contact--2023 {
        padding-left: 15px;
        flex-direction: column;
        width: 100%;
        padding-right: 15px;
        align-items: flex-start;
    }
    
    .h-contact.h-contact--2023 .c-btn05#h-btn1 {
        width: 196.5px;
        max-width: 100%;
        margin-right: 0;
        margin-bottom: 30px;
        margin-left: 0;
    }
    
    .h-contact.h-contact--2023 #h-btn2 {
        width: 185px;
    }
}

/* 09-12-2023 */
.c-file__upload {
    display: inline-flex;
    align-items: center;
    cursor: pointer;
}

.c-file__upload .btn-upload {
    font-size: 1.2rem;
    font-weight: 500;
    color: #676767;
    background: #F0F0F0;
    border-radius: 2px;
    width: 135px;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 27px;
    border: 1px solid #C8C8C8;
    margin-right: 15px;
}

.c-file__upload .text {
    font-weight: 500;
    font-size: 1.2rem;
    color: #676767;
}

.c-file__container {
    display: none;
}

.c-file__dest {
    margin-top: 15px;
}

.c-file__dest .file-dest {
    border: 1px solid #C8C8C8;
    font-weight: 500;
    font-size: 1.4rem;
    padding: 15px 15px 15px 30px;
	display:none;
}

.c-file__dest .file-dest:not(:last-child) {
    margin-bottom: 6px;
}

.c-file__dest .file-dest .txt {
    position: relative;
    line-height: 1.4;
    word-break: break-all;
}

.c-file__dest .file-dest .txt:before{
    content: '';
    position:absolute;
    top: 3px;
    left: -7.5px;
    background-image: url('../img/icon/icon-file.png');
    background-repeat:no-repeat;
    background-size:contain;
    width: 13.5px;
    height:15.5px;
    transform: translateX(-100%);
}

.c-file__dest .file-dest .delete-icon {
    width: 22px;
    height: 22px;
    background-image: url('../img/icon/icon-delete.png');
    background-repeat:no-repeat;
    background-size:contain;
    margin-left: 15px;
    flex-shrink: 0;
    cursor: pointer;
    transition: .3s ease;
}

.c-file__dest .file-dest .inner {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
}

.c-file__dest .file-dest .delete-icon:hover {
    opacity: .7;
}

.sp-ip{
    display:none!important;
}

@media screen and (max-width: 768px){
    .sp-ip{
        display: block!important;
    }

    .sp-ip.flex{
        display:flex!important;
    }

    .pc-ip{
        display:none!important;
    }
}

/* 10-31-2023 */
.contact-list.contact-list--new {
    max-width: 915px;
    margin: 0 auto;
    align-items: center;
}

.contact-list.contact-list--new > * {
    width: 50%;
}

.contact-list.contact-list--new .contact-list__col .contact-list__item:not(:last-child) {
    border-bottom: 1px solid #DDDDDD;
}

.contact-list__item:not(:last-child) {
    border-right: none;
}

.contact-list.contact-list--new .contact-list__col {
    border-right: 1px solid #DDD;
    padding-right: 38.5px;
}

.contact-list.contact-list--new .contact-list__item {
    padding: 25px;
}

.contact-list.contact-list--new .text-part {
    display: flex;
    align-items: center;
    justify-content: center;
}

.contact-list.contact-list--new .text-part .icon {
    margin-bottom: 0;
    margin-right: 20px;
}

.contact-list.contact-list--new .text-part p {
    margin-bottom: 0;
}

.contact-list.contact-list--new .contact-list__col .c-btn05 {
    margin-top: 20px;
}

.contact-list.contact-list--new > .contact-list__item {
    padding: 15px 25px;
}

.contact-list.contact-list--new > .contact-list__item .icon {
    margin: 0 auto 10px;
    display: block;
}

.contact-list.contact-list--new > .contact-list__item > p {
    margin-bottom: 0;
}

.contact-list.contact-list--new > .contact-list__item .c-btn05 {
    margin-top: 20px;
}

.contact-list.contact-list--new > .contact-list__item .c-btn05.line {
    margin-top: 25px;
    margin-bottom: 25px;
}

.contact-list.contact-list--new > .contact-list__item .h-tel {
    margin: 0;
    justify-content: center;
    align-items: center;
}

.contact-list.contact-list--new > .contact-list__item .h-tel .icon {
    display: flex;
    margin: 0 7.5px 0 0;
    min-height: initial;
}

.contact-list.contact-list--new .contact-list__col .contact-list__item {
    width: 100%;
}

.contact-list.contact-list--new > .contact-list__item .h-tel .txt strong {
    font-size: 2.4rem;
}

@media screen and (max-width: 768px){
  .contact-list.contact-list--new .contact-list__col {
      padding-right: 0;
      border: none;
  }

  .contact-list.contact-list--new > * {
      width: 100%;
  }

  .contact-list.contact-list--new .text-part {
      display: block;
  }

  .contact-list.contact-list--new .text-part .icon {
      margin-right: 0;
      margin-bottom: 20px;
  }

  .contact-list.contact-list--new .contact-list__item {
      padding: 35px 0;
  }

  .contact-list.contact-list--new .contact-list__col .contact-list__item:last-child {
      border-bottom: 1px solid #DDD;
  }
}

@media screen and (min-width: 769px){
    body.single .layout__col {
        max-width: 1040px;
        margin: 0 auto;
        justify-content: space-between;
    }
    
    body.single .layout__col .layout__col__main {
        max-width: 100%;
        max-width: 665px;
    }
    
    body.single .layout__col .layout__col__sub {
        width: 280px;
        margin-left: 50px;
    }

    body.single .layout__col {
        padding-top: 30px;
    }
    
    body.single .l-single_thumbnail {
        position: static;
        width: 100%;
        margin-top: 20px;
    }
    
    body.single .single-new__content {
        width: 100%;
    }
    
    body.single .single-box {
        width: 100%;
        display: flex;
        flex-direction: column-reverse;
        padding-top: 15px;
    }
    
    body.single .single-new.c-single {
        min-height: initial;
        margin-bottom: 30px;
    }
}

@media screen and (max-width: 768px){
    body.single .single-box {
        display: flex;
        flex-direction: column-reverse;
    }
    
    body.single .single-boxLink {
        margin-top: 0;
        margin-bottom: 20px;
    }
}

.c-singleCta {
    border: 1px solid #0C0C0C;
    margin: 60px 0 30px;
}

.c-singleCta .head {
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
    min-height: 135px;
    color: #fff;
    display: flex;
    align-items: center;
    padding-left: 20px;
    padding-right: 190px;
}

.c-singleCta figure {
    position: absolute;
    bottom: 1px;
    right: 0;
    max-width: 185px;
}

.c-singleCta .head .text-part p {
    margin: 0;
    font-weight: bold;
}

.c-singleCta .head .text-part .p1 {
    font-size: 4.7rem;
    line-height: 1;
    margin-bottom: 5px;
}

.c-singleCta .head .text-part .p1 span {
    font-size: 5.7rem;
    font-family: 'DIN 2014', sans-serif;
    line-height: 1;
}

.c-singleCta .head .text-part .p2 {
    font-size: 2rem;
    line-height: 1;
}

.c-tel {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0 12px;
}

.c-tel .icon {
    flex-basis: 76.5px;
}

.c-tel .txt {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.c-tel .num {
    font-size: 4.4rem;
    font-family: 'DIN 2014', sans-serif;
    line-height: 1;
    color: #EF5153;
    margin-bottom: 5px;
}

.c-tel .opening {
    font-weight: 500;
    font-size: 1.8rem;
    line-height: 1;
}

.c-singleCta .content {
    padding: 20px 30px 30px;
}

.c-singleCta .buttons {
    display: flex;
    gap: 0 10px;
    justify-content: center;
}

.c-singleCta .buttons .c-btn05 {
    margin: 0;
}

.c-btn05 .icon {
    background-size: contain;
    background-position: center;
    display: inline-block;
    background-repeat: no-repeat;
    margin-right: 3px;
}

.c-btn05 .icon.icon--computer{
    background-image: url('../img/icon/icon-computer.png');
    width: 16px;
    height: 10.5px;
}

.c-btn05 .icon.icon--mail{
    background-image: url('../img/icon/icon-mail.png');
    width: 15px;
    height: 12px;
}

.c-btn05 .icon.icon--line{
    background-image: url('../img/icon/icon-line.png');
    width: 16.5px;
    height: 15.5px;
}

.tel-part .ttl span {
    font-size: 2.2rem;
    font-weight: bold;
    position: relative;
    padding: 0 10px;
    line-height: 1;
    display: inline-block;
}

.tel-part .ttl {
    text-align: center;
    margin-bottom: 5px;
    display: none;
}

.tel-part .ttl span:before,.tel-part .ttl span:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 1px;
    height: 15px;
    background: #000;
    transform: rotate(-20deg);
}

.tel-part .ttl span:after {
    right: 2px;
    left: auto;
    transform: rotate(20deg);
}

.c-singleCta .tel-part {
    margin-bottom: 18px;
}

@media screen and (max-width: 768px){
    .c-singleCta {
        margin: 60px 0 30px;
    }
    
    .c-singleCta .head {
        min-height: 86px;
        padding-left: 15px;
        padding-right: 110px;
    }
    
    .c-singleCta figure {
        max-width: 108px;
    }
    
    .c-singleCta .head .text-part .p1 {
        font-size: 2.4rem;
    }
    
    .c-singleCta .head .text-part .p1 span {
        font-size: 2.9rem;
    }
    
    .c-singleCta .head .text-part .p2 {
        font-size: 1.3rem;
    }
    
    .c-singleCta .content {
        padding: 25px 15px 30px;
        background: #F6F7F7;
    }
    
    .tel-part .ttl {
        display: block;
    }
    
    .c-singleCta .tel-part {
        background: #fff;
        box-shadow: 5px 10px 10px rgba(0, 0, 0, .16);
        border-radius: 5px;
        padding: 20px 15px;
        margin-bottom: 20px;
    }
    
    .c-tel .icon {
        flex-basis: 53.5px;
    }
    
    .c-tel .num {
        font-size: 2.8rem;
        margin-bottom: 2px;
    }
    
    .c-tel .opening {
        font-size: 1.3rem;
    }
    
    .c-tel {
        gap: 0 5px;
    }
    
    .c-singleCta .buttons {
        flex-wrap: wrap;
        gap: 15px 10px;
    }
    
    .c-singleCta .buttons .c-btn05 {
        flex: auto;
        width: calc(50% - 5px);
        margin-top: 0;
    }
    
    .c-singleCta .buttons #consult {
        width: 100%;
        font-size: 1.4rem;
    }
    
    .c-singleCta .buttons .c-btn05 {
        display: flex;
        flex-direction: column;
        height: 55px;
        border-radius: 5px;
    }
    
    .c-singleCta .buttons .c-btn05 .icon {
        margin-right: 0;
        margin-bottom: 0;
    }
    
    .c-singleCta .buttons #consult .icon {
        width: 19px;
        height: 12.5px;
    }
    
    .c-singleCta {
        margin: 30px 0 20px;
    }
}

/* 2023-11-30 */
.l-topCountDown--2024 .box {
    border: 1px solid #ddd;
    border-radius: 10px;
    overflow: hidden;
}

.l-topCountDown--2024 .box .c-countDown{
    background:url('https://shopi-lab.com/wp-content/themes/SP_swblog/assets/img/topnew2023/countdown-bg.png'),repeating-linear-gradient(135deg, #686DE4, #8AEAB7);
    padding-top: 22.5px;
    padding-bottom: 18px;
    background-size: 37.5px 38px, cover;
    background-position: top center;
}

.l-topCountDown.l-topCountDown--2024 {
    background: #fff;
}

.l-topCountDown--2024 .c-countDown__time {
    background: transparent;
}

.l-topCountDown--2024 .c-coundDown__head .ttl span {
    padding: 0 45px;
}

.l-topCountDown--2024 .c-coundDown__head {
    margin-bottom: 18px;
}

.l-topCountDown--2024 .c-countDown__time .num {
    border-radius: 5px;
    padding: 8px  10px;
}

.l-topCountDown--2024 .mid-content {
    padding: 12.5px 15px 11px;
    background: #C40003;
    text-align: center;
    color: #fff;
    font-weight: bold;
    font-size: 2.2rem;
}

.l-topCountDown--2024 .mid-content p {
    font-size: inherit;
}

.l-topCountDown--2024 .mid-content p span {
    font-size: inherit;
    color: #FBD347;
    border-bottom: 2px solid;
    padding-bottom: 3px;
}

.l-topCountDown--2024 .mid-content .note {
    margin-top: 10px;
}

.l-topCountDown--2024 .mid-content .note a{
    color:inherit;
    display:inline-block;
    border-bottom: 1px solid;
    line-height: 1.5;
}

.l-topCountDown--2024 .box__content {padding-bottom: 25px;}

.l-topCountDown--2024 .box__content a {
    flex-direction: column;
    width: 100%;
    height: calc(190px/2);
    border-radius: 100px;
    font-size: 1.75rem;
    font-weight: bold;
}

.l-topCountDown--2024 .box__content a span {
    font-size: 2.5rem;
    line-height: 1.2;
}

.single-first-section{
    margin-top:-30px;
}

.before2024 {
    color: #fff;
    text-align: center;
    background: #000000;
    padding: 5px 15px;
    font-weight: bold;
}

.before2024 span {
    color: #FBD347;
    border-bottom: 1px  solid;
    padding-bottom: 2px;
}

@media screen and (max-width: 768px){
    .l-topCountDown--2024 .c-countDown__time .num {
        padding: 3px 5px;
        border-radius: 3px;
    }
    
    .l-topCountDown--2024 .c-coundDown__head .ttl span {
        padding: 0 40px;
    }
    
    .l-topCountDown--2024 .c-coundDown__head {
        margin-bottom: 15px;
    }
    
    .l-topCountDown--2024 .mid-content {
        font-size: 1.6rem;
        line-height: 1.6;
    }
    
    .l-topCountDown--2024 .mid-content p {
        line-height: inherit;
    }
    
    .l-topCountDown--2024 .mid-content .note {
        margin-top: 5px;
        font-size: 1.3rem;
    }
    
    .l-topCountDown--2024 .box__content a {
        font-size: 1.3rem;
        height: 70px;
    }
    
    .l-topCountDown--2024 .box__content a span {
        font-size: 2rem;
    }
}

/* 2024-02-26 */
.checked-widget.postid-widget--green .sidebar-title {
    background: #7DD4B5!important;
    color: #000;
}

.checked-widget.postid-widget--green .post-sidebar {
    border-color: #7DD4B5;
}

.checked-widget.postid-widget .sidebar-main .sidebar-title:before{
    display:none;
}

.postid-widget .sidebar-title .icon {
    margin-right: 5px;
}

.postid-widget .seminar-date {
    padding: 4px 10px;
    background-color: #F4ED3C;
    color: #000;
    font-weight: bold;
    margin-bottom: 10px;
}

/* 2024-02-29 */
.modal.modal--banner {
    background: transparent;
    box-shadow: none;
    width: 100%;
    max-width: 100%;
}

.modal.modal--banner .banner {
    max-width: 700px;
    margin: 0 auto;
}

.modal.modal--banner .close-btn {
    max-width: 30px;
    margin-left: auto;
    margin-bottom: 10px;
}

.jquery-modal.blocker--banner.current {
    z-index: 10000;
    background-color: rgba(0, 0, 0, 0.5);
}

/* 2024-04-22 */
.custom-text-before-h2{
    border: 1px solid #e1e1e1;
    border-radius: 8px;
    padding: 8px 15px 6px;
    font-size: 14px!important;
    margin-bottom: -40px!important;
    position: relative;
    z-index: 1;
}

.custom-text-before-h2 a {
    font-size: inherit!important;
}

.custom-text-before-h2 a:after {
    display: none;
}

.l-link a.l-link__news {
    display: flex;
    align-items: flex-start;
    padding-left: 0;
}

.l-link a.l-link__news time {
    flex-shrink: 0;
    margin-right: 20px;
    font-size: 14px;
    margin-top: 0;
}

@media screen and (max-width: 768px) {
    .l-link a.l-link__news time {
        font-size: 12px;
        margin-right: 15px;
        margin-top: 2px;
    }
}

#toc_container .toc_title a {
    width: 70px;
}

@keyframes _tipfadein {
    0% {
        opacity: 0;
        transform: translateY(5px);
    }
    100% {
        opacity: 100%;
        transform: translateY(0);
    }
}

@keyframes _tipfadeout {
    0% {
        opacity: 1;
        transform: translateY(0);
    }
    100% {
        opacity: 0;
        transform: translateY(-5px);
    }
}

.h-contact__btn {
    position: relative;
}

.h-contact__btn ._tooltip {
    position: absolute;
    right: 20px;
    min-width: 260px;
    height: 34px;
    background: #040707;
    color: #fff;
    border-radius: 4px;
}

.h-contact__btn ._tooltip ._text {
    font-size: 12px;
    text-align: center;
    line-height: 1;
    position:absolute;
    height: 100%;
    width: 100%;
    left:0;
    top:0;
    display: flex;
    justify-content: center;
    align-items: center;
}

.h-contact__btn ._tooltip ._case {
    font-size: 18px;
}

.h-contact__btn ._tooltip ._text--month {
    opacity: 0;
}

.h-contact__btn ._tooltip ._text.is-tip-fadein {
    animation: _tipfadein .7s ease forwards;
}

.h-contact__btn ._tooltip ._text.is-tip-fadeout {
    animation: _tipfadeout .7s ease forwards;
}

.h-contact__btn ._tooltip:before {
    content: '';
    position: absolute;
    top: 0;
    right: 90px;
    width: 0px;
    height: 0px;
    border-style: solid;
    border-width: 0 6px 11px 6px;
    border-color: transparent transparent #040707 transparent;
    transform: translateY(-100%);
}

.h-contact ._tooltip-wrap {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    padding-top: 70px;
    transition: .3s ease;
    opacity: 0;
    animation: _tipfadein .7s ease forwards;
}

.h-contact ._tooltip-wrap.is-hidden {
    animation: none;
    opacity: 0!important;
    pointer-events: none;
}

.h-contact__btn #h-btn1 {
    position: relative;
    z-index: 1;
}

@media only screen and (max-width: 768px) {
    .h-contact ._tooltip-wrap {
        display: none!important;
    }
}

/* 2024-07-24 */
.fixed-bot--new1 .btn--ecforce img {
    max-width: 112.5px;
}

.fixed-bot--new1 .btn--ecforce {
    font-size: 1.6rem;
    background: linear-gradient(to right, #1934D2, #6278F4);
    color: #fff;
}

/* 2024-10-10 */
.fixed-banner20241010 ._content {margin-top: 10px;}

.fixed-banner20241010 ._content dl {
    display: flex;
}

.fixed-banner20241010 ._content dl:not(:last-child) {
    margin-bottom: 9px;
}

.fixed-banner20241010 ._content dt {
    width: 80px;
    height: 28px;
    font-size: 13px;
    color: #fff;
    background: #383838;
    font-weight: bold;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-shrink: 0;
}

.fixed-banner20241010 ._content dd {
    flex: auto;
    font-size: 13px;
    padding-left: 7px;
    font-weight: 400;
}

/* 2025-02-07 */
.fixed-bot--new1 .btn--custom {
    background: #ef5153;
    color: #fff;
}

/* 2026-02-16 */
.wp-block-embed__wrapper {
  position: relative;
  width: 100%;
  padding-top: 56.25%; /* 16:9 */
}

.wp-block-embed__wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.l-topYoutube {
    background: #F5F5F5;
    padding: 70px 0;
}

.c-btn05.c-btn05--red {
    background: #FF0000;
    color: #FFF;
}

@media screen and (max-width: 768px) {
    .l-topYoutube {
        padding: 50px 0;
    }
}

.l-topExpert .box .logo img {
    max-width: 180px;
}

.f-logo {
    max-width: 180px;
}

.fixed-bot--new1 .btn--new1 img {
    width: 100px;
}

@media screen and (max-width: 768px) {
    .fixed-bot--new1 .btn--new1 img {
        width: 80px;
    }
}