.elementor-21894 .elementor-element.elementor-element-228085b1:not(.elementor-motion-effects-element-type-background), .elementor-21894 .elementor-element.elementor-element-228085b1 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#CFCFCF;}.elementor-21894 .elementor-element.elementor-element-228085b1{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-21894 .elementor-element.elementor-element-228085b1 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-21894 .elementor-element.elementor-element-1178e2bc:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap, .elementor-21894 .elementor-element.elementor-element-1178e2bc > .elementor-widget-wrap > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#c78f96;}.elementor-21894 .elementor-element.elementor-element-1178e2bc > .elementor-element-populated{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:0px 0px 0px 0px;}.elementor-21894 .elementor-element.elementor-element-1178e2bc > .elementor-element-populated > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-21894 .elementor-element.elementor-element-444b32b9 > .elementor-element-populated{padding:0px 0px 0px 0px;}.elementor-21894 .elementor-element.elementor-element-6aa960ba{color:var( --e-global-color-secondary );}.elementor-21894 .elementor-element.elementor-element-1f2dcb68{color:var( --e-global-color-090bd1c );}.elementor-21894 .elementor-element.elementor-element-c4175ee{color:var( --e-global-color-090bd1c );}.elementor-21894 .elementor-element.elementor-element-5f85ae0b{color:var( --e-global-color-secondary );}.elementor-21894 .elementor-element.elementor-element-44087216{color:var( --e-global-color-secondary );}.elementor-21894 .elementor-element.elementor-element-19c549f6{color:var( --e-global-color-090bd1c );}.elementor-21894 .elementor-element.elementor-element-3922d10e{color:var( --e-global-color-090bd1c );}.elementor-21894 .elementor-element.elementor-element-37d958f5{color:var( --e-global-color-secondary );}.elementor-21894 .elementor-element.elementor-element-a548ca8{color:var( --e-global-color-secondary );}.elementor-21894 .elementor-element.elementor-element-539f98f9{color:var( --e-global-color-secondary );}.elementor-21894 .elementor-element.elementor-element-12b306b3:not(.elementor-motion-effects-element-type-background), .elementor-21894 .elementor-element.elementor-element-12b306b3 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFDE5;}.elementor-21894 .elementor-element.elementor-element-12b306b3{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-21894 .elementor-element.elementor-element-12b306b3 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-21894 .elementor-element.elementor-element-29249479{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-21894 .elementor-element.elementor-element-29249479 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-21894 .elementor-element.elementor-element-5deccca7{text-align:justify;}.elementor-21894 .elementor-element.elementor-element-7ccabfa4{text-align:justify;}.elementor-21894 .elementor-element.elementor-element-47827c7b{width:var( --container-widget-width, 99.625% );max-width:99.625%;--container-widget-width:99.625%;--container-widget-flex-grow:0;}.elementor-21894 .elementor-element.elementor-element-de3ff1e{width:var( --container-widget-width, 99.625% );max-width:99.625%;--container-widget-width:99.625%;--container-widget-flex-grow:0;}.elementor-21894 .elementor-element.elementor-element-32928aed{text-align:justify;}.elementor-21894 .elementor-element.elementor-element-7a646640:not(.elementor-motion-effects-element-type-background), .elementor-21894 .elementor-element.elementor-element-7a646640 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFDE5;}.elementor-21894 .elementor-element.elementor-element-7a646640{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-21894 .elementor-element.elementor-element-7a646640 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-21894 .elementor-element.elementor-element-727b14 .elementor-wrapper{--video-aspect-ratio:1.77777;}.elementor-21894 .elementor-element.elementor-element-6cc55e93 .elementor-wrapper{--video-aspect-ratio:1.77777;}.elementor-21894 .elementor-element.elementor-element-54e4d52e{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-21894 .elementor-element.elementor-element-54e4d52e > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-21894 .elementor-element.elementor-element-3fb881ca{text-align:justify;}.elementor-21894 .elementor-element.elementor-element-2ea0ea5c{text-align:justify;}.elementor-21894 .elementor-element.elementor-element-689cc5e8{text-align:justify;}.elementor-21894 .elementor-element.elementor-element-6fed377b{text-align:justify;}.elementor-21894 .elementor-element.elementor-element-2dc78cb:not(.elementor-motion-effects-element-type-background), .elementor-21894 .elementor-element.elementor-element-2dc78cb > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F1F4F8;}.elementor-21894 .elementor-element.elementor-element-2dc78cb{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-21894 .elementor-element.elementor-element-2dc78cb > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-21894 .elementor-element.elementor-element-21c570fc:not(.elementor-motion-effects-element-type-background), .elementor-21894 .elementor-element.elementor-element-21c570fc > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-21894 .elementor-element.elementor-element-21c570fc{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-21894 .elementor-element.elementor-element-21c570fc > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-21894 .elementor-element.elementor-element-4f15d024 .elementor-accordion-item{border-color:#27ADDF;}.elementor-21894 .elementor-element.elementor-element-4f15d024 .elementor-accordion-item .elementor-tab-content{border-top-color:#27ADDF;}.elementor-21894 .elementor-element.elementor-element-4f15d024 .elementor-accordion-item .elementor-tab-title.elementor-active{border-bottom-color:#27ADDF;}/* Start custom CSS *//* ベース --------------------------------------------- */
.elementor-widget-container {
    color: #333;
    font-size: var(--base-size);
    font-weight: 400;
    font-family: "noto sans JP", Sans-Serif;
}
.elementor-section p,
.elementor-widget,
.elementor-widget:not(:last-child),
.elementor-element,
dl, dd {
    margin: 0;
}
.elementor-column-gap-default>.elementor-column>.elementor-element-populated {
    padding: 0;
}

/* 汎用 --------------------------------------------- */
.l-section {
    &:not(.l-section--intro) .elementor-column  {
        width: min(800px, 100%);
        margin: 0 auto;
    }
    & a {
        color: var(--e-global-color-b068409);
        text-decoration: underline;
    }
}
.elementor-widget-button.m-btn--cv .elementor-button {
    width: min(540px, 100%);
    margin: var(--size-s) auto  0 !important;
    display: block;
    padding: var(--size-s) 0;
    color: #fff;
    font-weight: 700;
    text-decoration: none;
    text-align: center;
    background: #e8464b;
    border: 0.1em solid #fff;
    box-shadow: 0 0.2em 0 0 rgba(0, 0, 0, 0.2);
    border-radius: 1em;
    transition: opacity 0.2s;
    & .text {
        display: block;
        font-size: 0.6em;
        margin-bottom: 0.5em;
    }
    &:hover {
        opacity: 0.7;
    }
}

.elementor-widget-heading.m-title--l .elementor-heading-title,
.elementor-widget-heading.m-title--m .elementor-heading-title,
.elementor-widget-heading.m-title--s .elementor-heading-title,
.l-section--fee .fee__area .m-text--desc {
    line-height: 1.4;
    color: #222;
    font-weight: 700;
}
.elementor-widget-heading.m-title--l .elementor-heading-title,
.l-section--fee .fee__area .m-text--desc {
    margin-bottom: var(--size-sm);
    font-size: var(--size-l);
    text-align: center;
}
.elementor-widget-heading.m-title--m .elementor-heading-title {
    margin: var(--size-s) 0;
    font-size: var(--size-sm);
}
.elementor-widget-heading.m-title--s .elementor-heading-title {
    margin: var(--size-s) 0 0.5em;
    font-size: var(--size-s);
}
.elementor-widget-heading.m-title--m + .elementor-widget-heading.m-title--s .elementor-heading-title {
    margin-top: 0;
}

.elementor-accordion .elementor-tab-title {
    background: #27addf;
}
.elementor-widget-accordion .elementor-accordion-title {
    font-size: var(--size-s);
}


/* intro --------------------------------------------- */
.l-section--intro {
    text-align: center;
    & p, & div {
        font-weight: 500;
    }
    & .m-text--intro__01 p strong,
    & .m-text--intro__02 p strong{
        line-height: 1.4;
        color: #e8464b;
    }
    & .m-text--intro__01 {
        margin: var(--size-s) 0;
        & p {
            color: #222;
            font-size: 2em;
            font-weight: 700;
        }
        & + div {
            margin-bottom:  var(--size-s);
        }
    }
    & .m-text--intro__02 {
        margin-top: var(--size-m);
        &  + .m-text--intro__02 {
            margin: var(--size-ss) 0 var(--size-m);
        }
        & p {
            width: min(25em, 100%) !important;
            margin: 0 auto;
            padding: 0.5em 0;
            color: #222;
            font-weight: 700;
            font-size: var(--size-s);
            background: #fff6b2;
        }
    }
     & .m-text--intro__03 {
        margin: var(--size-ll) 0 var(--size-s);
        color: #222;
        font-size: var(--size-s);
        & strong {
            display: block;
            margin: var(--size-ss) 0;
            font-weight: 700;
        }
    }
}

/* fee --------------------------------------------- */
.l-section--fee .elementor-widget-heading.m-title--m .elementor-heading-title {
    margin: var(--size-ll) 0 var(--size-s);
    text-align: center;
}
.m-list--plan p,
.m-list--plan ul {
    line-height: 1.6;
    text-align: justify;
}
.fee__area .m-list--plan .m-heading--l {
    padding: var(--size-s);
    max-height: none;
    font-size: var(--size-m);
}
.fee__area .m-list--plan .m-heading--l .headding__num {
    font-size: var(--size-l);
    
}
.fee__area .headding__num,
.fee__area .m-list--plan .m-heading--l.u-ta--c {
    font-weight: 700;
}
.fee__area .m-list--plan .headding__sub {
    display: block;
    margin-bottom: 0.55em;
    padding: 0.25em 0.5em;
    color: #000;
    font-weight: 700;
    background: #fff;
}
.m-list--plan .m-heading--s {
    color: var(--color-bgr);
    margin: 0.25em 0 0.5em;
    font-size: var(--base-size);
}
.m-list--plan p + .m-heading--s {
    margin-top: var(--base-size);
}
.m-list--plan ul li {
    list-style: disc;
}

/* reason --------------------------------------------- */
.l-section--reason {
    & .elementor-container {
        justify-content: space-between;
    }
    & .elementor-column.elementor-col-33 {
        width: calc(33.33% - var(--base-size));
        margin: 0 0 var(--size-s);
        & .elementor-widget-image .elementor-widget-container {
            position: relative;
            width: 80%;
            margin: 0 auto;
            &::before {
                position: absolute;
                top: -0.5em;
                left: -0.5em;
                display: flex;
                align-items: center;
                justify-content: center;
                width: 2em;
                height: 2em;
                color: #fff;
                font-weight: 700;
                font-size: var(--size-m);
                background: #8dbc1f;
                border-radius: 50%;
            }
        }
        &:nth-of-type(1) .elementor-widget-image .elementor-widget-container::before {
            content: "1";
        }
        &:nth-of-type(2) .elementor-widget-image .elementor-widget-container::before {
            content: "2";
        }
        &:nth-of-type(3) .elementor-widget-image .elementor-widget-container::before {
            content: "3";
        }
    }
    & .m-title--m .elementor-heading-title {
        margin: 0 0 var(--size-ss);
        color: #8dbc1f;
        font-size: var(--size-s);
        text-align: center;
    }
    & .elementor-widget-text-editor + .m-title--m .elementor-heading-title {
        margin-top: var(--size-s);
    }
    & .elementor-widget-image,
    & .elementor-widget-video {
        margin-bottom: var(--size-s);
    }
}

/* about --------------------------------------------- */
.l-section--about {
    & .no1__mark {
        width: min(500px, 90vw);
        line-height: 1.4;
        margin: 0 auto var(--size-s) !important;
        color: #000;
        font-size: var(--size-m);
        font-weight: 700;
        text-align: center;
        background: url("/qqkids/wp-content/themes/qqkids-new-compressed/assets/images/home/home-ranking-bg-r.png") right bottom / auto 80% no-repeat, url("/qqkids/wp-content/themes/qqkids-new-compressed/assets/images/home/home-ranking-bg-l.png") left bottom / auto 80% no-repeat;
        
        & img {
            display: block;
            width: min(240px, 45vw);
            margin: 0 auto var(--blank-size-s);
        }
    }
    & .elementor-widget-text-editor {
        margin-top: var(--base-size);
    }
    & .elementor-widget-video {
        margin-top: var(--size-m);
    }
}

/* voice --------------------------------------------- */
.l-section--voice .elementor-widget-heading.m-title--m .elementor-heading-title {
    margin-top: var(--size-m);
    text-align: center;
}
.m-box--voice {
    margin-bottom: var(--size-ss);
    padding: var(--size-sm);
    background: #fffde5;
    & .elementor-column:nth-of-type(1) {
        width: 150px;
        & img {
            overflow: hidden;
            display: block;
            border-radius: 50%;
        }
    }
    & .elementor-column:nth-of-type(2) {
        & .elementor-heading-title {
            color: #8dbc1f;
            font-size: calc(var(--base-size) * 1.2);
            line-height: 1.4;
        }
        & .elementor-widget-heading + .elementor-widget-text-editor {
            margin-bottom: var(--size-ss);
            & div {
                font-weight: 700;
            }
        }
    }
}



/* detail --------------------------------------------- */
.l-section--detail {
    & .l-box--detail {
        margin-bottom: var(--size-m);
        padding: var(--size-l);
        border: 1px solid #27addf;
        & dt {
            font-weight: 700;
        }
    }
    & .elementor-accordion .elementor-tab-title {
        padding: var(--base-size);
    }
    & .elementor-widget-accordion .elementor-accordion-icon,
    & .elementor-widget-accordion .elementor-accordion-title {
        color: #fff !important;
    }
    & .elementor-widget-accordion .elementor-accordion-title {
        text-decoration: none;
    }
    & .elementor-widget-accordion .elementor-tab-content {
        padding: var(--size-m) var(--size-l);
        color: #333;
        background: #fff;
    }
    & .elementor-widget-accordion .elementor-accordion-item:nth-of-type(2) {
        margin-top: 1px;
    }
    & .elementor-widget-accordion .elementor-accordion-item:nth-of-type(2) img {
        display: block;
        margin: var(--size-ss) 0 var(--size-s);
        &:nth-of-type(1) {
            width: 49%;
        }
    }
    & ol, & li {
        list-style: none;
        margin: 0;
    }
    & ol {
        padding: 0;
        & li {
            font-weight: 500;
            &:not(:last-of-type) {
                margin-bottom: var(--size-l);
            }
            & > a {
                display: block;
                margin-top: var(--size-ss);
            }
        }
    }
}

@media only screen and (min-width: 769px) {
    :root {
        --base-size: 16px;
        --size-ss: calc(var(--base-size) * 0.8);
        --size-s: calc(var(--base-size) * 1.4);
        --size-sm: calc(var(--base-size) * 1.8);
        --size-m: calc(var(--base-size) * 2);
        --size-l: calc(var(--base-size) * 2.4);
        --size-ll: calc(var(--base-size) * 3.6);
    }
    .elementor-widget-container {
        line-height: 1.75;
    }
    .l-section {
        padding: var(--size-ll) 0;
    }
    .elementor-widget-button.m-btn--cv .elementor-button {
        font-size: var(--size-m);
    }

    .l-section--intro {
        line-height: 2;
        & p, & div {
            font-size: calc(var(--base-size) + 4px);
        }
    }
    .m-box--voice {
        & .elementor-container {
            align-items: center;
            justify-content: space-between;
        }
        & .elementor-column {
            margin: 0 !important;
        }
        & .elementor-column:nth-of-type(2) {
            width: calc(100% - 170px);
        }
    }
    .l-section--detail {
         & dl {
            display: flex;
            flex-wrap: wrap;
            & dt {
                width: 5em;
            }
            & dd {
                width: calc(100% - 5em);
            }
        }
        & ol {
            display: flex;
            flex-wrap: wrap;
            justify-content: space-between;
            & li {
                width: calc(50% - var(--size-s));
            }
        }
    }
}
@media only screen and (max-width: 768px) {
    :root {
        --base-size: 14px;
        --size-ss: calc(var(--base-size) * 0.6);
        --size-s: calc(var(--base-size) * 1.2);
        --size-sm: calc(var(--base-size) * 1.6);
        --size-m: calc(var(--base-size) * 1.8);
        --size-l: calc(var(--base-size) * 2);
        --size-ll: calc(var(--base-size) * 3);
    }
    .elementor-widget-container {
        line-height: 1.68;
    }
    .l-section {
        padding: var(--size-ll) var(--size-s);
    }
    .elementor-widget-button.m-btn--cv .elementor-button {
        font-size: var(--size-sm);
    }
    .elementor-widget-heading.m-title--l .elementor-heading-title,
    .l-section--fee .fee__area .m-text--desc {
        overflow: hidden;
        margin-left: calc(var(--size-s) * -1);
        margin-right: calc(var(--size-s) * -1);
        font-size: var(--size-m);
    }
    .l-section--intro {
        line-height: 1.75;
        & p, & div {
            font-size: calc(var(--base-size) + 2px);
        }
    }
    .l-section--about {
        & .no1__mark {
            font-size: var(--size-s);
        }
        & .elementor-widget-video {
            margin-top: var(--base-ss);
        }
    }
    .l-section--reason .elementor-container,
    .m-box--voice .elementor-containe {
        display: block;
    }
    .l-section--reason {
        & .elementor-column.elementor-col-33 {
            width: auto;
            &:not(:last-of-type) {
                border-bottom: 1px solid #8dbc1f;
                margin-bottom: var(--size-m);
                padding-bottom: var(--size-m);  
            }
            & .elementor-widget-image .elementor-widget-container {
                max-width: 200px;
                &::before {
                    top: 0.5em;
                }
            }
        }
    }
    .m-box--voice {
        padding: var(--size-s);
        & .elementor-column:nth-of-type(1) {
            margin-bottom: var(--base-size);
        }
        & .elementor-heading-title,
        & .elementor-widget-heading + .elementor-widget-text-editor div {
            text-align: center;
        }
    }
  
    .l-section--detail {
        & .elementor-widget-accordion .elementor-tab-content,
        & .l-box--detail {
            padding: var(--size-s);
        }
        & dd {
            margin-bottom: var(--size-ss);
        }
    }
}/* End custom CSS */