/*
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
    aldila-online.com Mobile Site CSS
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
*/

:root {
    --bulma-body-line-height: 200%;

    /*------ aldila Color ------*/
    --al-col-header-bg: #F7EDED;
    --al-col-header-line: #CC9AAD;
    --al-col-header-title: #BF6000;
    --al-col-header-subtitle: #336633;
    --al-col-nav-link: #EC5986;
    --al-col-section-title: #BC7994;
    --al-col-section-bg: #fdfcf6;
    --al-col-sidebar-section-bg: #bcaa9a;
    --al-col-sidebar-bg: var(--al-col-section-bg);
    --al-col-footer-line: #c2ad96;
    --al-col-footer-bg: #6b5d5a;
    --al-col-base: var(--al-col-header-line);

    --al-nbc-logo:#C232A1;
    --al-nbc-nav-bg: rgba(232,202,183,0.8);
    --al-nbc-keybg: #DED0C4;


    --al-5color-wood: #33573b;
    --al-5color-fire: #d14443;
    --al-5color-earth: #eac53f;
    --al-5color-metal: #b4b4b4;
    --al-5color-water: #284366;

    --al-col-base-red: #f2566b;
    --al-col-base-blue: #6e8ccb;
    --al-col-base-yellow: #e8f256;

    /* -----swiper-----*/
    --easing: cubic-bezier(.2, 1, .2, 1);
    --transition: .8s var(--easing);
    --color-base: #f8f8f8;
    --color-gray: #ddd;
    --color-theme: #f5695f;
    --color-theme-darken: #f12617;
    --box-shadow: .8rem .8rem 1.2rem rgba(0, 0, 0, .05), -.8rem -.8rem 1.2rem #fff;
    --box-shadow-hover: 1rem 1rem 1.5rem rgba(0, 0, 0, .08), -1rem -1rem 1.5rem #fff;
    --box-shadow-inset: inset .8rem .8rem 1.2rem rgba(0, 0, 0, .05), inset -.8rem -.8rem 1.2rem #fff;
    --box-shadow-dark: .8rem .8rem 1.2rem rgba(0, 0, 0, .1), -.8rem -.8rem 1.2rem rgba(#fff, .2);
}


.al-lineheight-130 {
    line-height: 130%;
}

.al-lineheight-150 {
    line-height: 150%;
}

section.section + section.hero:not(.is-small) {
    margin-top: 3rem;
}

.card {
    border: 1px solid #d6d9e0;
}

.al-text-col-base {
    color: var(--al-col-base);
}

.al-text-col-header-title {
    color: var(--al-col-header-title);
}

.al-text-col-header-subtitle {
    color: var(--al-col-header-subtitle);
}

.al-text-col-section-title {
    color: var(--al-col-section-title);
}

.al-text-col-footer-bg {
    color: var(--al-col-footer-bg);
}

.al-text-col-red {
    color: var(--al-col-base-red);
}

.al-text-col-blue {
    color: var(--al-col-base-blue);
}

.al-text-col-yellow {
    color: var(--al-col-base-yellow);
}

.al-text-5color-wood {
    color: var(--al-5color-wood);
}

.al-text-5color-fire {
    color: var(--al-5color-fire);
}

.al-text-5color-earth {
    color: var(--al-5color-earth);
}

.al-text-5color-metal {
    color: var(--al-5color-metal);
}

.al-text-5color-water {
    color: var(--al-5color-water);
}

/* - - - - - -*/
.al-bg-col-base {
    background-color: var(--al-col-base);
}

.al-bg-col-header-title {
    background-color: var(--al-col-header-title);
}

.al-bg-col-header-subtitle {
    background-color: var(--al-col-header-subtitle);
}

.al-bg-col-section-title {
    background-color: var(--al-col-section-title);
}

.al-bg-col-footer-bg {
    background-color: var(--al-col-footer-bg);
}

.al-bg-col-red {
    background-color: var(--al-col-base-red);
}

.al-bg-col-blue {
    background-color: var(--al-col-base-blue);
}

.al-bg-col-yellow {
    background-color: var(--al-col-base-yellow);
}

.al-bg-5color-wood {
    background-color: var(--al-5color-wood);
}

.al-bg-5color-fire {
    background-color: var(--al-5color-fire);
}

.al-bg-5color-earth {
    background-color: var(--al-5color-earth);
}

.al-bg-5color-metal {
    background-color: var(--al-5color-metal);
}

.al-bg-5color-water {
    background-color: var(--al-5color-water);
}

/*- - - - - - - */
.al-bg-col-base-op5 {
    background-color: rgb(from var(--al-col-base) r g b / .5);
}

.al-bg-col-header-title-op5 {
    background-color: rgb(from var(--al-col-header-title) r g b / .5);
}

.al-bg-col-header-subtitle-op5 {
    background-color: rgb(from var(--al-col-header-subtitle) r g b / .5);
}

.al-bg-col-section-title-op5 {
    background-color: rgb(from var(--al-col-section-title) r g b / .5);
}

.al-bg-col-footer-bg-op5 {
    background-color: rgb(from var(--al-col-footer-bg) r g b / .5);
}

.al-bg-col-red-op5 {
    background-color: rgb(from var(--al-col-base-red) r g b / .5);
}

.al-bg-col-blue-op5 {
    background-color: rgb(from var(--al-col-base-blue) r g b / .5);
}

.al-bg-col-yellow-op5 {
    background-color: rgb(from var(--al-col-base-yellow) r g b / .5);
}

.al-bg-5color-wood-op5 {
    background-color: rgb(from var(--al-5color-wood) r g b / .5);
}

.al-bg-5color-fire-op5 {
    background-color: rgb(from var(--al-5color-fire) r g b / .5);
}

.al-bg-5color-earth-op5 {
    background-color: rgb(from var(--al-5color-earth) r g b / .5);
}

.al-bg-5color-metal-op5 {
    background-color: rgb(from var(--al-5color-metal) r g b / .5);
}

.al-bg-5color-water-op5 {
    background-color: rgb(from var(--al-5color-water) r g b / .5);
}

/* - - - - - - */
.al-bg-col-base-op7 {
    background-color: rgb(from var(--al-col-base) r g b / .7);
}

.al-bg-col-header-title-op7 {
    background-color: rgb(from var(--al-col-header-title) r g b / .7);
}

.al-bg-col-header-subtitle-op7 {
    background-color: rgb(from var(--al-col-header-subtitle) r g b / .7);
}

.al-bg-col-section-title-op7 {
    background-color: rgb(from var(--al-col-section-title) r g b / .7);
}

.al-bg-col-footer-bg-op7 {
    background-color: rgb(from var(--al-col-footer-bg) r g b / .7);
}

.al-bg-col-red-op7 {
    background-color: rgb(from var(--al-col-base-red) r g b / .7);
}

.al-bg-col-blue-op7 {
    background-color: rgb(from var(--al-col-base-blue) r g b / .7);
}

.al-bg-col-yellow-op7 {
    background-color: rgb(from var(--al-col-base-yellow) r g b / .7);
}

.al-bg-5color-wood-op7 {
    background-color: rgb(from var(--al-5color-wood) r g b / .7);
}

.al-bg-5color-fire-op7 {
    background-color: rgb(from var(--al-5color-fire) r g b / .7);
}

.al-bg-5color-earth-op7 {
    background-color: rgb(from var(--al-5color-earth) r g b / .7);
}

.al-bg-5color-metal-op7 {
    background-color: rgb(from var(--al-5color-metal) r g b / .7);
}

.al-bg-5color-water-op7 {
    background-color: rgb(from var(--al-5color-water) r g b / .7);
}

/* - - - - - - */

.al-bg-col-base-dark {
    background-color: hsl(from var(--al-col-base) h s calc(l - 20));
}

.al-bg-col-header-title-dark {
    background-color: hsl(from var(--al-col-header-title) h s calc(l - 20));
}

.al-bg-col-header-subtitle-dark {
    background-color: hsl(from var(--al-col-header-subtitle) h s calc(l - 20));
}

.al-bg-col-section-title-dark {
    background-color: hsl(from var(--al-col-section-title) h s calc(l - 20));
}

.al-bg-col-footer-bg-dark {
    background-color: hsl(from var(--al-col-footer-bg) h s calc(l - 20));
}

.al-bg-col-red-dark {
    background-color: hsl(from var(--al-col-base-red) h s calc(l - 20));
}

.al-bg-col-blue-dark {
    background-color: hsl(from var(--al-col-base-blue) h s calc(l - 20));
}

.al-bg-col-yellow-dark {
    background-color: hsl(from var(--al-col-base-yellow) h s calc(l - 20));
}

.al-bg-5color-wood-dark {
    background-color: hsl(from var(--al-5color-wood) h s calc(l - 20));
}

.al-bg-5color-fire-dark {
    background-color: hsl(from var(--al-5color-fire) h s calc(l - 20));
}

.al-bg-5color-earth-dark {
    background-color: hsl(from var(--al-5color-earth) h s calc(l - 20));
}

.al-bg-5color-metal-dark {
    background-color: hsl(from var(--al-5color-metal) h s calc(l - 20));
}

.al-bg-5color-water-dark {
    background-color: hsl(from var(--al-5color-water) h s calc(l - 20));
}

/* - - - - - - - -  */

.al-bg-col-base-light {
    background-color: hsl(from var(--al-col-base) h s calc(l + 20));
}

.al-bg-col-header-title-light {
    background-color: hsl(from var(--al-col-header-title) h s calc(l + 20));
}

.al-bg-col-header-subtitle-light {
    background-color: hsl(from var(--al-col-header-subtitle) h s calc(l + 20));
}

.al-bg-col-section-title-light {
    background-color: hsl(from var(--al-col-section-title) h s calc(l + 20));
}

.al-bg-col-footer-bg-light {
    background-color: hsl(from var(--al-col-footer-bg) h s calc(l + 20));
}

.al-bg-col-red-light {
    background-color: hsl(from var(--al-col-base-red) h s calc(l + 20));
}

.al-bg-col-blue-light {
    background-color: hsl(from var(--al-col-base-blue) h s calc(l + 20));
}

.al-bg-col-yellow-light {
    background-color: hsl(from var(--al-col-base-yellow) h s calc(l + 20));
}

.al-bg-5color-wood-light {
    background-color: hsl(from var(--al-5color-wood) h s calc(l + 20));
}

.al-bg-5color-fire-light {
    background-color: hsl(from var(--al-5color-fire) h s calc(l + 20));
}

.al-bg-5color-earth-light {
    background-color: hsl(from var(--al-5color-earth) h s calc(l + 20));
}

.al-bg-5color-metal-light {
    background-color: hsl(from var(--al-5color-metal) h s calc(l + 20));
}

.al-bg-5color-water-light {
    background-color: hsl(from var(--al-5color-water) h s calc(l + 20));
}



.al-rounded-box{
    border-radius:0.375rem;
    padding:1rem;
    line-height:1.5;
    box-shadow:inset 1px 1px 9px -4px #7f4e65;
}

.al-inline-tag{
    display: inline;
    border-radius: 0.375rem;
    line-height: 1.5;
    text-wrap: wrap;
    padding: 0.1rem 0.75rem;
}

.al-max-width-fit-content{
    max-width: fit-content;
    img{
        max-width: max-content;
        margin: 0 auto;
    }
}


.al-card-diagnosis .card-content{
    border: 10px solid #985575;
    border-top: none;
}

.l-inner {
    position: relative;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 10rem;
}

.l-section {
    border-top: 1px solid #eee;
}

.l-section .l-inner {
    padding-top: 8rem;
    padding-bottom: 8rem;
}

[class*=swiper]:focus {
    outline: none;
}

.slide-media,
.thumb-media {
    position: relative;
    overflow: hidden;
}

.slide-media img,
.thumb-media img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}


.swiper-button-prev, .swiper-button-next {
    display: grid;
    place-content: center;
    width: 6.4rem;
    height: 6.4rem;
    cursor: pointer;
    -webkit-transition: var(--transition);
    transition: var(--transition);
}

.swiper-button-prev::before, .swiper-button-next::before {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    content: "";
    border-radius: 50%;
    -webkit-box-shadow: var(--box-shadow);
    box-shadow: var(--box-shadow);
}

.swiper-button-prev::after, .swiper-button-next::after {
    width: 1.2rem;
    height: 1.2rem;
    content: "";
    border: solid var(--color-gray);
    border-width: 3px 3px 0 0;
}

.swiper-button-prev::after {
    margin-left: 0.4rem;
    -webkit-transform: rotate(-135deg);
    transform: rotate(-135deg);
}

.swiper-button-next::after {
    margin-right: 0.4rem;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

.swiper-button-disabled {
    pointer-events: none;
    opacity: 0;
}

.mv01 {
    margin-bottom: 2rem;
}

.mv01 .l-inner {
    padding-bottom: 0;
}

.mv01 .swiper-fade .swiper-slide {
    -webkit-transition-property: opacity, -webkit-transform !important;
    transition-property: opacity, -webkit-transform !important;
    transition-property: opacity, transform !important;
    transition-property: opacity, transform, -webkit-transform !important;
    pointer-events: none;
}

.mv01 .swiper-fade .swiper-slide-active {
    pointer-events: auto;
}

.mv01 .swiper-pagination {
    position: absolute;
    z-index: 1;
    top: 0;
    bottom: 0;
    left: 3.2rem;
    height: -webkit-max-content;
    height: -moz-max-content;
    height: max-content;
    margin: auto;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
}

.mv01 .swiper-pagination-bullet {
    display: block;
    width: 3px;
    height: 4rem;
    cursor: pointer;
    -webkit-transition: var(--transition);
    transition: var(--transition);
    background-color: rgba(255, 255, 255, 0.4);
}

.mv01 .swiper-pagination-bullet:not(:first-child) {
    margin-top: 0.8rem;
}

.mv01 .swiper-pagination-bullet-active {
    background-color: var(--color-theme);
}

.mv01 .slide-media {
    height: 300px;
}

.mv01 .slide-media img {
    -webkit-transition: 7s 1s ease-out;
    transition: 7s 1s ease-out;
}


.mv01 .slide-title {
    font-size: 150%;
    font-weight: 400;
    line-height: 1.6;
    position: absolute;
    left: 10%;
    bottom: 15%;
    text-align: left;
    color: #463445;
    text-shadow: 2px 2px 10px #ffffff, -2px 2px 10px #ffffff, 2px -2px 10px #ffffff, -2px -2px 10px #ffffff;
}

.mv01 .swiper-slide[class*=-active] .slide-media img {
    -webkit-transition-delay: 0s;
    transition-delay: 0s;
    -webkit-transform: scale(1.05);
    transform: scale(1.05);
}

.mv01 .swiper-slide[class*=-active] .slide-title {
    -webkit-animation: mv01-fadeIn 2s 0.5s var(--easing) both;
    animation: mv01-fadeIn 2s 0.5s var(--easing) both;
}

@-webkit-keyframes mv01-fadeIn {
    0% {
        -webkit-transform: scale(0.5);
        transform: scale(0.5);
        opacity: 0;
        -webkit-filter: blur(300px);
        filter: blur(300px);
    }
    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 1;
        -webkit-filter: blur(0);
        filter: blur(0);
    }
}

@keyframes mv01-fadeIn {
    0% {
        -webkit-transform: scale(0.5);
        transform: scale(0.5);
        opacity: 0;
        -webkit-filter: blur(300px);
        filter: blur(300px);
    }
    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 1;
        -webkit-filter: blur(0);
        filter: blur(0);
    }
}

@media only screen and (max-width: 1024px) {
    .mv01 .slide-media {
        /*        height: max(70vh, 70vw);*/
    }
}

@media only screen and (min-width: 1025px) {
    .swiper-button-prev::before, .swiper-button-next::before {
        -webkit-transition: var(--transition);
        transition: var(--transition);
    }

    .swiper-button-prev:hover::before, .swiper-button-next:hover::before {
        -webkit-transform: scale(1.2);
        transform: scale(1.2);
    }
}

/*-------------------------*/

.panel.al-sitemap a{
    line-height: 20px;
    padding: calc(0.75em + 6px) 1em;
}


@media screen and (min-width: 768px) {
    .is-clipped {
        overflow: auto !important;
    }
}

.al-header {
    border-top: 4px solid #CC9AAD;
    border-bottom: 2px solid #CC9AAD;
    background-color: #F7EDED;
}

.al-header .column:nth-child(2) {
    max-width: 630px;
}

.al-header .title {
    color: #BF6000;
}

.al-header .subtitle {
    color: #336633;
    font-size: 0.9rem;
}


.al-footer-link {
    border-top: solid 2px var(--al-col-footer-line);
    background-color: var(--al-col-footer-bg);
}

.al-footer-link .fixed-grid {
    margin: 3rem 3.5rem 2rem;
}

.al-footer-link a {
    font-size: 0.9em;
    color: var(--al-col-section-bg);
}

.al-footer-copyright {
    background-color: #4b413f;
    padding: 0.5rem 0 2rem;
    color: #a79e9b;
    font-size: 0.8em;
    text-align: center;
}

img.al-footer-logo {
    width: 200px;
    opacity: 0.3;
}





.al-banner .card{
    max-width: 355px;
    margin: 0 auto;
}
.al-banner .card-content .subtitle{
    font-size: 0.9rem;
    font-weight: 600;
}
.al-banner .card .al-figure-fixsized-center img{
    width:55%;
    border-start-start-radius:0;
    border-start-end-radius:0;
}


@media screen and (max-width: 768px) {
    .section.al-banner {
        padding: 50px 15vw;
    }
}

.content li + li {
    margin-top: 0;
}

.al-caution {
    font-weight: bolder;
    border: solid 2px #25262b;
    background-color: #f3fe40;
    display: inline-block;
    line-height: 1.5;
    justify-content: center;
    padding-left: 0.3em;
    padding-right: 0.3em;
    border-radius: 4px;
    box-shadow: 0 0 0 2px #f3fe40;
    margin: 0 10px;
    font-size: 0.9em;
}

.al-caution + b, .al-caution + strong {
    font-size: 0.9em;
}

.is-underlined {
    text-decoration: underline !important;
    text-decoration-thickness: 0.4em !important;
    text-decoration-color: rgba(252, 81, 133, 0.4) !important;
    text-underline-offset: -0.2em !important;
    text-decoration-skip-ink: none !important;
}

.is-underlined-blue {
    text-decoration: underline;
    text-decoration-thickness: 0.4em;
    text-decoration-color: rgba(0, 148, 217, 0.4);
    text-underline-offset: -0.2em;
    text-decoration-skip-ink: none;
}

.al-word-highlight {
    padding: 2px;
    border-radius: 3px;
}


.al-subtitle-bottomline {
    border-bottom: 2px solid #D2D2D2;
    padding-bottom: 10px;
    padding-top: 5px;
    margin-bottom: 0.5em;
}

@media screen and (max-width: 768px) {
    .media-content {
        overflow-x: visible;
    }
}

.al-404-box{
    padding: 90px 30px;
    border-radius: 10px;
}



/*------ Layout ------*/


.al-figure-fixsized-center {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}

.al-figure-fixsized-center img {
    width: fit-content;
}


.al-float-left {
    float: left;
    margin: 1rem 1rem 1rem 0;
    width: max-content;
}

.al-float-left-50 {
    float: left;
    margin: 1rem 1rem 1rem 0;
    max-width: 50%;
}

.al-float-right {
    float: right;
    margin: 1rem 0 1rem 1rem;
    width: max-content;
}

.al-float-right-50 {
    float: right;
    margin: 1rem 0 1rem 1rem;
    max-width: 50%;
}

.al-float-clear {
    clear: both;
}

@media screen and (max-width: 768px) {
    .al-float-left.al-responsive, .al-float-right.al-responsive, .al-float-left-50.al-responsive, .al-float-right-50.al-responsive {
        float: none;
        margin: 0 auto;
        max-width: max-content;
        width: 100%;
        display: block;
    }
}

/*----- 5thelem04 -----*/
.al-card-color {
    display: flex;
}

.al-card-color .card-header {
    border-top-left-radius: 0.75rem;
    border-bottom-left-radius: 0.75rem;
}

.al-card-color .card-content {
    line-height: 145%;
}

.al-card-color .card-content dd {
    line-height: 120%;
}

.al-card-color-title {
    font-weight: 900;
    text-shadow: 2px 2px 1.5px #FFF,
    -2px -2px 1.5px #FFF,
    -2px 2px 1.5px #FFF,
    2px -2px 1.5px #FFF,
    0 2px 1.5px #FFF,
    0 -2px 1.5px #FFF,
    -2px 0 1.5px #FFF,
    2px 0 1.5px #FFF;
    border-top-left-radius: 0.75rem;
    border-bottom-left-radius: 0.75rem;
}

.al-card-color-title-red {
    background-color: #e2041b;
    color: #91000f;
}

.al-card-color-title-pink {
    background-color: #f09199;
    color: #885458;
}

.al-card-color-title-yellow {
    background-color: #e6b422;
    color: #876d18;
}

.al-card-color-title-orange {
    background-color: #ee7800;
    color: #a14f02;
}

.al-card-color-title-green {
    background-color: #007b43;
    color: #01532d;
}

.al-card-color-title-blue {
    background-color: #0095d9;
    color: #005c87;
}

.al-card-color-title-purple {
    background-color: #884898;
    color: #60346e;
}

.al-card-color-title-white {
    background-color: #ffffff;
    color: #2b2b2b;
}

.al-card-color-title-grey {
    background-color: #7d7d7d;
    color: #494949;
}

.al-card-color-title-black {
    background-color: #000000;

}

/* ---- 5thelem06.html ---- */
table.al-table-5foods,
table.al-table-3foods {
    width: 130%;
}

table.al-table-5foods tr th,
table.al-table-3foods tr th {
    font-size: 1.2em;
    min-width: 8rem;
    vertical-align: middle;
    text-align: center !important;
}

table.al-table-5foods tr.al-wood th {
    background-color: #B2FF99;
}

table.al-table-5foods tr.al-wood td {
    background-color: #E8FEE1;
}

table.al-table-5foods tr.al-fire th {
    background-color: #FFCC99;
}

table.al-table-5foods tr.al-fire td {
    background-color: #FEEFE1;
}

table.al-table-5foods tr.al-earth th {
    background-color: #FFFF99;
}

table.al-table-5foods tr.al-earth td {
    background-color: #FFFED7;
}

table.al-table-5foods tr.al-metal th {
    background-color: #FFFFFF;
}

table.al-table-5foods tr.al-metal td {
    background-color: #FFFFFF;
}

table.al-table-5foods tr.al-water th {
    background-color: #656565;
    color: #ffffff;
}

table.al-table-5foods tr.al-water td {
    background-color: #EFEFF0;
}

table.al-table-3foods tr.al-hot th {
    background-color: #FFACAC;
}

table.al-table-3foods tr.al-hot td {
    background-color: #FFE4E4;
}

table.al-table-3foods tr.al-neutral th {
    background-color: #FFFFAC;
}

table.al-table-3foods tr.al-neutral td {
    background-color: #FFFFE4;
}

table.al-table-3foods tr.al-cold th {
    background-color: #ACDFFF;
}

table.al-table-3foods tr.al-cold td {
    background-color: #E4FAFF;
}

/* ---- beauty04.html ---- */
table.al-table-merit {
    width: 100%;
}

table.al-table-merit th {
    width: 3rem;
    padding: 0 1rem;
    vertical-align: middle;
    text-align: center;
}

table.al-table-merit tr.lv1 th {
    background-color: #e3b278;
}

table.al-table-merit tr.lv2 th {
    background-color: #82a7cf;
}

table.al-table-merit tr.lv1 td {
    background-color: #f4e4d0;
}

table.al-table-merit tr.lv2 td {
    background-color: #d2e0ed;
}


/* ---- beauty07.html ---- */
table.al-table-horizontal {
    width: 150%;
}

table.al-table-horizontal th {
    vertical-align: middle;
    text-align: center;
    background-color: #FFE4E4;
}

table.al-table-horizontal td {
    background-color: #FFFFE4;
}


/* ---- beauty02.html / care04.html ----*/

.al-card-head-left {
    display: flex;
}

.al-card-head-left .card-header {
    border-top-left-radius: 0.75rem;
    border-bottom-left-radius: 0.75rem;
}

.al-card-head-left .card-header-title {
    padding: 0;
}

.al-card-head-left .card-header-title .image {
    width: max-content;
}

.al-card-head-left dd {
    line-height: 135%;
}

.al-card-head-left .card-header-title .image.al-white-gradient::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: linear-gradient(0deg, rgb(255 255 255), rgba(255, 255, 255, 0) 20% 80%, rgb(255 255 255));
}



/* swiper article list*/
.al-swiper-article-list-small .swiper-slide {
    width: 200px;
    height: auto;
    display: flex;
    box-sizing: border-box;
}

/*.al-swiper-article-list-small::after {*/
    .swiper::after {
    font-weight: 900;
    content: attr(data-title);
    font-size: 25px;
    color: #b3a4a8b5;
    position: absolute;
    top: 20px;
    z-index: 0;
    letter-spacing: 2px;
    line-height: 150%;

    width: 27%;
    left: 7%;
    @media screen and (min-width: 769px) {
        width: 27%;
        left: 17%;
    }
    @media screen and (min-width: 1024px) {
        width: 18%;
        left: 24%;
    }
    @media screen and (min-width: 1408px) {
        width: 15%;
        left: 30%;
    }
}

.al-swiper-btn-list{
    position: absolute;
    bottom: 50px;
    left: 7%;
    @media screen and (min-width: 769px) {
        left: 17%;
    }
    @media screen and (min-width: 1024px) {
        left: 24%;
    }
    @media screen and (min-width: 1408px) {
        left: 30%;
    }
}



.al-card-article-list-small {
    width: 200px;
    height: 190px;
    overflow: hidden;
}

.al-card-article-list-small .card-image img {
    width: 198px;
    height: 125px;
    object-fit: cover;
    border: 5px solid #FFF;
}

.al-card-article-list-small .card-content {
    padding: 0 12px;
    z-index: 2;
    position: relative;
    display:flex;
    align-items: center;
    height:50px;
}

.al-card-article-list-small .card-content .content p {
    font-size: 14.5px;
    font-weight: 700;
    line-height: 150%;
}


.al-card-article-list-small::after {
    font-family: 'Font Awesome 6 Free';
    font-weight: 900;
    content: '\f35a';
    font-size: 50px;
    color: #fda5c04d;
    position: absolute;
    width: 50px;
    height: 50px;
    bottom: 0;
    right: 10px;
    z-index: 1;
}



.al-card-article-list-medium,
.al-card-title-list-medium{
    overflow: hidden;

    .card-image img {
        width: 100%;
        height: 120px;
        object-fit: cover;
    }
    .card-content {
        z-index: 2;
        position: relative;
        height:190px;
    }
    .media-content {
        display: flex;
        align-items: center;
        height: 45px;
    }
    .card-content .content p {
        overflow: hidden;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 4;
        padding-right:50px;
    }
}
.al-card-article-list-medium::after,
.al-card-title-list-medium::after{
    font-family: 'Font Awesome 6 Free';
    font-weight: 900;
    content: '\f35a';
    font-size: 50px;
    color: #fda5c04d;
    position: absolute;
    width: 60px;
    height: 60px;
    bottom: 20px;
    right: 7px;
    z-index: 1;
}

.al-card-title-list-medium{
    .card-image img {
        height: 100px;
    }
    .card-content {
        height:inherit;
        padding: 0 7px;
    }
    .media-content {
        height:35px;
    }
}
.al-card-title-list-medium::after {
    bottom: -12px;
}





/* --- al-card-article-list-large --- */
.al-card-article-list-large {
    height: 160px;
    overflow: hidden;
}

.al-card-article-list-large .media img {
    width: 180px;
    height: 160px;
    object-fit: cover;
    border: 5px solid #FFF;
}

.al-card-article-list-large .card-content {
    padding: 5px 12px 0 12px;
    z-index: 2;
    position: relative;
}

.al-card-article-list-large .card-content .content p {
    font-size: 14.5px;
    font-weight: 700;
}

.al-card-article-list-large::after {
    font-family: 'Font Awesome 6 Free';
    font-weight: 900;
    content: '\f35a';
    font-size: 50px;
    color: #fda5c04d;
    position: absolute;
    width: 50px;
    height: 50px;
    bottom: 0;
    right: 10px;
    z-index: 1;
}

/* --- Read More Container --- */
.al-read-more-container{
    position: relative;
    height: 290px;
    overflow: hidden;
    transition: .4s;
    box-sizing: border-box;
}

.al-read-more-container:before{
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 100px;
    background: rgb(0,0,0);
    background: linear-gradient(0deg, rgba(255,255,255,1) 70%, rgba(255,255,255,0) 100%);
    transition: .4s;
}
.al-read-more-container.active:before{
    opacity: 0;
    visibility: hidden;
}
.al-read-more-container .button{
    position: absolute;
    left: 50%;
    bottom: 20px;
    transform: translateX(-50%);
}
.al-read-more-container .button .icon i {
    --fa: "\f13a";
}

.al-read-more-container.active .button .icon i {
    --fa: "\f139";
}



/* --- Card Components on Swiper (food02.html,food03.html) --- */
.al-card-on-swiper {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
}

.swiper-slide:has(.al-card-on-swiper) {
    height: auto;
    width: 350px;
    display: flex;
}
.al-swiper-aromaoil .swiper-slide {
    height: auto;
    width: fit-content;
    display: flex;
}


/* --- Breadcrumb ---*/
.al-breadcrumb ul, .al-breadcrumb ol {
    flex-wrap: nowrap;
}

.al-breadcrumb {
    display: flex;
    gap: 0 20px;
    list-style: none;
    padding: 6px 0 6px 18px;
    border-radius: 3px;
    font-size: .9em;
    overflow-x: auto;
    scrollbar-width: none;
}

.al-breadcrumb li {
    display: flex;
    align-items: center;
    position: relative;
    padding-right: 20px;
}

.al-breadcrumb li:not(:last-child)::before,
.al-breadcrumb li:not(:last-child)::after {
    position: absolute;
    width: 0;
    height: 0;
    border-top: 20px solid transparent;
    border-bottom: 20px solid transparent;
    content: '';
}

.al-breadcrumb li:not(:last-child)::before {
    right: 0;
    border-left: 10px solid #c6cdd3;
}

.al-breadcrumb li:not(:last-child)::after {
    right: 1px;
    border-left: 10px solid #f2f2f2;
}

.al-breadcrumb a {
    text-decoration: none;
}


/* --- List with Number ---*/
.al-list-box-with-number {
    list-style-type: none;
    padding: 1em;
    border: 2px solid #fc5185;
    counter-reset: li;
    margin-right: 2em;
}

.al-list-with-number {
    list-style-type: none;
    counter-reset: li;
    margin-inline-start: 0 !important;
}

.al-list-box-with-number li,
.al-list-with-number li {
    /*display: flex;*/
    list-style: none;
    align-items: baseline;
    padding: .3em;
    /*flex-wrap: wrap;*/
}

.al-list-box-with-number li::before,
.al-list-with-number li::before {
    display: inline-block;
    min-width: 1.7em;
    margin-right: 8px;
    border-radius: 50%;
    background-color: #fc5185;
    color: #fff;
    font-weight: bold;
    font-size: .75em;
    line-height: 1.7em;
    text-align: center;
    content: counter(li);
    counter-increment: li;
}


/* --- dt List with Number ---*/
.al-dl-list-box-with-number {
    list-style-type: none;
    padding: 1em;
    border: 2px solid #fc5185;
    counter-reset: dt;
    margin-right: 2em;
}

.al-dl-list-with-number {
    list-style-type: none;
    counter-reset: dt;
    margin-inline-start: 0 !important;
}

.al-dl-list-box-with-number dt,
.al-dl-list-with-number dt {
    display: flex;
    align-items: baseline;
    padding: .3em;
}

.al-dl-list-box-with-number dt::before,
.al-dl-list-with-number dt::before {
    display: inline-block;
    min-width: 1.7em;
    margin-right: 5px;
    border-radius: 50%;
    background-color: #fc5185;
    color: #fff;
    font-weight: bold;
    font-size: .75em;
    line-height: 1.7em;
    text-align: center;
    content: counter(dt);
    counter-increment: dt;
}

/* --- Section 3eric ---*/

.al-section-with-num {
    position: relative;
    font-size: 26px;
    text-align: center;
    font-weight: 700;
    color: #fc5185;
}

.al-section-with-num::before {
    content: attr(data-number);
    display: block;
    margin-bottom: 50px;
    color: #fc5185;
    font-size: 28px;
}

.al-section-with-num::after {
    content: '';
    position: absolute;
    top: 50px;
    left: 50%;
    transform: translateX(-50%);
    width: 2px;
    height: 20px;
    background-color: #fc5185;
}


/*--- Heading with Brackets ---*/
.al-heading-brackets {
    width: fit-content;
    margin: 3rem auto 1rem auto;
    position: relative;
    padding: .4em 1em;
    color: hsl(31 84% 30% / 1) !important;
}

.al-heading-brackets::before,
.al-heading-brackets::after {
    display: inline-block;
    position: absolute;
    width: 10px;
    height: 100%;
    border: 3px solid #bf6000;
    box-sizing: border-box;
    content: '';
}

.al-heading-brackets::before {
    top: 0;
    left: 0;
    border-right: none;
}

.al-heading-brackets::after {
    bottom: 0;
    right: 0;
    border-left: none;
}

/*--- Heading with Circle ---*/
.al-heading-circle {
    display: inline-block;
    position: relative;
    margin: calc(6em / 2) 0 calc(3.5em / 4) calc(3.5em / 2);
    color: #333333;
    line-height: 1;
    margin-top: 3rem !important;
}

.al-heading-circle::before {
    position: absolute;
    bottom: calc(-3em / 4);
    left: calc(-3em / 2);
    z-index: -1;
    width: 4em;
    height: 4em;
    border-radius: 50%;
    background: #fecddc;
    content: '';
}


/*--- Heading sticky ---*/
.al-heading-sticky {
    font-weight: bolder;
    display: inline-block;
    position: relative;
    padding: .5em 1em;
    border-right: 27px solid #ec5986;
    background-color: #f4d7e2;
    color: #aa5577;
    margin-bottom: 0 !important;
}

.al-heading-sticky::before {
    position: absolute;
    bottom: 2px;
    right: -20px;
    z-index: -1;
    transform: rotate(5deg);
    width: 100%;
    height: 50%;
    background-color: #d0d0d0;
    content: "";
    filter: blur(4px);
}

/*--- Heading Next/Prev Contents ---*/

.button.block:has(.al-heading-next),
.button.block:has(.al-heading-prev) {
    align-items: stretch;
    flex-direction: column;
    padding: 0 !important;
}

.al-heading-next,
.al-heading-prev {
    display: flex;
    justify-content: start;
    align-items: center;
    position: relative;
    padding: .5em .7em;
    overflow: hidden;
    border-radius: 5px;
    font-weight: 700;
    z-index: 1;
    text-align: left;

    white-space: normal;
}

.al-heading-next {
    color: #fc5185;
}

.al-heading-prev {
    color: #83776c;
}

.al-heading-next {
    border: 2px solid #fc5185;
}

.al-heading-prev {
    border: 2px solid #83776c;
}

.al-heading-next:before,
.al-heading-prev:before {
    position: absolute;
    top: -35px;
    left: -30px;
    z-index: -1;
    transform: rotate(25deg);
    width: 110px;
    height: 200%;
    content: '';
    opacity: 0.9;
}

.al-heading-next:before {
    background-color: #fc5185;
}

.al-heading-prev:before {
    background-color: #83776c;
}

.al-heading-next span,
.al-heading-prev span {
    margin-right: 2.1em;
    color: #fff;
    font-size: 1.1em;
    font-weight: 800;
}

/*--- Box with Label ---*/

.al-box-with-label {
    position: relative;
    max-width: 90%;
    margin: 55px auto 0;
    padding: 1em 1.5em;
    border: 2px solid #fc5185;
    border-radius: 3px;
}

.al-box-with-label.lv1 {
    border: 2px solid #6f8d5b;
}

.al-box-with-label.lv2 {
    border: 2px solid #8d5b6f;
}

.al-box-with-label.lv3 {
    border: 2px solid #5b6f8d;
}

.al-box-with-label.lv-warning {
    border: 2px solid #BF6000;
}

.al-box-with-label span {
    font-weight: 800;
    position: absolute;
    top: -39px;
    left: -2px;
    padding: .2em .8em;
    border-radius: 5px 5px 0 0;
    background-color: #fc5185;
    color: #fff;
}

.al-box-with-label.lv1 span {
    background-color: #6f8d5b;
}

.al-box-with-label.lv2 span {
    background-color: #8d5b6f;
}

.al-box-with-label.lv3 span {
    background-color: #5b6f8d;
}

.al-box-with-label.lv-warning span {
    background-color: #BF6000;
}

.al-box-with-label p {
    font-weight: 600;
    margin: 0;
}

/*--- Heading Zebra Underlined ---*/

.al-heading-zebra {
    position: relative;
    padding-bottom: 10px;
    color: hsl(336 33% 51% / 1) !important;
}

.al-heading-zebra::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 8px;
    background-image: repeating-linear-gradient(45deg, #EC5986 0px, #EC5986 1px, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 50%);
    background-size: 8px 8px;
}

.sidebar-background {
    display: none;
}

.page-wrapper.toggled .sidebar-background {
    display: block;
    position: fixed;
    width: 100%;
    height: 100%;
    background-color: #cfcfcf;
    top: 0;
    left: 0;
    transition: opacity .2s ease-out;
    opacity: 0.4;
    z-index: 100;
}

@media screen and (min-width: 768px) {
    .page-wrapper.toggled .sidebar-background {
        display: none;
    }
}

@media screen and (max-width: 768px) {
    .page-wrapper.toggled main.page-content {
        transition: all .2s ease-out;
        -webkit-filter: blur(8px);
        -moz-filter: blur(8px);
        -ms-filter: blur(8px);
        filter: blur(8px);
    }
}

/*--------------------------------------------------- Page Top ボタン ----------*/

#page_top {
    width: 80px;
    height: 60px;
    position: fixed;
    right: -80px;
    bottom: 10px;
    background: hsl(331 28% 46% / 1);
    opacity: 0.4;
    border-radius: 4px 0 0 4px;
}

#page_top a {
    position: relative;
    display: block;
    width: 80px;
    height: 60px;
    text-decoration: none;
}

#page_top a::before {
    font-family: 'Font Awesome 6 Free';
    font-weight: 900;
    content: '\f102';
    font-size: 25px;
    color: #fff;
    position: absolute;
    width: 25px;
    height: 25px;
    top: -10px;
    bottom: 0;
    right: 0;
    left: -10px;
    margin: auto;
    text-align: center;
}


/*---- Sidemenu ----*/
@keyframes swing {
    0% {
        transform: rotate(0deg);
    }
    10% {
        transform: rotate(10deg);
    }
    30% {
        transform: rotate(0deg);
    }
    40% {
        transform: rotate(-10deg);
    }
    50% {
        transform: rotate(0deg);
    }
    60% {
        transform: rotate(5deg);
    }
    70% {
        transform: rotate(0deg);
    }
    80% {
        transform: rotate(-5deg);
    }
    100% {
        transform: rotate(0deg);
    }
}

@keyframes sonar {
    0% {
        transform: scale(0.9);
        opacity: 1;
    }
    100% {
        transform: scale(2);
        opacity: 0;
    }
}

.page-wrapper .sidebar-wrapper,
.sidebar-wrapper .sidebar-brand > a,
.sidebar-wrapper .sidebar-dropdown > a:after,
.sidebar-wrapper .sidebar-menu .sidebar-dropdown .sidebar-submenu li a:before,
.sidebar-wrapper ul li a i,
.page-wrapper .page-content,
.sidebar-wrapper .sidebar-search input.search-menu,
.sidebar-wrapper .sidebar-search .input-group-text,
.sidebar-wrapper .sidebar-menu ul li a,
#show-sidebar,
#close-sidebar {
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

/*----------------page-wrapper----------------*/

.page-wrapper {
    height: 100vh;
}

/*----------------toggeled sidebar----------------*/

.page-wrapper.toggled .sidebar-wrapper {
    right: 0;
    @media screen and (min-width: 768px) {
        left: 0;
        right: unset;
    }
}

@media screen and (min-width: 768px) {
    .page-wrapper.toggled .page-content {
        padding-left: 350px;
    }
}

/*----------------show sidebar button----------------*/

#show-sidebar {
    position: fixed;
    right: 0;
    top: 10px;
    border-radius: 4px 0 0 4px;
    transition-delay: 0.3s;
    z-index: 100;
    opacity: 0.8;
    height: 60px;
    width: 80px;
    @media screen and (min-width: 768px) {
        left: 0;
        right: unset;
        border-radius: 0 4px 4px 0;
    }
}

.page-wrapper.toggled #show-sidebar {
    right: -60px;
    @media screen and (min-width: 768px) {
        left: -60px;
        right: unset;
    }
}

/*----------------sidebar-wrapper----------------*/

.sidebar-wrapper {
    width: 75vw;
    height: 100%;
    max-height: 100%;
    position: fixed;
    top: 0;
    right: calc(-1 * (75vw + 40px));
    z-index: 999;
    @media screen and (min-width: 768px) {
        left: calc(-1 * (75vw + 40px));
        right: unset;
    }
}

.sidebar-wrapper ul {
    list-style-type: none;
    padding: 0;
    margin: 0;
}

.sidebar-wrapper a {
    text-decoration: none;
}

@media screen and (min-width: 768px) {
    .sidebar-wrapper {
        width: 350px;
        left: -390px;
    }
}

/*----------------sidebar-content----------------*/

.sidebar-content {
    max-height: calc(100% - 30px);
    height: calc(100% - 30px);
    overflow-y: auto;
    position: relative;
    font-weight: 600;
}

.sidebar-content.desktop {
    overflow-y: hidden;
}

/*--------------------sidebar-brand----------------------*/

.sidebar-wrapper .sidebar-brand {
    padding: 10px 20px;
    display: flex;
    align-items: center;
}

.sidebar-wrapper .sidebar-brand > a {
    font-weight: bold;
    flex-grow: 1;
    margin-right: 50px;
}

.sidebar-wrapper .sidebar-brand #close-sidebar {
    cursor: pointer;
    font-size: 20px;
}

/*--------------------sidebar-header----------------------*/

.sidebar-wrapper .sidebar-header {
    padding: 20px;
    overflow: hidden;
}

.sidebar-wrapper .sidebar-header .user-pic {
    float: left;
    width: 60px;
    padding: 2px;
    border-radius: 12px;
    margin-right: 15px;
    overflow: hidden;
}

.sidebar-wrapper .sidebar-header .user-pic img {
    object-fit: cover;
    height: 100%;
    width: 100%;
}

.sidebar-wrapper .sidebar-header .user-info {
    float: left;
}

.sidebar-wrapper .sidebar-header .user-info > span {
    display: block;
}

.sidebar-wrapper .sidebar-header .user-info .user-role {
    font-size: 12px;
}

.sidebar-wrapper .sidebar-header .user-info .user-status {
    font-size: 11px;
    margin-top: 4px;
}

/*-----------------------sidebar-search------------------------*/

.sidebar-wrapper .sidebar-search > div {
    padding: 10px 20px;
}

/*----------------------sidebar-menu-------------------------*/

.sidebar-wrapper .sidebar-menu {
    padding-bottom: 10px;
}

.sidebar-wrapper .sidebar-menu .header-menu span {
    font-weight: bold;
    font-size: 14px;
    padding: 15px 20px 5px 20px;
    display: inline-block;
}

.sidebar-wrapper .sidebar-menu ul li a {
    display: flex;
    width: 100%;
    text-decoration: none;
    position: relative;
    padding: 8px 30px 8px 20px;
    align-items: center;
    line-height: 120%;
    min-height: 50px;
}

.sidebar-wrapper .sidebar-menu ul li a i {
    margin-right: 10px;
    font-size: 15px;
    width: 30px;
    height: 30px;
    line-height: 30px;
    text-align: center;
    border-radius: 4px;
}

.sidebar-wrapper .sidebar-menu ul li a:hover > i::before {
    display: inline-block;
    animation: swing ease-in-out 0.5s 1 alternate;
}

.sidebar-wrapper .sidebar-menu .sidebar-dropdown > a:after {
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    content: "\f0da";
    font-style: normal;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-align: center;
    background: 0 0;
    position: absolute;
    right: 15px;
    top: 14px;
    text-shadow: none;
}

.sidebar-wrapper .sidebar-menu .sidebar-dropdown .sidebar-submenu ul {
    /*padding: 5px 0;*/
}

.sidebar-wrapper .sidebar-menu .sidebar-dropdown .sidebar-submenu li {
    padding-left: 10px;
    font-size: 15px;
}

.sidebar-wrapper .sidebar-menu .sidebar-dropdown .sidebar-submenu li:not(:last-child){
    border-bottom: solid 1px #B68D9C;
}

.sidebar-wrapper .sidebar-menu .sidebar-dropdown .sidebar-submenu li a:before {
    content: "\f005";
    font-family: "Font Awesome 6 Free";
    font-weight: 400;
    font-style: normal;
    display: inline-block;
    text-align: center;
    text-decoration: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    margin-right: 10px;
    font-size: 10px;
}

.sidebar-wrapper .sidebar-menu ul li a span.label,
.sidebar-wrapper .sidebar-menu ul li a span.badge {
    float: right;
    margin-top: 8px;
    margin-left: 5px;
}

.sidebar-wrapper .sidebar-menu ul li.sidebar-banner a {
    padding: 0;
}

.sidebar-wrapper .sidebar-menu .sidebar-dropdown .sidebar-submenu li a .badge,
.sidebar-wrapper .sidebar-menu .sidebar-dropdown .sidebar-submenu li a .label {
    float: right;
    margin-top: 0;
}

.sidebar-wrapper .sidebar-menu .sidebar-submenu {
    display: none;
}

.sidebar-wrapper .sidebar-menu .sidebar-dropdown.active > a:after {
    transform: rotate(90deg);
    right: 17px;
}


.sidebar-wrapper .sidebar-menu .sidebar-banner {
    padding: 5px 50px 5px 50px;
    /*margin-top: -5px;*/
}

/*--------------------------side-footer------------------------------*/

.sidebar-footer {
    position: absolute;
    width: 100%;
    bottom: 0;
    display: flex;
}

.sidebar-footer > a {
    flex-grow: 1;
    text-align: center;
    height: 30px;
    line-height: 30px;
    position: relative;
}

.sidebar-footer > a .notification {
    position: absolute;
    top: 0;
}

/*--------------------------page-content-----------------------------*/

.page-wrapper .page-content {
    width: 100%;
    padding-right: 0;
    @media screen and (min-width: 768px) {
        padding-left: 0;
        padding-right: unset;
    }
}

.page-wrapper .page-content {
    overflow-x: hidden;
}

/*------scroll bar---------------------*/

.sidebar-wrapper ::-webkit-scrollbar {
    width: 5px;
    height: 7px;
}

.sidebar-wrapper ::-webkit-scrollbar-button {
    width: 0px;
    height: 0px;
}

.sidebar-wrapper ::-webkit-scrollbar-thumb {
    background: #525965;
    border: 0px none #ffffff;
    border-radius: 0px;
}


.sidebar-wrapper ::-webkit-scrollbar-thumb:hover {
    background: #525965;
}

.sidebar-wrapper ::-webkit-scrollbar-thumb:active {
    background: #525965;
}

.sidebar-wrapper ::-webkit-scrollbar-track {
    background: transparent;
    border: 0px none #ffffff;
    border-radius: 50px;
}

.sidebar-wrapper ::-webkit-scrollbar-track:hover {
    background: transparent;
}

.sidebar-wrapper ::-webkit-scrollbar-track:active {
    background: transparent;
}

.sidebar-wrapper ::-webkit-scrollbar-corner {
    background: transparent;
}

/*-----------------------------al-theme-------------------------------------------------*/

.al-theme .sidebar-wrapper {
    background: #b68d9c;
}

.al-theme .sidebar-wrapper .sidebar-header,
.al-theme .sidebar-wrapper .sidebar-search,
.al-theme .sidebar-wrapper .header-menu,
.al-theme .sidebar-wrapper .sidebar-dropdown,
.al-theme .sidebar-wrapper li:not(:first-child) {
    border-top: 1px solid #7d5e6a99;
}

.al-theme .sidebar-wrapper li.sidebar-banner:last-child {
    border-bottom: 1px solid hsl(324deg 20% 60% / 50%);
}

.al-theme .sidebar-wrapper .sidebar-search input.search-menu,
.al-theme .sidebar-wrapper .sidebar-search .input-group-text {
    border-color: transparent;
    box-shadow: none;
}

.al-theme .sidebar-wrapper .sidebar-header .user-info .user-role,
.al-theme .sidebar-wrapper .sidebar-header .user-info .user-status,
.al-theme .sidebar-wrapper .sidebar-search input.search-menu,
.al-theme .sidebar-wrapper .sidebar-search .input-group-text,
.al-theme .sidebar-wrapper .sidebar-brand > a,
.al-theme .sidebar-wrapper .sidebar-menu ul li a,
.al-theme .sidebar-footer > a {
    color: #e2ebff;
    text-shadow: 1px 1px 2px #4E323C;
    letter-spacing: 1px;
}

.al-theme .sidebar-wrapper .sidebar-menu ul li:hover > a,
.al-theme .sidebar-wrapper .sidebar-menu .sidebar-dropdown.active > a,
.al-theme .sidebar-wrapper .sidebar-header .user-info,
.al-theme .sidebar-wrapper .sidebar-brand > a:hover,
.al-theme .sidebar-footer > a:hover i {
    color: #e2ebff;
}

.page-wrapper.al-theme.toggled #close-sidebar {
    color: #e2ebff;
    text-shadow: 1px 1px 1px #4E323C;
}

.page-wrapper.al-theme.toggled #close-sidebar:hover {
    color: #ffffff;
}

.al-theme .sidebar-wrapper ul li:hover a i,
.al-theme .sidebar-wrapper .sidebar-dropdown .sidebar-submenu li a:hover:before,
.al-theme .sidebar-wrapper .sidebar-dropdown .sidebar-submenu li.active a:before,
.al-theme .sidebar-wrapper .sidebar-search input.search-menu:focus + span,
.al-theme .sidebar-wrapper .sidebar-menu .sidebar-dropdown.active a i,
.sidebar-wrapper .sidebar-menu li.active:not(.sidebar-dropdown) a i {
    color: #c7b31b;
    text-shadow: 0 0 8px #8d5966;
}
.al-theme .sidebar-wrapper .sidebar-dropdown .sidebar-submenu li.active a{
    color: #c7b31b;
}

.al-theme .sidebar-wrapper .sidebar-menu  li.active > a{
    color: #c7b31b;
}

.al-theme .sidebar-wrapper .sidebar-menu .sidebar-dropdown.active a i,
.sidebar-wrapper .sidebar-menu li.active:not(.sidebar-dropdown) a i{
    background-color: #A77587;
}



.sidebar-wrapper .sidebar-menu .sidebar-dropdown .sidebar-submenu li.active,
.sidebar-wrapper .sidebar-menu li.active:not(.sidebar-dropdown) {
    background-color: #875567
}


.al-theme .sidebar-wrapper .sidebar-menu .sidebar-dropdown div,
.al-theme .sidebar-wrapper .sidebar-search input.search-menu,
.al-theme .sidebar-wrapper .sidebar-search .input-group-text {
    border-top: 1px solid #B68D9C;
    background: #A77587;
}


.al-theme .sidebar-wrapper .sidebar-menu ul li a i{
    text-shadow: none;
    background: #D6BFC8;
    color:#774B5B;
    }


.al-theme .sidebar-wrapper .sidebar-menu .sidebar-dropdown.active > a {
    box-shadow: 0px 6px 5px -5px #282c33;
}

.al-theme .sidebar-wrapper .sidebar-menu .header-menu span {
    color: #623F4C;
}

.al-theme .sidebar-footer {
    background: #7b5566;
    box-shadow: 0px -1px 5px #282c33;
    border-top: 1px solid hsl(316 18% 40%);
}

.al-theme .sidebar-footer > a:first-child {
    border-left: none;
}

.al-theme .sidebar-footer > a:last-child {
    border-right: none;
}



/* sidebar responsive */

/*@media screen and (min-width: 768px) {*/
/*    .page-wrapper:not(.toggled) .al-main-columns {*/
/*        padding-left: 175px;*/
/*        padding-right: 175px;*/
/*    }*/

/*    .page-wrapper.toggled .al-main-columns {*/
/*        padding-left: 0;*/
/*        padding-right: 0;*/
/*    }*/
/*}*/

/* --- Color Checked box ---*/

/* [Usage]
    <label class="al-checkbox">
        <input type="checkbox" name="checkbox-1" checked/>
        radio1
    </label>
 */

.al-checkbox {
    border: none;
}

label.al-checkbox {
    display: flex;
    gap: 0 .5em;
    position: relative;
    margin-bottom: .5em;
    cursor: pointer;
    align-items: baseline;
}

label.al-checkbox::before,
label.al-checkbox:has(:checked)::after {
    content: '';
}

label.al-checkbox::before {
    width: 17px;
    height: 17px;
    border-radius: 3px;
    background-color: #ededed;
    border: 1px solid #999;
}

label.al-checkbox:has(:checked)::before {
    background-color: #ff3860;
}

label.al-checkbox:has(:checked)::after {
    position: absolute;
    top: 10px;
    left: 5px;
    transform: rotate(45deg);
    width: 8px;
    height: 8px;
    border: solid #fff;
    border-width: 0 2px 2px 0;
}

.al-checkbox input {
    display: none;
}

/* --- Baloon --- */

.al-balloon-warning {
    display: flex;
    justify-content: center;
    position: relative;
    margin-top: 15px;
    padding: .8em 1.2em;
    border-radius: 5px;
    background-color: #BF6000;
    color: #fcfcfc;
    font-weight: bolder;
}

.al-balloon-warning::before {
    position: absolute;
    top: -15px;
    width: 30px;
    height: 15px;
    background-color: #BF6000;
    clip-path: polygon(50% 0, 0 100%, 100% 100%);
    content: '';
}

/* ---- tab reader ---- */
/* usage:
<ul class="al-tab-reader">
<li>
<span>タイトル</span><span><hr></span><span>500円</span>
</li>
...
</ul>
*/

.al-tab-reader {
    margin-inline-start: 0 !important;
}

.al-tab-reader li {
    display: flex;
    flex-flow: row wrap;
    width: 100%;
}

.al-tab-reader li hr {
    position: relative;
    top: calc(50% - 1px);
    margin: 0 10px;
    border: none;
    border-top: dotted 2px #888;
}

.al-tab-reader span:has(hr) {
    flex: auto;
}


/* TODO: modify */
/*@media screen and (max-width: 768px) {*/
/*    .columns .column:not(:first-child) {*/
/*        margin-top: 1.5rem !important;*/
/*    }*/
/*}*/


/* --- Original Spacer ----*/

/* margin 5vw */

.m-5vw {
    margin: 5vw !important;
}

.ml-5vw {
    margin-left: 5vw !important;
}

.mr-5vw {
    margin-right: 5vw !important;
}

.mt-5vw {
    margin-top: 5vw !important;
}

.mb-5vw {
    margin-bottom: 5vw !important;
}

.mx-5vw {
    margin-left: 5vw !important;
    margin-right: 5vw !important;
}

.my-5vw {
    margin-top: 5vw !important;
    margin-bottom: 5vw !important;
}

/* padding 5vw */

.p-5vw {
    padding: 5vw !important;
}

.pl-5vw {
    padding-left: 5vw !important;
}

.pr-5vw {
    padding-right: 5vw !important;
}

.pt-5vw {
    padding-top: 5vw !important;
}

.pb-5vw {
    padding-bottom: 5vw !important;
}

.px-5vw {
    padding-left: 5vw !important;
    padding-right: 5vw !important;
}

.py-5vw {
    padding-top: 5vw !important;
    padding-bottom: 5vw !important;
}


/* margin 10vw */

.m-10vw {
    margin: 10vw !important;
}

.ml-10vw {
    margin-left: 10vw !important;
}

.mr-10vw {
    margin-right: 10vw !important;
}

.mt-10vw {
    margin-top: 10vw !important;
}

.mb-10vw {
    margin-bottom: 10vw !important;
}

.mx-10vw {
    margin-left: 10vw !important;
    margin-right: 10vw !important;
}

.my-10vw {
    margin-top: 10vw !important;
    margin-bottom: 10vw !important;
}

/* padding 10vw */

.p-10vw {
    padding: 10vw !important;
}

.pl-10vw {
    padding-left: 10vw !important;
}

.pr-10vw {
    padding-right: 10vw !important;
}

.pt-10vw {
    padding-top: 10vw !important;
}

.pb-10vw {
    padding-bottom: 10vw !important;
}

.px-10vw {
    padding-left: 10vw !important;
    padding-right: 10vw !important;
}

.py-10vw {
    padding-top: 10vw !important;
    padding-bottom: 10vw !important;
}


/* margin 15vw */

.m-15vw {
    margin: 15vw !important;
}

.ml-15vw {
    margin-left: 15vw !important;
}

.mr-15vw {
    margin-right: 15vw !important;
}

.mt-15vw {
    margin-top: 15vw !important;
}

.mb-15vw {
    margin-bottom: 15vw !important;
}

.mx-15vw {
    margin-left: 15vw !important;
    margin-right: 15vw !important;
}

.my-15vw {
    margin-top: 15vw !important;
    margin-bottom: 15vw !important;
}

/* padding 15vw */

.p-15vw {
    padding: 15vw !important;
}

.pl-15vw {
    padding-left: 15vw !important;
}

.pr-15vw {
    padding-right: 15vw !important;
}

.pt-15vw {
    padding-top: 15vw !important;
}

.pb-15vw {
    padding-bottom: 15vw !important;
}

.px-15vw {
    padding-left: 15vw !important;
    padding-right: 15vw !important;
}

.py-15vw {
    padding-top: 15vw !important;
    padding-bottom: 15vw !important;
}


@media screen and (max-width: 768px) {


    .m-0-mobile {
        margin: 0 !important;
    }

    .mt-0-mobile {
        margin-top: 0 !important;
    }

    .mr-0-mobile {
        margin-right: 0 !important;
    }

    .mb-0-mobile {
        margin-bottom: 0 !important;
    }

    .ml-0-mobile {
        margin-left: 0 !important;
    }

    .mx-0-mobile {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    .my-0-mobile {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }

    .m-1-mobile {
        margin: 0.25rem !important;
    }

    .mt-1-mobile {
        margin-top: 0.25rem !important;
    }

    .mr-1-mobile {
        margin-right: 0.25rem !important;
    }

    .mb-1-mobile {
        margin-bottom: 0.25rem !important;
    }

    .ml-1-mobile {
        margin-left: 0.25rem !important;
    }

    .mx-1-mobile {
        margin-left: 0.25rem !important;
        margin-right: 0.25rem !important;
    }

    .my-1-mobile {
        margin-top: 0.25rem !important;
        margin-bottom: 0.25rem !important;
    }

    .m-2-mobile {
        margin: 0.5rem !important;
    }

    .mt-2-mobile {
        margin-top: 0.5rem !important;
    }

    .mr-2-mobile {
        margin-right: 0.5rem !important;
    }

    .mb-2-mobile {
        margin-bottom: 0.5rem !important;
    }

    .ml-2-mobile {
        margin-left: 0.5rem !important;
    }

    .mx-2-mobile {
        margin-left: 0.5rem !important;
        margin-right: 0.5rem !important;
    }

    .my-2-mobile {
        margin-top: 0.5rem !important;
        margin-bottom: 0.5rem !important;
    }

    .m-3-mobile {
        margin: 0.75rem !important;
    }

    .mt-3-mobile {
        margin-top: 0.75rem !important;
    }

    .mr-3-mobile {
        margin-right: 0.75rem !important;
    }

    .mb-3-mobile {
        margin-bottom: 0.75rem !important;
    }

    .ml-3-mobile {
        margin-left: 0.75rem !important;
    }

    .mx-3-mobile {
        margin-left: 0.75rem !important;
        margin-right: 0.75rem !important;
    }

    .my-3-mobile {
        margin-top: 0.75rem !important;
        margin-bottom: 0.75rem !important;
    }

    .m-4-mobile {
        margin: 1rem !important;
    }

    .mt-4-mobile {
        margin-top: 1rem !important;
    }

    .mr-4-mobile {
        margin-right: 1rem !important;
    }

    .mb-4-mobile {
        margin-bottom: 1rem !important;
    }

    .ml-4-mobile {
        margin-left: 1rem !important;
    }

    .mx-4-mobile {
        margin-left: 1rem !important;
        margin-right: 1rem !important;
    }

    .my-4-mobile {
        margin-top: 1rem !important;
        margin-bottom: 1rem !important;
    }

    .m-5-mobile {
        margin: 1.5rem !important;
    }

    .mt-5-mobile {
        margin-top: 1.5rem !important;
    }

    .mr-5-mobile {
        margin-right: 1.5rem !important;
    }

    .mb-5-mobile {
        margin-bottom: 1.5rem !important;
    }

    .ml-5-mobile {
        margin-left: 1.5rem !important;
    }

    .mx-5-mobile {
        margin-left: 1.5rem !important;
        margin-right: 1.5rem !important;
    }

    .my-5-mobile {
        margin-top: 1.5rem !important;
        margin-bottom: 1.5rem !important;
    }

    .m-6-mobile {
        margin: 3rem !important;
    }

    .mt-6-mobile {
        margin-top: 3rem !important;
    }

    .mr-6-mobile {
        margin-right: 3rem !important;
    }

    .mb-6-mobile {
        margin-bottom: 3rem !important;
    }

    .ml-6-mobile {
        margin-left: 3rem !important;
    }

    .mx-6-mobile {
        margin-left: 3rem !important;
        margin-right: 3rem !important;
    }

    .my-6-mobile {
        margin-top: 3rem !important;
        margin-bottom: 3rem !important;
    }

    .m-auto-mobile {
        margin: auto !important;
    }

    .mt-auto-mobile {
        margin-top: auto !important;
    }

    .mr-auto-mobile {
        margin-right: auto !important;
    }

    .mb-auto-mobile {
        margin-bottom: auto !important;
    }

    .ml-auto-mobile {
        margin-left: auto !important;
    }

    .mx-auto-mobile {
        margin-left: auto !important;
        margin-right: auto !important;
    }

    .my-auto-mobile {
        margin-top: auto !important;
        margin-bottom: auto !important;
    }

    .p-0-mobile {
        padding: 0 !important;
    }

    .pt-0-mobile {
        padding-top: 0 !important;
    }

    .pr-0-mobile {
        padding-right: 0 !important;
    }

    .pb-0-mobile {
        padding-bottom: 0 !important;
    }

    .pl-0-mobile {
        padding-left: 0 !important;
    }

    .px-0-mobile {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .py-0-mobile {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    .p-1-mobile {
        padding: 0.25rem !important;
    }

    .pt-1-mobile {
        padding-top: 0.25rem !important;
    }

    .pr-1-mobile {
        padding-right: 0.25rem !important;
    }

    .pb-1-mobile {
        padding-bottom: 0.25rem !important;
    }

    .pl-1-mobile {
        padding-left: 0.25rem !important;
    }

    .px-1-mobile {
        padding-left: 0.25rem !important;
        padding-right: 0.25rem !important;
    }

    .py-1-mobile {
        padding-top: 0.25rem !important;
        padding-bottom: 0.25rem !important;
    }

    .p-2-mobile {
        padding: 0.5rem !important;
    }

    .pt-2-mobile {
        padding-top: 0.5rem !important;
    }

    .pr-2-mobile {
        padding-right: 0.5rem !important;
    }

    .pb-2-mobile {
        padding-bottom: 0.5rem !important;
    }

    .pl-2-mobile {
        padding-left: 0.5rem !important;
    }

    .px-2-mobile {
        padding-left: 0.5rem !important;
        padding-right: 0.5rem !important;
    }

    .py-2-mobile {
        padding-top: 0.5rem !important;
        padding-bottom: 0.5rem !important;
    }

    .p-3-mobile {
        padding: 0.75rem !important;
    }

    .pt-3-mobile {
        padding-top: 0.75rem !important;
    }

    .pr-3-mobile {
        padding-right: 0.75rem !important;
    }

    .pb-3-mobile {
        padding-bottom: 0.75rem !important;
    }

    .pl-3-mobile {
        padding-left: 0.75rem !important;
    }

    .px-3-mobile {
        padding-left: 0.75rem !important;
        padding-right: 0.75rem !important;
    }

    .py-3-mobile {
        padding-top: 0.75rem !important;
        padding-bottom: 0.75rem !important;
    }

    .p-4-mobile {
        padding: 1rem !important;
    }

    .pt-4-mobile {
        padding-top: 1rem !important;
    }

    .pr-4-mobile {
        padding-right: 1rem !important;
    }

    .pb-4-mobile {
        padding-bottom: 1rem !important;
    }

    .pl-4-mobile {
        padding-left: 1rem !important;
    }

    .px-4-mobile {
        padding-left: 1rem !important;
        padding-right: 1rem !important;
    }

    .py-4-mobile {
        padding-top: 1rem !important;
        padding-bottom: 1rem !important;
    }

    .p-5-mobile {
        padding: 1.5rem !important;
    }

    .pt-5-mobile {
        padding-top: 1.5rem !important;
    }

    .pr-5-mobile {
        padding-right: 1.5rem !important;
    }

    .pb-5-mobile {
        padding-bottom: 1.5rem !important;
    }

    .pl-5-mobile {
        padding-left: 1.5rem !important;
    }

    .px-5-mobile {
        padding-left: 1.5rem !important;
        padding-right: 1.5rem !important;
    }

    .py-5-mobile {
        padding-top: 1.5rem !important;
        padding-bottom: 1.5rem !important;
    }

    .p-6-mobile {
        padding: 3rem !important;
    }

    .pt-6-mobile {
        padding-top: 3rem !important;
    }

    .pr-6-mobile {
        padding-right: 3rem !important;
    }

    .pb-6-mobile {
        padding-bottom: 3rem !important;
    }

    .pl-6-mobile {
        padding-left: 3rem !important;
    }

    .px-6-mobile {
        padding-left: 3rem !important;
        padding-right: 3rem !important;
    }

    .py-6-mobile {
        padding-top: 3rem !important;
        padding-bottom: 3rem !important;
    }


    /* margin 5vw */
    .m-5vw-mobile {
        margin: 5vw !important;
    }

    .ml-5vw-mobile {
        margin-left: 5vw !important;
    }

    .mr-5vw-mobile {
        margin-right: 5vw !important;
    }

    .mt-5vw-mobile {
        margin-top: 5vw !important;
    }

    .mb-5vw-mobile {
        margin-bottom: 5vw !important;
    }

    .mx-5vw-mobile {
        margin-left: 5vw !important;
        margin-right: 5vw !important;
    }

    .my-5vw-mobile {
        margin-top: 5vw !important;
        margin-bottom: 5vw !important;
    }

    /* padding 5vw */
    .p-5vw-mobile {
        padding: 5vw !important;
    }

    .pl-5vw-mobile {
        padding-left: 5vw !important;
    }

    .pr-5vw-mobile {
        padding-right: 5vw !important;
    }

    .pt-5vw-mobile {
        padding-top: 5vw !important;
    }

    .pb-5vw-mobile {
        padding-bottom: 5vw !important;
    }

    .px-5vw-mobile {
        padding-left: 5vw !important;
        padding-right: 5vw !important;
    }

    .py-5vw-mobile {
        padding-top: 5vw !important;
        padding-bottom: 5vw !important;
    }


    /* margin 10vw */
    .m-10vw-mobile {
        margin: 10vw !important;
    }

    .ml-10vw-mobile {
        margin-left: 10vw !important;
    }

    .mr-10vw-mobile {
        margin-right: 10vw !important;
    }

    .mt-10vw-mobile {
        margin-top: 10vw !important;
    }

    .mb-10vw-mobile {
        margin-bottom: 10vw !important;
    }

    .mx-10vw-mobile {
        margin-left: 10vw !important;
        margin-right: 10vw !important;
    }

    .my-10vw-mobile {
        margin-top: 10vw !important;
        margin-bottom: 10vw !important;
    }

    /* padding 10vw */
    .p-10vw-mobile {
        padding: 10vw !important;
    }

    .pl-10vw-mobile {
        padding-left: 10vw !important;
    }

    .pr-10vw-mobile {
        padding-right: 10vw !important;
    }

    .pt-10vw-mobile {
        padding-top: 10vw !important;
    }

    .pb-10vw-mobile {
        padding-bottom: 10vw !important;
    }

    .px-10vw-mobile {
        padding-left: 10vw !important;
        padding-right: 10vw !important;
    }

    .py-10vw-mobile {
        padding-top: 10vw !important;
        padding-bottom: 10vw !important;
    }


    /* margin 15vw */
    .m-15vw-mobile {
        margin: 15vw !important;
    }

    .ml-15vw-mobile {
        margin-left: 15vw !important;
    }

    .mr-15vw-mobile {
        margin-right: 15vw !important;
    }

    .mt-15vw-mobile {
        margin-top: 15vw !important;
    }

    .mb-15vw-mobile {
        margin-bottom: 15vw !important;
    }

    .mx-15vw-mobile {
        margin-left: 15vw !important;
        margin-right: 15vw !important;
    }

    .my-15vw-mobile {
        margin-top: 15vw !important;
        margin-bottom: 15vw !important;
    }

    /* padding 15vw */
    .p-15vw-mobile {
        padding: 15vw !important;
    }

    .pl-15vw-mobile {
        padding-left: 15vw !important;
    }

    .pr-15vw-mobile {
        padding-right: 15vw !important;
    }

    .pt-15vw-mobile {
        padding-top: 15vw !important;
    }

    .pb-15vw-mobile {
        padding-bottom: 15vw !important;
    }

    .px-15vw-mobile {
        padding-left: 15vw !important;
        padding-right: 15vw !important;
    }

    .py-15vw-mobile {
        padding-top: 15vw !important;
        padding-bottom: 15vw !important;
    }

}


/*--- Step Flow --- */

.al-step-flow {
    display: flex;
    justify-content: center;
    list-style-type: none;
    padding: 0;
}

.al-step-flow li {
    display: flex;
    flex: 1 1;
    flex-direction: column;
    align-items: center;
    position: relative;
    z-index: 1;
    color: #969da3;
    font-size: .8em;
}

.al-step-flow li.prev,
.al-step-flow li.current {
    color: #CC9AAD;
}

.al-step-flow li::before {
    display: inline-block;
    width: 25px;
    height: 25px;
    margin-bottom: 6px;
    content: '';
    border: 5px solid #d6dde3;
    border-radius: 50%;
    background-color: #fff;
}

.al-step-flow li.prev::before,
.al-step-flow li.current::before {
    border-color: #CC9AAD;
}

.al-step-flow li:not(:last-child)::after {
    position: absolute;
    top: 8px;
    left: 50%;
    z-index: -1;
    width: 100%;
    height: 7px;
    background-color: #d6dde3;
    content: '';
}

.al-step-flow li.current::before,
.al-step-flow li.prev::after {
    background-color: #CC9AAD;
}


/* --- Inquiry Form --- */
@media screen and (min-width: 769px) {
    .field-label {
        flex-grow: 2;
    }
}

.al-tag-required{
    color: #bb1616;
    font-weight: 500;
    background-color: #ffdada;
    padding-left: 10px;
}

.al-inquiry-form :is(.al-step-confirm,.al-step-success,.al-step-error){
    display:none;
}
