.elementor-155 .elementor-element.elementor-element-ffb6c5f>.elementor-container>.elementor-column>.elementor-widget-wrap {
    align-content: center;
    align-items: center;
}

.elementor-155 .elementor-element.elementor-element-ffb6c5f>.elementor-background-overlay {
    background-color: #FFFFFF;
    opacity: 1;
}

.elementor-155 .elementor-element.elementor-element-ffb6c5f {
    margin-top: 0px;
    margin-bottom: 0px;
    padding: 0px 0px 0px 0px;
}

.elementor-155 .elementor-element.elementor-element-231534e>.elementor-element-populated {
    margin: 0px 0px 0px 0px;
    --e-column-margin-right: 0px;
    --e-column-margin-left: 0px;
    padding: 0px 0px 0px 0px;
}

.elementor-155 .elementor-element.elementor-element-d09846d {
    --display: flex;
    --min-height: 100vh;
    --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: stretch;
    --gap: 0px 0px;
    --row-gap: 0px;
    --column-gap: 0px;
    --overlay-opacity: 0.6;
    --overlay-mix-blend-mode: multiply;
    --padding-top: 0px;
    --padding-bottom: 0px;
    --padding-left: 30px;
    --padding-right: 0px;
    --z-index: 1;
}

.elementor-155 .elementor-element.elementor-element-d09846d:not(.elementor-motion-effects-element-type-background),
.elementor-155 .elementor-element.elementor-element-d09846d>.elementor-motion-effects-container>.elementor-motion-effects-layer {
    background-color: var(--e-global-color-text);
}

.elementor-155 .elementor-element.elementor-element-d09846d::before,
.elementor-155 .elementor-element.elementor-element-d09846d>.elementor-background-video-container::before,
.elementor-155 .elementor-element.elementor-element-d09846d>.e-con-inner>.elementor-background-video-container::before,
.elementor-155 .elementor-element.elementor-element-d09846d>.elementor-background-slideshow::before,
.elementor-155 .elementor-element.elementor-element-d09846d>.e-con-inner>.elementor-background-slideshow::before,
.elementor-155 .elementor-element.elementor-element-d09846d>.elementor-motion-effects-container>.elementor-motion-effects-layer::before {
    background-color: transparent;
    --background-overlay: '';
    background-image: linear-gradient(180deg, #012D4300 calc(100% - 510px), var(--e-global-color-primary) 100%);
}

.elementor-widget-heading .elementor-heading-title {
    font-family: var(--e-global-typography-primary-font-family), Sans-serif;
    font-size: var(--e-global-typography-primary-font-size);
    font-weight: var(--e-global-typography-primary-font-weight);
    line-height: var(--e-global-typography-primary-line-height);
    letter-spacing: var(--e-global-typography-primary-letter-spacing);
    color: var(--e-global-color-primary);
}

.elementor-155 .elementor-element.elementor-element-554f04f {
    --display: flex;
    --justify-content: flex-end;
    --margin-top: 0px;
    --margin-bottom: 0px;
    --margin-left: 0px;
    --margin-right: 0px;
    --padding-top: 135px;
    --padding-bottom: 172px;
    --padding-left: 0px;
    --padding-right: 0px;
    --z-index: 20;
}

.elementor-155 .elementor-element.elementor-element-10efbee {
    width: var(--container-widget-width, 400px);
    max-width: 400px;
    --container-widget-width: 400px;
    --container-widget-flex-grow: 0;
}

.elementor-155 .elementor-element.elementor-element-10efbee>.elementor-widget-container {
    margin: 0px 0px 1000px 0px;
    padding: 0px 0px 0px 0px;
}

.elementor-155 .elementor-element.elementor-element-10efbee .elementor-heading-title {
    font-family: "Noto Serif JP", serif;
    font-size: 88px;
    font-weight: 300;
    line-height: 90px;
    letter-spacing: -1.76px;
    color: var(--e-global-color-text);
}

.elementor-155 .elementor-element.elementor-element-58289f7 {
    --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: stretch;
    --gap: 0px 0px;
    --row-gap: 0px;
    --column-gap: 0px;
    border-style: solid;
    --border-style: solid;
    border-width: 0px 0px 0px 0px;
    --border-top-width: 0px;
    --border-right-width: 0px;
    --border-bottom-width: 0px;
    --border-left-width: 0px;
    border-color: var(--e-global-color-4f3d1cb);
    --border-color: var(--e-global-color-4f3d1cb);
    --margin-top: 0px;
    --margin-bottom: 0px;
    --margin-left: 0px;
    --margin-right: 0px;
    --padding-top: 0px;
    --padding-bottom: 0px;
    --padding-left: 0px;
    --padding-right: 0px;
    --z-index: 30;
}

.elementor-155 .elementor-element.elementor-element-a661b2c {
    --display: flex;
    --min-height: 100%;
    --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;
    --justify-content: flex-end;
    --padding-top: 135px;
    --padding-bottom: 48px;
    --padding-left: 30px;
    --padding-right: 30px;
}

.elementor-155 .elementor-element.elementor-element-a661b2c:not(.elementor-motion-effects-element-type-background),
.elementor-155 .elementor-element.elementor-element-a661b2c>.elementor-motion-effects-container>.elementor-motion-effects-layer {
    background-color: #FFFFFF80;
}

.elementor-155 .elementor-element.elementor-element-4cdc9f0 {
    width: var(--container-widget-width, fit-content);
    max-width: fit-content;
    --container-widget-width: fit-content;
    --container-widget-flex-grow: 0;
}

.elementor-155 .elementor-element.elementor-element-4cdc9f0>.elementor-widget-container {
    background-image: url("https://cedarsprings.net/wp-content/uploads/2025/06/cedar-springs-landscapes-home-scroll-down-light.svg");
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 52px;
    background-position: center left;
    background-repeat: no-repeat;
}

.elementor-155 .elementor-element.elementor-element-4cdc9f0 .elementor-heading-title {
    font-family: "Noto Serif JP", serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 18px;
    letter-spacing: -0.36px;
    color: var(--e-global-color-text);
}

.elementor-155 .elementor-element.elementor-element-a098ac2 {
    --grid-template-columns: repeat(0, auto);
    --icon-size: 24px;
    --grid-column-gap: 12px;
    --grid-row-gap: 0px;
}

.elementor-155 .elementor-element.elementor-element-a098ac2 .elementor-widget-container {
    text-align: center;
}

.elementor-155 .elementor-element.elementor-element-a098ac2 .elementor-social-icon {
    background-color: #FFFFFF00;
    --icon-padding: 0px;
}

.elementor-155 .elementor-element.elementor-element-a098ac2 .elementor-social-icon i {
    color: var(--e-global-color-text);
}

.elementor-155 .elementor-element.elementor-element-a098ac2 .elementor-social-icon svg {
    fill: var(--e-global-color-text);
}

.elementor-155 .elementor-element.elementor-element-a098ac2 .elementor-social-icon:hover {
    background-color: #FFFFFF00;
}

.elementor-155 .elementor-element.elementor-element-a098ac2 .elementor-social-icon:hover i {
    color: #FFFFFF9E;
}

.elementor-155 .elementor-element.elementor-element-a098ac2 .elementor-social-icon:hover svg {
    fill: #FFFFFF9E;
}

.elementor-155 .elementor-element.elementor-element-47e8eb4 {
    --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: stretch;
    --gap: 0px 0px;
    --row-gap: 0px;
    --column-gap: 0px;
    --overlay-mix-blend-mode: multiply;
    --padding-top: 0px;
    --padding-bottom: 0px;
    --padding-left: 30px;
    --padding-right: 0px;
    --z-index: 2;
}

.elementor-155 .elementor-element.elementor-element-47e8eb4:not(.elementor-motion-effects-element-type-background),
.elementor-155 .elementor-element.elementor-element-47e8eb4>.elementor-motion-effects-container>.elementor-motion-effects-layer {
    background-color: var(--e-global-color-text);
}

.elementor-155 .elementor-element.elementor-element-10ba63f {
    --display: flex;
    --justify-content: flex-start;
    --margin-top: 0px;
    --margin-bottom: 0px;
    --margin-left: 0px;
    --margin-right: 0px;
    --padding-top: 166px;
    --padding-bottom: 172px;
    --padding-left: 0px;
    --padding-right: 0px;
    --z-index: 2;
}

.elementor-155 .elementor-element.elementor-element-220cd6e {
    width: var(--container-widget-width, 400px);
    max-width: 400px;
    --container-widget-width: 400px;
    --container-widget-flex-grow: 0;
}

.elementor-155 .elementor-element.elementor-element-220cd6e>.elementor-widget-container {
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
}

.elementor-155 .elementor-element.elementor-element-220cd6e .elementor-heading-title {
    font-family: "Noto Serif JP", serif;
    font-size: 88px;
    font-weight: 300;
    line-height: 90px;
    letter-spacing: -1.76px;
    color: var(--e-global-color-primary);
}

.elementor-155 .elementor-element.elementor-element-cc1f93f {
    width: var(--container-widget-width, 400px);
    max-width: 400px;
    --container-widget-width: 400px;
    --container-widget-flex-grow: 0;
}

.elementor-155 .elementor-element.elementor-element-cc1f93f>.elementor-widget-container {
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
}

.elementor-155 .elementor-element.elementor-element-cc1f93f .elementor-heading-title {
    font-family: "Noto Serif JP", serif;
    font-size: 88px;
    font-weight: 300;
    line-height: 90px;
    letter-spacing: -1.76px;
    color: var(--e-global-color-primary);
}

.elementor-155 .elementor-element.elementor-element-698247b {
    --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: stretch;
    --margin-top: 0px;
    --margin-bottom: 0px;
    --margin-left: 0px;
    --margin-right: 0px;
    --padding-top: 287px;
    --padding-bottom: 0px;
    --padding-left: 0px;
    --padding-right: 0px;
}

.elementor-155 .elementor-element.elementor-element-4aff386 {
    --display: flex;
    --padding-top: 0px;
    --padding-bottom: 45px;
    --padding-left: 0px;
    --padding-right: 109px;
}

.elementor-155 .elementor-element.elementor-element-ea75bc5>.elementor-widget-container {
    margin: 0px 0px 24px 0px;
    padding: 0px 0px 0px 0px;
}

.elementor-155 .elementor-element.elementor-element-ea75bc5 .elementor-heading-title {
    font-family: var(--e-global-typography-dcde57d-font-family), Sans-serif;
    font-size: var(--e-global-typography-dcde57d-font-size);
    font-weight: var(--e-global-typography-dcde57d-font-weight);
    line-height: var(--e-global-typography-dcde57d-line-height);
    letter-spacing: var(--e-global-typography-dcde57d-letter-spacing);
}

.elementor-widget-text-editor {
    font-family: var(--e-global-typography-text-font-family), Sans-serif;
    font-size: var(--e-global-typography-text-font-size);
    font-weight: var(--e-global-typography-text-font-weight);
    line-height: var(--e-global-typography-text-line-height);
    letter-spacing: var(--e-global-typography-text-letter-spacing);
    color: var(--e-global-color-text);
}

.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap {
    background-color: var(--e-global-color-primary);
}

.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap,
.elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap {
    color: var(--e-global-color-primary);
    border-color: var(--e-global-color-primary);
}

.elementor-155 .elementor-element.elementor-element-fa6626c>.elementor-widget-container {
    margin: 0px 0px 64px 0px;
    padding: 0px 14px 0px 0px;
}

.elementor-155 .elementor-element.elementor-element-fa6626c {
    color: var(--e-global-color-primary);
}

.elementor-widget-button .elementor-button {
    background-color: var(--e-global-color-accent);
    font-family: var(--e-global-typography-accent-font-family), Sans-serif;
    font-size: var(--e-global-typography-accent-font-size);
    font-weight: var(--e-global-typography-accent-font-weight);
    letter-spacing: var(--e-global-typography-accent-letter-spacing);
}

.elementor-155 .elementor-element.elementor-element-e7bc629 .elementor-button {
    background-color: var(--e-global-color-text);
    border-radius: 0px 0px 0px 0px;
    padding: 10px 0px 20px 0px;
}

.elementor-155 .elementor-element.elementor-element-e7bc629>.elementor-widget-container {
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
}

.elementor-155 .elementor-element.elementor-element-e7bc629 .elementor-button-content-wrapper {
    flex-direction: row-reverse;
}

.elementor-155 .elementor-element.elementor-element-e7bc629 .elementor-button .elementor-button-content-wrapper {
    gap: 11px;
}

.elementor-widget-image .widget-image-caption {
    color: var(--e-global-color-text);
    font-family: var(--e-global-typography-text-font-family), Sans-serif;
    font-size: var(--e-global-typography-text-font-size);
    font-weight: var(--e-global-typography-text-font-weight);
    line-height: var(--e-global-typography-text-line-height);
    letter-spacing: var(--e-global-typography-text-letter-spacing);
}

.elementor-155 .elementor-element.elementor-element-f6f8055 {
    width: var(--container-widget-width, calc(100% - 550px));
    max-width: calc(100% - 550px);
    --container-widget-width: calc(100% - 550px);
    --container-widget-flex-grow: 0;
}

.elementor-155 .elementor-element.elementor-element-f6f8055>.elementor-widget-container {
    margin: -224px 0px 0px 0px;
}

.elementor-155 .elementor-element.elementor-element-f6f8055 img {
    width: 100%;
    height: calc(100% + 224px);
    object-fit: cover;
    object-position: top left;
}

.elementor-155 .elementor-element.elementor-element-18b68c5 {
    --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: stretch;
    --gap: 0px 0px;
    --row-gap: 0px;
    --column-gap: 0px;
    border-style: solid;
    --border-style: solid;
    border-width: 0px 0px 0px 0px;
    --border-top-width: 0px;
    --border-right-width: 0px;
    --border-bottom-width: 0px;
    --border-left-width: 0px;
    border-color: #A0A1A5;
    --border-color: #A0A1A5;
    --margin-top: 0px;
    --margin-bottom: 0px;
    --margin-left: 0px;
    --margin-right: 0px;
    --padding-top: 0px;
    --padding-bottom: 0px;
    --padding-left: 0px;
    --padding-right: 0px;
    --z-index: 1;
}

.elementor-155 .elementor-element.elementor-element-4e4afae {
    --display: flex;
    --min-height: 100%;
    --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;
    --justify-content: flex-end;
    --padding-top: 135px;
    --padding-bottom: 48px;
    --padding-left: 30px;
    --padding-right: 30px;
}

.elementor-155 .elementor-element.elementor-element-4e4afae:not(.elementor-motion-effects-element-type-background),
.elementor-155 .elementor-element.elementor-element-4e4afae>.elementor-motion-effects-container>.elementor-motion-effects-layer {
    background-color: var(--e-global-color-primary);
}

.elementor-155 .elementor-element.elementor-element-d2ffaf3 {
    --display: flex;
}

.elementor-155 .elementor-element.elementor-element-d2ffaf3:not(.elementor-motion-effects-element-type-background),
.elementor-155 .elementor-element.elementor-element-d2ffaf3>.elementor-motion-effects-container>.elementor-motion-effects-layer {
    background-color: #212123;
}

.elementor-155 .elementor-element.elementor-element-4e29d0a {
    width: var(--container-widget-width, calc(100% - 550px));
    max-width: calc(100% - 550px);
    --container-widget-width: calc(100% - 550px);
    --container-widget-flex-grow: 0;
}

.elementor-155 .elementor-element.elementor-element-4e29d0a>.elementor-widget-container {
    margin: -224px 0px 0px 0px;
}

.elementor-155 .elementor-element.elementor-element-4e29d0a img {
    width: 100%;
    height: calc(100% + 224px);
    object-fit: cover;
    object-position: center center;
}

.elementor-155 .elementor-element.elementor-element-f28b6bf {
    --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: stretch;
    --gap: 0px 0px;
    --row-gap: 0px;
    --column-gap: 0px;
    border-style: solid;
    --border-style: solid;
    border-color: #606065;
    --border-color: #606065;
    --margin-top: 0px;
    --margin-bottom: 0px;
    --margin-left: 0px;
    --margin-right: 0px;
    --padding-top: 0px;
    --padding-bottom: 0px;
    --padding-left: 0px;
    --padding-right: 0px;
}

.elementor-155 .elementor-element.elementor-element-c148f1e {
    --display: flex;
    --min-height: 100%;
    --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;
    --justify-content: flex-end;
    --padding-top: 135px;
    --padding-bottom: 48px;
    --padding-left: 30px;
    --padding-right: 30px;
}

.elementor-155 .elementor-element.elementor-element-c148f1e:not(.elementor-motion-effects-element-type-background),
.elementor-155 .elementor-element.elementor-element-c148f1e>.elementor-motion-effects-container>.elementor-motion-effects-layer {
    background-color: var(--e-global-color-primary);
}

.elementor-155 .elementor-element.elementor-element-bd8e86a {
    --display: flex;
}

.elementor-155 .elementor-element.elementor-element-bd8e86a:not(.elementor-motion-effects-element-type-background),
.elementor-155 .elementor-element.elementor-element-bd8e86a>.elementor-motion-effects-container>.elementor-motion-effects-layer {
    background-color: #212123;
}

.elementor-155 .elementor-element.elementor-element-b06e618 {
    --display: flex;
    --min-height: 100vh;
    --margin-top: 0px;
    --margin-bottom: 0px;
    --margin-left: 0px;
    --margin-right: 0px;
    --padding-top: 0px;
    --padding-bottom: 0px;
    --padding-left: 0px;
    --padding-right: 0px;
}

.elementor-155 .elementor-element.elementor-element-b06e618:not(.elementor-motion-effects-element-type-background),
.elementor-155 .elementor-element.elementor-element-b06e618>.elementor-motion-effects-container>.elementor-motion-effects-layer {
    background-color: var(--e-global-color-text);
}

.elementor-widget-loop-grid .elementor-button {
    background-color: var(--e-global-color-accent);
    font-family: var(--e-global-typography-accent-font-family), Sans-serif;
    font-size: var(--e-global-typography-accent-font-size);
    font-weight: var(--e-global-typography-accent-font-weight);
    letter-spacing: var(--e-global-typography-accent-letter-spacing);
}

.elementor-widget-loop-grid .elementor-pagination {
    font-family: var(--e-global-typography-secondary-font-family), Sans-serif;
    font-size: var(--e-global-typography-secondary-font-size);
    font-weight: var(--e-global-typography-secondary-font-weight);
    letter-spacing: var(--e-global-typography-secondary-letter-spacing);
}

.elementor-widget-loop-grid .e-load-more-message {
    font-family: var(--e-global-typography-secondary-font-family), Sans-serif;
    font-size: var(--e-global-typography-secondary-font-size);
    font-weight: var(--e-global-typography-secondary-font-weight);
    letter-spacing: var(--e-global-typography-secondary-letter-spacing);
}

.elementor-155 .elementor-element.elementor-element-6ccfb7a {
    --grid-columns: 1;
    --grid-row-gap: 0px;
    --grid-column-gap: 0px;
}

.elementor-155 .elementor-element.elementor-element-6ccfb7a>.elementor-widget-container {
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
}

.elementor-155 .elementor-element.elementor-element-7125744 {
    --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: stretch;
    --gap: 0px 0px;
    --row-gap: 0px;
    --column-gap: 0px;
    --overlay-mix-blend-mode: multiply;
    --padding-top: 0px;
    --padding-bottom: 0px;
    --padding-left: 30px;
    --padding-right: 0px;
}

.elementor-155 .elementor-element.elementor-element-7125744:not(.elementor-motion-effects-element-type-background),
.elementor-155 .elementor-element.elementor-element-7125744>.elementor-motion-effects-container>.elementor-motion-effects-layer {
    background-color: var(--e-global-color-text);
}

.elementor-155 .elementor-element.elementor-element-0458c46 {
    --display: flex;
    --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;
    --justify-content: flex-start;
    --margin-top: 0px;
    --margin-bottom: 0px;
    --margin-left: 0px;
    --margin-right: 0px;
    --padding-top: 166px;
    --padding-bottom: 172px;
    --padding-left: 0px;
    --padding-right: 0px;
    --z-index: 2;
}

.elementor-155 .elementor-element.elementor-element-c6f719f {
    --display: flex;
    --padding-top: 196px;
    --padding-bottom: 138px;
    --padding-left: 0px;
    --padding-right: 0px;
}

.elementor-155 .elementor-element.elementor-element-68081fb>.elementor-widget-container {
    margin: 0px 0px 24px 0px;
    padding: 0px 0px 0px 0px;
}

.elementor-155 .elementor-element.elementor-element-68081fb .elementor-heading-title {
    font-family: "Noto Serif JP", serif;
    font-size: 64px;
    font-weight: 400;
    line-height: 75px;
    letter-spacing: -1.28px;
}

.elementor-155 .elementor-element.elementor-element-b858c98 .elementor-button {
    background-color: var(--e-global-color-text);
    border-radius: 0px 0px 0px 0px;
    padding: 10px 0px 20px 0px;
}

.elementor-155 .elementor-element.elementor-element-b858c98>.elementor-widget-container {
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
}

.elementor-155 .elementor-element.elementor-element-b858c98 .elementor-button-content-wrapper {
    flex-direction: row-reverse;
}

.elementor-155 .elementor-element.elementor-element-b858c98 .elementor-button .elementor-button-content-wrapper {
    gap: 11px;
}

.elementor-155 .elementor-element.elementor-element-1bcaf36 {
    width: var(--container-widget-width, calc(100% - 280px));
    max-width: calc(100% - 280px);
    --container-widget-width: calc(100% - 280px);
    --container-widget-flex-grow: 0;
}

.elementor-155 .elementor-element.elementor-element-1bcaf36>.elementor-widget-container {
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
}

.elementor-155 .elementor-element.elementor-element-1bcaf36 img {
    width: 100%;
    height: 680px;
    object-fit: contain;
    object-position: center left;
}

.elementor-155 .elementor-element.elementor-element-60ca3b8 {
    --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: stretch;
    --gap: 0px 0px;
    --row-gap: 0px;
    --column-gap: 0px;
    --border-radius: 0px 0px 0px 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;
    --z-index: 1;
}

.elementor-155 .elementor-element.elementor-element-df64754 {
    --display: flex;
    --min-height: 100%;
    --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;
    --justify-content: flex-end;
    --padding-top: 135px;
    --padding-bottom: 48px;
    --padding-left: 30px;
    --padding-right: 30px;
}

.elementor-155 .elementor-element.elementor-element-df64754:not(.elementor-motion-effects-element-type-background),
.elementor-155 .elementor-element.elementor-element-df64754>.elementor-motion-effects-container>.elementor-motion-effects-layer {
    background-color: var(--e-global-color-primary);
}

.elementor-155 .elementor-element.elementor-element-6a62fbf {
    --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: stretch;
    --gap: 0px 0px;
    --row-gap: 0px;
    --column-gap: 0px;
    --overlay-mix-blend-mode: multiply;
    --padding-top: 0px;
    --padding-bottom: 0px;
    --padding-left: 30px;
    --padding-right: 30px;
}

.elementor-155 .elementor-element.elementor-element-6a62fbf:not(.elementor-motion-effects-element-type-background),
.elementor-155 .elementor-element.elementor-element-6a62fbf>.elementor-motion-effects-container>.elementor-motion-effects-layer {
    background-color: var(--e-global-color-text);
}

.elementor-widget-divider {
    --divider-color: var(--e-global-color-secondary);
}

.elementor-widget-divider .elementor-divider__text {
    color: var(--e-global-color-secondary);
    font-family: var(--e-global-typography-secondary-font-family), Sans-serif;
    font-size: var(--e-global-typography-secondary-font-size);
    font-weight: var(--e-global-typography-secondary-font-weight);
    letter-spacing: var(--e-global-typography-secondary-letter-spacing);
}

.elementor-widget-divider.elementor-view-stacked .elementor-icon {
    background-color: var(--e-global-color-secondary);
}

.elementor-widget-divider.elementor-view-framed .elementor-icon,
.elementor-widget-divider.elementor-view-default .elementor-icon {
    color: var(--e-global-color-secondary);
    border-color: var(--e-global-color-secondary);
}

.elementor-widget-divider.elementor-view-framed .elementor-icon,
.elementor-widget-divider.elementor-view-default .elementor-icon svg {
    fill: var(--e-global-color-secondary);
}

.elementor-155 .elementor-element.elementor-element-e537c42 {
    --divider-border-style: solid;
    --divider-color: #A0A1A5;
    --divider-border-width: 1px;
}

.elementor-155 .elementor-element.elementor-element-e537c42 .elementor-divider-separator {
    width: 100%;
}

.elementor-155 .elementor-element.elementor-element-e537c42 .elementor-divider {
    padding-block-start: 15px;
    padding-block-end: 15px;
}

.elementor-155 .elementor-element.elementor-element-8131cd4 {
    --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: stretch;
    --gap: 0px 0px;
    --row-gap: 0px;
    --column-gap: 0px;
    --overlay-mix-blend-mode: multiply;
    --padding-top: 0px;
    --padding-bottom: 0px;
    --padding-left: 30px;
    --padding-right: 30px;
}

.elementor-155 .elementor-element.elementor-element-8131cd4:not(.elementor-motion-effects-element-type-background),
.elementor-155 .elementor-element.elementor-element-8131cd4>.elementor-motion-effects-container>.elementor-motion-effects-layer {
    background-color: var(--e-global-color-text);
}

.elementor-155 .elementor-element.elementor-element-2503104 {
    --display: flex;
    --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;
    --justify-content: flex-start;
    --margin-top: 0px;
    --margin-bottom: 0px;
    --margin-left: 0px;
    --margin-right: 0px;
    --padding-top: 166px;
    --padding-bottom: 172px;
    --padding-left: 0px;
    --padding-right: 0px;
}

.elementor-155 .elementor-element.elementor-element-7d1805b {
    --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: stretch;
    --gap: 0px 0px;
    --row-gap: 0px;
    --column-gap: 0px;
    border-style: solid;
    --border-style: solid;
    border-color: #A0A1A5;
    --border-color: #A0A1A5;
    --margin-top: 0px;
    --margin-bottom: 0px;
    --margin-left: 0px;
    --margin-right: 0px;
    --padding-top: 0px;
    --padding-bottom: 0px;
    --padding-left: 0px;
    --padding-right: 0px;
}

.elementor-155 .elementor-element.elementor-element-11f68cb {
    --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: stretch;
    --gap: 0px 0px;
    --row-gap: 0px;
    --column-gap: 0px;
    --overlay-opacity: 0.8;
    --overlay-mix-blend-mode: multiply;
    --padding-top: 0px;
    --padding-bottom: 0px;
    --padding-left: 30px;
    --padding-right: 0px;
}

.elementor-155 .elementor-element.elementor-element-11f68cb:not(.elementor-motion-effects-element-type-background),
.elementor-155 .elementor-element.elementor-element-11f68cb>.elementor-motion-effects-container>.elementor-motion-effects-layer {
    background-image: url("https://999box.net/sample/building7/images/top/office/01.jpg");
    background-position: 0% 100%;
    background-size: cover;
}

.elementor-155 .elementor-element.elementor-element-11f68cb::before,
.elementor-155 .elementor-element.elementor-element-11f68cb>.elementor-background-video-container::before,
.elementor-155 .elementor-element.elementor-element-11f68cb>.e-con-inner>.elementor-background-video-container::before,
.elementor-155 .elementor-element.elementor-element-11f68cb>.elementor-background-slideshow::before,
.elementor-155 .elementor-element.elementor-element-11f68cb>.e-con-inner>.elementor-background-slideshow::before,
.elementor-155 .elementor-element.elementor-element-11f68cb>.elementor-motion-effects-container>.elementor-motion-effects-layer::before {
    background-color: transparent;
    --background-overlay: '';
    background-image: linear-gradient(180deg, #012D4300 calc(100% - 510px), var(--e-global-color-primary) 100%);
}

.elementor-155 .elementor-element.elementor-element-026c73b {
    --display: flex;
    --justify-content: flex-end;
    --overlay-mix-blend-mode: multiply;
    --margin-top: 0px;
    --margin-bottom: 0px;
    --margin-left: 0px;
    --margin-right: 0px;
    --padding-top: 402px;
    --padding-bottom: 128px;
    --padding-left: 0px;
    --padding-right: 0px;
}

.elementor-155 .elementor-element.elementor-element-887cfd3>.elementor-widget-container {
    margin: 0px 0px 50px 0px;
    padding: 0px 0px 0px 0px;
}

.elementor-155 .elementor-element.elementor-element-887cfd3 .elementor-heading-title {
    font-family: var(--e-global-typography-primary-font-family), Sans-serif;
    font-size: var(--e-global-typography-primary-font-size);
    font-weight: var(--e-global-typography-primary-font-weight);
    line-height: var(--e-global-typography-primary-line-height);
    letter-spacing: var(--e-global-typography-primary-letter-spacing);
    color: var(--e-global-color-text);
}

.elementor-155 .elementor-element.elementor-element-736b3cf .elementor-button {
    background-color: #FFFFFF00;
    fill: var(--e-global-color-text);
    color: var(--e-global-color-text);
    border-radius: 0px 0px 0px 0px;
    padding: 10px 0px 20px 0px;
}

.elementor-155 .elementor-element.elementor-element-736b3cf>.elementor-widget-container {
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
}

.elementor-155 .elementor-element.elementor-element-736b3cf .elementor-button-content-wrapper {
    flex-direction: row-reverse;
}

.elementor-155 .elementor-element.elementor-element-736b3cf .elementor-button .elementor-button-content-wrapper {
    gap: 11px;
}

.elementor-155 .elementor-element.elementor-element-23dc235 {
    --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: stretch;
    --gap: 0px 0px;
    --row-gap: 0px;
    --column-gap: 0px;
    border-style: solid;
    --border-style: solid;
    border-width: 0px 0px 0px 0px;
    --border-top-width: 0px;
    --border-right-width: 0px;
    --border-bottom-width: 0px;
    --border-left-width: 0px;
    border-color: var(--e-global-color-4f3d1cb);
    --border-color: var(--e-global-color-4f3d1cb);
    --margin-top: 0px;
    --margin-bottom: 0px;
    --margin-left: 0px;
    --margin-right: 0px;
    --padding-top: 0px;
    --padding-bottom: 0px;
    --padding-left: 0px;
    --padding-right: 0px;
}

.elementor-155 .elementor-element.elementor-element-580b83e {
    --display: flex;
    --min-height: 100%;
    --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;
    --justify-content: flex-end;
    --padding-top: 135px;
    --padding-bottom: 48px;
    --padding-left: 30px;
    --padding-right: 30px;
}

.elementor-155 .elementor-element.elementor-element-580b83e:not(.elementor-motion-effects-element-type-background),
.elementor-155 .elementor-element.elementor-element-580b83e>.elementor-motion-effects-container>.elementor-motion-effects-layer {
    background-color: #FFFFFF80;
}

@media(max-width:1024px) {
    .elementor-155 .elementor-element.elementor-element-d09846d {
        --padding-top: 0px;
        --padding-bottom: 0px;
        --padding-left: 50px;
        --padding-right: 0px;
    }

    .elementor-widget-heading .elementor-heading-title {
        font-size: var(--e-global-typography-primary-font-size);
        line-height: var(--e-global-typography-primary-line-height);
        letter-spacing: var(--e-global-typography-primary-letter-spacing);
    }

    .elementor-155 .elementor-element.elementor-element-10efbee .elementor-heading-title {
        font-size: 64px;
        line-height: 70px;
        letter-spacing: -1.28px;
    }

    .elementor-155 .elementor-element.elementor-element-58289f7 {
        border-width: 0px 0px 0px 1px;
        --border-top-width: 0px;
        --border-right-width: 0px;
        --border-bottom-width: 0px;
        --border-left-width: 1px;
    }

    .elementor-155 .elementor-element.elementor-element-4cdc9f0>.elementor-widget-container {
        padding: 0px 0px 0px 72px;
    }

    .elementor-155 .elementor-element.elementor-element-4cdc9f0 .elementor-heading-title {
        font-size: 16px;
        line-height: 25px;
    }

    .elementor-155 .elementor-element.elementor-element-a098ac2 {
        --grid-template-columns: repeat(1, auto);
        --grid-row-gap: 16px;
    }

    .elementor-155 .elementor-element.elementor-element-a098ac2 .elementor-widget-container {
        text-align: center;
    }

    .elementor-155 .elementor-element.elementor-element-47e8eb4 {
        --padding-top: 0px;
        --padding-bottom: 0px;
        --padding-left: 50px;
        --padding-right: 0px;
    }

    .elementor-155 .elementor-element.elementor-element-10ba63f {
        --padding-top: 80px;
        --padding-bottom: 178px;
        --padding-left: 0px;
        --padding-right: 0px;
    }

    .elementor-155 .elementor-element.elementor-element-220cd6e .elementor-heading-title {
        font-size: 64px;
        line-height: 70px;
        letter-spacing: -1.28px;
    }

    .elementor-155 .elementor-element.elementor-element-cc1f93f .elementor-heading-title {
        font-size: 64px;
        line-height: 70px;
        letter-spacing: -1.28px;
    }

    .elementor-155 .elementor-element.elementor-element-698247b {
        --padding-top: 104px;
        --padding-bottom: 0px;
        --padding-left: 0px;
        --padding-right: 0px;
    }

    .elementor-155 .elementor-element.elementor-element-4aff386 {
        --padding-top: 0px;
        --padding-bottom: 0px;
        --padding-left: 0px;
        --padding-right: 0px;
    }

    .elementor-155 .elementor-element.elementor-element-ea75bc5>.elementor-widget-container {
        margin: 48px 0px 24px 0px;
    }

    .elementor-155 .elementor-element.elementor-element-ea75bc5 .elementor-heading-title {
        font-size: var(--e-global-typography-dcde57d-font-size);
        line-height: var(--e-global-typography-dcde57d-line-height);
        letter-spacing: var(--e-global-typography-dcde57d-letter-spacing);
    }

    .elementor-widget-text-editor {
        font-size: var(--e-global-typography-text-font-size);
        line-height: var(--e-global-typography-text-line-height);
        letter-spacing: var(--e-global-typography-text-letter-spacing);
    }

    .elementor-155 .elementor-element.elementor-element-fa6626c>.elementor-widget-container {
        padding: 0px 0px 0px 0px;
    }

    .elementor-widget-button .elementor-button {
        font-size: var(--e-global-typography-accent-font-size);
        letter-spacing: var(--e-global-typography-accent-letter-spacing);
    }

    .elementor-widget-image .widget-image-caption {
        font-size: var(--e-global-typography-text-font-size);
        line-height: var(--e-global-typography-text-line-height);
        letter-spacing: var(--e-global-typography-text-letter-spacing);
    }

    .elementor-155 .elementor-element.elementor-element-18b68c5 {
        border-width: 0px 0px 0px 1px;
        --border-top-width: 0px;
        --border-right-width: 0px;
        --border-bottom-width: 0px;
        --border-left-width: 1px;
    }

    .elementor-155 .elementor-element.elementor-element-d2ffaf3 {
        --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: stretch;
        --margin-top: 0px;
        --margin-bottom: 0px;
        --margin-left: 0px;
        --margin-right: 0px;
        --padding-top: 0px;
        --padding-bottom: 0px;
        --padding-left: 50px;
        --padding-right: 0px;
    }

    .elementor-155 .elementor-element.elementor-element-4e29d0a {
        width: 100%;
        max-width: 100%;
        z-index: 2;
    }

    .elementor-155 .elementor-element.elementor-element-4e29d0a>.elementor-widget-container {
        margin: -130px 0px 130px 0px;
        padding: 0px 0px 0px 0px;
    }

    .elementor-155 .elementor-element.elementor-element-4e29d0a img {
        height: 56vw;
    }

    .elementor-155 .elementor-element.elementor-element-f28b6bf {
        border-width: 0px 0px 0px 1px;
        --border-top-width: 0px;
        --border-right-width: 0px;
        --border-bottom-width: 0px;
        --border-left-width: 1px;
    }

    .elementor-widget-loop-grid .elementor-pagination {
        font-size: var(--e-global-typography-secondary-font-size);
        letter-spacing: var(--e-global-typography-secondary-letter-spacing);
    }

    .elementor-widget-loop-grid .elementor-button {
        font-size: var(--e-global-typography-accent-font-size);
        letter-spacing: var(--e-global-typography-accent-letter-spacing);
    }

    .elementor-widget-loop-grid .e-load-more-message {
        font-size: var(--e-global-typography-secondary-font-size);
        letter-spacing: var(--e-global-typography-secondary-letter-spacing);
    }

    .elementor-155 .elementor-element.elementor-element-6ccfb7a {
        --grid-columns: 2;
    }

    .elementor-155 .elementor-element.elementor-element-7125744 {
        --padding-top: 0px;
        --padding-bottom: 0px;
        --padding-left: 50px;
        --padding-right: 0px;
    }

    .elementor-155 .elementor-element.elementor-element-0458c46 {
        --flex-wrap: wrap;
        --padding-top: 128px;
        --padding-bottom: 80px;
        --padding-left: 0px;
        --padding-right: 0px;
    }

    .elementor-155 .elementor-element.elementor-element-c6f719f {
        --justify-content: center;
        --margin-top: 0px;
        --margin-bottom: 0px;
        --margin-left: 0px;
        --margin-right: 0px;
        --padding-top: 36px;
        --padding-bottom: 0px;
        --padding-left: 0px;
        --padding-right: 0px;
    }

    .elementor-155 .elementor-element.elementor-element-68081fb .elementor-heading-title {
        font-size: 48px;
        line-height: 52px;
        letter-spacing: -0.96px;
    }

    .elementor-155 .elementor-element.elementor-element-1bcaf36 {
        --container-widget-width: calc(100% - 232px - 141px);
        --container-widget-flex-grow: 0;
        width: var(--container-widget-width, calc(100% - 232px - 141px));
        max-width: calc(100% - 232px - 141px);
    }

    .elementor-155 .elementor-element.elementor-element-1bcaf36 img {
        width: 100%;
        height: 100%;
    }

    .elementor-155 .elementor-element.elementor-element-6a62fbf {
        --margin-top: 0px;
        --margin-bottom: 0px;
        --margin-left: 0px;
        --margin-right: 0px;
        --padding-top: 0px;
        --padding-bottom: 0px;
        --padding-left: 50px;
        --padding-right: 50px;
    }

    .elementor-widget-divider .elementor-divider__text {
        font-size: var(--e-global-typography-secondary-font-size);
        letter-spacing: var(--e-global-typography-secondary-letter-spacing);
    }

    .elementor-155 .elementor-element.elementor-element-e537c42 {
        width: 100%;
        max-width: 100%;
    }

    .elementor-155 .elementor-element.elementor-element-e537c42>.elementor-widget-container {
        margin: 0px 0px 0px 0px;
        padding: 0px 0px 0px 0px;
    }

    .elementor-155 .elementor-element.elementor-element-e537c42 .elementor-divider-separator {
        width: 100%;
    }

    .elementor-155 .elementor-element.elementor-element-e537c42 .elementor-divider {
        padding-block-start: 0px;
        padding-block-end: 0px;
    }

    .elementor-155 .elementor-element.elementor-element-8131cd4 {
        --padding-top: 0px;
        --padding-bottom: 0px;
        --padding-left: 50px;
        --padding-right: 0px;
    }

    .elementor-155 .elementor-element.elementor-element-2503104 {
        --flex-wrap: wrap;
        --padding-top: 0px;
        --padding-bottom: 64px;
        --padding-left: 0px;
        --padding-right: 0px;
    }

    .elementor-155 .elementor-element.elementor-element-7d1805b {
        border-width: 0px 0px 0px 1px;
        --border-top-width: 0px;
        --border-right-width: 0px;
        --border-bottom-width: 0px;
        --border-left-width: 1px;
    }

    .elementor-155 .elementor-element.elementor-element-11f68cb:not(.elementor-motion-effects-element-type-background),
    .elementor-155 .elementor-element.elementor-element-11f68cb>.elementor-motion-effects-container>.elementor-motion-effects-layer {
        background-position: 46% 100%;
    }

    .elementor-155 .elementor-element.elementor-element-11f68cb {
        --padding-top: 0px;
        --padding-bottom: 0px;
        --padding-left: 0px;
        --padding-right: 0px;
    }

    .elementor-155 .elementor-element.elementor-element-026c73b {
        --padding-top: 185px;
        --padding-bottom: 165px;
        --padding-left: 50px;
        --padding-right: 0px;
    }

    .elementor-155 .elementor-element.elementor-element-887cfd3 .elementor-heading-title {
        font-size: var(--e-global-typography-primary-font-size);
        line-height: var(--e-global-typography-primary-line-height);
        letter-spacing: var(--e-global-typography-primary-letter-spacing);
    }

    .elementor-155 .elementor-element.elementor-element-23dc235 {
        border-width: 0px 0px 0px 1px;
        --border-top-width: 0px;
        --border-right-width: 0px;
        --border-bottom-width: 0px;
        --border-left-width: 1px;
        --border-radius: 0px 0px 0px 0px;
    }
}

@media(max-width:767px) {
    .elementor-155 .elementor-element.elementor-element-d09846d {
        --padding-top: 215px;
        --padding-bottom: 90px;
        --padding-left: 25px;
        --padding-right: 25px;
    }

    .elementor-widget-heading .elementor-heading-title {
        font-size: var(--e-global-typography-primary-font-size);
        line-height: var(--e-global-typography-primary-line-height);
        letter-spacing: var(--e-global-typography-primary-letter-spacing);
    }

    .elementor-155 .elementor-element.elementor-element-554f04f {
        --width: 100%;
        --margin-top: 0px;
        --margin-bottom: 0px;
        --margin-left: 0px;
        --margin-right: 0px;
        --padding-top: 0px;
        --padding-bottom: 0px;
        --padding-left: 0px;
        --padding-right: 0px;
    }

    .elementor-155 .elementor-element.elementor-element-10efbee {
        width: 100%;
        max-width: 100%;
    }

    .elementor-155 .elementor-element.elementor-element-10efbee>.elementor-widget-container {
        margin: 0px 0px 0px 0px;
        padding: 0px 0px 0px 0px;
    }

    .elementor-155 .elementor-element.elementor-element-10efbee .elementor-heading-title {
        font-size: 48px;
        line-height: 50px;
        letter-spacing: -0.96px;
    }

    .elementor-155 .elementor-element.elementor-element-58289f7 {
        border-width: 0px 0px 0px 0px;
        --border-top-width: 0px;
        --border-right-width: 0px;
        --border-bottom-width: 0px;
        --border-left-width: 0px;
    }

    .elementor-155 .elementor-element.elementor-element-47e8eb4 {
        --padding-top: 0px;
        --padding-bottom: 0px;
        --padding-left: 25px;
        --padding-right: 25px;
    }

    .elementor-155 .elementor-element.elementor-element-10ba63f {
        --margin-top: 0px;
        --margin-bottom: 0px;
        --margin-left: 0px;
        --margin-right: 0px;
        --padding-top: 0px;
        --padding-bottom: 0px;
        --padding-left: 0px;
        --padding-right: 0px;
    }

    .elementor-155 .elementor-element.elementor-element-220cd6e>.elementor-widget-container {
        margin: 0px 0px 0px 0px;
        padding: 0px 0px 0px 0px;
    }

    .elementor-155 .elementor-element.elementor-element-220cd6e .elementor-heading-title {
        font-size: 48px;
        line-height: 50px;
        letter-spacing: -0.96px;
    }

    .elementor-155 .elementor-element.elementor-element-cc1f93f>.elementor-widget-container {
        margin: 0px 0px 0px 0px;
        padding: 0px 0px 0px 0px;
    }

    .elementor-155 .elementor-element.elementor-element-cc1f93f .elementor-heading-title {
        font-size: 48px;
        line-height: 50px;
        letter-spacing: -0.96px;
    }

    .elementor-155 .elementor-element.elementor-element-698247b {
        --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;
        --padding-top: 160px;
        --padding-bottom: 0px;
        --padding-left: 0px;
        --padding-right: 0px;
    }

    .elementor-155 .elementor-element.elementor-element-4aff386 {
        --padding-top: 0px;
        --padding-bottom: 50px;
        --padding-left: 0px;
        --padding-right: 0px;
    }

    .elementor-155 .elementor-element.elementor-element-ea75bc5 .elementor-heading-title {
        font-size: var(--e-global-typography-dcde57d-font-size);
        line-height: var(--e-global-typography-dcde57d-line-height);
        letter-spacing: var(--e-global-typography-dcde57d-letter-spacing);
    }

    .elementor-widget-text-editor {
        font-size: var(--e-global-typography-text-font-size);
        line-height: var(--e-global-typography-text-line-height);
        letter-spacing: var(--e-global-typography-text-letter-spacing);
    }

    .elementor-widget-button .elementor-button {
        font-size: var(--e-global-typography-accent-font-size);
        letter-spacing: var(--e-global-typography-accent-letter-spacing);
    }

    .elementor-widget-image .widget-image-caption {
        font-size: var(--e-global-typography-text-font-size);
        line-height: var(--e-global-typography-text-line-height);
        letter-spacing: var(--e-global-typography-text-letter-spacing);
    }

    .elementor-155 .elementor-element.elementor-element-f6f8055>.elementor-widget-container {
        margin: 0px 0px 0px 0px;
    }

    .elementor-155 .elementor-element.elementor-element-d2ffaf3 {
        --padding-top: 0px;
        --padding-bottom: 0px;
        --padding-left: 0px;
        --padding-right: 0px;
    }

    .elementor-155 .elementor-element.elementor-element-4e29d0a {
        width: 100%;
        max-width: 100%;
    }

    .elementor-155 .elementor-element.elementor-element-4e29d0a>.elementor-widget-container {
        margin: 0px 0px 0px 0px;
    }

    .elementor-155 .elementor-element.elementor-element-bd8e86a {
        --padding-top: 60px;
        --padding-bottom: 60px;
        --padding-left: 60px;
        --padding-right: 60px;
        --z-index: 3;
    }

    .elementor-155 .elementor-element.elementor-element-b06e618 {
        --padding-top: 0px;
        --padding-bottom: 0px;
        --padding-left: 0px;
        --padding-right: 0px;
    }

    .elementor-widget-loop-grid .elementor-pagination {
        font-size: var(--e-global-typography-secondary-font-size);
        letter-spacing: var(--e-global-typography-secondary-letter-spacing);
    }

    .elementor-widget-loop-grid .elementor-button {
        font-size: var(--e-global-typography-accent-font-size);
        letter-spacing: var(--e-global-typography-accent-letter-spacing);
    }

    .elementor-widget-loop-grid .e-load-more-message {
        font-size: var(--e-global-typography-secondary-font-size);
        letter-spacing: var(--e-global-typography-secondary-letter-spacing);
    }

    .elementor-155 .elementor-element.elementor-element-6ccfb7a {
        --grid-columns: 1;
    }

    .elementor-155 .elementor-element.elementor-element-7125744 {
        --padding-top: 0px;
        --padding-bottom: 0px;
        --padding-left: 30px;
        --padding-right: 30px;
    }

    .elementor-155 .elementor-element.elementor-element-0458c46 {
        --flex-direction: column-reverse;
        --container-widget-width: 100%;
        --container-widget-height: initial;
        --container-widget-flex-grow: 0;
        --container-widget-align-self: initial;
        --flex-wrap-mobile: wrap;
        --margin-top: 0px;
        --margin-bottom: 0px;
        --margin-left: 0px;
        --margin-right: 0px;
        --padding-top: 73px;
        --padding-bottom: 88px;
        --padding-left: 0px;
        --padding-right: 0px;
    }

    .elementor-155 .elementor-element.elementor-element-68081fb {
        width: var(--container-widget-width, 182px);
        max-width: 182px;
        --container-widget-width: 182px;
        --container-widget-flex-grow: 0;
    }

    .elementor-155 .elementor-element.elementor-element-68081fb .elementor-heading-title {
        font-size: 32px;
        line-height: 34px;
        letter-spacing: -0.64px;
    }

    .elementor-155 .elementor-element.elementor-element-1bcaf36 {
        width: 100%;
        max-width: 100%;
    }

    .elementor-155 .elementor-element.elementor-element-6a62fbf {
        --padding-top: 215px;
        --padding-bottom: 90px;
        --padding-left: 30px;
        --padding-right: 30px;
    }

    .elementor-widget-divider .elementor-divider__text {
        font-size: var(--e-global-typography-secondary-font-size);
        letter-spacing: var(--e-global-typography-secondary-letter-spacing);
    }

    .elementor-155 .elementor-element.elementor-element-8131cd4 {
        --padding-top: 215px;
        --padding-bottom: 90px;
        --padding-left: 30px;
        --padding-right: 30px;
    }

    .elementor-155 .elementor-element.elementor-element-2503104 {
        --margin-top: 0px;
        --margin-bottom: 0px;
        --margin-left: 0px;
        --margin-right: 0px;
        --padding-top: 0px;
        --padding-bottom: 0px;
        --padding-left: 0px;
        --padding-right: 0px;
    }

    .elementor-155 .elementor-element.elementor-element-11f68cb:not(.elementor-motion-effects-element-type-background),
    .elementor-155 .elementor-element.elementor-element-11f68cb>.elementor-motion-effects-container>.elementor-motion-effects-layer {
        background-position: 46% 100%;
        background-repeat: no-repeat;
        background-size: cover;
    }

    .elementor-155 .elementor-element.elementor-element-11f68cb {
        --padding-top: 0px;
        --padding-bottom: 0px;
        --padding-left: 0px;
        --padding-right: 0px;
    }

    .elementor-155 .elementor-element.elementor-element-026c73b {
        --margin-top: 0px;
        --margin-bottom: 0px;
        --margin-left: 0px;
        --margin-right: 0px;
        --padding-top: 121px;
        --padding-bottom: 40px;
        --padding-left: 25px;
        --padding-right: 25px;
    }

    .elementor-155 .elementor-element.elementor-element-887cfd3>.elementor-widget-container {
        margin: 0px 0px 0px 0px;
        padding: 0px 0px 0px 0px;
    }

    .elementor-155 .elementor-element.elementor-element-887cfd3 .elementor-heading-title {
        font-size: var(--e-global-typography-primary-font-size);
        line-height: var(--e-global-typography-primary-line-height);
        letter-spacing: var(--e-global-typography-primary-letter-spacing);
    }
}

@media(min-width:768px) {
    .elementor-155 .elementor-element.elementor-element-554f04f {
        --width: 80%;
    }

    .elementor-155 .elementor-element.elementor-element-58289f7 {
        --width: 20%;
    }

    .elementor-155 .elementor-element.elementor-element-10ba63f {
        --width: calc(80vw - 30px);
    }

    .elementor-155 .elementor-element.elementor-element-4aff386 {
        --width: 550px;
    }

    .elementor-155 .elementor-element.elementor-element-18b68c5 {
        --width: 20%;
    }

    .elementor-155 .elementor-element.elementor-element-f28b6bf {
        --width: 20%;
    }

    .elementor-155 .elementor-element.elementor-element-0458c46 {
        --width: calc(80vw - 30px);
    }

    .elementor-155 .elementor-element.elementor-element-c6f719f {
        --width: 280px;
    }

    .elementor-155 .elementor-element.elementor-element-60ca3b8 {
        --width: 20%;
    }

    .elementor-155 .elementor-element.elementor-element-2503104 {
        --width: 80%;
    }

    .elementor-155 .elementor-element.elementor-element-7d1805b {
        --width: 20%;
    }

    .elementor-155 .elementor-element.elementor-element-026c73b {
        --width: 80%;
    }

    .elementor-155 .elementor-element.elementor-element-23dc235 {
        --width: 20%;
    }
}

@media(max-width:1024px) and (min-width:768px) {
    .elementor-155 .elementor-element.elementor-element-554f04f {
        --width: calc(100% - 141px);
    }

    .elementor-155 .elementor-element.elementor-element-58289f7 {
        --width: 141px;
    }

    .elementor-155 .elementor-element.elementor-element-10ba63f {
        --width: calc(100% - 141px);
    }

    .elementor-155 .elementor-element.elementor-element-4aff386 {
        --width: 486px;
    }

    .elementor-155 .elementor-element.elementor-element-18b68c5 {
        --width: 141px;
    }

    .elementor-155 .elementor-element.elementor-element-f28b6bf {
        --width: 141px;
    }

    .elementor-155 .elementor-element.elementor-element-0458c46 {
        --width: 100%;
    }

    .elementor-155 .elementor-element.elementor-element-c6f719f {
        --width: 232px;
    }

    .elementor-155 .elementor-element.elementor-element-2503104 {
        --width: 100%;
    }

    .elementor-155 .elementor-element.elementor-element-7d1805b {
        --width: 141px;
    }

    .elementor-155 .elementor-element.elementor-element-026c73b {
        --width: calc(100% - 141px);
    }

    .elementor-155 .elementor-element.elementor-element-23dc235 {
        --width: 141px;
    }
}

/* Start custom CSS for html, class: .elementor-element-cbb8ca2 */
.elementor-155 .elementor-element.elementor-element-cbb8ca2 {
    position: unset;
    /*width: 200px;*/
    width: auto;
    height: 50px;
    aspect-ratio: 247 / 42;
    margin: auto;
}

.elementor-155 .elementor-element.elementor-element-cbb8ca2>div {
    position: unset;
}

.elementor-155 .elementor-element.elementor-element-cbb8ca2 svg #logo-fill {
    transform: translateX(-100%);
    animation: fill-in 2s 0.5s ease-in-out forwards;
}

@keyframes fill-in {
    from {
        transform: translateX(-100%);
    }

    to {
        transform: translateX(0%);
    }
}

.elementor-155 .elementor-element.elementor-element-cbb8ca2 svg #outline path {
    fill: #A0A1A5 !important;
}


/** lines **/
.elementor-155 .elementor-element.elementor-element-cbb8ca2 .loading-line {
    position: fixed;
    background-color: #A0A1A5;
}

.elementor-155 .elementor-element.elementor-element-cbb8ca2 #line-1 {
    left: 0;
    right: 0;
    bottom: 100px;
    height: 1px;
    animation: line-1 1s 1.5s ease-in-out forwards;
}

.elementor-155 .elementor-element.elementor-element-cbb8ca2 #line-2 {
    left: 20vw;
    top: 0;
    bottom: 0;
    width: 1px;
    animation: line-2 1s 1.75s ease-in-out forwards;
}

.elementor-155 .elementor-element.elementor-element-cbb8ca2 #line-3 {
    /*left: 0;*/
    width: 100vw;
    right: 0;
    top: 100px;
    height: 1px;
}

@media screen and (min-width: 1025px) {
    .elementor-155 .elementor-element.elementor-element-cbb8ca2 #line-3 {
        top: 99px;
        animation: line-3 1s 2s ease-in-out forwards;
    }
}

.elementor-155 .elementor-element.elementor-element-cbb8ca2 #line-4 {
    left: 80vw;
    top: 0;
    bottom: 0;
    width: 1px;
}

@keyframes line-1 {
    from {
        right: 0;
    }

    to {
        right: 100%;
    }
}

@keyframes line-2 {
    from {
        top: 0;
    }

    to {
        top: 100%;
    }
}

@keyframes line-3 {
    from {
        width: 100vw;
    }

    to {
        width: calc(20vw + 363px);
    }
}

@media screen and (max-width: 1024px) {
    .elementor-155 .elementor-element.elementor-element-cbb8ca2 #line-2 {
        left: 141px;
    }

    .elementor-155 .elementor-element.elementor-element-cbb8ca2 #line-4 {
        left: calc(100vw - 141px);
    }
}

@media screen and (max-width: 767px) {
    .elementor-155 .elementor-element.elementor-element-cbb8ca2 #line-2 {
        display: none;
    }

    .elementor-155 .elementor-element.elementor-element-cbb8ca2 #line-4 {
        display: none;
    }
}

/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-ffb6c5f */
body:not(.elementor-editor-active) .elementor-155 .elementor-element.elementor-element-ffb6c5f {
    position: fixed;
    pointer-events: none;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: auto;
    height: auto;
    transition: opacity 0.5s 1.5s ease-in-out, left 1.5s 0.25s;
    z-index: 10001;


    backdrop-filter: blur(5px);
    -webkit-backdrop-filter: blur(5px);
}

body:not(.elementor-editor-active) .elementor-155 .elementor-element.elementor-element-ffb6c5f.loaded {
    opacity: 0;
    left: 80vw;
}

@media screen and (max-width: 1024px) {
    body:not(.elementor-editor-active) .elementor-155 .elementor-element.elementor-element-ffb6c5f.loaded {
        left: calc(100% - 141px);
    }
}

@media screen and (max-width: 1024px) {
    body:not(.elementor-editor-active) .elementor-155 .elementor-element.elementor-element-ffb6c5f.loaded {
        left: 100%;
    }
}

body:not(.elementor-editor-active) .elementor-155 .elementor-element.elementor-element-ffb6c5f #line-4 {
    transition: left 1.5s 0.25s;
}

body:not(.elementor-editor-active) .elementor-155 .elementor-element.elementor-element-ffb6c5f.loaded #line-4 {
    left: 0;
}


body:not(.elementor-editor-active) .elementor-155 .elementor-element.elementor-element-ffb6c5f .elementor-background-overlay {

    transition: left 1s 0.75s, opacity 0.75s;
}

body:not(.elementor-editor-active) .elementor-155 .elementor-element.elementor-element-ffb6c5f.loaded .elementor-background-overlay {
    /*left: 80%;*/
    opacity: 0.5;

}


.elementor-155 .elementor-element.elementor-element-ffb6c5f+.e-con-full>div:last-child>div {
    opacity: 0;
    transition: opacity 0.5s 1.5s;
}

.elementor-155 .elementor-element.elementor-element-ffb6c5f.loaded+.e-con-full>div:last-child>div {
    opacity: 1;
}






.elementor-155 .elementor-element.elementor-element-ffb6c5f>.elementor-container {
    height: 100%;
}


.elementor-155 .elementor-element.elementor-element-ffb6c5f svg {
    transition: opacity 0.5s ease-in-out;
}

body:not(.elementor-editor-active) .elementor-155 .elementor-element.elementor-element-ffb6c5f.loaded svg {
    opacity: 0;
}

.elementor-155 .elementor-element.elementor-element-ffb6c5f .loading-line {
    transition: background-color 0.25s;
}

.elementor-155 .elementor-element.elementor-element-ffb6c5f.loaded .loading-line {
    background-color: #ffffff;
}


/** hero header animate **/
.elementor-155 .elementor-element.elementor-element-ffb6c5f+div .hero-heading-load span {
    top: 30px;
    opacity: 0;
    transition: opacity 0.75s 1.75s, top 0.75s 1.75s;
}

.elementor-155 .elementor-element.elementor-element-ffb6c5f+div .hero-heading-load span:last-child {
    transition: opacity 0.75s 2.25s, top 0.75s 2.25s;
}

.elementor-155 .elementor-element.elementor-element-ffb6c5f.loaded+div .hero-heading-load span {
    position: relative;
    top: 0;
    opacity: 1;
}

/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-61bf3ea */
.elementor-155 .elementor-element.elementor-element-61bf3ea {
    position: absolute;
    opacity: 0;
    user-select: none;
    pointer-events: none;
}

/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-a3d6313 */
.elementor-155 .elementor-element.elementor-element-a3d6313,
.elementor-155 .elementor-element.elementor-element-a3d6313 div.hero-slide {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    overflow: hidden;
}

.elementor-155 .elementor-element.elementor-element-a3d6313 div.hero-slide {
    animation: scaleImage 52.5s linear infinite;
    background-size: cover;
    background-position: 50%;
    opacity: 0;
    z-index: 1;
}

.elementor-155 .elementor-element.elementor-element-a3d6313 div.hero-slide.hero-slide-video {
    animation: none;
    opacity: 1;
    z-index: 3;
}

.elementor-155 .elementor-element.elementor-element-a3d6313 div.hero-slide.hero-slide-video video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
}







/* PC用トップ画像 (1790×1280) - 動画に変更 */
.elementor-155 .elementor-element.elementor-element-a3d6313 div.hero-slide:nth-child(1) {
    background-image: none;
    animation-delay: 0s;
}

.elementor-155 .elementor-element.elementor-element-a3d6313 div.hero-slide:nth-child(2) {
    background-image: url(../images/top/top01.jpg);
    animation-delay: 7.5s;
}

.elementor-155 .elementor-element.elementor-element-a3d6313 div.hero-slide:nth-child(3) {
    background-image: url(../images/top/top01.jpg);
    animation-delay: 15s;
}

.elementor-155 .elementor-element.elementor-element-a3d6313 div.hero-slide:nth-child(4) {
    background-image: url(../images/top/top01.jpg);
    animation-delay: 22.5s;
}

.elementor-155 .elementor-element.elementor-element-a3d6313 div.hero-slide:nth-child(5) {
    background-image: url(../images/top/top01.jpg);
    animation-delay: 30s;
}

.elementor-155 .elementor-element.elementor-element-a3d6313 div.hero-slide:nth-child(6) {
    background-image: url(../images/top/top01.jpg);
    animation-delay: 37.5s;
}

.elementor-155 .elementor-element.elementor-element-a3d6313 div.hero-slide:nth-child(7) {
    background-image: url(../images/top/top01.jpg);
    animation-delay: 45s;
}

/* スマホ用トップ画像 (600×429) */
@media screen and (max-width: 767px) {
    .elementor-155 .elementor-element.elementor-element-a3d6313 div.hero-slide:nth-child(1) {
        background-image: none;
    }
    .elementor-155 .elementor-element.elementor-element-a3d6313 div.hero-slide:nth-child(2),
    .elementor-155 .elementor-element.elementor-element-a3d6313 div.hero-slide:nth-child(3),
    .elementor-155 .elementor-element.elementor-element-a3d6313 div.hero-slide:nth-child(4),
    .elementor-155 .elementor-element.elementor-element-a3d6313 div.hero-slide:nth-child(5),
    .elementor-155 .elementor-element.elementor-element-a3d6313 div.hero-slide:nth-child(6),
    .elementor-155 .elementor-element.elementor-element-a3d6313 div.hero-slide:nth-child(7) {
        background-image: url(../images/top/top01-sp.jpg);
    }
}









.elementor-155 .elementor-element.elementor-element-a3d6313 div.hero-slide:nth-child(odd) {
    transform-origin: 25% 50%;
}

.elementor-155 .elementor-element.elementor-element-a3d6313 div.hero-slide:nth-child(even) {
    transform-origin: 75% 50%;
}

@keyframes scaleImage {
    0% {
        opacity: 0;
        transform: scale(1);
        z-index: 3;
    }

    2% {
        opacity: 1;
    }

    16.5% {
        z-index: 3;
    }

    16.5% {
        z-index: 2;
    }

    18.5% {
        opacity: 1;
        transform: scale(1.1875);
        z-index: 2;
    }

    18.6% {
        z-index: 1;
        opacity: 0;
    }

    100% {
        opacity: 0;
        transform: scale(1.1875);
        z-index: 1;
    }


}

/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-10efbee */
.elementor-155 .elementor-element.elementor-element-10efbee {
    position: absolute;
    top: 0;
    width: 750px;
    height: calc(100vh + 200px);
}

.elementor-155 .elementor-element.elementor-element-10efbee .elementor-widget-container {
    height: 100%;
}

.elementor-155 .elementor-element.elementor-element-10efbee .elementor-heading-title {
    position: sticky;
    top: calc(100vh - 352px);
    max-width: 750px;
}


@media screen and (min-width: 768px) and (max-width: 1024px) {
    .elementor-155 .elementor-element.elementor-element-10efbee {
        width: 400px;
    }
}

@media screen and (max-width: 767px) {
    .elementor-155 .elementor-element.elementor-element-10efbee {
        width: 250px;
    }

    .elementor-155 .elementor-element.elementor-element-10efbee .elementor-heading-title {
        top: calc(100vh - 227px);
    }
}

/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-554f04f */
.elementor-155 .elementor-element.elementor-element-554f04f {
    flex-shrink: 0;
    max-width: 1200px;
}

.elementor-155 .elementor-element.elementor-element-554f04f,
.elementor-155 .elementor-element.elementor-element-554f04f .elementor-column,
.elementor-155 .elementor-element.elementor-element-554f04f .elementor-widget-wrap {
    position: unset !important;
}

/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-4cdc9f0 */
.elementor-155 .elementor-element.elementor-element-4cdc9f0 {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: rotate(-90deg) translate(-50%, -50px);
    transform-origin: 50%;
    transition: opacity 0.3s 0.5s;
}


.elementor-155 .elementor-element.elementor-element-4cdc9f0 .elementor-widget-container {
    position: relative;
    animation: arrow-bounce 5s infinite;
    animation-timing-function: cubic-bezier(0.42, 0, 0.58, 1), linear;
}

@keyframes arrow-bounce {
    0% {
        left: 0px;
    }

    2.5% {
        left: 5px;
    }

    10% {
        left: -20px;
    }

    17.5% {
        left: 5px;
    }

    20% {
        left: 0px;
    }

    100% {
        left: 0px;
    }
}

.elementor-155 .elementor-element.elementor-element-4cdc9f0 .elementor-heading-title {
    position: relative;
    animation: text-bounce 5s infinite;
    animation-timing-function: cubic-bezier(0.42, 0, 0.58, 1), linear;
}

@keyframes text-bounce {
    0% {
        left: 0px;
    }

    2.5% {
        left: -5px;
    }

    10% {
        left: 20px;
    }

    17.5% {
        left: -5px;
    }

    20% {
        left: 0px;
    }

    100% {
        left: 0px;
    }
}

body:has(#mobileHam.active) .elementor-155 .elementor-element.elementor-element-4cdc9f0 {
    opacity: 0;
    transition: opacity 0.3s;
}


@media screen and (max-width: 767px) {
    .elementor-155 .elementor-element.elementor-element-4cdc9f0 {
        top: calc(100% - 232px);
        left: calc(100% - 36px);
    }

    .elementor-155 .elementor-element.elementor-element-4cdc9f0 .elementor-widget-container {
        position: relative;
        padding-left: 40px !important;
        background-image: none !important;
    }

    .elementor-155 .elementor-element.elementor-element-4cdc9f0 .elementor-widget-container::before {
        content: "";
        left: 0;
        width: 31px;
        height: 23px;
        position: absolute;
        background-size: contain;
        background-position: 50%;
        background-repeat: no-repeat;
        background-image: url("https://cedarsprings.net/wp-content/uploads/2025/07/cedar-springs-careers-testimonial-arrow-white.svg");
        transform: scaleX(-1);
    }
}

/* End custom CSS */
/* Start custom CSS for social-icons, class: .elementor-element-a098ac2 */
@media screen and (max-width: 1024px) {
    .elementor-155 .elementor-element.elementor-element-a098ac2 .elementor-social-icons-wrapper {
        display: flex;
        flex-direction: column;
        gap: 0;
    }
}

/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-a661b2c */
@media screen and (min-width: 1025px) {
    .elementor-155 .elementor-element.elementor-element-a661b2c {
        backdrop-filter: blur(5px);
        -webkit-backdrop-filter: blur(5px)
    }
}

@media screen and (max-width: 1014px) {
    .elementor-155 .elementor-element.elementor-element-a661b2c {
        background-color: transparent !important;
    }
}

/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-58289f7 */
.elementor-155 .elementor-element.elementor-element-58289f7 {
    position: absolute;
    right: 0;
    height: 100%;
}

@media screen and (min-width: 1025px) {
    .elementor-155 .elementor-element.elementor-element-58289f7 {
        left: 80vw;
        width: auto;
    }
}

@media screen and (max-width: 1024px) {
    .elementor-155 .elementor-element.elementor-element-58289f7 {
        left: calc(100vw - 141px);
        width: auto;
    }
}

@media screen and (max-width: 767px) {
    .elementor-155 .elementor-element.elementor-element-58289f7 {
        top: 0;
        left: calc(100vw - 141px);
        width: auto;
    }
}

/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-d09846d */
.elementor-155 .elementor-element.elementor-element-d09846d *::selection {
    background-color: #a0a1a5;
    color: #212123;
}

@media screen and (min-width: 1392px) {
    .elementor-155 .elementor-element.elementor-element-d09846d {
        padding-left: calc((80vw - 1200px) * 0.5 + 5.25vw);
    }
}

.elementor-155 .elementor-element.elementor-element-d09846d::before {
    z-index: 10;
}

/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-220cd6e */
.elementor-155 .elementor-element.elementor-element-220cd6e {
    position: absolute;
    top: 250px;
    transition: top 1s ease-in-out, opacity 0.5s ease-in-out !important;
}

.elementor-location-header.hidden+main#content #scroll-title {
    top: 82px;
}

@media screen and (max-width: 1024px) {
    .elementor-155 .elementor-element.elementor-element-220cd6e {
        top: 84px;
    }
}

/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-cc1f93f */
.elementor-155 .elementor-element.elementor-element-cc1f93f {
    position: absolute;
    top: 0px;
    bottom: 0;
    left: 0;
    right: 0;
    clip: rect(0, auto, auto, 0);
}

.elementor-155 .elementor-element.elementor-element-cc1f93f .elementor-heading-title {
    position: fixed;
    top: calc(100vh - 352px);
    transition: top 1s ease-in-out, opacity 0.5s ease-in-out !important;
    z-index: 0;
}

.elementor-location-header.hidden+main#content #scroll-title {
    top: 82px;
}

@media screen and (max-width: 767px) {
    .elementor-155 .elementor-element.elementor-element-cc1f93f .elementor-heading-title {
        position: fixed;
        top: calc(100vh - 227px);
    }
}

/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-e7bc629 */
.elementor-155 .elementor-element.elementor-element-e7bc629 .elementor-button-icon {
    font-size: 1.7em;
    top: -0.1em;
}



/** hover state **/
.elementor-155 .elementor-element.elementor-element-e7bc629 .elementor-button .elementor-button-icon::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 100%;
    border-top: solid 1.5px;
    border-bottom: solid 1.6px;
    transition: right 0.2s 0.1s linear;
}

.elementor-155 .elementor-element.elementor-element-e7bc629 .elementor-button:hover .elementor-button-icon::before {
    right: 0;
    transition: right 0.2s linear;
}

.elementor-155 .elementor-element.elementor-element-e7bc629 .elementor-button .elementor-button-icon::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    width: 2px;
    background-color: #020101;
    clip-path: polygon(0% 0%, 100% 0%,
            100% 0%, 0% 0%,
            0% 100%, 100% 100%,
            100% 100%, 0% 100%);
    transition: clip-path 0.1s linear;
}

.elementor-155 .elementor-element.elementor-element-e7bc629 .elementor-button:hover .elementor-button-icon::after {
    clip-path: polygon(0% 0%, 100% 0%,
            100% 50%, 0% 50%,
            0% 50%, 100% 50%,
            100% 100%, 0% 100%);
    transition: clip-path 0.1s 0.2s linear;
}

/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4aff386 */
.elementor-155 .elementor-element.elementor-element-4aff386 {
    flex-shrink: 0;
}

/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-f6f8055 */
.elementor-155 .elementor-element.elementor-element-f6f8055 .elementor-widget-container::before {
    content: "";
    position: absolute;
    bottom: -160px;
    left: 53px;
    width: 300px;
    height: 89px;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: 50%;
    background-image: url(https://999box.net/sample/building7/images/top/hoshi5.svg);
    z-index: 10;
}

/*.elementor-155 .elementor-element.elementor-element-f6f8055::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 443px;
    opacity: 0.6;
    background: linear-gradient(180deg, rgba(33, 33, 35, 0.00) 0%, #212123 100%);
    mix-blend-mode: multiply;
    z-index: 9;
}*/

@media screen and (max-width: 1024px) {
    .elementor-155 .elementor-element.elementor-element-f6f8055::before {
        width: 206px;
        height: 61px;
        left: auto;
        right: 20px;
    }
}

@media screen and (max-width: 767px) {
    .elementor-155 .elementor-element.elementor-element-f6f8055::before {
        right: calc(50% - 103px);
    }
}


.elementor-155 .elementor-element.elementor-element-f6f8055 .elementor-widget-container::after {
    content: "";
    position: absolute;
    top: 0px;
    bottom: -224px;
    right: 0px;
    width: 1px;
    background-color: #fff;
    z-index: 11;
}

/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-10ba63f */
.elementor-155 .elementor-element.elementor-element-10ba63f {
    flex-shrink: 0;
    max-width: calc(80vw - ((80vw - 1200px) * 0.5 + 5.25vw));
}

@media screen and (max-width: 1024px) {
    .elementor-155 .elementor-element.elementor-element-10ba63f {
        max-width: none;
    }
}

/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-18b68c5 */
.elementor-155 .elementor-element.elementor-element-18b68c5 {
    position: absolute;
    right: 0;
    height: 100%;

    backdrop-filter: blur(5px);
    -webkit-backdrop-filter: blur(5px)
}

@media screen and (min-width: 1025px) {
    .elementor-155 .elementor-element.elementor-element-18b68c5 {
        left: 80vw;
        width: auto;
    }
}

@media screen and (max-width: 1024px) {
    .elementor-155 .elementor-element.elementor-element-18b68c5 {
        left: calc(100vw - 141px);
        width: auto;
    }
}

/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-47e8eb4 */
.elementor-155 .elementor-element.elementor-element-47e8eb4 {
    overflow: hidden;
}

@media screen and (min-width: 1392px) {
    .elementor-155 .elementor-element.elementor-element-47e8eb4 {
        padding-left: calc((80vw - 1200px) * 0.5 + 5.25vw);
    }
}

body:not(.elementor-editor-active) .elementor-155 .elementor-element.elementor-element-47e8eb4:not(.no-transition) #scroll-title {
    transition: opacity 0.5s ease-in-out;
}

body:not(.elementor-editor-active) .elementor-155 .elementor-element.elementor-element-47e8eb4.not-top #scroll-title {
    opacity: 0;
}

/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-4e29d0a */
.elementor-155 .elementor-element.elementor-element-4e29d0a .elementor-widget-container {
    position: relative;
}

@media screen and (min-width: 768px) {
    .elementor-155 .elementor-element.elementor-element-4e29d0a .elementor-widget-container::before {
        content: "";
        position: absolute;
        width: 0px;
        /*right: -1px;*/
        left: calc(100vw - 50px - 141px);
        top: 0;
        bottom: 0;
        border-left: solid 1px #fff;
        z-index: 1;
    }

    .elementor-155 .elementor-element.elementor-element-4e29d0a .elementor-widget-container::after {
        content: "";
        position: absolute;
        top: 65px;
        right: 165px;
        width: 206px;
        height: 61px;
        background-repeat: no-repeat;
        background-size: contain;
        background-position: 50%;
        background-image: url(https://999box.net/sample/building7/images/top/hoshi5.svg);
        z-index: 10;
    }
}

/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-c148f1e */
.elementor-155 .elementor-element.elementor-element-c148f1e {
    backdrop-filter: blur(5px);
    -webkit-backdrop-filter: blur(5px)
}

/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-f28b6bf */
.elementor-155 .elementor-element.elementor-element-f28b6bf {
    position: absolute;
    right: 0;
    height: 100%;
}

@media screen and (min-width: 1025px) {
    .elementor-155 .elementor-element.elementor-element-f28b6bf {
        left: 80vw;
        width: auto;
    }
}

@media screen and (max-width: 1024px) {
    .elementor-155 .elementor-element.elementor-element-f28b6bf {
        left: calc(100vw - 141px);
        width: auto;
    }
}

/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-d2ffaf3 */
.elementor-155 .elementor-element.elementor-element-d2ffaf3 {
    overflow: unset;
}

@media screen and (min-width: 1392px) {
    .elementor-155 .elementor-element.elementor-element-d2ffaf3 {
        padding-left: calc((80vw - 1200px) * 0.5 + 5.25vw);
    }
}

/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-532c140 */
.elementor-155 .elementor-element.elementor-element-532c140::before {
    content: "";
    position: absolute;
    left: 50%;
    top: -84px;
    width: 1px;
    height: 48px;
    background-color: #fff;
}

/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-6ccfb7a */
.elementor-155 .elementor-element.elementor-element-6ccfb7a {
    max-height: 100vh;
}

.elementor-155 .elementor-element.elementor-element-6ccfb7a .e-loop-item>.has_eae_slider.elementor-element {
    padding: 0;
}


.elementor-155 .elementor-element.elementor-element-6ccfb7a .elementor-loop-container {
    display: flex;
    flex-direction: row;
}

.elementor-155 .elementor-element.elementor-element-6ccfb7a .elementor-loop-container .e-loop-item {
    /*width: calc(80vw + ((80vw - 1200px) * 0.5 + 2.75vw));*/
    width: 80vw;
    flex-shrink: 0;
    border-right: solid 1px #ffffff;
    transition: width 0.5s, border-color 0.5s;
}


/*
@media screen and (min-width: 1392px) {
    .elementor-155 .elementor-element.elementor-element-6ccfb7a {
        padding-left: calc((80vw - 1200px) * 0.5 + 5.25vw);
    }
}

@media screen and (min-width: 1025px) and (max-width: 1335px) {
    .elementor-155 .elementor-element.elementor-element-6ccfb7a .elementor-loop-container .e-loop-item {
        width: 80%;
    }
}
*/
#featured-projects.full-width-content .elementor-loop-container .e-loop-item.swiper-slide-active {
    width: 100vw;
    border-color: transparent;
}

.elementor-155 .elementor-element.elementor-element-6ccfb7a .elementor-loop-container.elementor-grid {
    display: flex;
    overflow: hidden;
    padding-right: 20vw;
    background-attachment: fixed;
    background-size: cover;
    background-position: 50%;
    background-image: url(https://999box.net/sample/building7/images/top/case/01.jpg);
}

.elementor-155 .elementor-element.elementor-element-6ccfb7a .elementor-loop-container.elementor-grid .e-loop-item {
    flex-shrink: 0;
}


@media screen and (max-width: 1024px) {
    .elementor-155 .elementor-element.elementor-element-6ccfb7a .elementor-loop-container .e-loop-item {
        width: calc(100vw - 140px);
    }

    .elementor-155 .elementor-element.elementor-element-6ccfb7a .elementor-loop-container.elementor-grid {
        padding-right: 140px;
    }
}

@media screen and (max-width: 767px) {
    .elementor-155 .elementor-element.elementor-element-6ccfb7a .elementor-loop-container .e-loop-item {
        width: 100vw;
        border-right: none;
    }

    .elementor-155 .elementor-element.elementor-element-6ccfb7a .elementor-loop-container.elementor-grid {
        padding-right: 0px;
    }
}

/** inside loop item **/
body:not(.elementor-editor-active) .elementor-155 .elementor-element.elementor-element-6ccfb7a .elementor-loop-container.elementor-grid .e-loop-item .e-con-inner {
    margin-left: calc((100vw - 1335px) * 0.5);
    opacity: 0;
    transition: opacity 0.5s;
}

body:not(.elementor-editor-active) .elementor-155 .elementor-element.elementor-element-6ccfb7a .elementor-loop-container.elementor-grid .e-loop-item.swiper-slide-active .e-con-inner {
    opacity: 1;
}

#featured-projects.project-loaded .elementor-loop-container.elementor-grid .e-loop-item {
    border-color: transparent;
    transition: width 0.5s, border-color 0s 0.5s;
}


#featured-projects .elementor-loop-container.elementor-grid .e-loop-item .e-con-full:has(> .right-side-column) {
    left: 80vw !important;
    /*right: auto !important;*/
}

#featured-projects .elementor-loop-container.elementor-grid .e-loop-item .right-side-column {
    transition: border 0s;
}

#featured-projects:not(.project-loaded) .elementor-loop-container.elementor-grid .e-loop-item .right-side-column {
    border: none;
}

#featured-projects .elementor-loop-container.elementor-grid .e-loop-item .e-con-full:has(+ div > .right-side-column)>div:not(.elementor-widget-heading) {
    transition: opacity 0.5s 0.25s;
}

#featured-projects:not(.project-loaded) .elementor-loop-container.elementor-grid .e-loop-item .e-con-full:has(+ div > .right-side-column)>div:not(.elementor-widget-heading) {
    opacity: 0;
}

#featured-projects .elementor-loop-container.elementor-grid .e-loop-item .e-con-full:has(+ div > .right-side-column)>.elementor-widget-heading {
    top: 0;
    transition: top 1s;
}

#featured-projects:not(.project-loaded) .elementor-loop-container.elementor-grid .e-loop-item .e-con-full:has(+ div > .right-side-column)>.elementor-widget-heading {
    top: calc(100vh - 560px);
}


@media screen and (max-width: 767px) {
    #featured-projects:not(.project-loaded) .elementor-loop-container.elementor-grid .e-loop-item .e-con-full:has(+ div > .right-side-column)>.elementor-widget-heading {
        top: calc(100vh - 350px);
    }
}


#featured-projects .elementor-loop-container.elementor-grid .e-loop-item .right-side-column .scroll-prompt {
    opacity: 1;
    transition: opacity 0.5s 2s;
}

#featured-projects:not(.project-loaded) .elementor-loop-container.elementor-grid .e-loop-item .right-side-column .scroll-prompt {
    opacity: 0;
}



/** loop transitions **/
.elementor-155 .elementor-element.elementor-element-6ccfb7a .header-content {
    transition: opacity 0.5s;
}

.elementor-155 .elementor-element.elementor-element-6ccfb7a .swiper-slide-next .header-content {
    opacity: 0;
}

/** custom mouse cursor **/
@media screen and (pointer: fine) {
    .elementor-155 .elementor-element.elementor-element-6ccfb7a {
        cursor: none !important;
    }

    .project-loaded>#product-loop {
        cursor: unset !important;
    }
}

/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-872f2f9 */
.elementor-155 .elementor-element.elementor-element-872f2f9 {
    height: 0px;
    transition: opacity 0.5s;
}


.elementor-155 .elementor-element.elementor-element-872f2f9 #view-project {
    cursor: pointer;
    position: absolute;
    top: -150px;
    width: 198px;
    height: 48px;
    padding-right: 64px;
    color: #ffffff;
    font-family: "Noto Serif JP";
    font-size: 24px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    letter-spacing: 0.48px;
    text-transform: capitalize;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: 100% 50%;
    display: flex;
    align-items: center;
    background-image: url(https://cedarsprings.net/wp-content/uploads/2025/06/cedar-springs-landscapes-home-button-icon-light.svg);
    opacity: 1;
}

/*.elementor-155 .elementor-element.elementor-element-872f2f9 #button-previous:hover,
.elementor-155 .elementor-element.elementor-element-872f2f9 #button-next:hover,
.elementor-155 .elementor-element.elementor-element-872f2f9 #view-project:hover {
    opacity: 0.65;
}*/
@media screen and (pointer: fine) {
    body:not(.elementor-editor-active) .elementor-155 .elementor-element.elementor-element-872f2f9 #view-project {
        display: none !important;
    }
}

#featured-projects.moving #view-project {
    transition: opacity 0.3s !important;

}

.elementor-155 .elementor-element.elementor-element-872f2f9 #view-project.transition {
    pointer-events: none;
    opacity: 0 !important;

}

.elementor-155 .elementor-element.elementor-element-872f2f9 #button-next,
.elementor-155 .elementor-element.elementor-element-872f2f9 #button-previous {
    cursor: pointer;
    position: absolute;
    top: -140px;
    width: 50px;
    height: 32px;
    background-size: contain;
    background-position: 50%;
    background-repeat: no-repeat;
    background-image: url(https://cedarsprings.net/wp-content/uploads/2025/07/cedar-springs-careers-testimonial-arrow-white.svg);
}

.elementor-155 .elementor-element.elementor-element-872f2f9 #button-previous {
    left: 65px;
    transform: scaleX(-1);
}

.elementor-155 .elementor-element.elementor-element-872f2f9 #button-next {
    /*right: calc((135px + ((100vw - 1336px) * 0.5)) * 0.5);*/
    right: 10vw;
    transform: translateX(50%);
}

.elementor-155 .elementor-element.elementor-element-872f2f9 #view-project {
    /*left: calc((100vw - 1335px) * 0.5);*/
    /*left: calc(100vw - (100vw - ((80vw - 1200px) * 0.5 + 5.25vw)));*/
    left: auto;
    right: calc(20vw + 115px);
    top: -280px;
}

/*@media screen and (min-width: 1025px) and (max-width: 1391px) {
    .elementor-155 .elementor-element.elementor-element-872f2f9 #view-project {
        left: 30px;
    }
}*/
.elementor-155 .elementor-element.elementor-element-872f2f9 #dot-nav {
    position: absolute;
    display: flex;
    gap: 15px;
    top: -135px;
    /*left: calc(100% - (135px + ((100vw - 1335px) * 0.5)));
    transform: translateX(calc(-100% - 158px));
    right: calc(20vw + 150px);*/
    left: calc(100vw - (100vw - ((80vw - 1200px) * 0.5 + 5.25vw)));
}

.elementor-155 .elementor-element.elementor-element-872f2f9 #dot-nav .dot {
    cursor: pointer;
    width: 20px;
    height: 20px;
    opacity: 0.5;
    transition: all 0.3s;
    position: relative;
}

.elementor-155 .elementor-element.elementor-element-872f2f9 #dot-nav .dot::before {
    content: "";
    position: absolute;
    top: 50%;
    height: 1px;
    width: 100%;
    transform: translateY(-50%);
    background-color: #fff;
    transition: all 0.3s;
}

.elementor-155 .elementor-element.elementor-element-872f2f9 #dot-nav .dot:hover {
    opacity: 1;
}

.elementor-155 .elementor-element.elementor-element-872f2f9 #dot-nav .dot.active-dot {
    top: -1px;
    width: 50px;
    opacity: 1;
}

.elementor-155 .elementor-element.elementor-element-872f2f9 #dot-nav .dot.active-dot::before {
    height: 3px;
}

/** hover state **/
@media screen and (pointer: fine) {
    .elementor-155 .elementor-element.elementor-element-872f2f9 #view-project::before {
        content: "";
        position: absolute;
        top: 0;
        bottom: 0;
        left: calc(100% - 48px);
        right: 100%;
        border-top: solid 1.5px;
        border-bottom: solid 1.6px;
        transition: right 0.4s 0.2s linear;
    }

    .elementor-155 .elementor-element.elementor-element-872f2f9 #view-project:hover::before {
        right: 0;
        transition: right 0.4s linear;
    }

    .elementor-155 .elementor-element.elementor-element-872f2f9 #view-project::after {
        content: "";
        position: absolute;
        top: 0;
        bottom: 0;
        right: 0;
        width: 2px;
        background-color: #fff;
        clip-path: polygon(0% 0%, 100% 0%,
                100% 0%, 0% 0%,
                0% 100%, 100% 100%,
                100% 100%, 0% 100%);
        transition: clip-path 0.2s linear;
    }

    .elementor-155 .elementor-element.elementor-element-872f2f9 #view-project:hover::after {
        clip-path: polygon(0% 0%, 100% 0%,
                100% 50%, 0% 50%,
                0% 50%, 100% 50%,
                100% 100%, 0% 100%);
        transition: clip-path 0.2s 0.4s linear;
    }
}

@media screen and (max-width: 1630px) {
    .elementor-155 .elementor-element.elementor-element-872f2f9 #button-previous {
        display: none;
    }
}

@media screen and (max-width: 1024px) {
    .elementor-155 .elementor-element.elementor-element-872f2f9 #view-project {
        left: 50px;
    }

    .elementor-155 .elementor-element.elementor-element-872f2f9 #dot-nav {
        top: -60px;
        left: 50px;
        transform: none;
    }

    .elementor-155 .elementor-element.elementor-element-872f2f9 #button-next {
        font-size: 0;
        right: 60px;
        width: 48px;
    }
}






@media screen and (max-width: 767px) {
    .elementor-155 .elementor-element.elementor-element-872f2f9 #dot-nav {
        top: -40px;
        left: 30px;
        right: 30px;
    }

    .elementor-155 .elementor-element.elementor-element-872f2f9 #button-previous,
    .elementor-155 .elementor-element.elementor-element-872f2f9 #button-next {
        top: -230px;
    }

    .elementor-155 .elementor-element.elementor-element-872f2f9 #button-previous {
        left: -20px;
    }

    .elementor-155 .elementor-element.elementor-element-872f2f9 #button-next {
        right: 36px;
        top: -45px;
        height: 32px;
        width: 32px;
        padding-right: 0;
        z-index: 10;
    }

    .elementor-155 .elementor-element.elementor-element-872f2f9 #view-project {
        top: -100px;
        left: 30px;
        font-size: 18px;
        height: 32px;
        width: 145px;
        padding-right: 16px;
    }
}


/**** hover mouse icon ****/
.elementor-155 .elementor-element.elementor-element-872f2f9 #project-icon {
    pointer-events: none;
    position: fixed;
    width: 50px;
    height: 20px;
    margin-top: -10px;
    margin-left: -25px;
    border-top: solid 2px #ffffff80;
    border-bottom: solid 2px #ffffff80;
    opacity: 1;
    transition: width 0.3s, height 0.3s, margin 0.3s, opacity 0.3s;
}

.elementor-155 .elementor-element.elementor-element-872f2f9 #project-icon.view,
.elementor-155 .elementor-element.elementor-element-872f2f9 #project-icon.next {
    width: 110px;
    height: 80px;
    margin-top: -40px;
    margin-left: -55px;

}

.elementor-155 .elementor-element.elementor-element-872f2f9 #project-icon::before {
    content: "";
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
    top: -15px;
    bottom: -15px;
    left: 15px;
    right: 15px;
    border-left: solid 2px #ffffff80;
    border-right: solid 2px #ffffff80;
    font-family: var(--e-global-typography-text-font-family), Sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 18px;
    letter-spacing: 1.6px;
    color: #fff !important;
    text-align: center;
    overflow: hidden;
    transition: color 0.3s;
}

.elementor-155 .elementor-element.elementor-element-872f2f9 #project-icon.view::before {
    content: "View Project";
}

.elementor-155 .elementor-element.elementor-element-872f2f9 #project-icon.next::before {
    content: "Next Project";
}

@media screen and (pointer: coarse) {
    .elementor-155 .elementor-element.elementor-element-872f2f9 #project-icon {
        display: none !important;
    }
}

#featured-projects:not(:hover) #project-icon,
#featured-projects:has(#button-previous:hover) #project-icon,
#featured-projects:has(#button-next:hover) #project-icon,
#featured-projects:has(#view-project:hover) #project-icon,
#featured-projects:has(#dot-nav:hover) #project-icon {
    width: 50px !important;
    height: 20px !important;
    margin-top: -10px !important;
    margin-left: -25px !important;
    opacity: 0;
}

#featured-projects:not(:hover) #project-icon::before,
#featured-projects:has(#button-previous:hover) #project-icon::before,
#featured-projects:has(#button-next:hover) #project-icon::before,
#featured-projects:has(#view-project:hover) #project-icon::before,
#featured-projects:has(#dot-nav:hover) #project-icon::before {
    color: #ffffff00;
}

/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-b06e618 */
.elementor-155 .elementor-element.elementor-element-b06e618 *::selection {
    background-color: #a0a1a5;
    color: #212123;
}

/*.elementor-155 .elementor-element.elementor-element-b06e618 {
    scroll-snap-align: center;
    scroll-snap-stop: always;
}*/

@media screen and (max-width: 1024px) {
    .elementor-155 .elementor-element.elementor-element-b06e618 {
        overflow: hidden;
    }
}



/** load in **/
@media screen and (min-width: 768px) {
    .elementor-155 .elementor-element.elementor-element-b06e618 .elementor-loop-container .e-loop-item {
        transition: width 1s 1s, border-color 0s 1s !important;
    }

    .elementor-155 .elementor-element.elementor-element-b06e618 .elementor-loop-container .e-loop-item.scale {
        transition: none !important;
    }

    body:not(.elementor-editor-active) .elementor-155 .elementor-element.elementor-element-b06e618.above .elementor-loop-container .e-loop-item {
        width: 100vw;
        border-color: transparent;
    }

    .elementor-155 .elementor-element.elementor-element-b06e618 #button-next,
    .elementor-155 .elementor-element.elementor-element-b06e618 #view-project {
        transition: opacity 0.75s 3s, margin-top 0.75s 3s;
    }

    body:not(.elementor-editor-active) .elementor-155 .elementor-element.elementor-element-b06e618.above #button-next,
    body:not(.elementor-editor-active) .elementor-155 .elementor-element.elementor-element-b06e618.above #view-project {
        opacity: 0;
        margin-top: 30px;
    }
}

/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-b858c98 */
.elementor-155 .elementor-element.elementor-element-b858c98 .elementor-button-icon {
    font-size: 1.7em;
    top: -0.1em;
}


/** hover state **/
.elementor-155 .elementor-element.elementor-element-b858c98 .elementor-button .elementor-button-icon::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 100%;
    border-top: solid 1.5px;
    border-bottom: solid 1.6px;
    transition: right 0.2s 0.1s linear;
}

.elementor-155 .elementor-element.elementor-element-b858c98 .elementor-button:hover .elementor-button-icon::before {
    right: 0;
    transition: right 0.2s linear;
}

.elementor-155 .elementor-element.elementor-element-b858c98 .elementor-button .elementor-button-icon::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    width: 2px;
    background-color: #020101;
    clip-path: polygon(0% 0%, 100% 0%,
            100% 0%, 0% 0%,
            0% 100%, 100% 100%,
            100% 100%, 0% 100%);
    transition: clip-path 0.1s linear;
}

.elementor-155 .elementor-element.elementor-element-b858c98 .elementor-button:hover .elementor-button-icon::after {
    clip-path: polygon(0% 0%, 100% 0%,
            100% 50%, 0% 50%,
            0% 50%, 100% 50%,
            100% 100%, 0% 100%);
    transition: clip-path 0.1s 0.2s linear;
}

/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-c6f719f */
.elementor-155 .elementor-element.elementor-element-c6f719f {
    flex-shrink: 0;
}

/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-0458c46 */
.elementor-155 .elementor-element.elementor-element-0458c46 {
    flex-shrink: 0;
    max-width: calc(80vw - ((80vw - 1200px) * 0.5 + 5.25vw));
}

/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-df64754 */
.elementor-155 .elementor-element.elementor-element-df64754 {
    backdrop-filter: blur(5px);
    -webkit-backdrop-filter: blur(5px)
}

/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-60ca3b8 */
.elementor-155 .elementor-element.elementor-element-60ca3b8 {
    position: absolute;
    right: 0;
    height: 100%;
}

@media screen and (min-width: 1025px) {
    .elementor-155 .elementor-element.elementor-element-60ca3b8 {
        left: 80vw;
        width: auto;
    }
}

@media screen and (max-width: 1024px) {
    .elementor-155 .elementor-element.elementor-element-60ca3b8 {
        left: calc(100vw - 141px);
        width: auto;
    }
}

/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-7125744 */
.elementor-155 .elementor-element.elementor-element-7125744 {
    overflow: hidden;
}

@media screen and (min-width: 1392px) {
    .elementor-155 .elementor-element.elementor-element-7125744 {
        padding-left: calc((80vw - 1200px) * 0.5 + 5.25vw);
    }
}

body:not(.elementor-editor-active) .elementor-155 .elementor-element.elementor-element-7125744:not(.no-transition) #scroll-title {
    transition: opacity 0.5s ease-in-out;
}

body:not(.elementor-editor-active) .elementor-155 .elementor-element.elementor-element-7125744.not-top #scroll-title {
    opacity: 0;
}

/* End custom CSS */
/* Start custom CSS for divider, class: .elementor-element-e537c42 */
.elementor-155 .elementor-element.elementor-element-e537c42 {
    flex-shrink: 0;
}

/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6a62fbf */
.elementor-155 .elementor-element.elementor-element-6a62fbf {
    overflow: unset;
}

@media screen and (min-width: 1392px) {
    .elementor-155 .elementor-element.elementor-element-6a62fbf {
        padding-left: calc((80vw - 1200px) * 0.5 + 5.25vw);
    }
}

body:not(.elementor-editor-active) .elementor-155 .elementor-element.elementor-element-6a62fbf:not(.no-transition) #scroll-title {
    transition: opacity 0.5s ease-in-out;
}

body:not(.elementor-editor-active) .elementor-155 .elementor-element.elementor-element-6a62fbf.not-top #scroll-title {
    opacity: 0;
}

/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-2503104 */
.elementor-155 .elementor-element.elementor-element-2503104 {
    flex-shrink: 0;
    max-width: calc(80vw - ((80vw - 1200px) * 0.5 + 5.25vw));
}

/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-7d1805b */
.elementor-155 .elementor-element.elementor-element-7d1805b {
    position: absolute;
    right: 0;
    height: 100%;
}

@media screen and (min-width: 1025px) {
    .elementor-155 .elementor-element.elementor-element-7d1805b {
        left: 80vw;
        width: auto;
    }
}

@media screen and (max-width: 1024px) {
    .elementor-155 .elementor-element.elementor-element-7d1805b {
        left: calc(100vw - 141px);
        width: auto;
    }
}

/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8131cd4 */
.elementor-155 .elementor-element.elementor-element-8131cd4 {
    overflow: unset;
}

@media screen and (min-width: 1392px) {
    .elementor-155 .elementor-element.elementor-element-8131cd4 {
        padding-left: calc((80vw - 1200px) * 0.5 + 5.25vw);
    }
}

body:not(.elementor-editor-active) .elementor-155 .elementor-element.elementor-element-8131cd4:not(.no-transition) #scroll-title {
    transition: opacity 0.5s ease-in-out;
}

body:not(.elementor-editor-active) .elementor-155 .elementor-element.elementor-element-8131cd4.not-top #scroll-title {
    opacity: 0;
}

/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-736b3cf */
.elementor-155 .elementor-element.elementor-element-736b3cf .elementor-button-icon {
    font-size: 1.7em;
    top: -0.1em;
}


/** hover state **/
.elementor-155 .elementor-element.elementor-element-736b3cf .elementor-button .elementor-button-icon::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 100%;
    border-top: solid 1.5px;
    border-bottom: solid 1.6px;
    transition: right 0.2s 0.1s linear;
}

.elementor-155 .elementor-element.elementor-element-736b3cf .elementor-button:hover .elementor-button-icon::before {
    right: 0;
    transition: right 0.2s linear;
}

.elementor-155 .elementor-element.elementor-element-736b3cf .elementor-button .elementor-button-icon::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    width: 2px;
    background-color: #fff;
    clip-path: polygon(0% 0%, 100% 0%,
            100% 0%, 0% 0%,
            0% 100%, 100% 100%,
            100% 100%, 0% 100%);
    transition: clip-path 0.1s linear;
}

.elementor-155 .elementor-element.elementor-element-736b3cf .elementor-button:hover .elementor-button-icon::after {
    clip-path: polygon(0% 0%, 100% 0%,
            100% 50%, 0% 50%,
            0% 50%, 100% 50%,
            100% 100%, 0% 100%);
    transition: clip-path 0.1s 0.2s linear;
}

/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-026c73b */
.elementor-155 .elementor-element.elementor-element-026c73b {
    flex-shrink: 0;
    max-width: 1200px;
}

/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-580b83e */
.elementor-155 .elementor-element.elementor-element-580b83e {
    backdrop-filter: blur(5px);
    -webkit-backdrop-filter: blur(5px)
}

/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-23dc235 */
.elementor-155 .elementor-element.elementor-element-23dc235 {
    position: absolute;
    right: 0;
    height: 100%;
}

@media screen and (min-width: 1025px) {
    .elementor-155 .elementor-element.elementor-element-23dc235 {
        left: 80vw;
        width: auto;
    }
}

@media screen and (max-width: 1024px) {
    .elementor-155 .elementor-element.elementor-element-23dc235 {
        left: calc(100vw - 141px);
        width: auto;
    }
}

/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-11f68cb */
.elementor-155 .elementor-element.elementor-element-11f68cb *::selection {
    background-color: #a0a1a5;
    color: #212123;
}

@media screen and (min-width: 1392px) {
    .elementor-155 .elementor-element.elementor-element-11f68cb {
        padding-left: calc((80vw - 1200px) * 0.5 + 5.25vw);
    }
}

/* End custom CSS */
/* Start custom CSS */
@media screen and (min-width: 1025px) and (min-height: 901px) {

    html,
    body {
        scroll-snap-type: y proximity;
    }
}

/* End custom CSS */
/* Start Custom Fonts CSS */
@font-face {
    font-family: 'Epilogue';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('https://cedarsprings.net/wp-content/uploads/2025/06/Epilogue-Regular.ttf') format('truetype');
}

@font-face {
    font-family: 'Epilogue';
    font-style: normal;
    font-weight: 300;
    font-display: swap;
    src: url('https://cedarsprings.net/wp-content/uploads/2025/06/Epilogue-Light.ttf') format('truetype');
}

/* End Custom Fonts CSS */

/* 様々なご要望に、真摯に向き合います。のスタイル */
.elementor-155 .elementor-element.elementor-element-0458c46 {
    max-width: 100%;
}

.elementor-155 .elementor-element.elementor-element-c6f719f {
    max-width: 100%;
    width: 100%;
    flex: 1 1 auto;
    min-width: 0;
    position: relative;
    min-height: 680px;
}

.elementor-155 .elementor-element.elementor-element-68081fb {
    width: auto;
    max-width: none;
    --container-widget-width: auto;
    flex: 1 1 50%;
    min-width: 0;
}

.elementor-155 .elementor-element.elementor-element-68081fb .elementor-widget-container {
    width: 100%;
    max-width: 100%;
}

.elementor-155 .elementor-element.elementor-element-68081fb {
    position: relative;
    z-index: 2;
}

.elementor-155 .elementor-element.elementor-element-68081fb .elementor-heading-title {
    max-width: 100%;
    width: 100%;
    white-space: normal;
    text-shadow: 0 0 10px rgba(255, 255, 255, 0.8),
                 0 0 20px rgba(255, 255, 255, 0.6),
                 0 0 30px rgba(255, 255, 255, 0.4);
}

.elementor-155 .elementor-element.elementor-element-b858c98 {
    position: relative;
    z-index: 2;
}

.elementor-155 .elementor-element.elementor-element-1bcaf36 {
    display: none;
}

@media (max-width: 1024px) {
    .elementor-155 .elementor-element.elementor-element-c6f719f {
        min-height: 500px;
    }
    
    .elementor-155 .elementor-element.elementor-element-68081fb {
        width: auto;
        max-width: 100%;
        --container-widget-width: 100%;
        flex: 1 1 auto;
    }
    
    .elementor-155 .elementor-element.elementor-element-68081fb .elementor-widget-container {
        width: 100%;
        max-width: 100%;
    }
    
    .elementor-155 .elementor-element.elementor-element-68081fb .elementor-heading-title {
        max-width: 100%;
        width: 100%;
        white-space: normal;
    }
}

@media (max-width: 768px) {
    .elementor-155 .elementor-element.elementor-element-c6f719f {
        min-height: 300px;
    }
    
    .elementor-155 .elementor-element.elementor-element-68081fb {
        width: auto;
        max-width: 100%;
        --container-widget-width: 100%;
        flex: 1 1 auto;
    }
    
    .elementor-155 .elementor-element.elementor-element-68081fb .elementor-widget-container {
        width: 100%;
        max-width: 100%;
    }
    
    .elementor-155 .elementor-element.elementor-element-68081fb .elementor-heading-title {
        max-width: 100%;
        width: 100%;
        white-space: normal;
    }
}

/* ショールームの案内セクションのローディング無効化 */
.elementor-element-11f68cb,
.elementor-element-11f68cb * {
    opacity: 1;
    top: 0;
    transition: none;
    animation: none;
}

.elementor-element-11f68cb .has-load-in,
.elementor-element-11f68cb .fade,
.elementor-element-11f68cb .middle-up,
.elementor-element-11f68cb .delay1,
.elementor-element-11f68cb .delay2,
.elementor-element-11f68cb .delay3,
.elementor-element-11f68cb .delay4 {
    opacity: 1;
    top: 0;
    transition: none;
    transition-delay: 0s;
    animation: none;
}

/* ローディング画面を非表示 */
.loading-screen,
.elementor-element-ffb6c5f.loading-screen {
    display: none;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}

html.external-referrer .loading-screen,
html.external-referrer .elementor-element-ffb6c5f.loading-screen {
    display: none;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}

/* ローディング画面のロゴ */
.loading-logo-8924 {
    width: 280px;
    height: auto;
    max-width: 100%;
}