.elementor-42 .elementor-element.elementor-element-5e97b5da{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.she-header-transparent-yes{position:absolute;}.elementor-42 .elementor-element.elementor-element-6c5ea4f1{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-42 .elementor-element.elementor-element-ec8a342{text-align:left;}.elementor-42 .elementor-element.elementor-element-ec8a342 img{width:75%;}.elementor-42 .elementor-element.elementor-element-c301743{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:flex-end;}.elementor-42 .elementor-element.elementor-element-4d65f98d > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}@media(max-width:767px){.elementor-42 .elementor-element.elementor-element-6c5ea4f1{--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-42 .elementor-element.elementor-element-ec8a342{text-align:center;}.elementor-42 .elementor-element.elementor-element-ec8a342 img{width:80%;}.elementor-42 .elementor-element.elementor-element-c301743{--justify-content:flex-end;--align-items:flex-end;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-42 .elementor-element.elementor-element-c301743.e-con{--align-self:flex-end;}}@media(min-width:768px){.elementor-42 .elementor-element.elementor-element-6c5ea4f1{--width:33.3333%;}.elementor-42 .elementor-element.elementor-element-c301743{--width:66.6666%;}}/* Start custom CSS for html, class: .elementor-element-4d65f98d *//* Sticky header styles */
.burger-button {
    position: sticky;
    top: 20px;
    right: 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
    height: auto;
    cursor: pointer;
    z-index: 9999;
    margin-left: auto;
    padding-right: 20px;
}

.menu-text {
    margin-top: 5px;
    color: #95562C;
    font-size: 12px;
}

/* Burger icon styles */
.burger-button .burger {
    position: relative;
    width: 34px;
    height: 24px;
}

.burger-button .burger span {
    display: block;
    height: 2px;
    width: 34px;
    background: #95562C;
    position: absolute;
    transition: all 0.3s cubic-bezier(0.4, 0.0, 0.2, 1);
}

.burger-button .burger span:nth-child(1) {
    top: 0;
}

.burger-button .burger span:nth-child(2) {
    top: 50%;
    transform: translateY(-50%);
}

.burger-button .burger span:nth-child(3) {
    bottom: 0;
}

/* Navigation control */
.burger-nav_control {
    position: absolute;
    left: -9999px;
    width: 1px;
    height: 1px;
    overflow: hidden;
}

/* Navigation container */
.burger-navigation {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    z-index: 100;
    visibility: hidden;
    pointer-events: none;
}

/* Blur overlay - now consistent across all devices */
.blur-overlay {
    position: absolute;
    left: 0;
    top: 0;
    width: 50%;
    height: 100%;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    opacity: 0;
    transition: opacity 0.3s cubic-bezier(0.4, 0.0, 0.2, 1);
}

/* Menu content - PC default */
.menu-content {
    position: absolute;
    right: 0;
    top: 0;
    width: 50%;
    height: 100%;
    background: #fff;
    transform: translateX(100%);
    transition: transform 0.3s cubic-bezier(0.4, 0.0, 0.2, 1);
}

/* Active states */
.burger-nav_control:checked ~ .burger-navigation {
    visibility: visible;
    pointer-events: auto;
}

.burger-nav_control:checked ~ .burger-navigation .blur-overlay {
    opacity: 1;
}

.burger-nav_control:checked ~ .burger-navigation .menu-content {
    transform: translateX(0);
}

.burger-nav_control:checked ~ .burger-button .burger span:nth-child(1) {
    transform: rotate(45deg) translate(8px, 8px);
}

.burger-nav_control:checked ~ .burger-button .burger span:nth-child(2) {
    opacity: 0;
}

.burger-nav_control:checked ~ .burger-button .burger span:nth-child(3) {
    transform: rotate(-45deg) translate(7px, -7px);
}

/* Tablet styles */
@media (max-width: 1024px) {
    .menu-content {
        width: 70%;
    }
    
    .blur-overlay {
        width: 30%; /* ブラーエリアの幅を調整 */
    }
}

/* Mobile styles */
@media (max-width: 767px) {
    .menu-content {
        width: 80%;
    }
    
    .blur-overlay {
        width: 20%; /* ブラーエリアの幅を調整 */
    }
}

/* Animation keyframes */
@keyframes fadeInRight {
    from {
        opacity: 0;
        transform: translateX(300px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

/* Template animation */
.elementor-77 {
    width: 100%;
    animation: fadeInRight 0.6s cubic-bezier(0.4, 0.0, 0.2, 1);
}

/* Optimize performance */
.burger-navigation {
    will-change: transform;
    backface-visibility: hidden;
}

.menu-content {
    will-change: transform;
    backface-visibility: hidden;
}/* End custom CSS */