@font-face {
    font-family: YuGothicM;
    src: local("Yu Gothic Medium")
}

*,*:before,*:after {
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

body,h1,h2,h3,p,figure,dl,dd {
    margin: 0
}

html:focus-within {
    scroll-behavior: smooth
}

body {
    line-height: 1.5;
    min-height: 100vh;
    text-rendering: optimizeSpeed
}

a:not([class]) {
    -webkit-text-decoration-skip: ink;
    text-decoration-skip-ink: auto
}

img,picture {
    display: block;
    max-width: 100%
}

input,button,textarea,select {
    font: inherit
}

html {
    height: -webkit-fill-available
}

html,body {
    overflow-x: hidden
}

body {
    -webkit-text-size-adjust: none;
    background-color: #fff;
    color: #555;
    font-family: "Noto Sans JP","游ゴシック体",YuGothic,"游ゴシック Medium","Yu Gothic Medium","游ゴシック","Yu Gothic","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",メイリオ,Meiryo,sans-serif;
    font-size: 16px;
    font-size: 1rem;
    letter-spacing: .125em;
    line-height: 1.6
}

a {
    cursor: pointer
}

a:hover {
    color: inherit
}

.l-body {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-direction: column;
    height: auto !important;
    height: 100dvh;
    margin-top: 4.5rem;
    min-height: 100vh
}

@media screen and (min-width: 1024px) {
    .l-body {
        margin-top:8.25rem
    }
}

.l-container,.p-page-head__in,.p-footer__primary-in,.p-footer__secondary-in,.p-breadcrumbs__in {
    margin: 0 auto;
    padding-left: 1rem;
    padding-right: 1rem;
    position: relative;
    width: 100%;
    z-index: 1
}

@media screen and (min-width: 640px) {
    .l-container,.p-page-head__in,.p-footer__primary-in,.p-footer__secondary-in,.p-breadcrumbs__in {
        max-width:672px
    }
}

@media screen and (min-width: 768px) {
    .l-container,.p-page-head__in,.p-footer__primary-in,.p-footer__secondary-in,.p-breadcrumbs__in {
        max-width:800px
    }
}

@media screen and (min-width: 1024px) {
    .l-container,.p-page-head__in,.p-footer__primary-in,.p-footer__secondary-in,.p-breadcrumbs__in {
        max-width:1056px
    }
}

@media screen and (min-width: 1280px) {
    .l-container,.p-page-head__in,.p-footer__primary-in,.p-footer__secondary-in,.p-breadcrumbs__in {
        max-width:1312px
    }
}

.p-page-head__in {
    max-width: 100% !important
}

.l-container--xl,.p-breadcrumbs__in {
    max-width: 1312px
}

.l-footer {
    margin-top: auto
}

.l-header {
    left: 0;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 10000;
}

.c-breadcrumbs {
    -ms-flex-wrap: wrap;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    list-style: none;
    margin: 0;
    padding: 0
}

.c-breadcrumbs li {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.c-breadcrumbs li+li:before {
    -ms-flex-negative: 0;
    color: #ff220b;
    content: "";
    flex-shrink: 0;
    font-family: "Font Awesome 5 Free";
    font-size: 12px;
    font-size: .75rem;
    font-weight: 900;
    letter-spacing: 0;
    line-height: 1;
    margin-right: 1rem
}

@media screen and (min-width: 1024px) {
    .c-breadcrumbs li+li:before {
        font-size:14px;
        font-size: .875rem
    }
}

.c-breadcrumbs li a,.c-breadcrumbs li span {
    color: #555;
    display: inline-block;
    font-size: 12px;
    font-size: .75rem;
    text-decoration: none
}

.c-breadcrumbs li a:before,.c-breadcrumbs li span:before {
    content: "";
    display: block;
    height: 0;
    margin-top: calc((1 - 1.6) * .5em);
    width: 0
}

.c-breadcrumbs li a:after,.c-breadcrumbs li span:after {
    content: "";
    display: block;
    height: 0;
    margin-bottom: calc((1 - 1.6) * .5em);
    width: 0
}

@media screen and (min-width: 1024px) {
    .c-breadcrumbs li a,.c-breadcrumbs li span {
        font-size:14px;
        font-size: .875rem
    }
}

@media screen and (min-width: 1024px) {
    .c-breadcrumbs li a {
        -webkit-transition:.3s;
        transition: .3s
    }

    .c-breadcrumbs li a:hover {
        opacity: .7
    }
}

.c-breadcrumbs li:last-of-type a,.c-breadcrumbs li:last-of-type span {
    color: #ff220b
}

.c-hamburger-btn {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-box-shadow: 0 0 1rem 0 rgba(255,34,11,.2);
    align-items: center;
    background: 0 0;
    background-color: #ff220b;
    border: none;
    border-radius: 50%;
    box-shadow: 0 0 1rem 0 rgba(255,34,11,.2);
    cursor: pointer;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-direction: column;
    height: 5rem;
    justify-content: center;
    outline: none;
    padding: 0;
    position: fixed;
    right: 1rem;
    top: .75rem;
    width: 5rem;
    z-index: 9999999999;
}

@media screen and (min-width: 1024px) {
    .c-hamburger-btn {
        -webkit-transition:.3s;
        height: 6rem;
        right: 2rem;
        top: 2rem;
        transition: .3s;
        width: 6rem;
        z-index: 9999999999;
    }

    .c-hamburger-btn:hover {
        opacity: .7
    }
}

.c-hamburger-btn__hidden-txt {
    clip: rect(0 0 0 0);
    -webkit-clip-path: inset(50%);
    -webkit-transition: .3s;
    border: 0;
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    transition: .3s;
    white-space: nowrap;
    width: 1px
}

.c-hamburger-btn__line {
    -webkit-transition: .3s;
    background-color: #fff;
    height: 1px;
    margin-left: .25rem;
    position: relative;
    transition: .3s;
    width: 2.25rem;
}

@media screen and (min-width: 1024px) {
    .c-hamburger-btn__line {
        height:2px;
        width: 2.8rem;
    }
}

.c-hamburger-btn__line:before,.c-hamburger-btn__line:after {
    -webkit-transition: background-color .3s,top .3s,right .3s,-webkit-transform .3s;
    background-color: #fff;
    content: "";
    height: 1px;
    position: absolute;
    right: 0;
    transition: background-color .3s,top .3s,right .3s,-webkit-transform .3s;
    transition: background-color .3s,top .3s,right .3s,transform .3s;
    transition: background-color .3s,top .3s,right .3s,transform .3s,-webkit-transform .3s
}

@media screen and (min-width: 1024px) {
    .c-hamburger-btn__line:before,.c-hamburger-btn__line:after {
        height:2px
    }
}

.c-hamburger-btn__line:before {
    top: calc(-.4rem - 1px);
    width: 2.5rem;
}

@media screen and (min-width: 1024px) {
    .c-hamburger-btn__line:before {
        top:calc(-.5rem - 2px);
        width: 2rem
    }
}

.c-hamburger-btn__line:after {
    top: calc(.45rem + 1px);
    width: 2rem;
}

@media screen and (min-width: 1024px) {
    .c-hamburger-btn__line:after {
        top:calc(.5rem + 2px);
        width: 1.5rem
    }
}

.c-hamburger-btn.is-opened .c-hamburger-btn__line {
    background-color: transparent
}

.c-hamburger-btn.is-opened .c-hamburger-btn__line:before,.c-hamburger-btn.is-opened .c-hamburger-btn__line:after {
    top: 0;
    width: 2.5rem;
}

@media screen and (min-width: 1024px) {
    .c-hamburger-btn.is-opened .c-hamburger-btn__line:before,.c-hamburger-btn.is-opened .c-hamburger-btn__line:after {
        width: 3rem;
    }
}

.c-hamburger-btn.is-opened .c-hamburger-btn__line:before {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg)
}

.c-hamburger-btn.is-opened .c-hamburger-btn__line:after {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}

.c-cta-btn {
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-box-shadow: .25rem .25rem 0 0 #ff220b,0 0 2rem 0 rgba(255,34,11,.2);
    -webkit-transition: .3s;
    align-items: center;
    background-color: #ff220b;
    border: .25rem solid #fff;
    border-radius: .5rem;
    box-shadow: .25rem .25rem 0 0 #ff220b,0 0 2rem 0 rgba(255,34,11,.2);
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    max-width: 18rem;
    padding-right: 32px;
    position: relative;
    text-decoration: none;
    transition: .3s;
    width: 100%
}

@media screen and (min-width: 640px) {
    .c-cta-btn {
        max-width:22rem
    }
}

@media screen and (min-width: 768px) {
    .c-cta-btn {
        max-width:25rem
    }
}

@media screen and (min-width: 1024px) {
    .c-cta-btn {
        padding-right:56px
    }
}

.c-cta-btn__icon-wrap {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex: 0 0 auto;
    height: 64px;
    justify-content: center;
    width: 56px
}

@media screen and (min-width: 1024px) {
    .c-cta-btn__icon-wrap {
        height:80px;
        width: 64px
    }
}

@media screen and (min-width: 1280px) {
    .c-cta-btn__icon-wrap {
        height:90px;
        width: 90px
    }
}

.c-cta-btn__icon {
    color: #fff;
    font-size: 30px;
    font-size: 1.875rem;
    letter-spacing: 0;
    line-height: 1
}

@media screen and (min-width: 1024px) {
    .c-cta-btn__icon {
        font-size:36px;
        font-size: 2.25rem
    }
}

@media screen and (min-width: 1280px) {
    .c-cta-btn__icon {
        font-size:48px;
        font-size: 3rem
    }
}

.c-cta-btn img.c-cta-btn__icon {
    max-width: 1.875rem
}

@media screen and (min-width: 1024px) {
    .c-cta-btn img.c-cta-btn__icon {
        max-width:2.25rem
    }
}

@media screen and (min-width: 1280px) {
    .c-cta-btn img.c-cta-btn__icon {
        max-width:3rem
    }
}

.c-cta-btn__in {
    -webkit-box-flex: 1;
    -ms-flex: 1 0 auto;
    flex: 1 0 auto;
    position: relative;
    text-align: center;
    z-index: 1
}

.c-cta-btn__ttl {
    color: #fff;
    display: block;
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 900;
    line-height: 1;
    text-shadow: 0 0 1rem #ff220b;
    white-space: nowrap
}

@media screen and (min-width: 1024px) {
    .c-cta-btn__ttl {
        font-size:24px;
        font-size: 1.5rem
    }
}

@media screen and (min-width: 1280px) {
    .c-cta-btn__ttl {
        font-size:30px;
        font-size: 1.875rem
    }
}

.c-cta-btn__txt {
    background-color: #fff;
    border-radius: .25rem;
    color: #ff220b;
    display: block;
    font-size: 12px;
    font-size: .75rem;
    font-weight: 900;
    line-height: 1;
    margin-top: .5rem;
    padding: .25rem .5rem
}

@media screen and (min-width: 640px) {
    .c-cta-btn__txt {
        font-size:10px;
        font-size: .625rem
    }
}

@media screen and (min-width: 1024px) {
    .c-cta-btn__txt {
        font-size:12px;
        font-size: .75rem
    }
}

@media screen and (min-width: 1280px) {
    .c-cta-btn__txt {
        font-size:14px;
        font-size: .875rem
    }
}

.c-cta-btn__img {
    bottom: 0;
    height: calc(100% + .25rem);
    position: absolute;
    right: 0;
    width: auto;
    z-index: 0
}

@media screen and (min-width: 1024px) {
    .c-cta-btn {
        -webkit-transition:.3s;
        transition: .3s
    }

    .c-cta-btn:hover {
        opacity: .7
    }
}

@media screen and (min-width: 1024px) {
    .c-cta-btn:hover {
        -webkit-box-shadow:0 0 0 0 #ff220b,0 0 2rem 0 rgba(255,34,11,.2);
        -webkit-transform: translate(.25rem,.25rem);
        box-shadow: 0 0 0 0 #ff220b,0 0 2rem 0 rgba(255,34,11,.2);
        transform: translate(.25rem,.25rem)
    }
}

.c-cta-btn--mail {
    -webkit-box-shadow: .25rem .25rem 0 0 #0aadff,0 0 2rem 0 rgba(255,34,11,.2);
    background-color: #0aadff;
    box-shadow: .25rem .25rem 0 0 #0aadff,0 0 2rem 0 rgba(255,34,11,.2)
}

.c-cta-btn--mail .c-cta-btn__ttl {
    text-shadow: 0 0 1rem #0aadff
}

.c-cta-btn--mail .c-cta-btn__txt {
    color: #0aadff
}

.c-cta-btn--line {
    -webkit-box-shadow: .25rem .25rem 0 0 #06c755,0 0 2rem 0 rgba(255,34,11,.2);
    background-color: #06c755;
    box-shadow: .25rem .25rem 0 0 #06c755,0 0 2rem 0 rgba(255,34,11,.2)
}

.c-cta-btn--line .c-cta-btn__ttl {
    text-shadow: 0 0 1rem #06c755
}

.c-cta-btn--line .c-cta-btn__txt {
    color: #06c755
}

@media screen and (max-width: 639px) {
    .c-cta-btn--sm-compact {
        -webkit-box-pack:center;
        -ms-flex-pack: center;
        gap: .5rem;
        justify-content: center;
        padding: .75rem .5rem
    }
}

@media screen and (max-width: 767px) {
    .c-cta-btn--sm-compact img.c-cta-btn__icon {
        max-width:1.5rem
    }
}

@media screen and (max-width: 639px) {
    .c-cta-btn--sm-compact img.c-cta-btn__icon {
        max-width:1.125rem
    }
}

@media screen and (max-width: 767px) {
    .c-cta-btn--sm-compact .c-cta-btn__icon-wrap {
        height:56px;
        width: 48px
    }
}

@media screen and (max-width: 639px) {
    .c-cta-btn--sm-compact .c-cta-btn__icon-wrap {
        height:auto;
        margin-bottom: -.1rem;
        width: auto
    }
}

@media screen and (max-width: 767px) {
    .c-cta-btn--sm-compact .c-cta-btn__icon {
        font-size:24px;
        font-size: 1.5rem
    }
}

@media screen and (max-width: 639px) {
    .c-cta-btn--sm-compact .c-cta-btn__icon {
        font-size:18px;
        font-size: 1.125rem
    }
}

@media screen and (max-width: 639px) {
    .c-cta-btn--sm-compact .c-cta-btn__in {
        margin-top:-.1rem
    }
}

@media screen and (max-width: 639px) {
    .c-cta-btn--sm-compact .c-cta-btn__ttl {
        font-size:16px;
        font-size: 1rem
    }
}

@media screen and (max-width: 639px) {
    .c-cta-btn--sm-compact .c-cta-btn__txt {
        display:none
    }
}

@media screen and (max-width: 639px) {
    .c-cta-btn--sm-compact .c-cta-btn__img {
        display:none
    }
}

.c-arrow-btn {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-box-shadow: .25rem .25rem 0 0 #fd9700,0 0 2rem 0 rgba(255,34,11,.2);
    -webkit-transition: .3s;
    align-items: center;
    background-color: #fd9700;
    background-image: -webkit-gradient(linear,left top,left bottom,color-stop(50%,transparent),color-stop(50%,rgba(0,0,0,.1)));
    background-image: linear-gradient(to bottom,transparent 50%,rgba(0,0,0,.1) 50%);
    border: .25rem #fff solid;
    border-radius: .5rem;
    box-shadow: .25rem .25rem 0 0 #fd9700,0 0 2rem 0 rgba(255,34,11,.2);
    cursor: pointer;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    justify-content: center;
    max-width: 16rem;
    padding: 1.25rem 2.75rem;
    position: relative;
    text-decoration: none;
    transition: .3s;
    width: 100%
}

@media screen and (min-width: 1024px) {
    .c-arrow-btn {
        max-width:25rem;
        padding: 1.75rem 3.75rem
    }
}

.c-arrow-btn:after {
    -webkit-transform: translateY(-50%);
    color: #fff;
    content: "";
    font-family: "Font Awesome 5 Free";
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 900;
    letter-spacing: 0;
    position: absolute;
    right: 1rem;
    top: 50%;
    transform: translateY(-50%)
}

@media screen and (min-width: 1024px) {
    .c-arrow-btn:after {
        font-size:24px;
        font-size: 1.5rem;
        right: 1.25rem
    }
}

@media screen and (min-width: 1024px) {
    .c-arrow-btn {
        -webkit-transition:.3s;
        transition: .3s
    }

    .c-arrow-btn:hover {
        opacity: .7
    }
}

@media screen and (min-width: 1024px) {
    .c-arrow-btn:hover {
        -webkit-box-shadow:0 0 0 0 #fd9700,0 0 2rem 0 rgba(255,34,11,.2);
        -webkit-transform: translate(4px,4px);
        box-shadow: 0 0 0 0 #fd9700,0 0 2rem 0 rgba(255,34,11,.2);
        transform: translate(4px,4px)
    }
}

.c-arrow-btn__icon {
    -webkit-transform: translateY(-50%);
    color: #fff;
    font-size: 18px;
    font-size: 1.125rem;
    left: 1rem;
    letter-spacing: 0;
    position: absolute;
    top: 50%;
    transform: translateY(-50%)
}

@media screen and (min-width: 1024px) {
    .c-arrow-btn__icon {
        font-size:24px;
        font-size: 1.5rem;
        left: 1.25rem
    }
}

.c-arrow-btn__txt {
    color: #fff;
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 900;
    line-height: 1
}

@media screen and (min-width: 1024px) {
    .c-arrow-btn__txt {
        font-size:24px;
        font-size: 1.5rem
    }
}

.c-arrow-btn__sm-txt {
    font-size: 80%
}

@media screen and (min-width: 1024px) {
    .c-arrow-btn--sm {
        max-width:21rem;
        padding: 1.25rem 3rem
    }
}

@media screen and (min-width: 1024px) {
    .c-arrow-btn--sm:after {
        font-size:18px;
        font-size: 1.125rem;
        right: 1rem
    }
}

@media screen and (min-width: 1024px) {
    .c-arrow-btn--sm .c-arrow-btn__icon {
        font-size:18px;
        font-size: 1.125rem;
        left: 1rem
    }
}

@media screen and (min-width: 1024px) {
    .c-arrow-btn--sm .c-arrow-btn__txt {
        font-size:18px;
        font-size: 1.125rem
    }
}

.c-arrow-btn--back:after {
    content: "";
    left: 1rem;
    right: auto
}

@media screen and (min-width: 1024px) {
    .c-arrow-btn--back:after {
        left:1.25rem
    }
}

@media screen and (min-width: 1024px) {
    .c-arrow-btn--back.c-arrow-btn--sm:after {
        left:1rem
    }
}

.c-sns-btn {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-box-shadow: .25rem .25rem 0 0 #fff,0 0 2rem 0 rgba(255,34,11,.2);
    -webkit-transition: .3s;
    align-items: center;
    background-color: #fff;
    background-image: linear-gradient(135deg,transparent 50%,rgba(0,0,0,.05) 50%);
    border: .25rem #1877f2 solid;
    border-radius: .5rem;
    box-shadow: .25rem .25rem 0 0 #fff,0 0 2rem 0 rgba(255,34,11,.2);
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    justify-content: center;
    max-width: 16rem;
    padding: 1.25rem 2.75rem;
    position: relative;
    text-decoration: none;
    transition: .3s;
    width: 100%
}

@media screen and (min-width: 1024px) {
    .c-sns-btn {
        max-width:25rem;
        padding: 1.75rem 3.75rem
    }
}

.c-sns-btn:after {
    -webkit-transform: translateY(-50%);
    color: #1877f2;
    content: "";
    font-family: "Font Awesome 5 Free";
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 900;
    position: absolute;
    right: 1rem;
    top: 50%;
    transform: translateY(-50%)
}

@media screen and (min-width: 1024px) {
    .c-sns-btn:after {
        font-size:24px;
        font-size: 1.5rem;
        right: 1.25rem
    }
}

@media screen and (min-width: 1024px) {
    .c-sns-btn {
        -webkit-transition:.3s;
        transition: .3s
    }

    .c-sns-btn:hover {
        opacity: .7
    }
}

@media screen and (min-width: 1024px) {
    .c-sns-btn:hover {
        -webkit-box-shadow:0 0 0 0 #fff,0 0 2rem 0 rgba(255,34,11,.2);
        -webkit-transform: translate(4px,4px);
        box-shadow: 0 0 0 0 #fff,0 0 2rem 0 rgba(255,34,11,.2);
        transform: translate(4px,4px)
    }
}

.c-sns-btn__icon {
    -webkit-transform: translateY(-50%) scale(.8);
    left: 1rem;
    position: absolute;
    top: 50%;
    transform: translateY(-50%) scale(.8)
}

@media screen and (min-width: 1024px) {
    .c-sns-btn__icon {
        -webkit-transform:translateY(-50%);
        left: 1.25rem;
        transform: translateY(-50%)
    }
}

.c-sns-btn__txt {
    color: #1877f2;
    font-family: "Raleway",sans-serif;
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 900;
    letter-spacing: .1em;
    line-height: 1
}

@media screen and (min-width: 1024px) {
    .c-sns-btn__txt {
        font-size:24px;
        font-size: 1.5rem
    }
}

.c-sns-btn--line {
    border-color: #06c755
}

.c-sns-btn--line:after {
    color: #06c755
}

.c-sns-btn--line .c-sns-btn__txt {
    color: #06c755
}

.c-sns-btn--instagram {
    border-color: #cf2e92
}

.c-sns-btn--instagram:after {
    color: #cf2e92
}

.c-sns-btn--instagram .c-sns-btn__txt {
    color: #cf2e92
}

.c-sns-btn--youtube {
    border-color: #da1725
}

.c-sns-btn--youtube:after {
    color: #da1725
}

.c-sns-btn--youtube .c-sns-btn__txt {
    color: #da1725
}

.c-arrow-icon-btn {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-box-shadow: 0 0 1rem 0 rgba(255,34,11,.2);
    -webkit-transition: .3s;
    align-items: center;
    background-color: #ff220b;
    border-radius: .5rem;
    box-shadow: 0 0 1rem 0 rgba(255,34,11,.2);
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    height: 2.5rem;
    justify-content: center;
    line-height: 1;
    padding-left: .1rem;
    text-decoration: none;
    transition: .3s;
    width: 2.5rem
}

.c-arrow-icon-btn:before {
    color: #fff;
    content: "";
    font-family: "Font Awesome 5 Free";
    font-size: 14px;
    font-size: .875rem;
    font-weight: 900
}

@media screen and (min-width: 1024px) {
    .c-arrow-icon-btn:hover {
        -webkit-transition:.3s;
        background-color: #ff220b;
        transition: .3s
    }

    .c-arrow-icon-btn:hover:hover {
        opacity: .7
    }
}

.c-arrow-icon-btn--back:before {
    content: ""
}

.c-category {
    background-color: #562e00;
    border-radius: .25rem;
    color: #fff;
    display: inline-block;
    font-size: 12px;
    font-size: .75rem;
    font-weight: 900;
    line-height: 1;
    padding: .5rem 1rem;
    text-align: center;
    text-decoration: none
}

@media screen and (min-width: 1024px) {
    .c-category {
        font-size:14px;
        font-size: .875rem
    }
}

.c-category:hover {
    color: #fff
}

.c-category.news {
    background-color: #ff220b
}

.c-category.staff-blog {
    background-color: #fd9700
}

.c-checkbox {
    display: -ms-grid;
    display: grid;
    gap: .75rem
}

@media screen and (min-width: 640px) {
    .c-checkbox {
        -ms-grid-columns:(1fr)[2];
        grid-template-columns: repeat(2,1fr)
    }
}

@media screen and (min-width: 1024px) {
    .c-checkbox {
        gap:1rem
    }
}

.c-checkbox .mwform-checkbox-field.horizontal-item {
    display: block
}

.c-checkbox .mwform-checkbox-field.horizontal-item label {
    -webkit-box-shadow: 0 0 1rem 0 rgba(255,34,11,.1);
    background-color: #fff;
    border: 2px solid #fd9700;
    border-radius: .25rem;
    box-shadow: 0 0 1rem 0 rgba(255,34,11,.1);
    display: block;
    padding: .5rem .75rem
}

@media screen and (min-width: 1024px) {
    .c-checkbox .mwform-checkbox-field.horizontal-item label {
        -webkit-transition:.3s;
        padding: .5rem 1rem;
        transition: .3s
    }

    .c-checkbox .mwform-checkbox-field.horizontal-item label:hover {
        opacity: .7
    }
}

.c-checkbox .mwform-checkbox-field.horizontal-item input {
    display: none
}

.c-checkbox .mwform-checkbox-field.horizontal-item input:checked+.mwform-checkbox-field-text:after {
    opacity: 1
}

.c-checkbox .mwform-checkbox-field.horizontal-item .mwform-checkbox-field-text {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    color: #555;
    cursor: pointer;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-size: 14px;
    font-size: .875rem;
    position: relative
}

@media screen and (min-width: 1024px) {
    .c-checkbox .mwform-checkbox-field.horizontal-item .mwform-checkbox-field-text {
        font-size:16px;
        font-size: 1rem
    }
}

.c-checkbox .mwform-checkbox-field.horizontal-item .mwform-checkbox-field-text:before {
    -webkit-transition: .3s;
    background-color: #fafafa;
    border: 1px solid #eaeaea;
    border-radius: .25rem;
    content: "";
    display: block;
    height: 1.75rem;
    margin-right: .5rem;
    transition: .3s;
    width: 1.75rem
}

@media screen and (min-width: 1024px) {
    .c-checkbox .mwform-checkbox-field.horizontal-item .mwform-checkbox-field-text:before {
        height:2rem;
        margin-right: 1rem;
        width: 2rem
    }
}

.c-checkbox .mwform-checkbox-field.horizontal-item .mwform-checkbox-field-text:after {
    -webkit-transition: opacity .3s;
    color: #fd9700;
    content: "";
    font-family: "Font Awesome 5 Free";
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 900;
    left: .3rem;
    line-height: 1;
    opacity: 0;
    position: absolute;
    top: .35rem;
    transition: opacity .3s
}

@media screen and (min-width: 1024px) {
    .c-checkbox .mwform-checkbox-field.horizontal-item .mwform-checkbox-field-text:after {
        font-size:24px;
        font-size: 1.5rem;
        left: .25rem;
        top: .3rem
    }
}

.c-copyright {
    color: #562e00;
    font-family: "Raleway",sans-serif;
    font-weight: 900
}

.c-copyright__link {
    color: #562e00;
    text-decoration: none
}

@media screen and (min-width: 1024px) {
    .c-copyright__link {
        -webkit-transition:.3s;
        transition: .3s
    }

    .c-copyright__link:hover {
        opacity: .7
    }
}

.c-gmap {
    background-color: #fff;
    padding-top: 56.25%;
    position: relative;
    width: 100%
}

@media screen and (min-width: 1024px) {
    .c-gmap {
        -webkit-transition:.3s;
        padding-top: 30.22%;
        transition: .3s
    }

    .c-gmap:hover {
        opacity: .7
    }
}

.c-gmap iframe,.c-gmap__link {
    height: 100% !important;
    left: 0;
    position: absolute;
    top: 0;
    width: 100% !important
}

.c-inline-block-img {
    display: inline-block;
    vertical-align: bottom
}

.c-shadow-img {
    -webkit-filter: drop-shadow(0 0 2rem rgba(255,34,11,.2));
    -webkit-transform: translateZ(0);
    filter: drop-shadow(0 0 2rem rgba(255,34,11,.2));
    transform: translateZ(0)
}

.c-navbar__list {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: center;
    list-style: none;
    margin: 0;
    padding: 0
}

.c-navbar__link {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-direction: column;
    padding: 2rem 1rem;
    position: relative;
    text-align: center;
    text-decoration: none
}

@media screen and (min-width: 1280px) {
    .c-navbar__link {
        padding:2rem 1.25rem
    }
}

.c-navbar__link:after {
    -webkit-transform: scale(0,1);
    -webkit-transform-origin: right top;
    -webkit-transition: -webkit-transform .5s cubic-bezier(.86,0,.07,1);
    background: -webkit-gradient(linear,left top,right top,from(#fd9700),to(#ff220b));
    background: linear-gradient(to right,#fd9700 0%,#ff220b 100%);
    content: "";
    display: block;
    height: .5rem;
    left: 0;
    position: absolute;
    top: 0;
    transform: scale(0,1);
    transform-origin: right top;
    transition: -webkit-transform .5s cubic-bezier(.86,0,.07,1);
    transition: transform .5s cubic-bezier(.86,0,.07,1);
    transition: transform .5s cubic-bezier(.86,0,.07,1),-webkit-transform .5s cubic-bezier(.86,0,.07,1);
    width: 100%
}

@media screen and (min-width: 1024px) {
    .c-navbar__link {
        -webkit-transition:.3s;
        transition: .3s
    }

    .c-navbar__link:hover {
        opacity: .7
    }
}

@media screen and (min-width: 1024px) {
    .c-navbar__link:hover:after {
        -webkit-transform:scale(1,1);
        -webkit-transform-origin: left top;
        transform: scale(1,1);
        transform-origin: left top
    }
}

.c-navbar__link.is-current:after {
    -webkit-transform: scale(1,1);
    -webkit-transform-origin: left top;
    transform: scale(1,1);
    transform-origin: left top
}

.c-navbar__icon,.c-navbar__ja-txt,.c-navbar__en-txt {
    line-height: 1
}

.c-navbar__icon {
    color: #fd9700;
    font-size: 16px;
    /* font-size: 1rem; */
    margin-bottom: .5rem
}

@media screen and (min-width: 1280px) {
    .c-navbar__icon {
        font-size:18px;
        /* font-size: 1.125rem; */
    }
}

.c-navbar__ja-txt {
    color: #562e00;
    font-size: 16px;
    /* font-size: 1rem; */
    font-weight: 900;
    white-space: nowrap
}

@media screen and (min-width: 1280px) {
    .c-navbar__ja-txt {
        font-size:18px;
        /* font-size: 1.125rem; */
    }
}

.c-navbar__en-txt {
    color: #fd9700;
    font-family: "Raleway",sans-serif;
    font-size: 10px;
    /* font-size: .625rem; */
    font-weight: 900;
    margin-top: .75rem
}

@media screen and (min-width: 1280px) {
    .c-navbar__en-txt {
        font-size:12px;
        /* font-size: .75rem; */
    }
}

.c-tiled-nav__list {
    -ms-grid-columns: (1fr)[2];
    display: -ms-grid;
    display: grid;
    grid-template-columns: repeat(2,1fr);
    list-style: none;
    margin: 0;
    padding: 0
}

@media screen and (min-width: 768px) {
    .c-tiled-nav__list {
        -ms-grid-columns:(1fr)[3];
        grid-template-columns: repeat(3,1fr)
    }
}

@media screen and (min-width: 1024px) {
    .c-tiled-nav__list {
        -ms-grid-columns:(1fr)[4];
        grid-template-columns: repeat(4,1fr)
    }
}

.c-tiled-nav__link {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-direction: column;
    padding: 1.25rem 1rem;
    position: relative;
    text-align: center;
    text-decoration: none
}

@media screen and (min-width: 1024px) {
    .c-tiled-nav__link {
        padding:2rem 1.25rem
    }
}

.c-tiled-nav__link:after {
    -webkit-transform: scale(0,1);
    -webkit-transform-origin: right top;
    -webkit-transition: -webkit-transform .5s cubic-bezier(.86,0,.07,1);
    background: -webkit-gradient(linear,left top,right top,from(#fd9700),to(#ff220b));
    background: linear-gradient(to right,#fd9700 0%,#ff220b 100%);
    content: "";
    display: block;
    height: .5rem;
    left: 0;
    position: absolute;
    transform: scale(0,1);
    transform-origin: right top;
    transition: -webkit-transform .5s cubic-bezier(.86,0,.07,1);
    transition: transform .5s cubic-bezier(.86,0,.07,1);
    transition: transform .5s cubic-bezier(.86,0,.07,1),-webkit-transform .5s cubic-bezier(.86,0,.07,1);
    width: 100%
}

.c-tiled-nav__link:after {
    bottom: 0
}

@media screen and (min-width: 1024px) {
    .c-tiled-nav__link {
        -webkit-transition:.3s;
        transition: .3s
    }

    .c-tiled-nav__link:hover {
        opacity: .7
    }
}

@media screen and (min-width: 1024px) {
    .c-tiled-nav__link:hover:after {
        -webkit-transform:scale(1,1);
        -webkit-transform-origin: left top;
        transform: scale(1,1);
        transform-origin: left top
    }
}

.c-tiled-nav__link.is-current:after {
    -webkit-transform: scale(1,1);
    -webkit-transform-origin: left top;
    transform: scale(1,1);
    transform-origin: left top
}

.c-tiled-nav__icon {
    color: #fd9700;
    font-size: 16px;
    /* font-size: 1rem; */
    line-height: 1;
    margin-bottom: .5rem
}

@media screen and (min-width: 1024px) {
    .c-tiled-nav__icon {
        font-size:18px;
        /* font-size: 1.125rem; */
    }
}

.c-tiled-nav__ja-txt {
    color: #562e00;
    font-size: 16px;
    /* font-size: 1rem; */
    font-weight: 900;
    line-height: 1.25
}

@media screen and (min-width: 640px) {
    .c-tiled-nav__ja-txt {
        line-height:1
    }
}

@media screen and (min-width: 1024px) {
    .c-tiled-nav__ja-txt {
        font-size:18px;
        /* font-size: 1.125rem; */
    }
}

.c-tiled-nav__en-txt {
    color: #fd9700;
    font-family: "Raleway",sans-serif;
    font-size: 10px;
    /* font-size: .625rem; */
    font-weight: 900;
    line-height: 1;
    margin-top: .75rem
}

@media screen and (min-width: 1024px) {
    .c-tiled-nav__en-txt {
        font-size:12px;
        /* font-size: .75rem; */
    }
}

.c-footer-navbar__list {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -ms-flex-wrap: wrap;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    gap: 1.5rem;
    justify-content: center;
    list-style: none;
    margin: 0;
    padding: 0;
}

@media screen and (min-width: 1024px) {
    .c-footer-navbar__list {
        gap:2rem
    }
}

@media screen and (min-width: 1280px) {
    .c-footer-navbar__list {
        gap:2.5rem
    }
}

.c-footer-navbar__link {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    color: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-direction: column;
    font-size: 12px;
    /* font-size: .75rem; */
    font-weight: 900;
    line-height: 1;
    position: relative;
    text-decoration: none;
    color: #fff!important;
}

@media screen and (min-width: 1024px) {
    .c-footer-navbar__link {
        -webkit-transition:.3s;
        font-size: 14px;
        /* font-size: .875rem; */
        transition: .3s
    }

    .c-footer-navbar__link:hover {
        opacity: .7
    }
}

.c-footer-navbar__link:hover {
    color: #fff
}

.c-pagination ul {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -ms-flex-wrap: wrap;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    justify-content: center;
    list-style: none;
    margin: 0;
    padding: 0
}

@media screen and (min-width: 640px) {
    .c-pagination ul {
        gap:1.5rem
    }
}

@media screen and (min-width: 1024px) {
    .c-pagination ul {
        gap:2rem
    }
}

.c-pagination ul li {
    -ms-flex-item-align: stretch;
    -ms-grid-row-align: stretch;
    align-self: stretch
}

.c-pagination ul .page-numbers {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 100%;
    justify-content: center;
    text-decoration: none
}

.c-pagination ul .page-numbers:not(.dots) {
    -webkit-box-shadow: 0 0 1rem 0 rgba(255,34,11,.2);
    -webkit-transition: .3s;
    background-color: #fff;
    border: 2px solid #fd9700;
    border-radius: .5rem;
    box-shadow: 0 0 1rem 0 rgba(255,34,11,.2);
    color: #fd9700;
    font-family: "Montserrat",sans-serif;
    font-size: 14px;
    font-size: .875rem;
    font-weight: 700;
    height: 2.5rem;
    letter-spacing: .1em;
    line-height: 1;
    padding-left: .1rem;
    transition: .3s;
    width: 2.5rem
}

@media screen and (min-width: 1024px) {
    .c-pagination ul .page-numbers:not(.dots):hover {
        background-color:#fd9700;
        color: #fff
    }
}

.c-pagination ul .page-numbers:not(.dots).current {
    -webkit-box-shadow: none;
    background-color: #fd9700;
    border-color: #fd9700;
    box-shadow: none;
    color: #fff;
    pointer-events: none
}

.c-pagination ul .page-numbers.dots {
    color: #555;
    font-weight: 900;
    letter-spacing: 0
}

.c-pagination ul .page-numbers.prev,.c-pagination ul .page-numbers.next {
    background-color: #ff220b;
    border: none;
    color: #fff;
    letter-spacing: 0
}

.c-pagination ul .page-numbers.prev:before,.c-pagination ul .page-numbers.next:before {
    font-family: "Font Awesome 5 Free";
    font-size: 14px;
    font-size: .875rem;
    font-weight: 900
}

@media screen and (min-width: 1024px) {
    .c-pagination ul .page-numbers.prev:hover,.c-pagination ul .page-numbers.next:hover {
        -webkit-transition:.3s;
        background-color: #ff220b;
        transition: .3s
    }

    .c-pagination ul .page-numbers.prev:hover:hover,.c-pagination ul .page-numbers.next:hover:hover {
        opacity: .7
    }
}

.c-pagination ul .page-numbers.prev:before {
    content: ""
}

.c-pagination ul .page-numbers.next:before {
    content: ""
}

.c-select {
    position: relative;
    width: 100%
}

@media screen and (min-width: 1024px) {
    .c-select {
        -webkit-transition:.3s;
        transition: .3s
    }

    .c-select:hover {
        opacity: .7
    }
}

.c-select:after {
    color: #fd9700;
    content: "";
    font-family: "Font Awesome 5 Free";
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 900;
    line-height: 1;
    pointer-events: none;
    position: absolute;
    right: 1rem;
    top: .8rem
}

@media screen and (min-width: 1024px) {
    .c-select:after {
        top:.9rem
    }
}

.c-select__input {
    -webkit-box-shadow: 0 0 1rem 0 rgba(255,34,11,.1);
    -webkit-appearance: none;
    -webkit-transition: border-color .3s ease-in-out;
    background-color: #fff;
    border: 2px solid #fd9700;
    border-radius: .25rem;
    box-shadow: 0 0 1rem 0 rgba(255,34,11,.1);
    color: #555;
    cursor: pointer;
    display: block;
    font-size: 16px;
    font-size: 1rem;
    font-weight: 500;
    letter-spacing: .1em;
    margin: 0;
    padding: .5rem .75rem;
    transition: border-color .3s ease-in-out;
    width: 100%
}

@media screen and (min-width: 1024px) {
    .c-select__input {
        padding:.576rem 1rem
    }
}

.c-select__input:focus {
    border-color: #ff220b;
    outline: none
}

.c-select__input:focus:-webkit-autofill {
    -webkit-animation-name: onAutoFillStart;
    -webkit-transition: background-color 50000s ease-in-out 0s;
    animation-name: onAutoFillStart;
    transition: background-color 50000s ease-in-out 0s
}

.c-site-branding {
    display: block
}

@media screen and (min-width: 1024px) {
    .c-site-branding {
        -webkit-transition:.3s;
        transition: .3s
    }

    .c-site-branding:hover {
        opacity: .7
    }
}

.c-site-branding__logo {
    /* max-height: 2.5rem; */
}

@media screen and (min-width: 1280px) {
    .c-site-branding__logo {
        /* max-height: 4rem; */
    }
}

.c-txt-input {
    -webkit-box-shadow: 0 0 1rem 0 rgba(255,34,11,.1);
    -webkit-appearance: none;
    -webkit-transition: border-color .3s ease-in-out;
    background-color: #fff;
    border: 0;
    border: 2px solid #fd9700;
    border-radius: .25rem;
    box-shadow: 0 0 1rem 0 rgba(255,34,11,.1);
    color: #555;
    display: block;
    font-size: 16px;
    font-size: 1rem;
    font-weight: 500;
    letter-spacing: .1em;
    margin: 0;
    padding: .5rem .75rem;
    transition: border-color .3s ease-in-out;
    width: 100%
}

@media screen and (min-width: 1024px) {
    .c-txt-input {
        padding:.576rem 1rem
    }
}

.c-txt-input::-webkit-input-placeholder {
    color: #ccc
}

.c-txt-input::-moz-placeholder {
    color: #ccc
}

.c-txt-input:-ms-input-placeholder {
    color: #ccc
}

.c-txt-input::-ms-input-placeholder {
    color: #ccc
}

.c-txt-input::placeholder {
    color: #ccc
}

.c-txt-input:-ms-input-placeholder {
    color: #ccc
}

.c-txt-input::-ms-input-placeholder {
    color: #ccc
}

.c-txt-input:focus {
    border-color: #ff220b;
    outline: none
}

.c-txt-input:-webkit-autofill {
    -webkit-animation-name: onAutoFillStart;
    -webkit-transition: background-color 50000s ease-in-out 0s;
    animation-name: onAutoFillStart;
    transition: background-color 50000s ease-in-out 0s
}

.c-txt,.p-post-single__body p,.p-post-single__body h1,.p-post-single__body h2,.p-post-single__body h3,.c-copyright {
    font-size: 14px;
    font-size: .875rem
}

.c-txt:before,.p-post-single__body p:before,.p-post-single__body h1:before,.p-post-single__body h2:before,.p-post-single__body h3:before,.c-copyright:before {
    content: "";
    display: block;
    height: 0;
    margin-top: calc((1 - 1.6) * .5em);
    width: 0
}

.c-txt:after,.p-post-single__body p:after,.p-post-single__body h1:after,.p-post-single__body h2:after,.p-post-single__body h3:after,.c-copyright:after {
    content: "";
    display: block;
    height: 0;
    margin-bottom: calc((1 - 1.6) * .5em);
    width: 0
}

@media screen and (min-width: 1024px) {
    .c-txt,.p-post-single__body p,.p-post-single__body h1,.p-post-single__body h2,.p-post-single__body h3,.c-copyright {
        font-size:16px;
        font-size: 1rem
    }
}

.c-copyright {
    font-size: 10px;
    /* font-size: .625rem; */
}

@media screen and (min-width: 1024px) {
    .c-copyright {
        font-size:12px;
        /* font-size: .75rem; */
    }
}

.c-txt--sm {
    font-size: 12px;
    /* font-size: .75rem; */
}

@media screen and (min-width: 1024px) {
    .c-txt--sm {
        font-size:14px;
        /* font-size: .875rem; */
    }
}

.c-txt--lg {
    font-size: 16px;
    font-size: 1rem
}

@media screen and (min-width: 1024px) {
    .c-txt--lg {
        font-size:18px;
        font-size: 1.125rem
    }
}

.c-txt--xl,.p-post-single__body h3 {
    font-size: 18px;
    font-size: 1.125rem
}

@media screen and (min-width: 1024px) {
    .c-txt--xl,.p-post-single__body h3 {
        font-size:24px;
        font-size: 1.5rem
    }
}

.c-txt--2xl,.p-post-single__body h1,.p-post-single__body h2 {
    font-size: 24px;
    font-size: 1.5rem
}

@media screen and (min-width: 1024px) {
    .c-txt--2xl,.p-post-single__body h1,.p-post-single__body h2 {
        font-size:30px;
        font-size: 1.875rem
    }
}

.c-txt--3xl {
    font-size: 27px;
    font-size: 1.6875rem
}

@media screen and (min-width: 1024px) {
    .c-txt--3xl {
        font-size:36px;
        font-size: 2.25rem
    }
}

.c-txt--4xl {
    font-size: 30px;
    font-size: 1.875rem
}

@media screen and (min-width: 1024px) {
    .c-txt--4xl {
        font-size:48px;
        font-size: 3rem
    }
}

.c-txt--5xl {
    font-size: 36px;
    font-size: 2.25rem
}

@media screen and (min-width: 1024px) {
    .c-txt--5xl {
        font-size:60px;
        font-size: 3.75rem
    }
}

.c-txt__numb {
    font-family: "Montserrat",sans-serif
}

.c-txt__sm {
    font-size: 80%
}

.c-txt__lg {
    font-size: 120%
}

.c-txt__link {
    color: #555;
    text-decoration: none
}

@media screen and (min-width: 768px) {
    .c-txt__link {
        -webkit-transition:.3s;
        transition: .3s
    }

    .c-txt__link:hover {
        opacity: .7
    }
}

@media screen and (min-width: 768px) {
    .c-txt__link--tel {
        pointer-events:none
    }
}

.c-txt__primary-accent-marker {
    background: -webkit-gradient(linear,left bottom,left top,color-stop(1rem,#fd9700),color-stop(1rem,rgba(253,151,0,0)));
    background: linear-gradient(to top,#fd9700 1rem,rgba(253,151,0,0) 1rem);
    display: inline
}

.c-txt__primary-accent-marker--xs {
    background: -webkit-gradient(linear,left bottom,left top,color-stop(.5rem,#fd9700),color-stop(.5rem,rgba(253,151,0,0)));
    background: linear-gradient(to top,#fd9700 .5rem,rgba(253,151,0,0) .5rem)
}

.c-txt__primary-accent-marker--sm {
    background: -webkit-gradient(linear,left bottom,left top,color-stop(.75rem,#fd9700),color-stop(.75rem,rgba(253,151,0,0)));
    background: linear-gradient(to top,#fd9700 .75rem,rgba(253,151,0,0) .75rem)
}

.c-txt__secondary-accent-marker {
    background: -webkit-gradient(linear,left bottom,left top,color-stop(1rem,#ff220b),color-stop(1rem,rgba(255,34,11,0)));
    background: linear-gradient(to top,#ff220b 1rem,rgba(255,34,11,0) 1rem);
    display: inline
}

.c-txt__secondary-accent-marker--xs {
    background: -webkit-gradient(linear,left bottom,left top,color-stop(.5rem,#ff220b),color-stop(.5rem,rgba(255,34,11,0)));
    background: linear-gradient(to top,#ff220b .5rem,rgba(255,34,11,0) .5rem)
}

.c-txt__tertiary-accent-marker {
    background: -webkit-gradient(linear,left bottom,left top,color-stop(1rem,#fef203),color-stop(1rem,rgba(254,242,3,0)));
    background: linear-gradient(to top,#fef203 1rem,rgba(254,242,3,0) 1rem);
    display: inline
}

.c-txt__tertiary-accent-marker--xs {
    background: -webkit-gradient(linear,left bottom,left top,color-stop(.5rem,#fef203),color-stop(.5rem,rgba(254,242,3,0)));
    background: linear-gradient(to top,#fef203 .5rem,rgba(254,242,3,0) .5rem)
}

.c-txt__tertiary-accent-marker--sm {
    background: -webkit-gradient(linear,left bottom,left top,color-stop(.75rem,#fef203),color-stop(.75rem,rgba(254,242,3,0)));
    background: linear-gradient(to top,#fef203 .75rem,rgba(254,242,3,0) .75rem)
}

.c-txt__white-marker {
    background: -webkit-gradient(linear,left bottom,left top,color-stop(1rem,#fff),color-stop(1rem,rgba(255,255,255,0)));
    background: linear-gradient(to top,#fff 1rem,rgba(255,255,255,0) 1rem);
    display: inline
}

.c-txt__white-marker--xs {
    background: -webkit-gradient(linear,left bottom,left top,color-stop(.5rem,#fff),color-stop(.5rem,rgba(255,255,255,0)));
    background: linear-gradient(to top,#fff .5rem,rgba(255,255,255,0) .5rem)
}

.c-txtarea {
    -webkit-box-shadow: 0 0 1rem 0 rgba(255,34,11,.1);
    -webkit-appearance: none;
    background-color: #fff;
    border: 2px solid #fd9700;
    border-radius: .25rem;
    box-shadow: 0 0 1rem 0 rgba(255,34,11,.1);
    color: #555;
    display: block;
    font-size: 16px;
    font-size: 1rem;
    font-weight: 500;
    letter-spacing: .1em;
    margin: 0;
    min-height: 8rem;
    padding: .5rem .75rem;
    resize: none;
    width: 100%
}

@media screen and (min-width: 1024px) {
    .c-txtarea {
        min-height:12rem;
        padding: .576rem 1rem
    }
}

.c-txtarea::-webkit-input-placeholder {
    color: #ccc
}

.c-txtarea::-moz-placeholder {
    color: #ccc
}

.c-txtarea:-ms-input-placeholder {
    color: #ccc
}

.c-txtarea::-ms-input-placeholder {
    color: #ccc
}

.c-txtarea::placeholder {
    color: #ccc
}

.c-txtarea:-ms-input-placeholder {
    color: #ccc
}

.c-txtarea::-ms-input-placeholder {
    color: #ccc
}

.c-txtarea:focus {
    border-color: #ff220b;
    outline: none
}

.c-txtarea:-webkit-autofill {
    -webkit-animation-name: onAutoFillStart;
    -webkit-transition: background-color 50000s ease-in-out 0s;
    animation-name: onAutoFillStart;
    transition: background-color 50000s ease-in-out 0s
}

.p-layered-card-area {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-direction: column
}

@media screen and (min-width: 768px) {
    .p-layered-card-area {
        -webkit-box-orient:horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row
    }
}

.p-layered-card-area__figure {
    width: 100%
}

@media screen and (min-width: 768px) {
    .p-layered-card-area__figure {
        width:calc(50% + 1.25rem)
    }
}

.p-layered-card-area__img {
    border-radius: .5rem .5rem 0 0
}

@media screen and (min-width: 768px) {
    .p-layered-card-area__img {
        border-radius:.5rem
    }
}

.p-layered-card-area__desc {
    -webkit-box-shadow: 0 0 2rem 0 rgba(255,34,11,.2);
    background-color: #fff;
    border-radius: 0 0 .5rem .5rem;
    box-shadow: 0 0 2rem 0 rgba(255,34,11,.2);
    padding: 2.5rem 1rem;
    position: relative;
    text-align: center;
    width: 100%
}

@media screen and (min-width: 768px) {
    .p-layered-card-area__desc {
        border-radius:.5rem;
        margin-left: -2.5rem;
        margin-top: 2rem;
        padding: 2.5rem;
        width: calc(50% + 1.25rem)
    }
}

@media screen and (min-width: 1024px) {
    .p-layered-card-area__desc {
        padding:4rem
    }
}

.p-layered-card-area__en-ttl {
    bottom: calc(100% - 0.3rem);
    color: #fff;
    font-family: "Raleway",sans-serif;
    font-size: 24px;
    font-size: 1.5rem;
    font-weight: 900;
    letter-spacing: .1em;
    line-height: 1;
    position: absolute;
    right: .5rem
}

.p-layered-card-area__en-ttl:before {
    content: "";
    display: block;
    height: 0;
    margin-top: calc((1 - 1) * .5em);
    width: 0
}

.p-layered-card-area__en-ttl:after {
    content: "";
    display: block;
    height: 0;
    margin-bottom: calc((1 - 1) * .5em);
    width: 0
}

@media screen and (min-width: 640px) {
    .p-layered-card-area__en-ttl {
        font-size:30px;
        font-size: 1.875rem
    }
}

@media screen and (min-width: 768px) {
    .p-layered-card-area__en-ttl {
        bottom:calc(100% - 0.45rem);
        font-size: 36px;
        font-size: 2.25rem
    }
}

@media screen and (min-width: 1024px) {
    .p-layered-card-area__en-ttl {
        font-size:48px;
        font-size: 3rem
    }
}

.p-layered-card-area__ja-ttl {
    color: #562e00;
    font-weight: 900;
    letter-spacing: .1em
}

@media screen and (max-width: 639px) {
    .p-layered-card-area__ja-ttl {
        font-size:24px;
        font-size: 1.5rem
    }
}

.p-layered-card-area__txt {
    color: #562e00;
    font-weight: 900;
    margin-top: 2rem
}

@media screen and (min-width: 1024px) {
    .p-layered-card-area__txt {
        margin-top:3rem
    }
}

.p-layered-card-area__btn {
    margin-top: 2rem
}

@media screen and (min-width: 1024px) {
    .p-layered-card-area__btn {
        margin-top:3rem
    }
}

.p-layered-card-area--store-info .p-layered-card-area__desc {
    padding: 0
}

.p-layered-card-area--store-info .p-layered-card-area__en-ttl {
    color: #ff220b
}

@media screen and (min-width: 768px) {
    .p-layered-card-area--store-info .p-layered-card-area__en-ttl {
        bottom:calc(100% - 0.45rem)
    }
}

.p-layered-card-area--store-info .p-layered-card-area__head {
    background-color: #ff220b;
    padding: 1.5rem 1rem
}

@media screen and (min-width: 768px) {
    .p-layered-card-area--store-info .p-layered-card-area__head {
        border-radius:.5rem .5rem 0 0;
        padding: 1.5rem
    }
}

@media screen and (min-width: 1024px) {
    .p-layered-card-area--store-info .p-layered-card-area__head {
        padding:2rem
    }
}

.p-layered-card-area--store-info .p-layered-card-area__ja-ttl {
    color: #fff
}

.p-information-area {
    display: -ms-grid;
    display: grid;
    gap: 2rem
}

@media screen and (min-width: 1024px) {
    .p-information-area {
        -ms-grid-columns:calc((100% - 2.5rem * (12 - 1)) / 12 * 4 + 2.5rem * (4 - 1)) calc((100% - 2.5rem * (12 - 1)) / 12 * 8 + 2.5rem * (8 - 1));
        gap: 2.5rem;
        grid-template-columns: calc((100% - 2.5rem * (12 - 1)) / 12 * 4 + 2.5rem * (4 - 1)) calc((100% - 2.5rem * (12 - 1)) / 12 * 8 + 2.5rem * (8 - 1))
    }
}

.p-cta-btn-area {
    display: -ms-grid;
    display: grid;
    gap: 2rem
}

@media screen and (min-width: 768px) {
    .p-cta-btn-area {
        -ms-grid-columns:(1fr)[3];
        gap: 1rem;
        grid-template-columns: repeat(3,1fr)
    }
}

@media screen and (min-width: 1024px) {
    .p-cta-btn-area {
        gap:2.5rem
    }
}

.p-cta-btn-area__col {
    text-align: center
}

.p-cta-btn-area__btn {
    margin-top: 1rem
}

@media screen and (min-width: 1024px) {
    .p-cta-btn-area__btn {
        margin-top:1.5rem
    }
}

@media screen and (min-width: 1280px) {
    .p-cta-btn-area__btn {
        margin-top:2rem
    }
}

.p-post-card-area {
    display: -ms-grid;
    display: grid;
    gap: 2rem 1rem
}

@media screen and (min-width: 640px) {
    .p-post-card-area {
        -ms-grid-columns:(1fr)[2];
        gap: 2.5rem 2rem;
        grid-template-columns: repeat(2,1fr)
    }
}

@media screen and (min-width: 1024px) {
    .p-post-card-area {
        -ms-grid-columns:(1fr)[3];
        gap: 4rem 2.5rem;
        grid-template-columns: repeat(3,1fr)
    }
}

.p-pagination-area {
    background-color: #fffeed;
    padding: 2.5rem 0 4rem
}

@media screen and (min-width: 1024px) {
    .p-pagination-area {
        padding:4rem 0 6rem
    }
}

.p-pagination-area:not(:has(.page-numbers)):not(:has(.p-post-pagination)) {
    display: none
}

.p-staff-area {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-box-align: start;
    -ms-flex-align: start;
    -ms-flex-wrap: wrap;
    align-items: flex-start;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    gap: 2rem;
    justify-content: center;
    margin-left: auto;
    margin-right: auto;
    max-width: 950px
}

@media screen and (min-width: 640px) {
    .p-staff-area {
        gap:0 2rem
    }
}

@media screen and (min-width: 1024px) {
    .p-staff-area {
        gap:2rem
    }
}

@media screen and (min-width: 1280px) {
    .p-staff-area {
        gap:2.5rem
    }
}

@media screen and (min-width: 640px) {
    .p-staff-area>* {
        width:calc((100% - 2.5rem * (12 - 1)) / 12 * 6 + 2.5rem * (6 - 1))
    }
}

@media screen and (min-width: 768px) {
    .p-staff-area>* {
        width:calc((100% - 2.5rem * (12 - 1)) / 12 * 5 + 2.5rem * (5 - 1))
    }
}

@media screen and (min-width: 1024px) {
    .p-staff-area>* {
        width:calc((100% - 2.5rem * (12 - 1)) / 12 * 4 + 2.5rem * (4 - 1))
    }
}

@media screen and (min-width: 640px) {
    .p-staff-area>*:nth-of-type(even) {
        margin-top:2rem
    }
}

@media screen and (min-width: 1024px) {
    .p-staff-area>*:nth-of-type(4) {
        margin-top:0
    }
}

@media screen and (min-width: 640px) {
    .p-staff-area>*:nth-of-type(5) {
        margin-top:2rem
    }
}

@media screen and (min-width: 1024px) {
    .p-staff-area>*:nth-of-type(5) {
        margin-top:2rem
    }
}

.p-horizon-img-area {
    -webkit-filter: drop-shadow(0 0 2rem rgba(255,34,11,.2));
    -webkit-transform: translateZ(0);
    display: -ms-grid;
    display: grid;
    filter: drop-shadow(0 0 2rem rgba(255,34,11,.2));
    transform: translateZ(0)
}

@media screen and (min-width: 640px) {
    .p-horizon-img-area {
        -ms-grid-columns:(1fr)[2];
        grid-template-columns: repeat(2,1fr)
    }
}

.p-horizon-img-area__img {
    width: 100%
}

.p-flyer-box {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background-color: #fff;
    border-radius: .5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    justify-content: center;
    padding: 3rem 1rem;
    position: relative
}

@media screen and (min-width: 768px) {
    .p-flyer-box {
        padding:3rem 1.5rem
    }
}

@media screen and (min-width: 1024px) {
    .p-flyer-box {
        gap:2rem;
        padding: 4.5rem 2rem
    }
}

.p-flyer-box:before {
    -webkit-filter: drop-shadow(0 0 2rem rgba(255,34,11,.2));
    -webkit-transform: translateZ(0);
    aspect-ratio: 322/239;
    background: url(//kei59.com/wp/wp-content/themes/kei59/assets/css/../images/top/img_flyer_staff01.png) no-repeat center bottom/contain;
    bottom: 100%;
    content: "";
    display: block;
    filter: drop-shadow(0 0 2rem rgba(255,34,11,.2));
    height: 4rem;
    left: 1rem;
    position: absolute;
    transform: translateZ(0);
    z-index: -1
}

@media screen and (min-width: 640px) {
    .p-flyer-box:before {
        height:7rem
    }
}

@media screen and (min-width: 768px) {
    .p-flyer-box:before {
        height:9rem
    }
}

@media screen and (min-width: 1024px) {
    .p-flyer-box:before {
        height:12rem;
        left: 2rem
    }
}

@media screen and (min-width: 1280px) {
    .p-flyer-box:before {
        height:239px
    }
}

.p-flyer-box:after {
    bottom: calc(100% - 0.3rem);
    color: #fff;
    content: "NEW FLYER";
    font-family: "Raleway",sans-serif;
    font-size: 24px;
    font-size: 1.5rem;
    font-weight: 900;
    letter-spacing: .1em;
    line-height: 1;
    position: absolute;
    right: .5rem
}

.p-flyer-box::after:before {
    content: "";
    display: block;
    height: 0;
    margin-top: calc((1 - 1) * .5em);
    width: 0
}

.p-flyer-box::after:after {
    content: "";
    display: block;
    height: 0;
    margin-bottom: calc((1 - 1) * .5em);
    width: 0
}

@media screen and (min-width: 640px) {
    .p-flyer-box:after {
        font-size:30px;
        font-size: 1.875rem
    }
}

@media screen and (min-width: 768px) {
    .p-flyer-box:after {
        bottom:calc(100% - 0.4rem);
        font-size: 36px;
        font-size: 2.25rem
    }
}

@media screen and (min-width: 1024px) {
    .p-flyer-box:after {
        bottom:calc(100% - 0.5rem);
        font-size: 48px;
        font-size: 3rem
    }
}

.p-flyer-box__link {
    display: block;
    max-width: 840px
}

@media screen and (min-width: 1024px) {
    .p-flyer-box__link {
        -webkit-transition:.3s;
        transition: .3s
    }

    .p-flyer-box__link:hover {
        opacity: .7
    }
}

.p-information-box {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    border: 1px solid #ff220b;
    border-radius: .5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-direction: column
}

.p-information-box__head {
    background-color: #ff220b;
    border-radius: .5rem .5rem 0 0;
    padding: 1.5rem 1rem
}

@media screen and (min-width: 768px) {
    .p-information-box__head {
        padding:1.5rem
    }
}

@media screen and (min-width: 1024px) {
    .p-information-box__head {
        padding:2rem
    }
}

.p-information-box__body {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    background-color: #fff;
    border-radius: 0 0 .5rem .5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    padding: 2rem 0
}

@media screen and (min-width: 1024px) {
    .p-information-box__body {
        padding:3rem 0
    }
}

.p-information-box__news-list {
    margin-bottom: auto;
    padding: 0 1rem
}

@media screen and (min-width: 768px) {
    .p-information-box__news-list {
        padding:0 1.5rem
    }
}

@media screen and (min-width: 1024px) {
    .p-information-box__news-list {
        height:321px;
        overflow-y: scroll;
        padding: 0 2rem
    }
}

.p-information-box__blog-list {
    display: -ms-grid;
    display: grid;
    gap: 2rem;
    margin-bottom: auto;
    padding: 0 1rem
}

@media screen and (min-width: 768px) {
    .p-information-box__blog-list {
        -ms-grid-columns:(1fr)[2];
        grid-template-columns: repeat(2,1fr);
        padding: 0 1.5rem
    }
}

@media screen and (min-width: 1024px) {
    .p-information-box__blog-list {
        padding:0 2rem
    }
}

.p-information-box__btn-wrap {
    margin-top: 2rem;
    padding: 0 1rem;
    text-align: center
}

@media screen and (min-width: 768px) {
    .p-information-box__btn-wrap {
        padding:0 1.5rem
    }
}

@media screen and (min-width: 1024px) {
    .p-information-box__btn-wrap {
        margin-top:3rem;
        padding: 0 2rem
    }
}

.p-information-box--staff-blog {
    border-color: #fd9700
}

.p-information-box--staff-blog .p-information-box__head {
    background-color: #fd9700
}

.p-sns-btn-box {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -ms-flex-wrap: wrap;
    -webkit-box-shadow: 0 0 2rem 0 rgba(255,34,11,.2);
    align-items: center;
    background-color: #fff;
    border-radius: .5rem;
    box-shadow: 0 0 2rem 0 rgba(255,34,11,.2);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    gap: 2rem;
    justify-content: center;
    padding: 2.5rem 1rem;
    position: relative
}

@media screen and (min-width: 768px) {
    .p-sns-btn-box {
        padding:2.5rem 1.5rem
    }
}

@media screen and (min-width: 1024px) {
    .p-sns-btn-box {
        gap:2.5rem;
        padding: 4rem 2rem
    }
}

.p-sns-btn-box:before {
    -webkit-filter: drop-shadow(0 0 2rem rgba(255,34,11,.2));
    -webkit-transform: translateZ(0);
    aspect-ratio: 290/248;
    background: url(//kei59.com/wp/wp-content/themes/kei59/assets/css/../images/top/img_sns_staff01.png) no-repeat center bottom/contain;
    bottom: 100%;
    content: "";
    display: block;
    filter: drop-shadow(0 0 2rem rgba(255,34,11,.2));
    height: 4rem;
    left: 1rem;
    position: absolute;
    transform: translateZ(0);
    z-index: -1
}

@media screen and (min-width: 640px) {
    .p-sns-btn-box:before {
        height:6rem
    }
}

@media screen and (min-width: 768px) {
    .p-sns-btn-box:before {
        height:9rem
    }
}

@media screen and (min-width: 1024px) {
    .p-sns-btn-box:before {
        height:11rem;
        left: 2rem
    }
}

@media screen and (min-width: 1280px) {
    .p-sns-btn-box:before {
        height:248px
    }
}

.p-slant-box {
    -webkit-box-shadow: 0 0 2rem 0 rgba(255,34,11,.2);
    background-color: #fff;
    background-image: linear-gradient(135deg,#fef203 1.25rem,#fff 1.25rem,#fff calc(100% - 1.25rem), #fef203 calc(100% - 1.25rem));
    border: .25rem solid #fef203;
    border-radius: .5rem;
    box-shadow: 0 0 2rem 0 rgba(255,34,11,.2);
    display: block;
    margin: 0 auto;
    max-width: 52.5rem;
    padding: 2.5rem 1rem;
    text-align: center
}

@media screen and (min-width: 768px) {
    .p-slant-box {
        padding:2.5rem 1.5rem
    }
}

@media screen and (min-width: 1024px) {
    .p-slant-box {
        padding:4rem 2rem
    }
}

.p-breadcrumbs {
    background-color: #fff;
    padding: 1rem 0
}

@media screen and (min-width: 1024px) {
    .p-breadcrumbs {
        padding:2rem 0
    }
}

.p-breadcrumbs--bg-primary-gray {
    background-color: #fffeed
}

.p-post-card__link {
    display: block;
    text-decoration: none
}

@media screen and (min-width: 1024px) {
    .p-post-card__link {
        -webkit-transition:.3s;
        transition: .3s
    }

    .p-post-card__link:hover {
        opacity: .7
    }
}

.p-post-card__figure {
    -webkit-filter: drop-shadow(0 0 1rem rgba(255,34,11,.1));
    -webkit-transform: translateZ(0);
    filter: drop-shadow(0 0 1rem rgba(255,34,11,.1));
    transform: translateZ(0)
}

.p-post-card__img {
    border-radius: .5rem;
    height: auto
}

.p-post-card__meta {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-box-align: end;
    -ms-flex-align: end;
    -ms-flex-wrap: wrap;
    align-items: flex-end;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    justify-content: space-between;
    margin-top: 1.25rem
}

@media screen and (min-width: 640px) {
    .p-post-card__meta {
        margin-top:1.5rem
    }
}

@media screen and (min-width: 1024px) {
    .p-post-card__meta {
        margin-top:2rem
    }
}

.p-post-card__date {
    color: #fd9700;
    font-family: "Montserrat",sans-serif;
    font-weight: 700
}

.p-post-card__ttl {
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    color: #562e00;
    display: -webkit-box;
    font-weight: 900;
    margin-top: 1rem;
    overflow: hidden
}

@media screen and (min-width: 1024px) {
    .p-post-card__ttl {
        margin-top:1.5rem
    }
}

.p-post-card--sm .p-post-card__figure {
    -webkit-filter: none;
    filter: none
}

.p-post-card--sm .p-post-card__img {
    border-radius: 0
}

.p-post-card--sm .p-post-card__meta {
    margin-top: 1rem
}

@media screen and (min-width: 1024px) {
    .p-post-card--sm .p-post-card__meta {
        margin-top:1.5rem
    }
}

.p-post-card--sm .p-post-card__ttl {
    margin-top: .5rem
}

@media screen and (min-width: 1024px) {
    .p-post-card--sm .p-post-card__ttl {
        margin-top:.75rem
    }
}

::-webkit-full-page-media,:root .p-post-card__ttl:before,:root .p-post-card__ttl:after {
    content: none
}

.p-icon-card {
    -webkit-box-shadow: 0 0 2rem 0 rgba(255,34,11,.2);
    background-color: #fff;
    border-radius: .5rem;
    box-shadow: 0 0 2rem 0 rgba(255,34,11,.2);
    width: 100%
}

@media screen and (min-width: 768px) {
    .p-icon-card {
        max-width:510px
    }
}

.p-icon-card__head {
    background-color: #ff220b;
    border-radius: .5rem .5rem 0 0;
    padding: 1.5rem 1rem;
    position: relative
}

@media screen and (min-width: 768px) {
    .p-icon-card__head {
        padding:1.5rem
    }
}

@media screen and (min-width: 1024px) {
    .p-icon-card__head {
        padding:2rem
    }
}

.p-icon-card__icon {
    bottom: calc(100% - 1rem);
    display: block;
    left: 1.5rem;
    position: absolute
}

.p-icon-card__ttl {
    color: #fff;
    font-weight: 900;
    text-align: center
}

.p-icon-card__body {
    padding: 1.5rem 1rem
}

@media screen and (min-width: 768px) {
    .p-icon-card__body {
        padding:1.5rem
    }
}

@media screen and (min-width: 1024px) {
    .p-icon-card__body {
        padding:2rem
    }
}

@media screen and (min-width: 640px) {
    .p-icon-card__txt {
        text-align:center
    }
}

@media screen and (max-width: 639px) {
    .p-icon-card:nth-of-type(even) .p-icon-card__icon {
        left:auto;
        right: 1.5rem
    }
}

.p-staff-card {
    -webkit-box-shadow: 0 0 2rem 0 rgba(255,34,11,.2);
    background-color: #fff;
    border-radius: .5rem;
    box-shadow: 0 0 2rem 0 rgba(255,34,11,.2)
}

.p-staff-card__head {
    background-color: #ff220b;
    border-radius: .5rem .5rem 0 0;
    padding: 1rem;
    text-align: center
}

@media screen and (min-width: 768px) {
    .p-staff-card__head {
        padding:1rem 1.5rem
    }
}

@media screen and (min-width: 1024px) {
    .p-staff-card__head {
        padding:1.5rem
    }
}

@media screen and (min-width: 1280px) {
    .p-staff-card__head {
        padding:1.5rem 2rem
    }
}

.p-staff-card__ttl {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-direction: column;
    gap: .75rem
}

@media screen and (min-width: 1024px) {
    .p-staff-card__ttl {
        gap:1rem
    }
}

.p-staff-card__type-wrap {
    background-color: #fd9700;
    border-radius: .25rem;
    display: inline-block;
    padding: .25rem 1.5rem;
    text-align: center
}

@media screen and (min-width: 1024px) {
    .p-staff-card__type-wrap {
        padding:.5rem 2rem
    }
}

.p-staff-card__type {
    color: #fff;
    display: block;
    font-weight: 900
}

.p-staff-card__name {
    color: #fff;
    font-weight: 900;
    white-space: nowrap
}

.p-staff-card__img {
    width: 100%
}

.p-staff-card__body {
    padding: 1.5rem 1rem
}

@media screen and (min-width: 768px) {
    .p-staff-card__body {
        padding:1.5rem
    }
}

@media screen and (min-width: 1280px) {
    .p-staff-card__body {
        padding:2rem
    }
}

.p-cta-nav {
    -webkit-box-shadow: 0 0 2rem 0 rgba(255,34,11,.2);
    -webkit-transition: .3s;
    background-color: #562e00;
    background-image: repeating-linear-gradient(-45deg,transparent,transparent 2rem,rgba(255,255,255,.03) 2rem,rgba(255,255,255,.03) 4rem);
    bottom: 0;
    box-shadow: 0 0 2rem 0 rgba(255,34,11,.2);
    left: 0;
    opacity: 0;
    padding: .75rem 0;
    position: fixed;
    transition: .3s;
    visibility: hidden;
    width: 100%;
    z-index: 5
}

@media screen and (min-width: 640px) {
    .p-cta-nav {
        padding:1rem 0
    }
}

@media screen and (min-width: 1024px) {
    .p-cta-nav {
        padding:2rem 0
    }
}

.p-cta-nav__in {
    -ms-grid-columns: (1fr)[3];
    display: -ms-grid;
    display: grid;
    gap: .75rem;
    grid-template-columns: repeat(3,1fr);
    margin: 0 auto;
    max-width: calc(1280px + 2rem);
    padding: 0 .75rem
}

@media screen and (min-width: 640px) {
    .p-cta-nav__in {
        gap:1rem;
        padding: 0 1rem
    }
}

@media screen and (min-width: 1024px) {
    .p-cta-nav__in {
        gap:2.5rem
    }
}

.p-cta-nav.is-scrolled {
    opacity: 1;
    visibility: visible
}

.p-sticky-bnr {
    -webkit-transition: .3s;
    background-color: #fff;
    bottom: .5rem;
    left: .5rem;
    opacity: 0;
    position: fixed;
    transition: .3s;
    visibility: hidden;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    z-index: 5
}

@media screen and (min-width: 640px) {
    .p-sticky-bnr {
        bottom:1rem;
        left: 1rem
    }
}

.p-sticky-bnr__in {
    position: relative
}

.p-sticky-bnr__close-btn {
    -webkit-transition: .3s;
    aspect-ratio: 1;
    background-color: #fff;
    border-radius: 50%;
    cursor: pointer;
    display: -ms-grid;
    display: grid;
    place-items: center;
    position: absolute;
    right: -.375rem;
    top: -.375rem;
    transition: .3s;
    width: 1.5rem;
    z-index: 1
}

.p-sticky-bnr__close-btn:hover {
    opacity: .7
}

@media screen and (min-width: 640px) {
    .p-sticky-bnr__close-btn {
        right:-.5rem;
        top: -.5rem;
        width: 2rem
    }
}

.p-sticky-bnr__close-btn:after {
    aspect-ratio: 1;
    border-radius: 50%;
    bottom: -.75rem;
    content: "";
    display: block;
    position: absolute;
    right: -.75rem;
    width: 3rem
}

@media screen and (min-width: 640px) {
    .p-sticky-bnr__close-btn:after {
        bottom:-.5rem;
        right: -.5rem
    }
}

.p-sticky-bnr__close-btn-icon {
    display: -ms-grid;
    display: grid;
    place-items: center
}

.p-sticky-bnr__close-btn-icon:before,.p-sticky-bnr__close-btn-icon:after {
    background-color: #ff220b;
    content: "";
    display: block;
    height: 2px;
    width: .5rem
}

@media screen and (min-width: 640px) {
    .p-sticky-bnr__close-btn-icon:before,.p-sticky-bnr__close-btn-icon:after {
        width:.75rem
    }
}

.p-sticky-bnr__close-btn-icon:before {
    rotate: 45deg
}

.p-sticky-bnr__close-btn-icon:after {
    position: absolute;
    rotate: -45deg
}

.p-sticky-bnr__close-btn-input {
    display: none
}

.p-sticky-bnr__link {
    -webkit-transition: .3s;
    cursor: pointer;
    display: block;
    transition: .3s
}

.p-sticky-bnr__link:hover {
    opacity: .7
}

.p-sticky-bnr__img {
    height: auto;
    width: 12rem
}

@media screen and (min-width: 640px) {
    .p-sticky-bnr__img {
        width:20rem
    }
}

@media screen and (min-width: 1024px) {
    .p-sticky-bnr__img {
        width:25rem
    }
}

.p-sticky-bnr.is-scrolled {
    opacity: 1;
    visibility: visible
}

.p-sticky-bnr:has(.p-sticky-bnr__close-btn-input:checked) {
    opacity: 0;
    visibility: hidden
}

.p-sticky-tel-btn {
    -webkit-transition: .3s;
    bottom: 1rem;
    opacity: 0;
    position: fixed;
    right: 1rem;
    transition: .3s;
    visibility: hidden;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    z-index: 5
}

@media screen and (min-width: 640px) {
    .p-sticky-tel-btn {
        bottom:1.5rem;
        right: 1.5rem
    }
}

.p-sticky-tel-btn__in {
    position: relative
}

.p-sticky-tel-btn__link {
    -webkit-transition: .3s;
    cursor: pointer;
    display: block;
    transition: .3s
}

.p-sticky-tel-btn__link:hover {
    -webkit-filter: brightness(1.3) saturate(.8);
    filter: brightness(1.3) saturate(.8)
}

.p-sticky-tel-btn__img {
    height: auto;
    width: 5rem
}

@media screen and (min-width: 640px) {
    .p-sticky-tel-btn__img {
        width:6rem
    }
}

@media screen and (min-width: 1024px) {
    .p-sticky-tel-btn__img {
        width:8rem
    }
}

.p-sticky-tel-btn.is-scrolled {
    opacity: 1;
    visibility: visible
}

.p-footer__primary {
    background-color: #562e00;
    padding: 4rem;
}

@media screen and (min-width: 1024px) {
    .p-footer__primary {
        padding: 9rem 0;
    }
}

.p-footer__secondary {
    background-color: #fff;
    padding: 1.5rem 0
}

@media screen and (min-width: 1024px) {
    .p-footer__secondary {
        padding: 4rem 0;
    }
}

@media screen and (min-width: 1024px) {
    .p-footer__primary-in {
        -webkit-box-align:center;
        -ms-flex-align: center;
        align-items: center;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex
    }
}

.p-footer__info {
    text-align: center
}

@media screen and (min-width: 1024px) {
    .p-footer__info {
        margin-right:auto;
        text-align: left
    }
}

.p-footer__site-branding {
    display: inline-block
}

.p-footer__info-txt {
    color: #fff;
    margin-top: 1rem;
    text-align: center
}

@media screen and (min-width: 1024px) {
    .p-footer__info-txt {
        margin-top: 4rem;
        text-align: left
    }
}

.p-footer__nav {
    margin-top: 2rem
}

@media screen and (min-width: 1280px) {
    .p-footer__nav {
        margin-left:2rem;
        margin-top: 0
    }
}

.p-footer__copyright {
    text-align: center
}

.p-form {
    margin: 0 auto
}

@media screen and (min-width: 1024px) {
    .p-form {
        max-width:calc((100% - 2.5rem * (12 - 1)) / 12 * 8 + 2.5rem * (8 - 1))
    }
}

.p-form__group+.p-form__group {
    margin-top: 1.5rem;
    position: relative
}

@media screen and (min-width: 1024px) {
    .p-form__group+.p-form__group {
        margin-top:2rem
    }
}

.p-form__label {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    color: #000;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: space-between;
    margin-bottom: .75rem
}

@media screen and (min-width: 1024px) {
    .p-form__label {
        margin-bottom:1rem
    }
}

.p-form__label.is-required:after {
    -ms-flex-negative: 0;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background-color: #ff220b;
    border-radius: .25rem;
    color: #fff;
    content: "必須";
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-shrink: 0;
    font-size: 12px;
    font-size: .75rem;
    font-weight: 900;
    justify-content: center;
    margin-left: .5rem;
    padding: .25rem 1rem .3rem
}

.p-form__label-txt {
    color: #562e00;
    font-weight: 900
}

.p-form__example {
    margin-top: .75rem
}

@media screen and (min-width: 1024px) {
    .p-form__example {
        margin-top:1rem
    }
}

.p-form__checkbox+.p-form__input {
    margin-top: .75rem
}

@media screen and (min-width: 1024px) {
    .p-form__checkbox+.p-form__input {
        margin-top:1rem
    }
}

.p-form__row {
    display: -ms-grid;
    display: grid;
    gap: .75rem
}

@media screen and (min-width: 640px) {
    .p-form__row {
        -ms-grid-columns:(1fr)[2];
        grid-template-columns: repeat(2,1fr)
    }
}

@media screen and (min-width: 1024px) {
    .p-form__row {
        gap:1rem
    }
}

.p-form__col-in {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: .5rem
}

@media screen and (min-width: 1024px) {
    .p-form__col-in {
        gap:.75rem
    }
}

.p-form__icon {
    color: #fd9700;
    font-size: 18px;
    font-size: 1.125rem;
    line-height: 1
}

@media screen and (min-width: 1024px) {
    .p-form__icon {
        font-size:24px;
        font-size: 1.5rem
    }
}

.p-form__btn-area {
    margin-top: 2.5rem;
    text-align: center
}

@media screen and (min-width: 768px) {
    .p-form__btn-area {
        margin-top:4rem
    }
}

.mw_wp_form .horizontal-item+.horizontal-item {
    margin: 0 !important
}

.mw_wp_form .error {
    color: #000;
    display: block;
    font-size: .75rem !important;
    margin-top: .75rem;
    width: 100%
}

@media screen and (min-width: 1024px) {
    .mw_wp_form .error {
        font-size:.875rem !important;
        margin-top: 1rem
    }
}

.mw_wp_form_complete .p-form__confirm-btn,.mw_wp_form_complete .p-form__back-btn,.mw_wp_form_complete .p-form__send-btn {
    display: none
}

.p-full-screen-menu {
    -webkit-transition: opacity .3s;
    -webkit-overflow-scrolling: touch;
    background-color: #fffeed;
    height: 100%;
    height: 100dvh;
    opacity: 0;
    overflow-y: scroll;
    position: fixed;
    top: 0;
    transition: opacity .3s;
    visibility: hidden;
    width: 100%;
    z-index: 999999;
}

.p-full-screen-menu__in {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-direction: column;
    height: 100%;
    height: 100dvh;
    justify-content: center;
    width: 100%;
    @psition: relative;
    @psition: relative;
    @psition: relativ;
    @psition: relati;
    @psition: relat;
    @psition: rela;
    @psition: rel;
    @psition: revert;
    @psition: revert;
    @psition: revert;
    @psition: revert;
    @psition: r;
}

.p-full-screen-menu__nav {
    margin-top: 2rem
}

@media screen and (min-width: 768px) {
    .p-full-screen-menu__nav {
        margin-top:3rem
    }
}

@media screen and (min-width: 1024px) {
    .p-full-screen-menu__nav {
        margin-top:4rem
    }
}

.p-full-screen-menu.is-opened {
    opacity: 1;
    visibility: visible
}

.p-header {
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-transition: .3s;
    align-items: center;
    background-color: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 1rem 5rem 1rem 1rem;
    transition: .3s
}

@media screen and (min-width: 1024px) {
    .p-header {
        padding:0 7.375rem 0 2rem
    }
}

@media screen and (min-width: 1280px) {
    .p-header {
        padding:0 8.375rem 0 2rem
    }
}

.p-header__site-branding {
    margin-right: auto
}

.p-header__nav {
    display: none
}

@media screen and (min-width: 1024px) {
    .p-header__nav {
        display:block;
        margin-left: 1rem
    }
}

@media screen and (min-width: 1280px) {
    .p-header__nav {
        margin-left:2rem
    }
}

.p-header.is-scrolled {
    -webkit-box-shadow: 0 0 2rem 0 rgba(255,34,11,.2);
    box-shadow: 0 0 2rem 0 rgba(255,34,11,.2)
}

.p-hero {
    padding-top: 2rem
}

@media screen and (min-width: 1024px) {
    .p-hero {
        padding-top:3rem
    }
}

.p-hero__in {
    background-color: #fef203;
    background-image: repeating-linear-gradient(-45deg,transparent,transparent 2rem,rgba(255,255,255,.2) 2rem,rgba(255,255,255,.2) 4rem);
    padding-bottom: 6rem;
    position: relative
}

@media screen and (min-width: 1024px) {
    .p-hero__in {
        padding-bottom:9rem
    }
}

.p-hero__in:before,.p-hero__in:after {
    background-image: -webkit-gradient(linear,left top,right bottom,color-stop(50%,#fff),color-stop(50%,rgba(255,255,255,0)));
    background-image: linear-gradient(to right bottom,#fff 50%,rgba(255,255,255,0) 50%);
    content: "";
    display: block;
    height: 5rem;
    position: absolute;
    width: 5rem;
    z-index: 0
}

@media screen and (min-width: 1024px) {
    .p-hero__in:before,.p-hero__in:after {
        height:10rem;
        width: 10rem
    }
}

.p-hero__in:before {
    left: 0;
    top: 0
}

.p-hero__in:after {
    -webkit-transform: rotate(-180deg);
    bottom: 0;
    right: 0;
    transform: rotate(-180deg)
}

.p-hero__movie-wrap {
    margin: 0 auto;
    max-width: calc(1280px + 2rem);
    padding: 0 1rem;
    position: relative;
    top: -2rem;
    z-index: 1
}

@media screen and (min-width: 1024px) {
    .p-hero__movie-wrap {
        top:-3rem
    }
}

.p-hero__movie {
    -webkit-box-shadow: 0 0 2rem 0 rgba(255,34,11,.2);
    box-shadow: 0 0 2rem 0 rgba(255,34,11,.2);
    display: block;
    width: 100%
}

.p-staircase-card-list {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -ms-flex-wrap: wrap;
    counter-reset: numb;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    gap: 2rem;
    justify-content: center;
    list-style: none;
    margin: 0;
    padding: 0
}

@media screen and (min-width: 768px) {
    .p-staircase-card-list {
        padding-bottom:2rem
    }
}

@media screen and (min-width: 1024px) {
    .p-staircase-card-list {
        -ms-flex-wrap:nowrap;
        flex-wrap: nowrap;
        padding-bottom: 4rem
    }
}

@media screen and (min-width: 1280px) {
    .p-staircase-card-list {
        gap:2.5rem
    }
}

.p-staircase-card-list__card {
    -webkit-box-flex: 0;
    -ms-flex: 0 1 auto;
    -webkit-box-shadow: 0 0 2rem 0 rgba(255,34,11,.2);
    background-color: #fff;
    border-radius: .5rem;
    box-shadow: 0 0 2rem 0 rgba(255,34,11,.2);
    flex: 0 1 auto;
    width: 100%
}

@media screen and (min-width: 768px) {
    .p-staircase-card-list__card {
        width:calc((100% - 2.5rem * (12 - 1)) / 12 * 6 + 2.5rem * (6 - 1))
    }
}

@media screen and (min-width: 1024px) {
    .p-staircase-card-list__card {
        width:calc((100% - 2.5rem * (12 - 1)) / 12 * 4 + 2.5rem * (4 - 1))
    }
}

@media screen and (min-width: 768px) {
    .p-staircase-card-list__card:nth-of-type(2) {
        -webkit-transform:translateY(2rem);
        transform: translateY(2rem)
    }
}

@media screen and (min-width: 768px) {
    .p-staircase-card-list__card:nth-of-type(3) {
        -webkit-transform:translateY(2rem);
        transform: translateY(2rem)
    }
}

@media screen and (min-width: 1024px) {
    .p-staircase-card-list__card:nth-of-type(3) {
        -webkit-transform:translateY(4rem);
        transform: translateY(4rem)
    }
}

.p-staircase-card-list__card--no-head .p-staircase-card-list__card-img {
    border-radius: .5rem .5rem 0 0
}

.p-staircase-card-list__card--has-icon .p-staircase-card-list__card-head {
    padding-left: 3.5rem;
    padding-right: 3.5rem
}

@media screen and (min-width: 768px) {
    .p-staircase-card-list__card--has-icon .p-staircase-card-list__card-head {
        padding-left:4rem;
        padding-right: 4rem
    }
}

@media screen and (min-width: 1024px) {
    .p-staircase-card-list__card--has-icon .p-staircase-card-list__card-head {
        padding-left:5rem;
        padding-right: 5rem
    }
}

.p-staircase-card-list__card-head {
    background-color: #ff220b;
    border-radius: .5rem .5rem 0 0;
    padding: 1.5rem 1rem;
    position: relative
}

@media screen and (min-width: 768px) {
    .p-staircase-card-list__card-head {
        padding:1.5rem
    }
}

@media screen and (min-width: 1024px) {
    .p-staircase-card-list__card-head {
        padding:2rem
    }
}

.p-staircase-card-list__card-icon {
    -webkit-transform: translateY(-50%);
    color: #fff;
    font-size: 24px;
    font-size: 1.5rem;
    font-weight: 900;
    left: 1rem;
    position: absolute;
    top: 50%;
    transform: translateY(-50%)
}

@media screen and (min-width: 768px) {
    .p-staircase-card-list__card-icon {
        left:1.5rem
    }
}

@media screen and (min-width: 1024px) {
    .p-staircase-card-list__card-icon {
        font-size:30px;
        font-size: 1.875rem;
        left: 2rem
    }
}

.p-staircase-card-list__card-ttl {
    color: #fff;
    font-weight: 900;
    text-align: center
}

.p-staircase-card-list__card-figure {
    position: relative
}

.p-staircase-card-list__card-figure:before {
    background-image: -webkit-gradient(linear,left top,right bottom,color-stop(50%,transparent),color-stop(50%,#fd9700));
    background-image: linear-gradient(to right bottom,transparent 50%,#fd9700 50%);
    bottom: 0;
    content: "";
    display: block;
    height: 4rem;
    position: absolute;
    right: 0;
    width: 4rem
}

@media screen and (min-width: 1024px) {
    .p-staircase-card-list__card-figure:before {
        height:5rem;
        width: 5rem
    }
}

.p-staircase-card-list__card-figure:after {
    bottom: -.575rem;
    color: #fff;
    content: counter(numb);
    counter-increment: numb;
    display: inline-block;
    font-family: "Montserrat",sans-serif;
    font-size: 60px;
    font-size: 3.75rem;
    font-weight: 700;
    letter-spacing: 0;
    line-height: 1;
    position: absolute;
    right: .5rem;
    text-align: right
}

@media screen and (min-width: 1024px) {
    .p-staircase-card-list__card-figure:after {
        bottom:-.65rem;
        font-size: 72px;
        font-size: 4.5rem;
        right: 1rem
    }
}

.p-staircase-card-list__card-img {
    width: 100%
}

.p-staircase-card-list__card-body {
    padding: 1.5rem 1rem
}

@media screen and (min-width: 768px) {
    .p-staircase-card-list__card-body {
        padding:1.5rem
    }
}

@media screen and (min-width: 1024px) {
    .p-staircase-card-list__card-body {
        padding:2rem
    }
}

.p-staircase-card-list__card-txt {
    font-weight: 500
}

.p-staircase-card-list--numb-bg-secondary-accent .p-staircase-card-list__card-figure:before {
    background-image: -webkit-gradient(linear,left top,right bottom,color-stop(50%,transparent),color-stop(50%,#ff220b));
    background-image: linear-gradient(to right bottom,transparent 50%,#ff220b 50%)
}

.p-staircase-card-list--top-about {
    position: relative
}

.p-staircase-card-list--top-about:before {
    -webkit-filter: drop-shadow(0 0 2rem rgba(255,34,11,.2));
    -webkit-transform: translateZ(0);
    aspect-ratio: 167/236;
    background: url(//kei59.com/wp/wp-content/themes/kei59/assets/css/../images/top/img_about_staff01.png) no-repeat center bottom/contain;
    bottom: 100%;
    content: "";
    display: block;
    filter: drop-shadow(0 0 2rem rgba(255,34,11,.2));
    height: 5.5rem;
    left: 1rem;
    position: absolute;
    transform: translateZ(0);
    z-index: -1
}

@media screen and (min-width: 640px) {
    .p-staircase-card-list--top-about:before {
        height:7rem
    }
}

@media screen and (min-width: 768px) {
    .p-staircase-card-list--top-about:before {
        height:9rem
    }
}

@media screen and (min-width: 1024px) {
    .p-staircase-card-list--top-about:before {
        height:12rem;
        left: 2rem
    }
}

@media screen and (min-width: 1280px) {
    .p-staircase-card-list--top-about:before {
        height:236px
    }
}

.p-staircase-card-list--top-reason {
    position: relative
}

.p-staircase-card-list--top-reason:before {
    -webkit-filter: drop-shadow(0 0 2rem rgba(255,34,11,.2));
    -webkit-transform: translateZ(0);
    aspect-ratio: 290/311;
    background: url(//kei59.com/wp/wp-content/themes/kei59/assets/css/../images/top/img_reason_staff01.png) no-repeat center bottom/contain;
    bottom: 100%;
    content: "";
    display: block;
    filter: drop-shadow(0 0 2rem rgba(255,34,11,.2));
    height: 6rem;
    left: 1rem;
    position: absolute;
    transform: translateZ(0);
    z-index: -1
}

@media screen and (min-width: 640px) {
    .p-staircase-card-list--top-reason:before {
        height:7rem
    }
}

@media screen and (min-width: 768px) {
    .p-staircase-card-list--top-reason:before {
        height:9rem
    }
}

@media screen and (min-width: 1024px) {
    .p-staircase-card-list--top-reason:before {
        height:12rem;
        left: 2rem
    }
}

@media screen and (min-width: 1280px) {
    .p-staircase-card-list--top-reason:before {
        height:311px
    }
}

.p-news-list {
    list-style: none;
    margin: 0;
    padding: 0
}

.p-news-list__item+.p-news-list__item .p-news-list__link {
    padding-top: 1rem
}

@media screen and (min-width: 1024px) {
    .p-news-list__item+.p-news-list__item .p-news-list__link {
        padding-top:1.25rem
    }
}

.p-news-list__item:last-of-type .p-news-list__link {
    border-bottom: none;
    padding-bottom: 0
}

.p-news-list__link {
    border-bottom: 1px solid #fd9700;
    display: block;
    padding-bottom: 1rem;
    text-decoration: none
}

@media screen and (min-width: 1024px) {
    .p-news-list__link {
        -webkit-transition:.3s;
        padding-bottom: 1.25rem;
        transition: .3s
    }

    .p-news-list__link:hover {
        opacity: .7
    }
}

.p-news-list__date {
    color: #fd9700;
    font-family: "Montserrat",sans-serif;
    font-weight: 700
}

.p-news-list__ttl {
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    color: #562e00;
    display: -webkit-box;
    font-weight: 900;
    margin-top: .5rem;
    overflow: hidden
}

@media screen and (min-width: 1024px) {
    .p-news-list__ttl {
        margin-top:.75rem
    }
}

.p-faq-list {
    background-color: #fff;
    border-radius: .5rem;
    counter-reset: numb;
    list-style: none;
    margin: 0;
    padding: 0;
    padding: .5rem 0;
    position: relative
}

@media screen and (min-width: 1024px) {
    .p-faq-list {
        padding:1rem 0
    }
}

.p-faq-list:before {
    -webkit-filter: drop-shadow(0 0 2rem rgba(255,34,11,.2));
    -webkit-transform: translateZ(0);
    aspect-ratio: 354/244;
    background: url(//kei59.com/wp/wp-content/themes/kei59/assets/css/../images/top/img_faq_staff01.png) no-repeat center bottom/contain;
    bottom: 100%;
    content: "";
    display: block;
    filter: drop-shadow(0 0 2rem rgba(255,34,11,.2));
    height: 4rem;
    position: absolute;
    right: 1rem;
    transform: translateZ(0);
    z-index: -1
}

@media screen and (min-width: 640px) {
    .p-faq-list:before {
        height:7rem
    }
}

@media screen and (min-width: 768px) {
    .p-faq-list:before {
        height:9rem
    }
}

@media screen and (min-width: 1024px) {
    .p-faq-list:before {
        height:12rem;
        right: 2rem
    }
}

@media screen and (min-width: 1280px) {
    .p-faq-list:before {
        height:244px
    }
}

.p-faq-list__item {
    counter-increment: numb;
    padding: 1.75rem 1rem
}

@media screen and (min-width: 768px) {
    .p-faq-list__item {
        padding:1.75rem 2rem
    }
}

@media screen and (min-width: 1024px) {
    .p-faq-list__item {
        padding:2.5rem 3rem
    }
}

.p-faq-list__item:nth-of-type(even) {
    background-color: #fffeed
}

.p-faq-list__question,.p-faq-list__answer {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: .5rem
}

@media screen and (min-width: 768px) {
    .p-faq-list__question,.p-faq-list__answer {
        gap:1rem
    }
}

@media screen and (min-width: 1024px) {
    .p-faq-list__question,.p-faq-list__answer {
        gap:1.5rem
    }
}

.p-faq-list__numb {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    color: #ff220b;
    flex: 0 0 auto;
    font-size: 24px;
    font-size: 1.5rem;
    font-weight: 900;
    letter-spacing: .1em;
    line-height: 1;
    min-width: 49px;
    text-align: center
}

@media screen and (min-width: 768px) {
    .p-faq-list__numb {
        font-size:30px;
        font-size: 1.875rem;
        min-width: 61px
    }
}

@media screen and (min-width: 1024px) {
    .p-faq-list__numb {
        font-size:36px;
        font-size: 2.25rem;
        min-width: 74px
    }
}

.p-faq-list__numb:before {
    content: "Q";
    font-family: "Raleway",sans-serif
}

.p-faq-list__numb:after {
    content: counter(numb) ".";
    font-family: "Montserrat",sans-serif
}

.p-faq-list__answer {
    margin-top: 1rem
}

@media screen and (min-width: 1024px) {
    .p-faq-list__answer {
        margin-top:1.5rem
    }
}

.p-faq-list__answer .p-faq-list__numb {
    color: #fd9700
}

.p-faq-list__answer .p-faq-list__numb:before {
    content: "A"
}

.p-faq-list__ttl {
    color: #562e00;
    font-weight: 900;
    margin-top: .275rem
}

@media screen and (min-width: 768px) {
    .p-faq-list__ttl {
        margin-top:.45rem
    }
}

@media screen and (min-width: 1024px) {
    .p-faq-list__ttl {
        margin-top:.5rem
    }
}

.p-faq-list__txt {
    margin-top: .4rem
}

@media screen and (min-width: 768px) {
    .p-faq-list__txt {
        margin-top:.6rem
    }
}

@media screen and (min-width: 1024px) {
    .p-faq-list__txt {
        margin-top:.75rem
    }
}

.p-horizon-card-list {
    counter-reset: numb;
    list-style: none;
    margin: 0;
    padding: 0
}

.p-horizon-card-list__card {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-direction: column
}

@media screen and (min-width: 768px) {
    .p-horizon-card-list__card {
        -webkit-box-orient:horizontal;
        -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse
    }
}

@media screen and (min-width: 1280px) {
    .p-horizon-card-list__card {
        -webkit-box-align:center;
        -ms-flex-align: center;
        align-items: center
    }
}

.p-horizon-card-list__card+.p-horizon-card-list__card {
    margin-top: 2rem
}

@media screen and (min-width: 1024px) {
    .p-horizon-card-list__card+.p-horizon-card-list__card {
        margin-top:4rem
    }
}

@media screen and (min-width: 768px) {
    .p-horizon-card-list__card:nth-of-type(even) {
        -webkit-box-orient:horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row
    }
}

@media screen and (min-width: 768px) {
    .p-horizon-card-list__card:nth-of-type(even) .p-horizon-card-list__card-desc {
        margin-left:-2.5rem
    }
}

.p-horizon-card-list__card-figure {
    width: 100%
}

@media screen and (min-width: 768px) {
    .p-horizon-card-list__card-figure {
        width:calc(50% + 1.25rem)
    }
}

.p-horizon-card-list__card-img {
    border-radius: .5rem .5rem 0 0
}

@media screen and (min-width: 768px) {
    .p-horizon-card-list__card-img {
        border-radius:.5rem
    }
}

.p-horizon-card-list__card-desc {
    -webkit-box-shadow: 0 0 2rem 0 rgba(255,34,11,.2);
    background-color: #fff;
    border-radius: 0 0 .5rem .5rem;
    box-shadow: 0 0 2rem 0 rgba(255,34,11,.2);
    position: relative;
    width: 100%
}

@media screen and (min-width: 768px) {
    .p-horizon-card-list__card-desc {
        border-radius:.5rem;
        margin-right: -2.5rem;
        margin-top: 2rem;
        width: calc(50% + 1.25rem)
    }
}

@media screen and (min-width: 1280px) {
    .p-horizon-card-list__card-desc {
        margin-top:0
    }
}

.p-horizon-card-list__card-head {
    background-color: #ff220b;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

@media screen and (min-width: 768px) {
    .p-horizon-card-list__card-head {
        border-radius:.5rem .5rem 0 0
    }
}

.p-horizon-card-list__card-numb {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    background-color: #fd9700;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex: 0 0 auto;
    flex-direction: column;
    justify-content: center;
    padding: .75rem .75rem 0
}

@media screen and (min-width: 1024px) {
    .p-horizon-card-list__card-numb {
        padding:1.1rem 1.2rem 0 1.3rem
    }
}

.p-horizon-card-list__card-numb:after {
    color: #fff;
    content: counter(numb);
    counter-increment: numb;
    display: inline-block;
    font-family: "Montserrat",sans-serif;
    font-size: 60px;
    font-size: 3.75rem;
    font-weight: 700;
    letter-spacing: 0;
    line-height: 1;
    margin-bottom: -.6rem;
    margin-top: .2rem;
    text-align: right
}

@media screen and (min-width: 1024px) {
    .p-horizon-card-list__card-numb:after {
        font-size:72px;
        font-size: 4.5rem;
        margin-bottom: -.65rem;
        margin-top: .4rem
    }
}

@media screen and (min-width: 768px) {
    .p-horizon-card-list__card-numb {
        border-radius:.5rem 0 0
    }
}

.p-horizon-card-list__card-numb-ttl {
    -webkit-box-flex: 1;
    -ms-flex: 1 0 auto;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    color: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex: 1 0 auto;
    font-family: "Raleway",sans-serif;
    justify-content: center;
    letter-spacing: .1em;
    line-height: 1;
    margin-bottom: auto
}

.p-horizon-card-list__card-numb-ttl:before {
    content: "";
    display: block;
    height: 0;
    margin-top: calc((1 - 1) * .5em);
    width: 0
}

.p-horizon-card-list__card-numb-ttl:after {
    content: "";
    display: block;
    height: 0;
    margin-bottom: calc((1 - 1) * .5em);
    width: 0
}

.p-horizon-card-list__card-head-in {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex: 1 1 auto;
    justify-content: center;
    padding: 1.5rem 1rem
}

@media screen and (min-width: 1024px) {
    .p-horizon-card-list__card-head-in {
        padding:2rem 1rem
    }
}

.p-horizon-card-list__card-ttl {
    color: #fff;
    letter-spacing: .1em
}

.p-horizon-card-list__card-body {
    padding: 2rem 1rem
}

@media screen and (min-width: 768px) {
    .p-horizon-card-list__card-body {
        padding:2rem 1.5rem
    }
}

@media screen and (min-width: 1024px) {
    .p-horizon-card-list__card-body {
        padding:3rem 2rem
    }
}

.p-check-list {
    list-style: none;
    margin: 0;
    margin: 0 auto;
    padding: 0;
    text-align: left;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content
}

.p-check-list__item {
    -ms-grid-columns: auto 1fr;
    display: -ms-grid;
    display: grid;
    gap: .5rem;
    grid-template-columns: auto 1fr
}

@media screen and (min-width: 1024px) {
    .p-check-list__item {
        gap:1rem
    }
}

.p-check-list__item:before {
    color: #fd9700;
    content: "";
    font-family: "Font Awesome 5 Free";
    font-size: 24px;
    font-size: 1.5rem;
    font-weight: 900;
    letter-spacing: 0;
    line-height: 1
}

@media screen and (min-width: 1024px) {
    .p-check-list__item:before {
        font-size:30px;
        font-size: 1.875rem
    }
}

.p-check-list__item+.p-check-list__item {
    margin-top: 1.5rem
}

@media screen and (min-width: 1024px) {
    .p-check-list__item+.p-check-list__item {
        margin-top:2rem
    }
}

.p-check-list__txt {
    color: #562e00;
    font-weight: 900;
    margin-top: .1rem
}

@media screen and (min-width: 1024px) {
    .p-check-list__txt {
        margin-top:0
    }
}

.p-category-list {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -ms-flex-wrap: wrap;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    justify-content: center;
    list-style: none;
    margin: 0;
    padding: 0
}

@media screen and (min-width: 768px) {
    .p-category-list {
        gap:1.5rem
    }
}

@media screen and (min-width: 1024px) {
    .p-category-list {
        gap:2rem
    }
}

.p-category-list__item {
    width: 100%
}

@media screen and (min-width: 640px) {
    .p-category-list__item {
        width:auto
    }
}

.p-category-list__item.is-current .p-category-list__link {
    -webkit-box-shadow: none;
    background-color: #562e00;
    box-shadow: none;
    color: #fff;
    pointer-events: none
}

.p-category-list__item.is-current .p-category-list__link.news {
    background-color: #ff220b
}

.p-category-list__item.is-current .p-category-list__link.staff-blog {
    background-color: #fd9700
}

.p-category-list__link {
    -webkit-box-shadow: 0 0 1rem 0 rgba(255,34,11,.1);
    -webkit-transition: .3s;
    background-color: #fff;
    border: 2px solid #562e00;
    border-radius: .5rem;
    box-shadow: 0 0 1rem 0 rgba(255,34,11,.1);
    color: #562e00;
    font-size: 14px;
    font-size: .875rem;
    padding: .75rem 1rem;
    transition: .3s;
    width: 100%
}

@media screen and (min-width: 768px) {
    .p-category-list__link {
        padding:.75rem 1.5rem
    }
}

@media screen and (min-width: 1024px) {
    .p-category-list__link {
        font-size:16px;
        font-size: 1rem;
        padding: 1rem 2rem
    }
}

.p-category-list__link:hover {
    color: #562e00
}

@media screen and (min-width: 1024px) {
    .p-category-list__link:hover {
        background-color:#562e00;
        color: #fff
    }
}

.p-category-list__link.news {
    background-color: #fff;
    border-color: #ff220b;
    color: #ff220b
}

@media screen and (min-width: 1024px) {
    .p-category-list__link.news:hover {
        background-color:#ff220b;
        color: #fff
    }
}

.p-category-list__link.staff-blog {
    background-color: #fff;
    border-color: #fd9700;
    color: #fd9700
}

@media screen and (min-width: 1024px) {
    .p-category-list__link.staff-blog:hover {
        background-color:#fd9700;
        color: #fff
    }
}

.p-dot-list {
    list-style: none;
    margin: 0;
    padding: 0
}

.p-dot-list__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.p-dot-list__item:before {
    color: #ff220b;
    content: "・";
    font-size: 14px;
    font-size: .875rem;
    line-height: 1
}

@media screen and (min-width: 1024px) {
    .p-dot-list__item:before {
        font-size:16px;
        font-size: 1rem
    }
}

.p-dot-list__item+.p-dot-list__item {
    margin-top: .75rem
}

@media screen and (min-width: 1024px) {
    .p-dot-list__item+.p-dot-list__item {
        margin-top:1rem
    }
}

.p-numb-list {
    counter-reset: numb;
    list-style: none;
    margin: 0;
    padding: 0
}

.p-numb-list__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.p-numb-list__item:before {
    color: #ff220b;
    content: counter(numb) ".";
    counter-increment: numb;
    font-size: 14px;
    font-size: .875rem;
    line-height: 1;
    margin-right: .25rem
}

@media screen and (min-width: 1024px) {
    .p-numb-list__item:before {
        font-size:16px;
        font-size: 1rem
    }
}

.p-numb-list__item+.p-numb-list__item {
    margin-top: .75rem
}

@media screen and (min-width: 1024px) {
    .p-numb-list__item+.p-numb-list__item {
        margin-top:1rem
    }
}

.p-numbering-card-list {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -ms-flex-wrap: wrap;
    counter-reset: numb;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    gap: 2rem;
    justify-content: center;
    list-style: none;
    margin: 0;
    padding: 0
}

@media screen and (min-width: 768px) {
    .p-numbering-card-list {
        padding-bottom:2rem
    }
}

@media screen and (min-width: 1024px) {
    .p-numbering-card-list {
        -ms-flex-wrap:nowrap;
        flex-wrap: nowrap;
        padding-bottom: 4rem
    }
}

@media screen and (min-width: 1280px) {
    .p-numbering-card-list {
        gap:2.5rem
    }
}

.p-numbering-card-list__card {
    -webkit-box-flex: 0;
    -ms-flex: 0 1 auto;
    -webkit-box-shadow: 0 0 2rem 0 rgba(255,34,11,.2);
    background-color: #fff;
    border-radius: .5rem;
    box-shadow: 0 0 2rem 0 rgba(255,34,11,.2);
    flex: 0 1 auto;
    padding: 2rem 1rem;
    position: relative;
    width: 100%
}

.p-numbering-card-list__card:before {
    bottom: calc(100% - 0.3rem);
    color: #fff;
    content: "0" counter(numb);
    counter-increment: numb;
    display: inline-block;
    font-family: "Montserrat",sans-serif;
    font-size: 30px;
    font-size: 1.875rem;
    font-weight: 700;
    left: .5rem;
    letter-spacing: .1em;
    line-height: 1;
    position: absolute
}

.p-numbering-card-list__card::before:before {
    content: "";
    display: block;
    height: 0;
    margin-top: calc((1 - 1) * .5em);
    width: 0
}

.p-numbering-card-list__card::before:after {
    content: "";
    display: block;
    height: 0;
    margin-bottom: calc((1 - 1) * .5em);
    width: 0
}

@media screen and (min-width: 768px) {
    .p-numbering-card-list__card:before {
        bottom:calc(100% - 0.4rem);
        font-size: 36px;
        font-size: 2.25rem
    }
}

@media screen and (min-width: 1024px) {
    .p-numbering-card-list__card:before {
        font-size:48px;
        font-size: 3rem;
        left: 1rem
    }
}

@media screen and (min-width: 768px) {
    .p-numbering-card-list__card {
        padding:2rem 1.5rem;
        width: calc((100% - 2.5rem * (12 - 1)) / 12 * 6 + 2.5rem * (6 - 1))
    }
}

@media screen and (min-width: 1024px) {
    .p-numbering-card-list__card {
        padding:3rem 2rem;
        width: calc((100% - 2.5rem * (12 - 1)) / 12 * 4 + 2.5rem * (4 - 1))
    }
}

@media screen and (min-width: 768px) {
    .p-numbering-card-list__card:nth-of-type(2) {
        -webkit-transform:translateY(2rem);
        transform: translateY(2rem)
    }
}

@media screen and (min-width: 768px) {
    .p-numbering-card-list__card:nth-of-type(3) {
        -webkit-transform:translateY(2rem);
        transform: translateY(2rem)
    }
}

@media screen and (min-width: 1024px) {
    .p-numbering-card-list__card:nth-of-type(3) {
        -webkit-transform:translateY(4rem);
        transform: translateY(4rem)
    }
}

@media screen and (max-width: 639px) {
    .p-numbering-card-list__card:nth-of-type(even):before {
        left:auto;
        right: .5rem
    }
}

.p-numbering-card-list__card-body {
    margin-top: 1.75rem
}

@media screen and (min-width: 1024px) {
    .p-numbering-card-list__card-body {
        margin-top:2.5rem
    }
}

.p-balloons-list {
    display: block;
    margin: 0 auto
}

@media screen and (min-width: 1280px) {
    .p-balloons-list {
        max-width:calc((100% - 2.5rem * (12 - 1)) / 12 * 10 + 2.5rem * (10 - 1))
    }
}

.p-balloons-list__row+.p-balloons-list__row {
    margin-top: 2rem
}

.p-balloons-list__term,.p-balloons-list__data {
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: .5rem
}

@media screen and (min-width: 1024px) {
    .p-balloons-list__term,.p-balloons-list__data {
        -webkit-box-align:start;
        -ms-flex-align: start;
        align-items: flex-start;
        gap: 1rem
    }
}

.p-balloons-list__data {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    margin-top: 1rem
}

@media screen and (min-width: 1024px) {
    .p-balloons-list__data {
        margin-top:0
    }
}

.p-balloons-list__data .p-balloons-list__person {
    max-height: 5rem
}

@media screen and (min-width: 1024px) {
    .p-balloons-list__data .p-balloons-list__person {
        max-height:100%
    }
}

.p-balloons-list__data .p-balloons-list__balloon {
    -webkit-filter: drop-shadow(.375rem .375rem 0 #fef203);
    -webkit-transform: translateZ(0);
    filter: drop-shadow(.375rem .375rem 0 #fef203);
    margin-left: 0;
    margin-right: 1rem;
    padding: 1.75rem 1rem;
    transform: translateZ(0)
}

@media screen and (min-width: 768px) {
    .p-balloons-list__data .p-balloons-list__balloon {
        padding:1.75rem
    }
}

@media screen and (min-width: 1024px) {
    .p-balloons-list__data .p-balloons-list__balloon {
        margin-right:2rem;
        padding: 2.5rem
    }
}

.p-balloons-list__data .p-balloons-list__balloon:before {
    background: -webkit-gradient(linear,right top,left bottom,color-stop(49%,rgba(255,255,255,0)),color-stop(51%,#fff));
    background: linear-gradient(to left bottom,rgba(255,255,255,0) 49%,#fff 51%);
    left: 100%;
    right: auto
}

.p-balloons-list__data .p-balloons-list__txt {
    color: #ff220b
}

@media screen and (max-width: 767px) {
    .p-balloons-list__data .p-balloons-list__txt {
        font-size:20px;
        font-size: 1.25rem
    }
}

.p-balloons-list__person {
    -webkit-box-flex: 0;
    -ms-flex: 0 1 auto;
    -webkit-filter: drop-shadow(0 0 2rem rgba(255,34,11,.2));
    -webkit-transform: translateZ(0);
    filter: drop-shadow(0 0 2rem rgba(255,34,11,.2));
    flex: 0 1 auto;
    max-height: 4.125rem;
    transform: translateZ(0)
}

@media screen and (min-width: 1024px) {
    .p-balloons-list__person {
        max-height:100%
    }
}

.p-balloons-list__balloon {
    -webkit-filter: drop-shadow(.375rem .375rem 0 #fd9700);
    -webkit-transform: translateZ(0);
    background-color: #fff;
    border-radius: .5rem;
    filter: drop-shadow(.375rem .375rem 0 #fd9700);
    margin-left: 1rem;
    padding: 1.5rem 1rem;
    position: relative;
    transform: translateZ(0)
}

@media screen and (min-width: 768px) {
    .p-balloons-list__balloon {
        padding:1.5rem
    }
}

@media screen and (min-width: 1024px) {
    .p-balloons-list__balloon {
        margin-left:2rem;
        padding: 2rem
    }
}

.p-balloons-list__balloon:before {
    -webkit-transform: translateY(-50%);
    background: -webkit-gradient(linear,left top,right bottom,color-stop(49%,rgba(255,255,255,0)),color-stop(51%,#fff));
    background: linear-gradient(to right bottom,rgba(255,255,255,0) 49%,#fff 51%);
    content: "";
    display: block;
    height: .75rem;
    position: absolute;
    right: 100%;
    top: 50%;
    transform: translateY(-50%);
    width: 1rem
}

@media screen and (min-width: 1024px) {
    .p-balloons-list__balloon:before {
        height:1.5rem;
        width: 2rem
    }
}

.p-balloons-list__txt {
    color: #562e00;
    font-weight: 900
}

.p-page-head {
    background-color: #fffeed;
    padding: 4rem 0;
    position: relative
}

@media screen and (min-width: 1024px) {
    .p-page-head {
        padding:6rem 0
    }
}

.p-page-head:before,.p-page-head:after {
    aspect-ratio: 1/1;
    content: "";
    display: block;
    position: absolute;
    top: 0;
    width: 5rem;
    z-index: 1
}

@media screen and (min-width: 1024px) {
    .p-page-head:before,.p-page-head:after {
        width:10rem
    }
}

.p-page-head:before {
    background-image: -webkit-gradient(linear,left top,right bottom,color-stop(50%,#fd9700),color-stop(50%,rgba(253,151,0,0)));
    background-image: linear-gradient(to right bottom,#fd9700 50%,rgba(253,151,0,0) 50%);
    left: 0
}

.p-page-head:after {
    background-image: -webkit-gradient(linear,right top,left bottom,color-stop(50%,#fd9700),color-stop(50%,rgba(253,151,0,0)));
    background-image: linear-gradient(to left bottom,#fd9700 50%,rgba(253,151,0,0) 50%);
    right: 0
}

.p-page-head__img {
    -o-object-fit: cover;
    display: block;
    height: 100%;
    left: 0;
    object-fit: cover;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 0
}

.p-page-head__in {
    position: relative;
    z-index: 2
}

.p-post-single {
    margin: 0 auto;
    max-width: 66.25rem
}

.p-post-single__head {
    padding-bottom: 2rem;
    position: relative
}

@media screen and (min-width: 1024px) {
    .p-post-single__head {
        padding-bottom:3rem
    }
}

.p-post-single__head:after {
    background-color: #fef203;
    bottom: 0;
    content: "";
    height: .5rem;
    left: 0;
    position: absolute;
    width: 100%
}

.p-post-single__meta {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-box-align: end;
    -ms-flex-align: end;
    -ms-flex-wrap: wrap;
    align-items: flex-end;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    justify-content: space-between
}

.p-post-single__date {
    color: #fd9700;
    font-family: "Montserrat",sans-serif;
    font-weight: 700
}

.p-post-single__ttl {
    color: #562e00;
    font-weight: 900;
    letter-spacing: .1em;
    margin-top: 1rem;
    width: 100%
}

@media screen and (min-width: 1024px) {
    .p-post-single__ttl {
        margin-top:1.5rem
    }
}

.p-post-single__body {
    margin-top: 2.5rem
}

@media screen and (min-width: 1024px) {
    .p-post-single__body {
        margin-top:4rem
    }
}

.p-post-single__body h1,.p-post-single__body h2,.p-post-single__body h3,.p-post-single__body h4,.p-post-single__body h5,.p-post-single__body h6 {
    color: #562e00;
    font-weight: 900
}

.p-post-single__body h1,.p-post-single__body h2 {
    margin-bottom: 1.5rem;
    margin-top: 3rem;
    padding-bottom: .75rem;
    position: relative
}

.p-post-single__body h1:after,.p-post-single__body h2:after {
    background: -webkit-gradient(linear,left top,right top,from(#fd9700),to(#ff220b));
    background: linear-gradient(to right,#fd9700 0%,#ff220b 100%);
    bottom: 0;
    content: "";
    display: block;
    height: .25rem;
    left: 0;
    margin-bottom: 0;
    position: absolute;
    width: 100%
}

@media screen and (min-width: 1024px) {
    .p-post-single__body h1,.p-post-single__body h2 {
        margin-bottom:2rem;
        margin-top: 4rem;
        padding-bottom: 1.25rem
    }
}

.p-post-single__body h3 {
    margin-bottom: 1.5rem;
    margin-top: 2rem;
    padding-bottom: 1rem;
    position: relative
}

.p-post-single__body h3:after {
    background: -webkit-gradient(linear,left top,right top,from(#fd9700),to(#ff220b));
    background: linear-gradient(to right,#fd9700 0%,#ff220b 100%);
    bottom: 0;
    content: "";
    display: block;
    height: .25rem;
    left: 0;
    margin-bottom: 0;
    position: absolute;
    width: 3rem
}

@media screen and (min-width: 1024px) {
    .p-post-single__body h3 {
        margin-bottom:2rem;
        margin-top: 3rem;
        padding-bottom: 1.5rem
    }
}

.p-post-single__body h4,.p-post-single__body h5,.p-post-single__body h6 {
    margin-bottom: 1.5rem;
    margin-top: 2rem;
    padding: .5rem;
    padding-left: 1rem;
    position: relative
}

.p-post-single__body h4:after,.p-post-single__body h5:after,.p-post-single__body h6:after {
    background: -webkit-gradient(linear,left top,left bottom,from(#fd9700),to(#ff220b));
    background: linear-gradient(to bottom,#fd9700 0%,#ff220b 100%);
    content: "";
    display: block;
    height: 100%;
    left: 0;
    margin-bottom: 0;
    position: absolute;
    top: 0;
    width: .25rem
}

@media screen and (min-width: 1024px) {
    .p-post-single__body h4,.p-post-single__body h5,.p-post-single__body h6 {
        margin-bottom:2rem;
        margin-top: 3rem;
        padding: 1rem;
        padding-left: 1.25rem
    }
}

.p-post-single__body p+p {
    margin-top: 1.5rem
}

@media screen and (min-width: 1024px) {
    .p-post-single__body p+p {
        margin-top:2rem
    }
}

.p-post-single__body a {
    color: #ff220b;
    display: inline;
    text-decoration: underline
}

@media screen and (min-width: 1024px) {
    .p-post-single__body a {
        -webkit-transition:.3s;
        transition: .3s
    }

    .p-post-single__body a:hover {
        opacity: .7
    }
}

.p-post-single__body ul,.p-post-single__body ol {
    list-style: none;
    margin: 0;
    margin-top: 1.5rem;
    padding: 0
}

@media screen and (min-width: 1024px) {
    .p-post-single__body ul,.p-post-single__body ol {
        margin-top:2rem
    }
}

.p-post-single__body ul li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-size: 14px;
    font-size: .875rem
}

@media screen and (min-width: 1024px) {
    .p-post-single__body ul li {
        font-size:16px;
        font-size: 1rem
    }
}

.p-post-single__body ul li:before {
    color: #ff220b;
    content: "・"
}

.p-post-single__body ul li+li {
    margin-top: .5rem
}

@media screen and (min-width: 1024px) {
    .p-post-single__body ul li+li {
        margin-top:.75rem
    }
}

.p-post-single__body ol {
    counter-reset: numb
}

.p-post-single__body ol li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-size: 14px;
    font-size: .875rem
}

@media screen and (min-width: 1024px) {
    .p-post-single__body ol li {
        font-size:16px;
        font-size: 1rem
    }
}

.p-post-single__body ol li:before {
    color: #ff220b;
    content: counter(numb) ".";
    counter-increment: numb;
    margin-right: .25rem
}

.p-post-single__body ol li+li {
    margin-top: .5rem
}

@media screen and (min-width: 1024px) {
    .p-post-single__body ol li+li {
        margin-top:.75rem
    }
}

.p-post-single__body figure {
    -webkit-filter: drop-shadow(0 0 1rem rgba(255,34,11,.1));
    -webkit-transform: translateZ(0);
    filter: drop-shadow(0 0 1rem rgba(255,34,11,.1));
    margin-top: 1.5rem;
    transform: translateZ(0)
}

@media screen and (min-width: 1024px) {
    .p-post-single__body figure {
        margin-top:2rem
    }
}

.p-post-single__body figure img {
    border-radius: .5rem !important;
    display: inline-block;
    vertical-align: bottom
}

.p-post-single__body figure.wp-block-table {
    margin-bottom: 0;
    overflow-x: inherit
}

.p-post-single__body figcaption {
    font-size: 10px;
    font-size: .625rem;
    margin-top: .5rem;
    text-align: center
}

.p-post-single__body figcaption:before {
    content: "";
    display: block;
    height: 0;
    margin-top: calc((1 - 1.6) * .5em);
    width: 0
}

.p-post-single__body figcaption:after {
    content: "";
    display: block;
    height: 0;
    margin-bottom: calc((1 - 1.6) * .5em);
    width: 0
}

@media screen and (min-width: 1024px) {
    .p-post-single__body figcaption {
        font-size:12px;
        font-size: .75rem;
        margin-top: 1rem
    }
}

.p-post-single__body img {
    height: auto
}

.p-post-single__body blockquote {
    background-color: #fffeed;
    font-style: italic;
    margin-bottom: 0;
    margin-left: 0;
    margin-right: 0;
    margin-top: 1.5rem;
    padding: 2rem 1rem;
    position: relative
}

@media screen and (min-width: 768px) {
    .p-post-single__body blockquote {
        padding:2rem 1.5rem
    }
}

@media screen and (min-width: 1024px) {
    .p-post-single__body blockquote {
        margin-top:2rem;
        padding: 3rem 2rem
    }
}

.p-post-single__body blockquote:before {
    color: #fff;
    content: "";
    font-family: "Font Awesome 5 Free";
    font-size: 24px;
    font-size: 1.5rem;
    font-weight: 900;
    left: 1rem;
    line-height: 1;
    position: absolute;
    top: 1rem
}

@media screen and (min-width: 1024px) {
    .p-post-single__body blockquote:before {
        font-size:30px;
        font-size: 1.875rem;
        left: 1.5rem;
        top: 1.5rem
    }
}

.p-post-single__body blockquote p {
    font-size: 12px;
    font-size: .75rem
}

@media screen and (min-width: 1024px) {
    .p-post-single__body blockquote p {
        font-size:14px;
        font-size: .875rem
    }
}

.p-post-single__body blockquote * {
    position: relative
}

.p-post-single__body cite {
    color: #777;
    color: #777;
    display: block;
    font-size: 10px;
    font-size: .625rem;
    font-style: italic;
    margin-top: 1rem;
    text-align: right;
    text-decoration: none
}

@media screen and (min-width: 1024px) {
    .p-post-single__body cite {
        font-size:12px;
        font-size: .75rem;
        margin-top: 1.5rem
    }
}

.p-post-single__body cite:before {
    content: "－ ";
    display: inline-block
}

.p-post-single__body table th,.p-post-single__body table td {
    border: 1px solid #fd9700;
    padding: .75rem
}

@media screen and (min-width: 1024px) {
    .p-post-single__body table th,.p-post-single__body table td {
        padding:1rem
    }
}

.p-post-single__body table th {
    background-color: #ff220b;
    color: #fff;
    font-weight: 900
}

.p-post-pagination {
    -ms-flex-wrap: wrap;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    gap: 1.5rem;
    margin: 0 auto;
    max-width: 66.25rem
}

@media screen and (min-width: 640px) {
    .p-post-pagination {
        -webkit-box-pack:justify;
        -ms-flex-pack: justify;
        -webkit-box-align: center;
        -ms-flex-align: center;
        -ms-flex-wrap: nowrap;
        align-items: center;
        flex-wrap: nowrap;
        justify-content: space-between
    }
}

@media screen and (min-width: 1024px) {
    .p-post-pagination {
        gap:2rem
    }
}

.p-post-pagination__prev,.p-post-pagination__next {
    -webkit-box-flex: 1;
    -ms-flex: 1 0 calc(50% - .75rem);
    flex: 1 0 calc(50% - .75rem)
}

@media screen and (min-width: 640px) {
    .p-post-pagination__prev,.p-post-pagination__next {
        -webkit-box-flex:0;
        -ms-flex-positive: 0;
        -ms-flex-preferred-size: 2.5rem;
        flex-basis: 2.5rem;
        flex-grow: 0
    }
}

.p-post-pagination__prev {
    text-align: left
}

@media screen and (min-width: 640px) {
    .p-post-pagination__prev {
        -webkit-box-ordinal-group:2;
        -ms-flex-order: 1;
        order: 1
    }
}

.p-post-pagination__next {
    text-align: right
}

@media screen and (min-width: 640px) {
    .p-post-pagination__next {
        -webkit-box-ordinal-group:4;
        -ms-flex-order: 3;
        order: 3
    }
}

.p-post-pagination__back {
    -webkit-box-flex: 1;
    -ms-flex: 1 0 100%;
    flex: 1 0 100%;
    text-align: center
}

@media screen and (min-width: 640px) {
    .p-post-pagination__back {
        -webkit-box-flex:1;
        -ms-flex: 1 0 auto;
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        flex: 1 0 auto;
        order: 2
    }
}

.p-section {
    padding: 4rem 0
}

@media screen and (min-width: 1024px) {
    .p-section {
        padding:6rem 0
    }
}

.p-section--bg-primary-gray {
    background-color: #fffeed
}

.p-section--has-dot-bg-primary {
    background-color: #562e00;
    background-image: radial-gradient(rgba(255,255,255,.05) 24%,transparent 24%),radial-gradient(rgba(255,255,255,.05) 24%,transparent 24%);
    background-position: 0 0,15px 15px;
    background-size: 30px 30px
}

.p-section--has-dot-bg-primary-accent {
    background-color: #fd9700;
    background-image: radial-gradient(rgba(255,255,255,.1) 24%,transparent 24%),radial-gradient(rgba(255,255,255,.1) 24%,transparent 24%);
    background-position: 0 0,15px 15px;
    background-size: 30px 30px
}

.p-section--has-dot-bg-tertiary-accent {
    background-color: #fef203;
    background-image: radial-gradient(rgba(0,0,0,.02) 24%,transparent 24%),radial-gradient(rgba(0,0,0,.02) 24%,transparent 24%);
    background-position: 0 0,15px 15px;
    background-size: 30px 30px
}

.p-section--has-dot-bg-white {
    background-color: #fff;
    background-image: radial-gradient(rgba(0,0,0,.02) 24%,transparent 24%),radial-gradient(rgba(0,0,0,.02) 24%,transparent 24%);
    background-position: 0 0,15px 15px;
    background-size: 30px 30px
}

.p-section--has-stripe-bg-primary-accent {
    background-color: #fd9700;
    background-image: repeating-linear-gradient(-45deg,transparent,transparent 2rem,rgba(255,255,255,.1) 2rem,rgba(255,255,255,.1) 4rem)
}

.p-section--has-stripe-bg-secondary-accent {
    background-color: #ff220b;
    background-image: repeating-linear-gradient(-45deg,transparent,transparent 2rem,rgba(255,255,255,.1) 2rem,rgba(255,255,255,.1) 4rem)
}

.p-section--has-stripe-bg-tertiary-accent {
    background-color: #fef203;
    background-image: repeating-linear-gradient(-45deg,transparent,transparent 2rem,rgba(255,255,255,.2) 2rem,rgba(255,255,255,.2) 4rem)
}

.p-section--has-bg-primary-gray {
    background-color: #fffeed
}

.p-section--has-white-slant-top-x {
    position: relative
}

.p-section--has-white-slant-top-x:before,.p-section--has-white-slant-top-x:after {
    aspect-ratio: 1/1;
    content: "";
    display: block;
    position: absolute;
    top: 0;
    width: 5rem
}

@media screen and (min-width: 1024px) {
    .p-section--has-white-slant-top-x:before,.p-section--has-white-slant-top-x:after {
        width:10rem
    }
}

.p-section--has-white-slant-top-x:before {
    background-image: -webkit-gradient(linear,left top,right bottom,color-stop(50%,#fff),color-stop(50.1%,rgba(255,255,255,0)));
    background-image: linear-gradient(to right bottom,#fff 50%,rgba(255,255,255,0) 50.1%);
    left: 0
}

.p-section--has-white-slant-top-x:after {
    background-image: -webkit-gradient(linear,right top,left bottom,color-stop(50%,#fff),color-stop(50.1%,rgba(255,255,255,0)));
    background-image: linear-gradient(to left bottom,#fff 50%,rgba(255,255,255,0) 50.1%);
    right: 0
}

.p-section--has-white-slant-top-left {
    position: relative
}

.p-section--has-white-slant-top-left:before {
    aspect-ratio: 1/1;
    background-image: -webkit-gradient(linear,left top,right bottom,color-stop(50%,#fff),color-stop(50.1%,rgba(255,255,255,0)));
    background-image: linear-gradient(to right bottom,#fff 50%,rgba(255,255,255,0) 50.1%);
    content: "";
    display: block;
    left: 0;
    position: absolute;
    top: 0;
    width: 5rem
}

@media screen and (min-width: 1024px) {
    .p-section--has-white-slant-top-left:before {
        width:10rem
    }
}

.p-section--has-black-slant-top-x {
    position: relative
}

.p-section--has-black-slant-top-x:before,.p-section--has-black-slant-top-x:after {
    aspect-ratio: 1/1;
    content: "";
    display: block;
    position: absolute;
    top: 0;
    width: 5rem
}

@media screen and (min-width: 1024px) {
    .p-section--has-black-slant-top-x:before,.p-section--has-black-slant-top-x:after {
        width:10rem
    }
}

.p-section--has-black-slant-top-x:before {
    background-image: -webkit-gradient(linear,left top,right bottom,color-stop(50%,rgba(0,0,0,.1)),color-stop(50.1%,rgba(0,0,0,0)));
    background-image: linear-gradient(to right bottom,rgba(0,0,0,.1) 50%,rgba(0,0,0,0) 50.1%);
    left: 0
}

.p-section--has-black-slant-top-x:after {
    background-image: -webkit-gradient(linear,right top,left bottom,color-stop(50%,rgba(0,0,0,.1)),color-stop(50.1%,rgba(0,0,0,0)));
    background-image: linear-gradient(to left bottom,rgba(0,0,0,.1) 50%,rgba(0,0,0,0) 50.1%);
    right: 0
}

.p-section--has-black-slant-top-right {
    position: relative
}

.p-section--has-black-slant-top-right:before {
    aspect-ratio: 1/1;
    background-image: -webkit-gradient(linear,right top,left bottom,color-stop(50%,rgba(0,0,0,.1)),color-stop(50.1%,rgba(0,0,0,0)));
    background-image: linear-gradient(to left bottom,rgba(0,0,0,.1) 50%,rgba(0,0,0,0) 50.1%);
    content: "";
    display: block;
    position: absolute;
    right: 0;
    top: 0;
    width: 5rem
}

@media screen and (min-width: 1024px) {
    .p-section--has-black-slant-top-right:before {
        width:10rem
    }
}

.p-section--has-black-slant-right-bottom {
    position: relative
}

.p-section--has-black-slant-right-bottom:after {
    aspect-ratio: 1/1;
    background-image: -webkit-gradient(linear,right bottom,left top,color-stop(50%,rgba(0,0,0,.1)),color-stop(50.1%,rgba(0,0,0,0)));
    background-image: linear-gradient(to top left,rgba(0,0,0,.1) 50%,rgba(0,0,0,0) 50.1%);
    bottom: 0;
    content: "";
    display: block;
    position: absolute;
    right: 0;
    width: 5rem
}

@media screen and (min-width: 1024px) {
    .p-section--has-black-slant-right-bottom:after {
        width:10rem
    }
}

.p-section--has-black-slant-bottom-left {
    position: relative
}

.p-section--has-black-slant-bottom-left:after {
    aspect-ratio: 1/1;
    background-image: -webkit-gradient(linear,left bottom,right top,color-stop(50%,rgba(0,0,0,.1)),color-stop(50.1%,rgba(0,0,0,0)));
    background-image: linear-gradient(to top right,rgba(0,0,0,.1) 50%,rgba(0,0,0,0) 50.1%);
    bottom: 0;
    content: "";
    display: block;
    left: 0;
    position: absolute;
    width: 5rem
}

@media screen and (min-width: 1024px) {
    .p-section--has-black-slant-bottom-left:after {
        width:10rem
    }
}

.p-section--has-primary-accent-slant-top-right {
    position: relative
}

.p-section--has-primary-accent-slant-top-right:before {
    aspect-ratio: 1/1;
    background-image: -webkit-gradient(linear,right top,left bottom,color-stop(50%,#fd9700),color-stop(50.1%,rgba(253,151,0,0)));
    background-image: linear-gradient(to left bottom,#fd9700 50%,rgba(253,151,0,0) 50.1%);
    content: "";
    display: block;
    position: absolute;
    right: 0;
    top: 0;
    width: 5rem
}

@media screen and (min-width: 1024px) {
    .p-section--has-primary-accent-slant-top-right:before {
        width:10rem
    }
}

.p-section--has-primary-accent-slant-bottom-left {
    position: relative
}

.p-section--has-primary-accent-slant-bottom-left:after {
    aspect-ratio: 1/1;
    background-image: -webkit-gradient(linear,left bottom,right top,color-stop(50%,#fd9700),color-stop(50.1%,rgba(253,151,0,0)));
    background-image: linear-gradient(to top right,#fd9700 50%,rgba(253,151,0,0) 50.1%);
    bottom: 0;
    content: "";
    display: block;
    left: 0;
    position: absolute;
    width: 5rem
}

@media screen and (min-width: 1024px) {
    .p-section--has-primary-accent-slant-bottom-left:after {
        width:10rem
    }
}

.p-section--has-primary-accent-slant-bottom-x {
    position: relative
}

.p-section--has-primary-accent-slant-bottom-x:before,.p-section--has-primary-accent-slant-bottom-x:after {
    aspect-ratio: 1/1;
    bottom: 0;
    content: "";
    display: block;
    position: absolute;
    width: 5rem
}

@media screen and (min-width: 1024px) {
    .p-section--has-primary-accent-slant-bottom-x:before,.p-section--has-primary-accent-slant-bottom-x:after {
        width:10rem
    }
}

.p-section--has-primary-accent-slant-bottom-x:before {
    background-image: -webkit-gradient(linear,left bottom,right top,color-stop(50%,#fd9700),color-stop(50.1%,rgba(253,151,0,0)));
    background-image: linear-gradient(to top right,#fd9700 50%,rgba(253,151,0,0) 50.1%);
    left: 0
}

.p-section--has-primary-accent-slant-bottom-x:after {
    background-image: -webkit-gradient(linear,right bottom,left top,color-stop(50%,#fd9700),color-stop(50.1%,rgba(253,151,0,0)));
    background-image: linear-gradient(to top left,#fd9700 50%,rgba(253,151,0,0) 50.1%);
    right: 0
}

.p-section--has-secondary-accent-slant-bottom-left {
    position: relative
}

.p-section--has-secondary-accent-slant-bottom-left:after {
    aspect-ratio: 1/1;
    background-image: -webkit-gradient(linear,left bottom,right top,color-stop(50%,#ff220b),color-stop(50.1%,rgba(255,34,11,0)));
    background-image: linear-gradient(to top right,#ff220b 50%,rgba(255,34,11,0) 50.1%);
    bottom: 0;
    content: "";
    display: block;
    left: 0;
    position: absolute;
    width: 5rem
}

@media screen and (min-width: 1024px) {
    .p-section--has-secondary-accent-slant-bottom-left:after {
        width:10rem
    }
}

.p-section--has-primary-gray-slant-top-left {
    position: relative
}

.p-section--has-primary-gray-slant-top-left:before {
    aspect-ratio: 1/1;
    background-image: -webkit-gradient(linear,left top,right bottom,color-stop(50%,#fffeed),color-stop(50.1%,rgba(255,254,237,0)));
    background-image: linear-gradient(to right bottom,#fffeed 50%,rgba(255,254,237,0) 50.1%);
    content: "";
    display: block;
    left: 0;
    position: absolute;
    top: 0;
    width: 5rem
}

@media screen and (min-width: 1024px) {
    .p-section--has-primary-gray-slant-top-left:before {
        width:10rem
    }
}

.p-section--has-primary-gray-slant-bottom-left {
    position: relative
}

.p-section--has-primary-gray-slant-bottom-left:after {
    aspect-ratio: 1/1;
    background-image: -webkit-gradient(linear,left bottom,right top,color-stop(50%,#fffeed),color-stop(50.1%,rgba(255,254,237,0)));
    background-image: linear-gradient(to top right,#fffeed 50%,rgba(255,254,237,0) 50.1%);
    bottom: 0;
    content: "";
    display: block;
    left: 0;
    position: absolute;
    width: 5rem
}

@media screen and (min-width: 1024px) {
    .p-section--has-primary-gray-slant-bottom-left:after {
        width:10rem
    }
}

.p-section--stock {
    position: relative;
    z-index: 1
}

.p-section--stock .p-section__cars-img {
    -webkit-filter: drop-shadow(0 0 2rem rgba(255,34,11,.2));
    -webkit-transform: translateZ(0);
    bottom: -1.5rem;
    filter: drop-shadow(0 0 2rem rgba(255,34,11,.2));
    height: auto;
    max-height: 4rem;
    position: absolute;
    transform: translateZ(0);
    width: auto
}

@media screen and (min-width: 640px) {
    .p-section--stock .p-section__cars-img {
        max-height:5rem
    }
}

@media screen and (min-width: 768px) {
    .p-section--stock .p-section__cars-img {
        max-height:100%;
        max-width: 35.4%;
        width: 100%
    }
}

@media screen and (min-width: 1024px) {
    .p-section--stock .p-section__cars-img {
        bottom:-2rem;
        max-width: 35.4%
    }
}

@media screen and (min-width: 1280px) {
    .p-section--stock .p-section__cars-img {
        max-width:500px
    }
}

.p-section--stock .p-section__cars-img--left {
    left: -1rem
}

.p-section--stock .p-section__cars-img--right {
    right: -1rem
}

.p-section--top-about .p-section__in {
    position: relative
}

.p-section--top-about .p-section__in:after {
    -webkit-filter: drop-shadow(0 0 2rem rgba(255,34,11,.2));
    -webkit-transform: translateZ(0);
    aspect-ratio: 180/207;
    background: url(//kei59.com/wp/wp-content/themes/kei59/assets/css/../images/top/img_about_staff02.png) no-repeat center bottom/contain;
    bottom: -4rem;
    content: "";
    display: block;
    filter: drop-shadow(0 0 2rem rgba(255,34,11,.2));
    height: 3.5rem;
    position: absolute;
    right: 0;
    transform: translateZ(0);
    z-index: -1
}

@media screen and (min-width: 640px) {
    .p-section--top-about .p-section__in:after {
        height:8rem
    }
}

@media screen and (min-width: 768px) {
    .p-section--top-about .p-section__in:after {
        height:10rem
    }
}

@media screen and (min-width: 1024px) {
    .p-section--top-about .p-section__in:after {
        bottom:-6rem;
        height: 207px;
        right: 2rem
    }
}

.p-section--top-reason .p-section__in {
    position: relative
}

.p-section--top-reason .p-section__in:after {
    -webkit-filter: drop-shadow(0 0 2rem rgba(255,34,11,.2));
    -webkit-transform: translateZ(0);
    aspect-ratio: 180/207;
    background: url(//kei59.com/wp/wp-content/themes/kei59/assets/css/../images/top/img_reason_staff02.png) no-repeat center bottom/contain;
    bottom: -4rem;
    content: "";
    display: block;
    filter: drop-shadow(0 0 2rem rgba(255,34,11,.2));
    height: 3.5rem;
    position: absolute;
    right: 0;
    transform: translateZ(0);
    z-index: -1
}

@media screen and (min-width: 640px) {
    .p-section--top-reason .p-section__in:after {
        height:8rem
    }
}

@media screen and (min-width: 768px) {
    .p-section--top-reason .p-section__in:after {
        height:10rem
    }
}

@media screen and (min-width: 1024px) {
    .p-section--top-reason .p-section__in:after {
        bottom:-6rem;
        height: 207px;
        right: 2rem
    }
}

.p-section--about-point .p-section__head {
    -ms-flex-pack: distribute;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: .5rem;
    justify-content: space-around
}

@media screen and (min-width: 640px) {
    .p-section--about-point .p-section__head {
        -webkit-box-align:center;
        -ms-flex-align: center;
        align-items: center;
        gap: 1rem
    }
}

@media screen and (min-width: 1024px) {
    .p-section--about-point .p-section__head {
        -webkit-box-align:start;
        -ms-flex-align: start;
        align-items: flex-start
    }
}

.p-section--about-point .p-section__head:before,.p-section--about-point .p-section__head:after {
    -webkit-filter: drop-shadow(0 0 2rem rgba(255,34,11,.2));
    -webkit-transform: translateZ(0);
    aspect-ratio: 1/1;
    content: "";
    display: inline-block;
    filter: drop-shadow(0 0 2rem rgba(255,34,11,.2));
    max-width: 18.125rem;
    transform: translateZ(0);
    width: 100%
}

.p-section--about-point .p-section__head:before {
    background: url(//kei59.com/wp/wp-content/themes/kei59/assets/css/../images/about/img_point_staff01.png) no-repeat center center/contain
}

.p-section--about-point .p-section__head:after {
    background: url(//kei59.com/wp/wp-content/themes/kei59/assets/css/../images/about/img_point_staff02.png) no-repeat center center/contain
}

.p-section--about-point .p-section__head-in {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto
}

.p-section--about-check .p-section__in {
    position: relative
}

.p-section--about-check .p-section__in:after {
    -webkit-filter: drop-shadow(0 0 2rem rgba(255,34,11,.2));
    -webkit-transform: translateZ(0);
    aspect-ratio: 180/207;
    background: url(//kei59.com/wp/wp-content/themes/kei59/assets/css/../images/about/img_check_staff01.png) no-repeat center bottom/contain;
    bottom: -3.4rem;
    content: "";
    display: block;
    filter: drop-shadow(0 0 2rem rgba(255,34,11,.2));
    height: 5.5rem;
    position: absolute;
    right: 0;
    transform: translateZ(0);
    z-index: -1
}

@media screen and (min-width: 640px) {
    .p-section--about-check .p-section__in:after {
        height:6rem
    }
}

@media screen and (min-width: 768px) {
    .p-section--about-check .p-section__in:after {
        height:10rem
    }
}

@media screen and (min-width: 1024px) {
    .p-section--about-check .p-section__in:after {
        bottom:-5.3rem;
        right: 1rem
    }
}

@media screen and (min-width: 1280px) {
    .p-section--about-check .p-section__in:after {
        height:207px;
        right: 2rem
    }
}

.p-section--about-point-hachiouji .p-section__head {
    -ms-flex-pack: distribute;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: .5rem;
    justify-content: space-around
}

@media screen and (min-width: 640px) {
    .p-section--about-point-hachiouji .p-section__head {
        -webkit-box-align:center;
        -ms-flex-align: center;
        align-items: center;
        gap: 1rem
    }
}

@media screen and (min-width: 1024px) {
    .p-section--about-point-hachiouji .p-section__head {
        -webkit-box-align:start;
        -ms-flex-align: start;
        align-items: flex-start
    }
}

.p-section--about-point-hachiouji .p-section__head:before,.p-section--about-point-hachiouji .p-section__head:after {
    -webkit-filter: drop-shadow(0 0 2rem rgba(255,34,11,.2));
    -webkit-transform: translateZ(0);
    aspect-ratio: 1/1;
    content: "";
    display: inline-block;
    filter: drop-shadow(0 0 2rem rgba(255,34,11,.2));
    max-width: 18.125rem;
    transform: translateZ(0);
    width: 100%
}

.p-section--about-point-hachiouji .p-section__head:before {
    background: url(//kei59.com/wp/wp-content/themes/kei59/assets/css/../images/about/img_point-hachiouji_staff01.png) no-repeat center center/contain
}

.p-section--about-point-hachiouji .p-section__head:after {
    background: url(//kei59.com/wp/wp-content/themes/kei59/assets/css/../images/about/img_point-hachiouji_staff02.png) no-repeat center center/contain
}

.p-section--about-point-hachiouji .p-section__head-in {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto
}

.p-section--about-campaign {
    overflow: hidden
}

.p-section--about-campaign .p-section__body {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 0;
    justify-content: center;
    margin-top: 1rem
}

@media screen and (min-width: 640px) {
    .p-section--about-campaign .p-section__body {
        gap:1rem
    }
}

@media screen and (min-width: 1024px) {
    .p-section--about-campaign .p-section__body {
        gap:5rem;
        margin-top: 1.5rem
    }
}

.p-section--about-campaign .p-section__body:before,.p-section--about-campaign .p-section__body:after {
    -webkit-filter: drop-shadow(0 0 2rem rgba(255,34,11,.2)) drop-shadow(.5rem .5rem 0 #fff);
    -webkit-transform: translateZ(0);
    aspect-ratio: 258/306;
    content: "";
    display: inline-block;
    filter: drop-shadow(0 0 2rem rgba(255,34,11,.2)) drop-shadow(.5rem .5rem 0 #fff);
    max-width: 258px;
    transform: translateZ(0);
    width: 100%
}

@media screen and (min-width: 1024px) {
    .p-section--about-campaign .p-section__body:before,.p-section--about-campaign .p-section__body:after {
        -webkit-filter:drop-shadow(0 0 2rem rgba(255,34,11,.2)) drop-shadow(.75rem .75rem 0 #fff);
        filter: drop-shadow(0 0 2rem rgba(255,34,11,.2)) drop-shadow(.75rem .75rem 0 #fff)
    }
}

.p-section--about-campaign .p-section__body:before {
    background: url(//kei59.com/wp/wp-content/themes/kei59/assets/css/../images/about/img_campaign_staff01.png) no-repeat center bottom/contain
}

.p-section--about-campaign .p-section__body:after {
    background: url(//kei59.com/wp/wp-content/themes/kei59/assets/css/../images/about/img_campaign_staff02.png) no-repeat center bottom/contain
}

.p-section--about-campaign .p-section__body-in {
    -ms-flex-item-align: start;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    align-self: flex-start;
    flex: 0 0 auto;
    padding-bottom: 4rem;
    text-align: center
}

@media screen and (min-width: 1024px) {
    .p-section--about-campaign .p-section__body-in {
        padding-bottom:5.25rem
    }
}

.p-section--privacy {
    padding-bottom: 0
}

.p-section--privacy .p-section__foot {
    margin-top: 2.5rem;
    padding-bottom: 4rem;
    position: relative
}

.p-section--privacy .p-section__foot:before {
    background-color: #fd9700;
    background-image: repeating-linear-gradient(-45deg,transparent,transparent 2rem,rgba(255,255,255,.1) 2rem,rgba(255,255,255,.1) 4rem);
    bottom: 0;
    content: "";
    display: block;
    left: 0;
    position: absolute;
    top: 2.5rem;
    width: 100%
}

@media screen and (min-width: 1024px) {
    .p-section--privacy .p-section__foot:before {
        top:4rem
    }
}

@media screen and (min-width: 1024px) {
    .p-section--privacy .p-section__foot {
        margin-top:4rem;
        padding-bottom: 6rem
    }
}

.p-section--store-access {
    padding-bottom: 0
}

.p-section--store-access .p-section__in {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    background-color: #fef203;
    background-image: repeating-linear-gradient(-45deg,transparent,transparent 2rem,rgba(255,255,255,.2) 2rem,rgba(255,255,255,.2) 4rem);
    border-radius: .5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-direction: column;
    gap: 2rem;
    margin-bottom: 5rem;
    margin-top: 2.5rem;
    padding: 3rem 1rem 4rem;
    position: relative
}

.p-section--store-access .p-section__in:before,.p-section--store-access .p-section__in:after {
    -webkit-filter: drop-shadow(0 0 2rem rgba(255,34,11,.2)) drop-shadow(.25rem .25rem 0 #fd9700);
    -webkit-transform: translateZ(0);
    aspect-ratio: 180/195;
    bottom: 100%;
    content: "";
    display: inline-block;
    filter: drop-shadow(0 0 2rem rgba(255,34,11,.2)) drop-shadow(.25rem .25rem 0 #fd9700);
    height: 5rem;
    position: absolute;
    transform: translateZ(0);
    z-index: -1
}

@media screen and (min-width: 640px) {
    .p-section--store-access .p-section__in:before,.p-section--store-access .p-section__in:after {
        height:8rem
    }
}

@media screen and (min-width: 1024px) {
    .p-section--store-access .p-section__in:before,.p-section--store-access .p-section__in:after {
        -webkit-filter:drop-shadow(0 0 2rem rgba(255,34,11,.2)) drop-shadow(.5rem .5rem 0 #fd9700);
        filter: drop-shadow(0 0 2rem rgba(255,34,11,.2)) drop-shadow(.5rem .5rem 0 #fd9700);
        height: 195px
    }
}

.p-section--store-access .p-section__in:before {
    background: url(//kei59.com/wp/wp-content/themes/kei59/assets/css/../images/store/img_access_staff01.png) no-repeat center bottom/contain;
    left: .5rem
}

@media screen and (min-width: 640px) {
    .p-section--store-access .p-section__in:before {
        left:1rem
    }
}

@media screen and (min-width: 768px) {
    .p-section--store-access .p-section__in:before {
        left:2rem
    }
}

.p-section--store-access .p-section__in:after {
    background: url(//kei59.com/wp/wp-content/themes/kei59/assets/css/../images/store/img_access_staff02.png) no-repeat center bottom/contain;
    right: .5rem
}

@media screen and (min-width: 640px) {
    .p-section--store-access .p-section__in:after {
        right:1rem
    }
}

@media screen and (min-width: 768px) {
    .p-section--store-access .p-section__in:after {
        right:2rem
    }
}

@media screen and (min-width: 768px) {
    .p-section--store-access .p-section__in {
        -webkit-box-orient:horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        flex-direction: row;
        justify-content: center;
        padding: 3rem 1.5rem 4rem
    }
}

@media screen and (min-width: 1024px) {
    .p-section--store-access .p-section__in {
        gap:2.5rem;
        margin-bottom: 8rem;
        margin-top: 4rem;
        padding: 4.5rem 2rem 6rem
    }
}

.p-section--store-access .p-section__btn-wrap {
    -webkit-transform: translateY(-50.1%);
    left: 0;
    position: absolute;
    text-align: center;
    top: 100%;
    transform: translateY(-50.1%);
    width: 100%
}

.p-section--store-company .p-section__in {
    position: relative
}

.p-section--store-company .p-section__in:before,.p-section--store-company .p-section__in:after {
    -webkit-filter: drop-shadow(0 0 2rem rgba(255,255,255,.2)) drop-shadow(.25rem .25rem 0 #fff);
    -webkit-transform: translateZ(0);
    aspect-ratio: 180/207;
    bottom: -4rem;
    content: "";
    display: block;
    filter: drop-shadow(0 0 2rem rgba(255,255,255,.2)) drop-shadow(.25rem .25rem 0 #fff);
    height: 3.5rem;
    position: absolute;
    transform: translateZ(0);
    z-index: -1
}

@media screen and (min-width: 768px) {
    .p-section--store-company .p-section__in:before,.p-section--store-company .p-section__in:after {
        height:4rem
    }
}

@media screen and (min-width: 1024px) {
    .p-section--store-company .p-section__in:before,.p-section--store-company .p-section__in:after {
        -webkit-filter:drop-shadow(0 0 2rem rgba(255,255,255,.2)) drop-shadow(.5rem .5rem 0 #fff);
        bottom: -6rem;
        filter: drop-shadow(0 0 2rem rgba(255,255,255,.2)) drop-shadow(.5rem .5rem 0 #fff);
        height: 10rem
    }
}

@media screen and (min-width: 1280px) {
    .p-section--store-company .p-section__in:before,.p-section--store-company .p-section__in:after {
        height:207px
    }
}

.p-section--store-company .p-section__in:before {
    background: url(//kei59.com/wp/wp-content/themes/kei59/assets/css/../images/store/img_company_staff01.png) no-repeat center bottom/contain;
    left: 0
}

@media screen and (min-width: 1024px) {
    .p-section--store-company .p-section__in:before {
        left:2rem
    }
}

.p-section--store-company .p-section__in:after {
    background: url(//kei59.com/wp/wp-content/themes/kei59/assets/css/../images/store/img_company_staff02.png) no-repeat center bottom/contain;
    right: 0
}

@media screen and (min-width: 1024px) {
    .p-section--store-company .p-section__in:after {
        right:2rem
    }
}

.p-section--reason-selection {
    padding-bottom: 0
}

.p-section--reason-selection .p-section__head {
    -ms-flex-pack: distribute;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: .5rem;
    justify-content: space-around
}

@media screen and (min-width: 640px) {
    .p-section--reason-selection .p-section__head {
        -webkit-box-align:center;
        -ms-flex-align: center;
        align-items: center;
        gap: 1rem
    }
}

@media screen and (min-width: 1024px) {
    .p-section--reason-selection .p-section__head {
        -webkit-box-align:start;
        -ms-flex-align: start;
        align-items: flex-start
    }
}

.p-section--reason-selection .p-section__head:before,.p-section--reason-selection .p-section__head:after {
    -webkit-filter: drop-shadow(0 0 2rem rgba(255,34,11,.2));
    -webkit-transform: translateZ(0);
    aspect-ratio: 1/1;
    content: "";
    display: inline-block;
    filter: drop-shadow(0 0 2rem rgba(255,34,11,.2));
    max-width: 18.125rem;
    transform: translateZ(0);
    width: 100%
}

.p-section--reason-selection .p-section__head:before {
    background: url(//kei59.com/wp/wp-content/themes/kei59/assets/css/../images/reason/img_selection_staff01.png) no-repeat center center/contain
}

.p-section--reason-selection .p-section__head:after {
    background: url(//kei59.com/wp/wp-content/themes/kei59/assets/css/../images/reason/img_selection_staff02.png) no-repeat center center/contain
}

.p-section--reason-selection .p-section__head-in {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto
}

.p-section--reason-no1 .p-section__head {
    -ms-flex-pack: distribute;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: .5rem;
    justify-content: space-around
}

@media screen and (min-width: 640px) {
    .p-section--reason-no1 .p-section__head {
        -webkit-box-align:center;
        -ms-flex-align: center;
        align-items: center;
        gap: 1rem
    }
}

@media screen and (min-width: 1024px) {
    .p-section--reason-no1 .p-section__head {
        -webkit-box-align:start;
        -ms-flex-align: start;
        align-items: flex-start
    }
}

.p-section--reason-no1 .p-section__head:before,.p-section--reason-no1 .p-section__head:after {
    -webkit-filter: drop-shadow(0 0 2rem rgba(255,34,11,.2));
    -webkit-transform: translateZ(0);
    aspect-ratio: 1/1;
    content: "";
    display: inline-block;
    filter: drop-shadow(0 0 2rem rgba(255,34,11,.2));
    max-width: 18.125rem;
    transform: translateZ(0);
    width: 100%
}

.p-section--reason-no1 .p-section__head:before {
    background: url(//kei59.com/wp/wp-content/themes/kei59/assets/css/../images/reason/img_no1_staff01.png) no-repeat center center/contain
}

.p-section--reason-no1 .p-section__head:after {
    background: url(//kei59.com/wp/wp-content/themes/kei59/assets/css/../images/reason/img_no1_staff02.png) no-repeat center center/contain
}

.p-section--reason-no1 .p-section__head-in {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto
}

.p-section--reason-request .p-section__in {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -ms-flex-wrap: wrap;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    gap: 2rem;
    justify-content: center;
    margin-top: 5rem;
    position: relative
}

@media screen and (min-width: 640px) {
    .p-section--reason-request .p-section__in {
        margin-top:4rem
    }
}

.p-section--reason-request .p-section__in:before {
    -webkit-filter: drop-shadow(0 0 2rem rgba(255,34,11,.2));
    -webkit-transform: translateZ(0);
    aspect-ratio: 322/239;
    background: url(//kei59.com/wp/wp-content/themes/kei59/assets/css/../images/reason/img_request_staff01.png) no-repeat center bottom/contain;
    bottom: 100%;
    content: "";
    display: block;
    filter: drop-shadow(0 0 2rem rgba(255,34,11,.2));
    height: 4rem;
    position: absolute;
    right: 1rem;
    transform: translateZ(0);
    z-index: -1
}

@media screen and (min-width: 640px) {
    .p-section--reason-request .p-section__in:before {
        height:7rem;
        left: 1rem;
        right: auto
    }
}

@media screen and (min-width: 768px) {
    .p-section--reason-request .p-section__in:before {
        height:9rem
    }
}

@media screen and (min-width: 1024px) {
    .p-section--reason-request .p-section__in:before {
        height:12rem;
        left: 2rem
    }
}

@media screen and (min-width: 1280px) {
    .p-section--reason-request .p-section__in:before {
        height:239px
    }
}

@media screen and (min-width: 1024px) {
    .p-section--reason-request .p-section__in {
        gap:2.5rem;
        margin-top: 6rem
    }
}

@media screen and (min-width: 640px) {
    .p-section--reason-request .p-section__in>* {
        width:calc((100% - 2.5rem * (12 - 1)) / 12 * 6 + 2.5rem * (6 - 1))
    }
}

@media screen and (min-width: 1024px) {
    .p-section--reason-request .p-section__in>* {
        width:calc((100% - 2.5rem * (12 - 1)) / 12 * 4 + 2.5rem * (4 - 1))
    }
}

.p-section--reason-service .p-section__head {
    -ms-flex-pack: distribute;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: .5rem;
    justify-content: space-around
}

@media screen and (min-width: 640px) {
    .p-section--reason-service .p-section__head {
        -webkit-box-align:center;
        -ms-flex-align: center;
        align-items: center;
        gap: 1rem
    }
}

@media screen and (min-width: 1024px) {
    .p-section--reason-service .p-section__head {
        -webkit-box-align:start;
        -ms-flex-align: start;
        align-items: flex-start
    }
}

.p-section--reason-service .p-section__head:before,.p-section--reason-service .p-section__head:after {
    -webkit-filter: drop-shadow(0 0 2rem rgba(255,34,11,.2));
    -webkit-transform: translateZ(0);
    aspect-ratio: 1/1;
    content: "";
    display: inline-block;
    filter: drop-shadow(0 0 2rem rgba(255,34,11,.2));
    max-width: 18.125rem;
    transform: translateZ(0);
    width: 100%
}

.p-section--reason-service .p-section__head:before {
    background: url(//kei59.com/wp/wp-content/themes/kei59/assets/css/../images/reason/img_service_staff01.png) no-repeat center center/contain
}

.p-section--reason-service .p-section__head:after {
    background: url(//kei59.com/wp/wp-content/themes/kei59/assets/css/../images/reason/img_service_staff02.png) no-repeat center center/contain
}

.p-section--reason-service .p-section__head-in {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto
}

.p-section--recruit-personality {
    background: url(//kei59.com/wp/wp-content/themes/kei59/assets/css/../images/recruit/bg_personality.jpg) no-repeat center center/cover;
    background-color: #ff220b
}

.p-striped-table {
    -webkit-box-shadow: 0 0 2rem 0 rgba(255,34,11,.2);
    background-color: #fff;
    border-radius: .5rem;
    box-shadow: 0 0 2rem 0 rgba(255,34,11,.2);
    margin: 0 auto;
    max-width: 38.75rem;
    padding: 1.5rem 0
}

@media screen and (min-width: 1024px) {
    .p-striped-table {
        padding:2rem 0
    }
}

.p-striped-table--has-border {
    border: 1px solid #fd9700
}

.p-striped-table__row {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    display: -ms-grid;
    display: grid;
    gap: .75rem;
    padding: 1rem
}

@media screen and (min-width: 640px) {
    .p-striped-table__row {
        -ms-grid-columns:6.5rem auto;
        gap: 1rem;
        grid-template-columns: 6.5rem auto
    }
}

@media screen and (min-width: 768px) {
    .p-striped-table__row {
        padding:1rem 1.5rem
    }
}

@media screen and (min-width: 1024px) {
    .p-striped-table__row {
        -ms-grid-columns:8.5rem auto;
        grid-template-columns: 8.5rem auto;
        padding: 1rem 2rem
    }
}

.p-striped-table__row:nth-of-type(even) {
    background-color: #fffeed
}

.p-striped-table__row:nth-of-type(even) .p-striped-table__term {
    background-color: #ff220b
}

.p-striped-table__term {
    background-color: #fd9700;
    border-radius: .25rem;
    padding: .25rem .5rem;
    text-align: center
}

@media screen and (min-width: 1024px) {
    .p-striped-table__term {
        padding:.5rem 1rem
    }
}

.p-striped-table__term-txt {
    color: #fff;
    font-weight: 900
}

.p-striped-table__data {
    text-align: left
}

@media screen and (min-width: 640px) {
    .p-striped-table__data {
        padding:.25rem 0
    }
}

@media screen and (min-width: 1024px) {
    .p-striped-table__data {
        padding:.5rem 0
    }
}

.p-striped-table--lg {
    max-width: 66.25rem
}

.p-striped-table--mw-100 {
    max-width: 100%
}

.p-striped-table--no-shadow {
    -webkit-box-shadow: none;
    box-shadow: none
}

.p-attention-ttl {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-direction: column;
    text-align: center
}

.p-attention-ttl__bg-txt-wrap {
    background-color: #562e00;
    border-radius: .25rem;
    display: block;
    margin-bottom: 1rem;
    padding: .375rem 4rem .5rem
}

@media screen and (min-width: 1024px) {
    .p-attention-ttl__bg-txt-wrap {
        margin-bottom:1.5rem;
        padding: .35rem 5.5rem .5rem
    }
}

.p-attention-ttl__bg-txt {
    color: #fff;
    display: block;
    font-weight: 900;
    letter-spacing: .1em;
    line-height: 1
}

.p-attention-ttl__bg-txt:before {
    content: "";
    display: block;
    height: 0;
    margin-top: calc((1 - 1) * .5em);
    width: 0
}

.p-attention-ttl__bg-txt:after {
    content: "";
    display: block;
    height: 0;
    margin-bottom: calc((1 - 1) * .5em);
    width: 0
}

.p-attention-ttl__in {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: .75rem;
    justify-content: center
}

@media screen and (min-width: 1024px) {
    .p-attention-ttl__in {
        gap:1rem
    }
}

.p-attention-ttl__in:before,.p-attention-ttl__in:after {
    aspect-ratio: 1/1.344;
    content: "";
    display: block;
    width: 1.25rem
}

@media screen and (min-width: 1024px) {
    .p-attention-ttl__in:before,.p-attention-ttl__in:after {
        width:2rem
    }
}

.p-attention-ttl__in:before {
    background: url(//kei59.com/wp/wp-content/themes/kei59/assets/css/../images/common/icon_focus_left.svg) no-repeat center center/cover
}

.p-attention-ttl__in:after {
    background: url(//kei59.com/wp/wp-content/themes/kei59/assets/css/../images/common/icon_focus_right.svg) no-repeat center center/cover
}

.p-attention-ttl__sub-txt {
    color: #fff;
    display: block;
    font-weight: 900;
    letter-spacing: .1em;
    margin-bottom: .25rem
}

@media screen and (min-width: 1024px) {
    .p-attention-ttl__sub-txt {
        margin-bottom:.5rem
    }
}

.p-attention-ttl__main-txt {
    color: #562e00;
    display: block;
    font-weight: 900;
    letter-spacing: .1em
}

.p-attention-ttl--tertiary-accent-color .p-attention-ttl__in:before {
    background: url(//kei59.com/wp/wp-content/themes/kei59/assets/css/../images/common/icon_focus_left_tertiary-accent-color.svg) no-repeat center center/cover
}

.p-attention-ttl--tertiary-accent-color .p-attention-ttl__in:after {
    background: url(//kei59.com/wp/wp-content/themes/kei59/assets/css/../images/common/icon_focus_right_tertiary-accent-color.svg) no-repeat center center/cover
}

.p-icon-ttl {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-direction: column;
    text-align: center
}

.p-icon-ttl__icon {
    color: #fff;
    display: inline-block;
    font-size: 30px;
    font-size: 1.875rem;
    letter-spacing: 0;
    line-height: 1;
    margin-bottom: -3px
}

@media screen and (min-width: 1024px) {
    .p-icon-ttl__icon {
        font-size:36px;
        font-size: 2.25rem
    }
}

.p-icon-ttl__icon--mb-n1 {
    margin-bottom: -1px
}

.p-icon-ttl__icon--mb-n5 {
    margin-bottom: -5px
}

.p-icon-ttl__en-txt-wrap {
    background-color: #fff;
    border-radius: .25rem;
    display: inline-block;
    padding: .45rem 2.5rem .35rem
}

@media screen and (min-width: 1024px) {
    .p-icon-ttl__en-txt-wrap {
        padding:.45rem 4rem .35rem
    }
}

.p-icon-ttl__en-txt {
    color: #ff220b;
    display: block;
    font-family: "Raleway",sans-serif;
    font-weight: 900;
    letter-spacing: .1em;
    line-height: 1
}

.p-icon-ttl__en-txt:before {
    content: "";
    display: block;
    height: 0;
    margin-top: calc((1 - 1) * .5em);
    width: 0
}

.p-icon-ttl__en-txt:after {
    content: "";
    display: block;
    height: 0;
    margin-bottom: calc((1 - 1) * .5em);
    width: 0
}

.p-icon-ttl__ja-txt {
    color: #562e00;
    display: block;
    letter-spacing: .1em;
    margin-top: 1.25rem
}

@media screen and (min-width: 1024px) {
    .p-icon-ttl__ja-txt {
        margin-top:2rem
    }
}

.p-icon-ttl--primary-color .p-icon-ttl__icon {
    color: #562e00
}

.p-icon-ttl--primary-color .p-icon-ttl__en-txt-wrap {
    background-color: #562e00
}

.p-icon-ttl--primary-color .p-icon-ttl__en-txt {
    color: #fff
}

.p-icon-ttl--secondary-accent-color .p-icon-ttl__icon {
    color: #ff220b
}

.p-icon-ttl--secondary-accent-color .p-icon-ttl__en-txt-wrap {
    background-color: #ff220b
}

.p-icon-ttl--secondary-accent-color .p-icon-ttl__en-txt {
    color: #fff
}

.p-icon-ttl--sm .p-icon-ttl__icon {
    font-size: 18px;
    font-size: 1.125rem;
    margin-bottom: -1px
}

@media screen and (min-width: 1024px) {
    .p-icon-ttl--sm .p-icon-ttl__icon {
        font-size:24px;
        font-size: 1.5rem
    }
}

.p-icon-ttl--sm .p-icon-ttl__ja-txt {
    margin-top: .75rem
}

@media screen and (min-width: 1024px) {
    .p-icon-ttl--sm .p-icon-ttl__ja-txt {
        margin-top:1rem
    }
}

.p-callout-ttl {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: .75rem;
    justify-content: center
}

@media screen and (min-width: 1024px) {
    .p-callout-ttl {
        gap:1rem
    }
}

.p-callout-ttl:before,.p-callout-ttl:after {
    color: #fd9700;
    content: "";
    font-family: "Font Awesome 5 Free";
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 900;
    letter-spacing: 0;
    line-height: 1
}

@media screen and (min-width: 1024px) {
    .p-callout-ttl:before,.p-callout-ttl:after {
        font-size:24px;
        font-size: 1.5rem
    }
}

.p-callout-ttl:after {
    -webkit-transform: scaleX(-1);
    transform: scaleX(-1)
}

.p-callout-ttl__txt {
    color: #562e00;
    font-weight: 900;
    text-align: center
}

.p-callout-ttl--tel:before,.p-callout-ttl--tel:after {
    color: #ff220b
}

.p-callout-ttl--tel .p-callout-ttl__txt {
    color: #ff220b
}

.p-callout-ttl--mail:before,.p-callout-ttl--mail:after {
    color: #0aadff
}

.p-callout-ttl--mail .p-callout-ttl__txt {
    color: #0aadff
}

.p-callout-ttl--line:before,.p-callout-ttl--line:after {
    color: #06c755
}

.p-callout-ttl--line .p-callout-ttl__txt {
    color: #06c755
}

.p-stick-ttl {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-direction: column;
    text-align: center
}

.p-stick-ttl__en-txt {
    color: #562e00;
    font-family: "Raleway",sans-serif;
    font-weight: 900;
    letter-spacing: .1em;
    line-height: 1
}

.p-stick-ttl__en-txt:before {
    content: "";
    display: block;
    height: 0;
    margin-top: calc((1 - 1) * .5em);
    width: 0
}

.p-stick-ttl__en-txt:after {
    content: "";
    display: block;
    height: 0;
    margin-bottom: calc((1 - 1) * .5em);
    width: 0
}

.p-stick-ttl__bg-txt-wrap {
    background-color: #562e00;
    border-radius: .25rem;
    display: block;
    margin-top: -.35rem;
    padding: .4375rem 1.5rem
}

@media screen and (min-width: 1024px) {
    .p-stick-ttl__bg-txt-wrap {
        margin-top:-.45rem;
        padding: .4375rem 2rem
    }
}

.p-stick-ttl__bg-txt {
    color: #fff;
    display: block;
    font-weight: 900;
    letter-spacing: .1em
}

.p-stick-ttl__ja-txt {
    color: #562e00;
    font-weight: 900;
    margin-top: 1rem
}

@media screen and (min-width: 1024px) {
    .p-stick-ttl__ja-txt {
        margin-top:1.5rem
    }
}

.p-stick-ttl--p-lg .p-stick-ttl__bg-txt-wrap {
    padding: .4375rem 3rem
}

@media screen and (min-width: 768px) {
    .p-stick-ttl--p-lg .p-stick-ttl__bg-txt-wrap {
        padding:.4375rem 4rem
    }
}

@media screen and (min-width: 1024px) {
    .p-stick-ttl--p-lg .p-stick-ttl__bg-txt-wrap {
        padding:.4375rem 6rem
    }
}

.p-stick-ttl--p-xl .p-stick-ttl__bg-txt-wrap {
    padding: .4375rem 3rem
}

@media screen and (min-width: 768px) {
    .p-stick-ttl--p-xl .p-stick-ttl__bg-txt-wrap {
        padding:.4375rem 5rem
    }
}

@media screen and (min-width: 1024px) {
    .p-stick-ttl--p-xl .p-stick-ttl__bg-txt-wrap {
        padding:.4375rem 7.5rem
    }
}

.p-stick-ttl--bg-white .p-stick-ttl__en-txt {
    color: #fff
}

.p-stick-ttl--bg-white .p-stick-ttl__bg-txt-wrap {
    background-color: #fff
}

.p-stick-ttl--bg-white .p-stick-ttl__bg-txt {
    color: #ff220b
}

.p-bottom-line-ttl {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-direction: column;
    gap: 1.5rem
}

.p-bottom-line-ttl:after {
    background: -webkit-gradient(linear,left top,right top,from(#fd9700),to(#ff220b));
    background: linear-gradient(to right,#fd9700 0%,#ff220b 100%);
    content: "";
    display: block;
    height: .25rem;
    width: 3rem
}

.p-bottom-line-ttl__txt {
    color: #562e00;
    font-weight: 900;
    letter-spacing: .1em
}

.p-bottom-line-ttl--center {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center
}

@media screen and (min-width: 1024px) {
    .p-bottom-line-ttl--lg-gap {
        gap:2rem
    }
}

.p-bottom-line-ttl--white:after {
    background: 0 0;
    background-color: #fff
}

.p-bottom-line-ttl--white .p-bottom-line-ttl__txt {
    color: #fff
}

.u-none {
    display: none !important
}

.u-inline-block {
    display: inline-block !important
}

@media screen and (min-width: 640px) {
    .u-sm-none {
        display:none !important
    }

    .u-sm-inline-block {
        display: inline-block !important
    }
}

@media screen and (min-width: 768px) {
    .u-mu-none {
        display:none !important
    }

    .u-mu-inline-block {
        display: inline-block !important
    }

    .u-mu-block {
        display: block !important
    }
}

@media screen and (min-width: 1024px) {
    .u-lg-none {
        display:none !important
    }

    .u-lg-inline-block {
        display: inline-block !important
    }

    .u-lg-block {
        display: block !important
    }
}

@media screen and (min-width: 1280px) {
    .u-xl-none {
        display:none !important
    }
}

.u-mt-3 {
    margin-top: 1.5rem !important
}

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

.u-mt-8 {
    margin-top: 4rem !important
}

.u-mb-8 {
    margin-bottom: 4rem !important
}

.u-mt-n8 {
    margin-top: -4rem !important
}

.u-pt-0 {
    padding-top: 0 !important
}

.u-pb-0 {
    padding-bottom: 0 !important
}

.u-mx-auto {
    margin-right: auto !important
}

.u-mx-auto {
    margin-left: auto !important
}

@media screen and (min-width: 640px) {
    .u-ml-sm-1 {
        margin-left:.5rem !important
    }

    .u-mt-sm-6 {
        margin-top: 3rem !important
    }
}

@media screen and (min-width: 1024px) {
    .u-mt-lg-4 {
        margin-top:2rem !important
    }

    .u-mt-lg-6 {
        margin-top: 3rem !important
    }

    .u-mt-lg-8 {
        margin-top: 4rem !important
    }

    .u-mt-lg-12 {
        margin-top: 6rem !important
    }

    .u-mb-lg-12 {
        margin-bottom: 6rem !important
    }

    .u-mt-lg-n12 {
        margin-top: -6rem !important
    }
}

.u-fc-primary {
    color: #562e00 !important
}

.u-fc-primary-accent {
    color: #fd9700 !important
}

.u-fc-secondary-accent {
    color: #ff220b !important
}

.u-fc-tertiary-accent {
    color: #fef203 !important
}

.u-fc-white {
    color: #fff !important
}

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

.u-ta-l {
    text-align: left !important
}

.u-ta-c {
    text-align: center !important
}

@media screen and (min-width: 640px) {
    .u-ta-sm-c {
        text-align:center !important
    }
}

@media screen and (min-width: 768px) {
    .u-ta-md-c {
        text-align:center !important
    }
}

.u-tracking-wide {
    letter-spacing: .1em !important
}

.u-ff-palt {
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt"
}

.js-loading {
    background-color: #fff;
    bottom: 0;
    height: 100vh;
    height: 100dvh;
    left: 0;
    position: fixed;
    right: 0;
    top: 0;
    width: 100vw;
    z-index: 9999999
}

.js-loading.is-loaded {
    -webkit-transition: .3s;
    opacity: 0;
    transition: .3s;
    visibility: hidden
}
