@charset "UTF-8";
*, :after, :before {
    box-sizing: border-box
}

html {
    font-family: sans-serif;
    line-height: 1.15;
    -webkit-text-size-adjust: 100%;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0)
}

article, aside, figcaption, figure, footer, header, hgroup, main, nav, section {
    display: block
}

body {
    margin: 0;
    font-family: Neue Einstellung, Noto Sans JP, Hiragino Kaku Gothic ProN, ヒラギノ角ゴ ProN, 游ゴシック, 游ゴシック体, YuGothic, Yu Gothic, メイリオ, Meiryo, ＭＳ ゴシック, MS Gothic, sans-serif;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: rgba(24, 24, 24, .75);
    text-align: left;
    background-color: #fff
}

[tabindex="-1"]:focus:not(:focus-visible) {
    outline: 0 !important
}

hr {
    box-sizing: content-box;
    height: 0;
    overflow: visible
}

h1, h2, h3, h4, h5, h6, p {
    margin-top: 0;
    margin-bottom: 20px
}

abbr[data-original-title], abbr[title] {
    text-decoration: underline;
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
    cursor: help;
    border-bottom: 0;
    -webkit-text-decoration-skip-ink: none;
    text-decoration-skip-ink: none
}

address {
    font-style: normal;
    line-height: inherit
}

address, dl, ol, ul {
    margin-bottom: 1rem
}

dl, ol, ul {
    margin-top: 0
}

ol ol, ol ul, ul ol, ul ul {
    margin-bottom: 0
}

dt {
    font-weight: 700
}

dd {
    margin-bottom: .5rem;
    margin-left: 0
}

blockquote {
    margin: 0 0 1rem
}

b, strong {
    font-weight: bolder
}

small {
    font-size: 80%
}

sub, sup {
    position: relative;
    font-size: 75%;
    line-height: 0;
    vertical-align: baseline
}

sub {
    bottom: -.25em
}

sup {
    top: -.5em
}

a {
    color: #950403;
    background-color: transparent
}

a, a:hover {
    text-decoration: none
}

a:hover {
    color: rgba(24, 24, 24, .75)
}

a:not([href]), a:not([href]):hover {
    color: inherit;
    text-decoration: none
}

code, kbd, pre, samp {
    font-family: monospace;
    font-size: 1em
}

pre {
    margin-top: 0;
    margin-bottom: 1rem;
    overflow: auto
}

figure {
    margin: 0 0 1rem
}

img {
    border-style: none
}

img, svg {
    vertical-align: middle
}

svg {
    overflow: hidden
}

table {
    border-collapse: collapse
}

caption {
    padding-top: .75rem;
    padding-bottom: .75rem;
    color: #6c757d;
    text-align: left;
    caption-side: bottom
}

th {
    text-align: inherit
}

label {
    display: inline-block;
    margin-bottom: .5rem
}

button {
    border-radius: 0
}

button:focus {
    outline: 1px dotted;
    outline: 5px auto -webkit-focus-ring-color
}

button, input, optgroup, select, textarea {
    margin: 0;
    font-family: inherit;
    font-size: inherit;
    line-height: inherit
}

button, input {
    overflow: visible
}

button, select {
    text-transform: none;
}

select {
    word-wrap: normal
}

[type=button], [type=reset], [type=submit], button {
    -webkit-appearance: button
}

[type=button]:not(:disabled), [type=reset]:not(:disabled), [type=submit]:not(:disabled), button:not(:disabled) {
    cursor: pointer
}

[type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner, button::-moz-focus-inner {
    padding: 0;
    border-style: none
}

input[type=checkbox], input[type=radio] {
    box-sizing: border-box;
    padding: 0
}

input[type=date], input[type=datetime-local], input[type=month], input[type=time] {
    -webkit-appearance: listbox
}

textarea {
    overflow: auto;
    resize: vertical
}

fieldset {
    min-width: 0;
    padding: 0;
    margin: 0;
    border: 0
}

legend {
    display: block;
    width: 100%;
    max-width: 100%;
    padding: 0;
    margin-bottom: .5rem;
    font-size: 1.5rem;
    line-height: inherit;
    color: inherit;
    white-space: normal
}

progress {
    vertical-align: baseline
}

[type=number]::-webkit-inner-spin-button, [type=number]::-webkit-outer-spin-button {
    height: auto
}

[type=search] {
    outline-offset: -2px;
    -webkit-appearance: none
}

[type=search]::-webkit-search-decoration {
    -webkit-appearance: none
}

::-webkit-file-upload-button {
    font: inherit;
    -webkit-appearance: button
}

output {
    display: inline-block
}

summary {
    display: list-item;
    cursor: pointer
}

template {
    display: none
}

[hidden] {
    display: none !important
}

.container, .container-fluid, .container-xl {
    width: 100%;
    padding-right: 20px;
    padding-left: 20px;
    margin-right: auto;
    margin-left: auto
}

.row {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-right: -20px;
    margin-left: -20px
}

.no-gutters {
    margin-right: 0;
    margin-left: 0
}

.no-gutters > .col, .no-gutters > [class*=col-] {
    padding-right: 0;
    padding-left: 0
}

.col, .col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col-auto, .col-lg, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-auto, .col-md, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md-auto, .col-sm, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-auto, .col-xl, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl-auto, .col-xxl, .col-xxl-1, .col-xxl-2, .col-xxl-3, .col-xxl-4, .col-xxl-5, .col-xxl-6, .col-xxl-7, .col-xxl-8, .col-xxl-9, .col-xxl-10, .col-xxl-11, .col-xxl-12, .col-xxl-auto {
    position: relative;
    width: 100%;
    padding-right: 20px;
    padding-left: 20px
}

.col {
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -ms-flex-positive: 1;
    flex-grow: 1;
    max-width: 100%
}

.row-cols-1 > * {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%
}

.row-cols-2 > * {
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%
}

.row-cols-3 > * {
    -ms-flex: 0 0 33.33333%;
    flex: 0 0 33.33333%;
    max-width: 33.33333%
}

.row-cols-4 > * {
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%
}

.row-cols-5 > * {
    -ms-flex: 0 0 20%;
    flex: 0 0 20%;
    max-width: 20%
}

.row-cols-6 > * {
    -ms-flex: 0 0 16.66667%;
    flex: 0 0 16.66667%;
    max-width: 16.66667%
}

.col-auto {
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: auto;
    max-width: 100%
}

.col-1 {
    -ms-flex: 0 0 8.33333%;
    flex: 0 0 8.33333%;
    max-width: 8.33333%
}

.col-2 {
    -ms-flex: 0 0 16.66667%;
    flex: 0 0 16.66667%;
    max-width: 16.66667%
}

.col-3 {
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%
}

.col-4 {
    -ms-flex: 0 0 33.33333%;
    flex: 0 0 33.33333%;
    max-width: 33.33333%
}

.col-5 {
    -ms-flex: 0 0 41.66667%;
    flex: 0 0 41.66667%;
    max-width: 41.66667%
}

.col-6 {
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%
}

.col-7 {
    -ms-flex: 0 0 58.33333%;
    flex: 0 0 58.33333%;
    max-width: 58.33333%
}

.col-8 {
    -ms-flex: 0 0 66.66667%;
    flex: 0 0 66.66667%;
    max-width: 66.66667%
}

.col-9 {
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
    max-width: 75%
}

.col-10 {
    -ms-flex: 0 0 83.33333%;
    flex: 0 0 83.33333%;
    max-width: 83.33333%
}

.col-11 {
    -ms-flex: 0 0 91.66667%;
    flex: 0 0 91.66667%;
    max-width: 91.66667%
}

.col-12 {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%
}

.order-first {
    -ms-flex-order: -1;
    order: -1
}

.order-last {
    -ms-flex-order: 13;
    order: 13
}

.order-0 {
    -ms-flex-order: 0;
    order: 0
}

.order-1 {
    -ms-flex-order: 1;
    order: 1
}

.order-2 {
    -ms-flex-order: 2;
    order: 2
}

.order-3 {
    -ms-flex-order: 3;
    order: 3
}

.order-4 {
    -ms-flex-order: 4;
    order: 4
}

.order-5 {
    -ms-flex-order: 5;
    order: 5
}

.order-6 {
    -ms-flex-order: 6;
    order: 6
}

.order-7 {
    -ms-flex-order: 7;
    order: 7
}

.order-8 {
    -ms-flex-order: 8;
    order: 8
}

.order-9 {
    -ms-flex-order: 9;
    order: 9
}

.order-10 {
    -ms-flex-order: 10;
    order: 10
}

.order-11 {
    -ms-flex-order: 11;
    order: 11
}

.order-12 {
    -ms-flex-order: 12;
    order: 12
}

.offset-1 {
    margin-left: 8.33333%
}

.offset-2 {
    margin-left: 16.66667%
}

.offset-3 {
    margin-left: 25%
}

.offset-4 {
    margin-left: 33.33333%
}

.offset-5 {
    margin-left: 41.66667%
}

.offset-6 {
    margin-left: 50%
}

.offset-7 {
    margin-left: 58.33333%
}

.offset-8 {
    margin-left: 66.66667%
}

.offset-9 {
    margin-left: 75%
}

.offset-10 {
    margin-left: 83.33333%
}

.offset-11 {
    margin-left: 91.66667%
}

.align-baseline {
    vertical-align: baseline !important
}

.align-top {
    vertical-align: top !important
}

.align-middle {
    vertical-align: middle !important
}

.align-bottom {
    vertical-align: bottom !important
}

.align-text-bottom {
    vertical-align: text-bottom !important
}

.align-text-top {
    vertical-align: text-top !important
}

.bg-primary {
    background-color: #007bff !important
}

a.bg-primary:focus, a.bg-primary:hover, button.bg-primary:focus, button.bg-primary:hover {
    background-color: #0062cc !important
}

.bg-secondary {
    background-color: #6c757d !important
}

a.bg-secondary:focus, a.bg-secondary:hover, button.bg-secondary:focus, button.bg-secondary:hover {
    background-color: #545b62 !important
}

.bg-success {
    background-color: #28a745 !important
}

a.bg-success:focus, a.bg-success:hover, button.bg-success:focus, button.bg-success:hover {
    background-color: #1e7e34 !important
}

.bg-info {
    background-color: #17a2b8 !important
}

a.bg-info:focus, a.bg-info:hover, button.bg-info:focus, button.bg-info:hover {
    background-color: #117a8b !important
}

.bg-warning {
    background-color: #ffc107 !important
}

a.bg-warning:focus, a.bg-warning:hover, button.bg-warning:focus, button.bg-warning:hover {
    background-color: #d39e00 !important
}

.bg-danger {
    background-color: #dc3545 !important
}

a.bg-danger:focus, a.bg-danger:hover, button.bg-danger:focus, button.bg-danger:hover {
    background-color: #bd2130 !important
}

.bg-light {
    background-color: #f8f9fa !important
}

a.bg-light:focus, a.bg-light:hover, button.bg-light:focus, button.bg-light:hover {
    background-color: #dae0e5 !important
}

.bg-dark {
    background-color: #343a40 !important
}

a.bg-dark:focus, a.bg-dark:hover, button.bg-dark:focus, button.bg-dark:hover {
    background-color: #1d2124 !important
}

.bg-white {
    background-color: #fff !important
}

.bg-transparent {
    background-color: transparent !important
}

.border {
    border: 1px solid #dee2e6 !important
}

.border-top {
    border-top: 1px solid #dee2e6 !important
}

.border-right {
    border-right: 1px solid #dee2e6 !important
}

.border-bottom {
    border-bottom: 1px solid #dee2e6 !important
}

.border-left {
    border-left: 1px solid #dee2e6 !important
}

.border-0 {
    border: 0 !important
}

.border-top-0 {
    border-top: 0 !important
}

.border-right-0 {
    border-right: 0 !important
}

.border-bottom-0 {
    border-bottom: 0 !important
}

.border-left-0 {
    border-left: 0 !important
}

.border-primary {
    border-color: #007bff !important
}

.border-secondary {
    border-color: #6c757d !important
}

.border-success {
    border-color: #28a745 !important
}

.border-info {
    border-color: #17a2b8 !important
}

.border-warning {
    border-color: #ffc107 !important
}

.border-danger {
    border-color: #dc3545 !important
}

.border-light {
    border-color: #f8f9fa !important
}

.border-dark {
    border-color: #343a40 !important
}

.border-white {
    border-color: #fff !important
}

.rounded-sm {
    border-radius: .2rem !important
}

.rounded {
    border-radius: .25rem !important
}

.rounded-top {
    border-top-left-radius: .25rem !important
}

.rounded-right, .rounded-top {
    border-top-right-radius: .25rem !important
}

.rounded-bottom, .rounded-right {
    border-bottom-right-radius: .25rem !important
}

.rounded-bottom, .rounded-left {
    border-bottom-left-radius: .25rem !important
}

.rounded-left {
    border-top-left-radius: .25rem !important
}

.rounded-lg {
    border-radius: .3rem !important
}

.rounded-circle {
    border-radius: 50% !important
}

.rounded-pill {
    border-radius: 50rem !important
}

.rounded-0 {
    border-radius: 0 !important
}

.clearfix:after {
    display: block;
    clear: both;
    content: ""
}

.d-none {
    display: none !important
}

.d-inline {
    display: inline !important
}

.d-inline-block {
    display: inline-block !important
}

.d-block {
    display: block !important
}

.d-table {
    display: table !important
}

.d-table-row {
    display: table-row !important
}

.d-table-cell {
    display: table-cell !important
}

.d-flex {
    display: -ms-flexbox !important;
    display: flex !important
}

.d-inline-flex {
    display: -ms-inline-flexbox !important;
    display: inline-flex !important
}

.embed-responsive {
    position: relative;
    display: block;
    width: 100%;
    padding: 0;
    overflow: hidden
}

.embed-responsive:before {
    display: block;
    content: ""
}

.embed-responsive .embed-responsive-item, .embed-responsive embed, .embed-responsive iframe, .embed-responsive object, .embed-responsive video {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0
}

.embed-responsive-21by9:before {
    padding-top: 42.85714%
}

.embed-responsive-16by9:before {
    padding-top: 56.25%
}

.embed-responsive-4by3:before {
    padding-top: 75%
}

.embed-responsive-1by1:before {
    padding-top: 100%
}

.flex-row {
    -ms-flex-direction: row !important;
    flex-direction: row !important
}

.flex-column {
    -ms-flex-direction: column !important;
    flex-direction: column !important
}

.flex-row-reverse {
    -ms-flex-direction: row-reverse !important;
    flex-direction: row-reverse !important
}

.flex-column-reverse {
    -ms-flex-direction: column-reverse !important;
    flex-direction: column-reverse !important
}

.flex-wrap {
    -ms-flex-wrap: wrap !important;
    flex-wrap: wrap !important
}

.flex-nowrap {
    -ms-flex-wrap: nowrap !important;
    flex-wrap: nowrap !important
}

.flex-wrap-reverse {
    -ms-flex-wrap: wrap-reverse !important;
    flex-wrap: wrap-reverse !important
}

.flex-fill {
    -ms-flex: 1 1 auto !important;
    flex: 1 1 auto !important
}

.flex-grow-0 {
    -ms-flex-positive: 0 !important;
    flex-grow: 0 !important
}

.flex-grow-1 {
    -ms-flex-positive: 1 !important;
    flex-grow: 1 !important
}

.flex-shrink-0 {
    -ms-flex-negative: 0 !important;
    flex-shrink: 0 !important
}

.flex-shrink-1 {
    -ms-flex-negative: 1 !important;
    flex-shrink: 1 !important
}

.justify-content-start {
    -ms-flex-pack: start !important;
    justify-content: flex-start !important
}

.justify-content-end {
    -ms-flex-pack: end !important;
    justify-content: flex-end !important
}

.justify-content-center {
    -ms-flex-pack: center !important;
    justify-content: center !important
}

.justify-content-between {
    -ms-flex-pack: justify !important;
    justify-content: space-between !important
}

.justify-content-around {
    -ms-flex-pack: distribute !important;
    justify-content: space-around !important
}

.align-items-start {
    -ms-flex-align: start !important;
    align-items: flex-start !important
}

.align-items-end {
    -ms-flex-align: end !important;
    align-items: flex-end !important
}

.align-items-center {
    -ms-flex-align: center !important;
    align-items: center !important
}

.align-items-baseline {
    -ms-flex-align: baseline !important;
    align-items: baseline !important
}

.align-items-stretch {
    -ms-flex-align: stretch !important;
    align-items: stretch !important
}

.align-content-start {
    -ms-flex-line-pack: start !important;
    align-content: flex-start !important
}

.align-content-end {
    -ms-flex-line-pack: end !important;
    align-content: flex-end !important
}

.align-content-center {
    -ms-flex-line-pack: center !important;
    align-content: center !important
}

.align-content-between {
    -ms-flex-line-pack: justify !important;
    align-content: space-between !important
}

.align-content-around {
    -ms-flex-line-pack: distribute !important;
    align-content: space-around !important
}

.align-content-stretch {
    -ms-flex-line-pack: stretch !important;
    align-content: stretch !important
}

.align-self-auto {
    -ms-flex-item-align: auto !important;
    align-self: auto !important
}

.align-self-start {
    -ms-flex-item-align: start !important;
    align-self: flex-start !important
}

.align-self-end {
    -ms-flex-item-align: end !important;
    align-self: flex-end !important
}

.align-self-center {
    -ms-flex-item-align: center !important;
    align-self: center !important
}

.align-self-baseline {
    -ms-flex-item-align: baseline !important;
    align-self: baseline !important
}

.align-self-stretch {
    -ms-flex-item-align: stretch !important;
    align-self: stretch !important
}

.float-left {
    float: left !important
}

.float-right {
    float: right !important
}

.float-none {
    float: none !important
}

.overflow-auto {
    overflow: auto !important
}

.overflow-hidden {
    overflow: hidden !important
}

.position-static {
    position: static !important
}

.position-relative {
    position: relative !important
}

.position-absolute {
    position: absolute !important
}

.position-fixed {
    position: fixed !important
}

.position-sticky {
    position: -webkit-sticky !important;
    position: sticky !important
}

.fixed-top {
    top: 0
}

.fixed-bottom, .fixed-top {
    position: fixed;
    right: 0;
    left: 0;
    z-index: 1030
}

.fixed-bottom {
    bottom: 0
}

@supports ((position: -webkit-sticky) or (position:sticky)) {
    .sticky-top {
        position: -webkit-sticky;
        position: sticky;
        top: 0;
        z-index: 1020
    }
}

.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0
}

.sr-only-focusable:active, .sr-only-focusable:focus {
    position: static;
    width: auto;
    height: auto;
    overflow: visible;
    clip: auto;
    white-space: normal
}

.shadow-sm {
    box-shadow: 0 .125rem .25rem rgba(0, 0, 0, .075) !important
}

.shadow {
    box-shadow: 0 .5rem 1rem rgba(0, 0, 0, .15) !important
}

.shadow-lg {
    box-shadow: 0 1rem 3rem rgba(0, 0, 0, .175) !important
}

.shadow-none {
    box-shadow: none !important
}

.w-25 {
    width: 25% !important
}

.w-50 {
    width: 50% !important
}

.w-75 {
    width: 75% !important
}

.w-100 {
    width: 100% !important
}

.w-auto {
    width: auto !important
}

.h-25 {
    height: 25% !important
}

.h-50 {
    height: 50% !important
}

.h-75 {
    height: 75% !important
}

.h-100 {
    height: 100% !important
}

.h-auto {
    height: auto !important
}

.mw-100 {
    max-width: 100% !important
}

.mh-100 {
    max-height: 100% !important
}

.min-vw-100 {
    min-width: 100vw !important
}

.min-vh-100 {
    min-height: 100vh !important
}

.vw-100 {
    width: 100vw !important
}

.vh-100 {
    height: 100vh !important
}

.stretched-link:after {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
    pointer-events: auto;
    content: "";
    background-color: transparent
}

.m-0 {
    margin: 0 !important
}

.mt-0, .my-0 {
    margin-top: 0 !important
}

.mr-0, .mx-0 {
    margin-right: 0 !important
}

.mb-0, .my-0 {
    margin-bottom: 0 !important
}

.ml-0, .mx-0 {
    margin-left: 0 !important
}

.m-1 {
    margin: 5px !important
}

.mt-1, .my-1 {
    margin-top: 5px !important
}

.mr-1, .mx-1 {
    margin-right: 5px !important
}

.mb-1, .my-1 {
    margin-bottom: 5px !important
}

.ml-1, .mx-1 {
    margin-left: 5px !important
}

.m-2 {
    margin: 10px !important
}

.mt-2, .my-2 {
    margin-top: 10px !important
}

.mr-2, .mx-2 {
    margin-right: 10px !important
}

.mb-2, .my-2 {
    margin-bottom: 10px !important
}

.ml-2, .mx-2 {
    margin-left: 10px !important
}

.m-3 {
    margin: 20px !important
}

.mt-3, .my-3 {
    margin-top: 20px !important
}

.mr-3, .mx-3 {
    margin-right: 20px !important
}

.mb-3, .my-3 {
    margin-bottom: 20px !important
}

.ml-3, .mx-3 {
    margin-left: 20px !important
}

.m-4 {
    margin: 30px !important
}

.mt-4, .my-4 {
    margin-top: 30px !important
}

.mr-4, .mx-4 {
    margin-right: 30px !important
}

.mb-4, .my-4 {
    margin-bottom: 30px !important
}

.ml-4, .mx-4 {
    margin-left: 30px !important
}

.m-5 {
    margin: 40px !important
}

.mt-5, .my-5 {
    margin-top: 40px !important
}

.mr-5, .mx-5 {
    margin-right: 40px !important
}

.mb-5, .my-5 {
    margin-bottom: 40px !important
}

.ml-5, .mx-5 {
    margin-left: 40px !important
}

.m-6 {
    margin: 60px !important
}

.mt-6, .my-6 {
    margin-top: 60px !important
}

.mr-6, .mx-6 {
    margin-right: 60px !important
}

.mb-6, .my-6 {
    margin-bottom: 60px !important
}

.ml-6, .mx-6 {
    margin-left: 60px !important
}

.p-0 {
    padding: 0 !important
}

.pt-0, .py-0 {
    padding-top: 0 !important
}

.pr-0, .px-0 {
    padding-right: 0 !important
}

.pb-0, .py-0 {
    padding-bottom: 0 !important
}

.pl-0, .px-0 {
    padding-left: 0 !important
}

.p-1 {
    padding: 5px !important
}

.pt-1, .py-1 {
    padding-top: 5px !important
}

.pr-1, .px-1 {
    padding-right: 5px !important
}

.pb-1, .py-1 {
    padding-bottom: 5px !important
}

.pl-1, .px-1 {
    padding-left: 5px !important
}

.p-2 {
    padding: 10px !important
}

.pt-2, .py-2 {
    padding-top: 10px !important
}

.pr-2, .px-2 {
    padding-right: 10px !important
}

.pb-2, .py-2 {
    padding-bottom: 10px !important
}

.pl-2, .px-2 {
    padding-left: 10px !important
}

.p-3 {
    padding: 20px !important
}

.pt-3, .py-3 {
    padding-top: 20px !important
}

.pr-3, .px-3 {
    padding-right: 20px !important
}

.pb-3, .py-3 {
    padding-bottom: 20px !important
}

.pl-3, .px-3 {
    padding-left: 20px !important
}

.p-4 {
    padding: 30px !important
}

.pt-4, .py-4 {
    padding-top: 30px !important
}

.pr-4, .px-4 {
    padding-right: 30px !important
}

.pb-4, .py-4 {
    padding-bottom: 30px !important
}

.pl-4, .px-4 {
    padding-left: 30px !important
}

.p-5 {
    padding: 40px !important
}

.pt-5, .py-5 {
    padding-top: 40px !important
}

.pr-5, .px-5 {
    padding-right: 40px !important
}

.pb-5, .py-5 {
    padding-bottom: 40px !important
}

.pl-5, .px-5 {
    padding-left: 40px !important
}

.p-6 {
    padding: 60px !important
}

.pt-6, .py-6 {
    padding-top: 60px !important
}

.pr-6, .px-6 {
    padding-right: 60px !important
}

.pb-6, .py-6 {
    padding-bottom: 60px !important
}

.pl-6, .px-6 {
    padding-left: 60px !important
}

.m-n1 {
    margin: -5px !important
}

.mt-n1, .my-n1 {
    margin-top: -5px !important
}

.mr-n1, .mx-n1 {
    margin-right: -5px !important
}

.mb-n1, .my-n1 {
    margin-bottom: -5px !important
}

.ml-n1, .mx-n1 {
    margin-left: -5px !important
}

.m-n2 {
    margin: -10px !important
}

.mt-n2, .my-n2 {
    margin-top: -10px !important
}

.mr-n2, .mx-n2 {
    margin-right: -10px !important
}

.mb-n2, .my-n2 {
    margin-bottom: -10px !important
}

.ml-n2, .mx-n2 {
    margin-left: -10px !important
}

.m-n3 {
    margin: -20px !important
}

.mt-n3, .my-n3 {
    margin-top: -20px !important
}

.mr-n3, .mx-n3 {
    margin-right: -20px !important
}

.mb-n3, .my-n3 {
    margin-bottom: -20px !important
}

.ml-n3, .mx-n3 {
    margin-left: -20px !important
}

.m-n4 {
    margin: -30px !important
}

.mt-n4, .my-n4 {
    margin-top: -30px !important
}

.mr-n4, .mx-n4 {
    margin-right: -30px !important
}

.mb-n4, .my-n4 {
    margin-bottom: -30px !important
}

.ml-n4, .mx-n4 {
    margin-left: -30px !important
}

.m-n5 {
    margin: -40px !important
}

.mt-n5, .my-n5 {
    margin-top: -40px !important
}

.mr-n5, .mx-n5 {
    margin-right: -40px !important
}

.mb-n5, .my-n5 {
    margin-bottom: -40px !important
}

.ml-n5, .mx-n5 {
    margin-left: -40px !important
}

.m-n6 {
    margin: -60px !important
}

.mt-n6, .my-n6 {
    margin-top: -60px !important
}

.mr-n6, .mx-n6 {
    margin-right: -60px !important
}

.mb-n6, .my-n6 {
    margin-bottom: -60px !important
}

.ml-n6, .mx-n6 {
    margin-left: -60px !important
}

.m-auto {
    margin: auto !important
}

.mt-auto, .my-auto {
    margin-top: auto !important
}

.mr-auto, .mx-auto {
    margin-right: auto !important
}

.mb-auto, .my-auto {
    margin-bottom: auto !important
}

.ml-auto, .mx-auto {
    margin-left: auto !important
}

.text-monospace {
    font-family: monospace !important
}

.text-justify {
    text-align: justify !important
}

.text-wrap {
    white-space: normal !important
}

.text-nowrap {
    white-space: nowrap !important
}

.text-truncate {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}

.text-left {
    text-align: left !important
}

.text-right {
    text-align: right !important
}

.text-center {
    text-align: center !important
}

.text-lowercase {
    text-transform: lowercase !important
}

.text-uppercase {
    text-transform: uppercase !important
}

.text-capitalize {
    text-transform: capitalize !important
}

.font-weight-light {
    font-weight: 300 !important
}

.font-weight-lighter {
    font-weight: lighter !important
}

.font-weight-normal {
    font-weight: 400 !important
}

.font-weight-bold {
    font-weight: 700 !important
}

.font-weight-bolder {
    font-weight: bolder !important
}

.font-italic {
    font-style: italic !important
}

.text-white {
    color: #fff !important
}

.text-primary {
    color: #007bff !important
}

a.text-primary:focus, a.text-primary:hover {
    color: #0056b3 !important
}

.text-secondary {
    color: #6c757d !important
}

a.text-secondary:focus, a.text-secondary:hover {
    color: #494f54 !important
}

.text-success {
    color: #28a745 !important
}

a.text-success:focus, a.text-success:hover {
    color: #19692c !important
}

.text-info {
    color: #17a2b8 !important
}

a.text-info:focus, a.text-info:hover {
    color: #0f6674 !important
}

.text-warning {
    color: #ffc107 !important
}

a.text-warning:focus, a.text-warning:hover {
    color: #ba8b00 !important
}

.text-danger {
    color: #dc3545 !important
}

a.text-danger:focus, a.text-danger:hover {
    color: #a71d2a !important
}

.text-light {
    color: #f8f9fa !important
}

a.text-light:focus, a.text-light:hover {
    color: #cbd3da !important
}

.text-dark {
    color: #343a40 !important
}

a.text-dark:focus, a.text-dark:hover {
    color: #121416 !important
}

.text-body {
    color: rgba(24, 24, 24, .75) !important
}

.text-muted {
    color: #6c757d !important
}

.text-black-50 {
    color: rgba(0, 0, 0, .5) !important
}

.text-white-50 {
    color: hsla(0, 0%, 100%, .5) !important
}

.text-hide {
    font: 0/0 a;
    color: transparent;
    text-shadow: none;
    background-color: transparent;
    border: 0
}

.text-decoration-none {
    text-decoration: none !important
}

.text-break {
    word-break: break-word !important;
    overflow-wrap: break-word !important
}

.text-reset {
    color: inherit !important
}

.visible {
    visibility: visible !important
}

.invisible {
    visibility: hidden !important
}

@font-face {
    font-family: Libre Baskerville;
    src: url(../assets/fonts/libre-baskerville-regular.woff2) format("woff2");
    font-weight: 400;
    font-style: normal
}

@font-face {
    font-family: Libre Baskerville;
    src: url(../assets/fonts/libre-baskerville-bold.woff2) format("woff2");
    font-weight: 700;
    font-style: normal
}

@font-face {
    font-family: Neue Einstellung;
    src: url(../assets/fonts/neue-einstellung-regular.woff2) format("woff2"), url(../assets/fonts/neue-einstellung-regular.woff) format("woff");
    font-weight: 400;
    font-style: normal
}

@font-face {
    font-family: Neue Einstellung;
    src: url(../assets/fonts/neue-einstellung-medium.woff2) format("woff2"), url(../assets/fonts/neue-einstellung-medium.woff) format("woff");
    font-weight: 500;
    font-style: normal
}

@font-face {
    font-family: Neue Einstellung;
    src: url(../assets/fonts/neue-einstellung-bold.woff2) format("woff2"), url(../assets/fonts/neue-einstellung-bold.woff) format("woff");
    font-weight: 700;
    font-style: normal
}

:root {
    height: 100%;
    font-size: 95%
}

:root, body {
    overflow-x: hidden
}

body {
    min-height: 100%;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility
}

main {
    position: relative
}

p:last-child {
    margin-bottom: 0
}

.global-content {
    position: relative
}

.global-content:before {
    content: "";
    z-index: -1;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: .9;
    background-image: url(../assets/bg-parchment.png);
    background-size: 100px 100px
}

.container {
    position: relative
}

.separator:before {
    content: "";
    width: 100%;
    height: 1px;
    position: absolute;
    top: 0;
    left: 0;
    background-color: #d5cebf
}

.centered {
    position: relative;
    margin-bottom: 0;
    text-align: center
}

.centered .intro-text-container, .centered > span {
    position: relative;
    display: inline-block;
    padding: 0 20px;
    background-color: #fff;
    z-index: 1
}

.centered:before {
    width: 100%;
    height: 1px;
    top: 50%;
    background-color: #d5cebf
}

.bg:before, .centered:before {
    content: "";
    position: absolute;
    left: 0
}

.bg:before {
    top: 0;
    right: 0;
    bottom: 0;
    background-size: 100px 100px
}

.bg-parchment:before {
    z-index: -1;
    opacity: .9;
    background-image: url(../assets/bg-parchment.png)
}

.bg-sayagata:before {
    background-color: #890815;
    background-image: linear-gradient(90deg, transparent, rgba(0, 0, 0, .2)), url(../assets/bg-sayagata.png);
    background-repeat: no-repeat, repeat;
    background-size: contain, 150px
}

.pagination, .pagination .hidden {
    display: none
}

.pagination .active {
    /* border: none; */
    background-color: rgba(0, 0, 0, .05);
    pointer-events: none
}

.pagination .active .uppercase-text {
    color: #181818
}

.pagination .active:focus, .pagination .active:hover {
    background: none
}

.page-title {
    font-size: 2.5rem;
    font-weight: 700;
    font-family: Libre Baskerville, "Noto Serif JP", Hiragino Mincho ProN, ヒラギノ明朝 ProN, 游明朝, 游明朝体, YuMincho, Yu Mincho, ＭＳ 明朝, MS Mincho, serif;
    color: #b31918
}

.section-title {
    font-family: Neue Einstellung, Noto Sans JP, Hiragino Kaku Gothic ProN, ヒラギノ角ゴ ProN, 游ゴシック, 游ゴシック体, YuGothic, Yu Gothic, メイリオ, Meiryo, ＭＳ ゴシック, MS Gothic, sans-serif;
    font-size: 1.125rem;
    font-weight: 500;
    line-height: 1;
    color: #181818
}

.section-title.separator {
    position: relative;
    margin-bottom: 0;
    padding-bottom: 20px
}

.section-title.separator:before {
    content: "";
    position: absolute;
    top: auto;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #d5cebf
}

.section-title.with-highlight:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    height: 1px;
    width: 136px;
    background-color: #b31918
}

.title {
    font-size: 1.25rem;
    font-weight: 700
}

.intro-text, .title {
    font-family: Libre Baskerville, "Noto Serif JP", Hiragino Mincho ProN, ヒラギノ明朝 ProN, 游明朝, 游明朝体, YuMincho, Yu Mincho, ＭＳ 明朝, MS Mincho, serif;
    color: #b31918
}

.intro-text {
    font-size: 1.125rem;
    font-weight: 400;
}

.intro-text.centered {
    text-align: center
}

.intro-text.centered .intro-text-container {
    max-width: 610px
}

.text-heading {
    font-size: 1.125rem;
    font-weight: 700;
    font-family: Libre Baskerville, "Noto Serif JP", Hiragino Mincho ProN, ヒラギノ明朝 ProN, 游明朝, 游明朝体, YuMincho, Yu Mincho, ＭＳ 明朝, MS Mincho, serif;
    color: #b31918
}

.medium-text {
    font-size: .875rem;
    font-weight: 500
}

.uppercase-text {
    font-size: 1rem;
    font-weight: 500;
    letter-spacing: 0;
    color: #3d5a53;
    text-transform: none;
}

:lang(ja) .uppercase-text {
    font-size: .875rem;
    letter-spacing: 0
}

.cover {
    position: relative
}

.cover-4x1 {
    padding-bottom: 25%
}

.cover-8x3 {
    padding-bottom: 37.5%
}

.cover-16x9 {
    padding-bottom: 56.25%
}

.cover-4x3 {
    padding-bottom: 75%
}

.cover-1x1 {
    padding-bottom: 100%
}

.cover-3x4 {
    padding-bottom: 133.33%
}

.cover-1x2 {
    padding-bottom: 200%
}

.cover .image {
    background-repeat: no-repeat;
    background-position: 50%;
    background-size: cover
}

.cover .image, .cover .overlay-link {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0
}

.cover .overlay-link {
    z-index: 2
}

.fade {
    transition: all .3s ease-in
}

.fade-out {
    opacity: 0
}

.fade-in {
    opacity: 1
}

.cover {
    background-color: rgba(213, 206, 191, .5)
}

.js-lazy-image {
    opacity: 0
}

.loader {
    opacity: 1;
    transition: opacity .3s
}

.loader.active {
    opacity: .5;
    pointer-events: none
}

a {
    color: #b31918
}

a:focus, a:hover {
    color: #950403
}

[data-simplebar] {
    position: relative;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-line-pack: start;
    align-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start
}

.simplebar-wrapper {
    overflow: hidden;
    width: inherit;
    height: inherit;
    max-width: inherit;
    max-height: inherit
}

.simplebar-mask {
    direction: inherit;
    overflow: hidden;
    width: auto !important;
    height: auto !important;
    z-index: 0
}

.simplebar-mask, .simplebar-offset {
    position: absolute;
    padding: 0;
    margin: 0;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0
}

.simplebar-offset {
    direction: inherit !important;
    box-sizing: inherit !important;
    resize: none !important;
    -webkit-overflow-scrolling: touch
}

.simplebar-content-wrapper {
    direction: inherit;
    box-sizing: border-box !important;
    position: relative;
    display: block;
    height: 100%;
    width: auto;
    visibility: visible;
    max-width: 100%;
    max-height: 100%;
    scrollbar-width: none;
    -ms-overflow-style: none
}

.simplebar-content-wrapper::-webkit-scrollbar, .simplebar-hide-scrollbar::-webkit-scrollbar {
    width: 0;
    height: 0
}

.simplebar-content:after, .simplebar-content:before {
    content: " ";
    display: table
}

.simplebar-placeholder {
    max-height: 100%;
    max-width: 100%;
    width: 100%;
    pointer-events: none
}

.simplebar-height-auto-observer-wrapper {
    box-sizing: inherit !important;
    height: 100%;
    width: 100%;
    max-width: 1px;
    position: relative;
    float: left;
    max-height: 1px;
    overflow: hidden;
    z-index: -1;
    padding: 0;
    margin: 0;
    pointer-events: none;
    -ms-flex-positive: inherit;
    flex-grow: inherit;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    -ms-flex-preferred-size: 0;
    flex-basis: 0
}

.simplebar-height-auto-observer {
    box-sizing: inherit;
    display: block;
    opacity: 0;
    top: 0;
    left: 0;
    height: 1000%;
    width: 1000%;
    min-height: 1px;
    min-width: 1px;
    z-index: -1
}

.simplebar-height-auto-observer, .simplebar-track {
    position: absolute;
    overflow: hidden;
    pointer-events: none
}

.simplebar-track {
    z-index: 1;
    right: 0;
    bottom: 0
}

[data-simplebar].simplebar-dragging .simplebar-content {
    pointer-events: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-user-select: none
}

[data-simplebar].simplebar-dragging .simplebar-track {
    pointer-events: all
}

.simplebar-scrollbar {
    position: absolute;
    left: 0;
    right: 0;
    min-height: 10px
}

.simplebar-scrollbar:before {
    position: absolute;
    content: "";
    background: #000;
    border-radius: 7px;
    left: 2px;
    right: 2px;
    opacity: 0;
    transition: opacity .2s linear
}

.simplebar-scrollbar.simplebar-visible:before {
    opacity: .5;
    transition: opacity 0s linear
}

.simplebar-track.simplebar-vertical {
    top: 0;
    width: 11px
}

.simplebar-track.simplebar-vertical .simplebar-scrollbar:before {
    top: 2px;
    bottom: 2px
}

.simplebar-track.simplebar-horizontal {
    left: 0;
    height: 11px
}

.simplebar-track.simplebar-horizontal .simplebar-scrollbar:before {
    height: 100%;
    left: 2px;
    right: 2px
}

.simplebar-track.simplebar-horizontal .simplebar-scrollbar {
    right: auto;
    left: 0;
    top: 2px;
    height: 7px;
    min-height: 0;
    min-width: 10px;
    width: auto
}

[data-simplebar-direction=rtl] .simplebar-track.simplebar-vertical {
    right: auto;
    left: 0
}

.hs-dummy-scrollbar-size {
    direction: rtl;
    position: fixed;
    opacity: 0;
    visibility: hidden;
    height: 500px;
    width: 500px;
    overflow-y: hidden;
    overflow-x: scroll
}

.simplebar-hide-scrollbar {
    position: fixed;
    left: 0;
    visibility: hidden;
    overflow-y: scroll;
    scrollbar-width: none;
    -ms-overflow-style: none
}

.article-tile a {
    display: block;
    position: relative;
    overflow: hidden
}

.article-tile + .article-tile {
    margin-top: 20px
}

.article-tile .article-title, .home .article-tile .article-date {
    background-color: #fff
}

.article-media {
    width: 100%;
    overflow: hidden;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: 50%;
    padding-top: 56.25%
}

.article-content {
    padding: 20px;
    color: rgba(24, 24, 24, .75)
}

.article-content .poster-callout .poster-cover {
    position: relative;
    height: 0;
    padding-top: 56.25%
}

.article-content .poster-callout .poster-content {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0
}

.article-content .poster-callout .poster-title {
    font-size: 1.125rem
}

.article-content .poster-callout .poster-subtitle {
    font-size: .8125rem
}

.article-content .poster-callout .button-invert {
    max-width: 200px
}

.article-content .feature-info {
    margin-top: 30px
}

.article-title {
    margin-bottom: 5px;
    font-size: 1rem;
    line-height: 1.5;
    color: #950403
}

.article-date {
    display: block;
    margin-bottom: 10px;
    font-size: .875rem;
    line-height: 1.5;
    color: rgba(24, 24, 24, .5)
}

.article-blurb {
    font-size: .8125rem;
    line-height: 1.54
}

.article-blurb span {
    color: #950403
}

.article-blurb span:hover {
    color: rgba(24, 24, 24, .75)
}

.article {
    background-color: #fff
}

.article .cover {
    position: relative;
    margin-right: -20px;
    margin-bottom: 20px;
    margin-left: -20px;
    overflow: hidden;
    height: 0;
    padding-top: 56.25%
}

.article .poster .cover {
    margin-bottom: 0
}

.article .media {
    width: 100%
}

.article .media img {
    width: 100%;
    height: auto
}

.article > :not(.cover):not(.article-related):not(.media) {
    padding-left: 20px;
    padding-right: 20px
}

.article .article-header {
    margin-top: 60px;
    padding-bottom: 20px
}

.article .article-header h1 {
    margin-bottom: 5px
}

.article .media + .article-header {
    margin-top: 30px
}

.article .article-content {
    padding: 0
}

.article .article-footer {
    padding-top: 30px
}

.article .article-footer .sns {
    padding: 18px 0 8px;
    border-top: 1px solid #d5cebf
}

.article .article-related {
    margin-top: 30px;
    padding: 30px 20px;
    border-top: 1px solid #d5cebf
}

.article .article-related .col-6:first-child {
    border-right: 1px solid #d5cebf
}

.article .article-related .uppercase-text {
    margin-bottom: 10px;
    font-size: .6875rem;
    letter-spacing: 1px
}

.article .article-related .text-heading a {
    display: block;
    font-size: .8125rem
}

.article-highlight .article-content {
    padding: 0
}

.article-highlight .article-title {
    display: block;
    font-size: .875rem;
    line-height: 1.3;
    color: #b31918
}

.article-highlight .article-date {
    display: block;
    margin-bottom: 0;
    font-size: .75rem;
    text-transform: uppercase
}

.article-thumb {
    padding-bottom: 56.25%
}

button {
    border: none
}

.pagination-button, button {
    cursor: pointer;
    background: transparent;
    outline: none
}

.pagination-button {
    z-index: 10;
    padding: 0;
    width: 48px;
    border: 1px solid #d5cebf;
    border-radius: 50%;
    font-size: 0;
    overflow: hidden;
    transition: all .15s
}

.button, .pagination-button {
    position: relative;
    height: 48px
}

.button {
    display: block;
    padding-right: 51px;
    padding-left: 20px;
    outline: none;
    border-radius: 3px;
    line-height: 46px;
    white-space: nowrap;
    transition: all .35s cubic-bezier(.19, 1, .22, 1)
}

.button .uppercase-text {
    display: inline-block;
    margin-top: .1em
}

.link-arrow:after {
    content: "";
    position: absolute;
    top: 50%;
    right: 7px;
    width: 32px;
    height: 32px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    transition: all .35s cubic-bezier(.19, 1, .22, 1);
    background-image: url(/wp-content/uploads/2023/04/green-arrow.png) !important;
    background-repeat: no-repeat;
    background-position: 50%;
    background-size: 12px 8px
}

.link-arrow:hover:after {
    -webkit-transform: translate(5px, -50%);
    transform: translate(5px, -50%)
}

.button-outline {
    background: transparent;
    border: 1px solid #d5cebf
}

.button-outline:focus, .button-outline:hover {
    background: rgba(213, 206, 191, .25)
}

.button-primary, .gform_wrapper .gform_footer .gform_button {
    background: #830c1f;
    border-radius: 24px;
    border: 1px solid #83091f;
    text-align: center
}

.button-primary .uppercase-text, .gform_wrapper .gform_footer .gform_button .uppercase-text {
    color: #fff
}

.button-invert {
    background: transparent;
    border: 1px solid rgba(213, 206, 191, .5)
}

.button-invert span {
    color: #f8f6f1;
    text-shadow: 0 0 10px rgba(0, 0, 0, .25)
}

.button-invert:after {
    background-image: url(/wp-content/uploads/2023/04/white-arrow.png) !important;
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: 12px 8px
}

.button-invert:hover {
    background: rgba(0, 0, 0, .05)
}

.button-invert:focus {
    background: rgba(0, 0, 0, .15)
}

.button-shade {
    background: rgba(0, 0, 0, .1)
}

.button-shade:hover {
    background: rgba(0, 0, 0, .15)
}

.button-shade:focus {
    background: rgba(0, 0, 0, .25)
}

.button-menu {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 32px;
    height: 32px
}

.button-menu .icon-menu {
    display: block;
    position: relative;
    margin: 0;
    padding: 9px 2px;
    width: 32px;
    height: 32px
}

.button-menu .icon-menu span {
    position: absolute;
    left: 2px;
    width: 28px;
    height: 1px;
    background: #eee;
    -webkit-transform: none;
    transform: none;
    -webkit-transform-origin: center;
    transform-origin: center;
    transition: all .35s cubic-bezier(.19, 1, .22, 1)
}

.button-menu .icon-menu span:first-child {
    top: 10px
}

.button-menu .icon-menu span:nth-child(2) {
    top: 15px;
    opacity: 1
}

.button-menu .icon-menu span:nth-child(3) {
    top: 20px
}

.button-menu .close span:first-child {
    -webkit-transform: translateY(5px) rotate(-45deg);
    transform: translateY(5px) rotate(-45deg)
}

.button-menu .close span:nth-child(2) {
    opacity: 0;
    -webkit-transform: translateX(100%);
    transform: translateX(100%)
}

.button-menu .close span:nth-child(3) {
    -webkit-transform: translateY(-5px) rotate(45deg);
    transform: translateY(-5px) rotate(45deg)
}

.navigation-button {
    z-index: 10;
    position: relative;
    padding: 0;
    width: 48px;
    height: 48px;
    background: transparent;
    border: 1px solid #d5cebf;
    border-radius: 50%;
    outline: none;
    font-size: 0;
    overflow: hidden;
    cursor: pointer;
    transition: all .15s;
    display: none;
    margin-right: 10px;
    transition: all .35s cubic-bezier(.19, 1, .22, 1)
}

.navigation-button:hover {
    background: rgba(0, 0, 0, .05)
}

.navigation-button:focus {
    outline: none;
    background: rgba(0, 0, 0, .15)
}

.navigation-button:after {
    top: 7px
}

.navigation-button.prev:after {
    -webkit-transform: rotate(180deg) translateY(-1px);
    transform: rotate(180deg) translateY(-1px)
}

.navigation-button.prev:hover:after {
    -webkit-transform: rotate(180deg) translateX(1px);
    transform: rotate(180deg) translateX(1px)
}

.navigation-button.next:hover:after {
    -webkit-transform: translateX(3px);
    transform: translateX(3px)
}

.pagination-button {
    margin-right: 5px;
    background-color: #fff
}

.pagination-button span {
    display: block;
    -webkit-transform: translate(1px, 1px);
    transform: translate(1px, 1px);
    line-height: 50px;
    text-align: center
}

.pagination-button:hover {
    background: rgba(0, 0, 0, .05)
}

.pagination-button:focus {
    outline: none;
    background: rgba(0, 0, 0, .15)
}

.pagination-button.link-arrow:after {
    top: 8px;
    right: 7px;
    background-image: url(../assets/arrow-green@2x.png) !important;
}

.pagination-button.prev:after {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg)
}

.pagination-button.prev:hover:after {
    -webkit-transform: rotate(180deg) translateX(2px);
    transform: rotate(180deg) translateX(2px)
}

.pagination-button.next:after {
    -webkit-transform: translateY(-1px);
    transform: translateY(-1px)
}

.pagination-button.next:hover:after {
    -webkit-transform: translate(2px, -1px);
    transform: translate(2px, -1px)
}

.button-icon {
    padding: 0 25px !important;
    /* border: 1px solid #d5cebf; */
    border-radius: 28px;
    background-color: #fff;
    -webkit-transform: scale(.7);
    transform: scale(.7);
    -webkit-transform-origin: top right;
    transform-origin: top right;
}

.button-icon svg {
    margin-right: 15px
}

.card {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column
}

.card .cover {
    background-color: #f8f6f1
}

.card-cover {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    max-width: 100%;
    padding-top: 75%;
    border-radius: 3px;
    overflow: hidden;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: 50%;
    width: 100%
}

.card-content {
    margin-top: 11px
}

.card-title {
    margin-bottom: 5px;
    font-size: .75rem;
    line-height: 1.5
}

:lang(ja) .card-title {
    font-weight: 700
}

.card-caption {
    position: relative;
    margin-top: 10px;
    padding-top: 13px;
    font-size: .75rem;
    color: rgba(24, 24, 24, .5)
}

.card-caption sup {
    font-size: 8px
}

.card-caption.separator:before {
    max-width: 20px;
    z-index: 0
}

.card-aside .card-title, .card-default .card-title {
    color: #950403
}

.card-aside .card-tags .tag-price {
    margin-top: 5px;
    font-size: .75rem
}

.card-listing {
    width: 100%
}

.card-listing .card-cover {
    padding-top: 66.67%
}

.card-listing .card-content {
    width: 100%;
    margin-top: 0
}

.card-listing .card-content > * {
    margin-top: 15px
}

.card-listing .card-title {
    margin-bottom: 0;
    font-size: 1.25rem;
    line-height: 1.6
}

:lang(ja) .card-listing .card-title {
    font-weight: 700
}

.card-listing .card-caption {
    padding: 0
}

.card-listing .card-caption:before {
    content: none
}

.footer-card {
    position: relative;
    overflow: hidden;
    background-color: #181818
}

.footer-card .cover {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: start;
    height: 253px
}

.footer-card .overlay:before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: .75;
    background-color: rgba(0, 0, 0, .5);
    background-image: linear-gradient(180deg, #353535, transparent)
}

.footer-card .content {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-align: start;
    align-items: start;
    position: relative;
    padding: 70px 50px;
    max-width: 470px;
    text-align: left
}

.footer-card .text-heading {
    margin-bottom: 10px;
    font-size: 1.8rem;
    font-weight: 400;
    line-height: 1.6;
    color: #e7e1d1;
    text-transform: capitalize;
    text-shadow: 0 0 10px rgba(0, 0, 0, .25)
}

:lang(ja) .footer-card .text-heading {
    font-weight: 700
}

.footer-card .medium-text {
    margin-bottom: 20px;
    font-size: 1rem;
    color: rgba(248, 246, 241, .9);
    text-shadow: 0 0 10px rgba(0, 0, 0, .25)
}

.footer-card .button-invert {
    width: 200px;
    border-radius: 0
}

.gallery {
    padding: 30px 0;
    background-color: #fff
}

.single-building #inline-gallery-container {
    position: relative;
    /* overflow: visible; */
    height: 360px;
    /* margin-left: -20px; */
    /* margin-right: -20px; */
    will-change: transform
}

.carousel-fullwidth .carousel-controls {
    pointer-events: none
}

.carousel-fullwidth .carousel-controls > * {
    pointer-events: auto
}

.carousel-fullwidth .carousel-stage {
    position: relative;
    overflow: hidden;
    height: 100%;
    background-color: #f8f6f1
}

.carousel-fullwidth .carousel-item {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    text-align: center;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.carousel-fullwidth .image {
    display: inline-block;
    width: auto;
    height: 100%;
    margin-left: auto;
    margin-right: auto
}

.carousel-stacked {
    height: 300px;
    will-change: transform
}

.carousel-stacked li {
    display: block;
    float: left;
    position: relative;
    overflow: hidden;
    transform: translateX(-634px);
}

.carousel-stacked li:after {
    content: " ";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: .75;
    background-color: rgba(0, 0, 0, .8);
    background-image: linear-gradient(180deg, #353535, transparent);
    transition: opacity .2s linear
}

.carousel-stacked li.active:after {
    opacity: 0
}

.carousel-stacked .image {
    max-width: 100%;
    width: auto;
    -o-object-fit: cover;
    object-fit: cover;
    height: 300px
}

.column-content, .column-header, .split-content {
    padding-top: 25px
}

.split-content .caption {
    margin-top: 10px;
    font-size: .75rem;
    line-height: 1.53846;
    color: rgba(24, 24, 24, .5)
}

.split-content .caption span {
    white-space: nowrap
}

.split-content > .row {
    margin-top: -20px
}

.split-content .main-callout {
    margin-top: 40px
}

.floor-plan, .location {
    margin-top: 30px
}

.floor-plan .centered, .location .centered {
    margin-bottom: 30px
}

.floor-plan .row {
    margin-right: -10px;
    margin-left: -10px
}

.floor-plan .row > [class*=col] {
    padding-right: 10px;
    padding-left: 10px
}

.floor-plan .tile {
    margin-bottom: 30px
}

.floor-plan .tile .cover {
    position: relative;
    padding-bottom: 76.73%;
    border: 1px solid #d5cebf;
    box-shadow: 5px 5px 0 0 rgba(231, 225, 209, .5)
}

.location .cover {
    padding-bottom: 70.2%;
    overflow: hidden;
    height: 0
}

.location iframe {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0
}

.location .text-heading {
    margin-top: 15px;
    font-size: 1rem;
    color: #950403
}

.location .uppercase-text {
    margin-bottom: 3px
}

.column-split .cover, .column-split .tile .cover {
    padding-bottom: 56.25%
}

.column-split .tile {
    margin: 0
}

.column-split > .row {
    margin-right: -10px;
    margin-left: -10px
}

.column-split > .row > [class*=col] {
    padding-right: 10px;
    padding-left: 10px
}

.column-content .richtext .cover {
    margin-bottom: 30px;
    position: relative;
    overflow: hidden;
    height: 0;
    padding-top: 50%
}

.column-content .richtext .cover .media {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    max-width: 100%
}

.column-header {
    position: relative;
    padding-top: 20px;
    padding-bottom: 25px
}

.column-header:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: -200%;
    right: -200%;
    height: 1px;
    background-color: #d5cebf
}

.column-header .page-title {
    font-size: 1.5rem;
    margin-bottom: 10px;
    color: #950403
}

.column-header .page-title-wrapper, .column-header .page-title-wrapper + .tag-status {
    vertical-align: middle
}

.column-header .unit-info {
    margin-bottom: 5px;
    font-size: 0
}

.column-header .unit-info span {
    display: inline-block;
    position: relative;
    margin-bottom: 5px;
    font-size: 1rem;
    color: #181818
}

.column-header .unit-info span:before {
    content: "/";
    display: inline-block;
    padding-right: 5px;
    padding-left: 5px;
    color: rgba(24, 24, 24, .25)
}

.column-header .unit-info span:first-child:before {
    content: none
}

.column-header .tags {
    -ms-flex-align: center;
    align-items: center
}

.column-header .tag-status {
    margin-right: 5px
}

.column-header .tag-price {
    margin-right: 10px;
    font-size: 1.25rem;
    font-weight: 500
}

.column-header .tag-new {
    margin-right: 0;
    margin-left: 5px
}

.column-header .contact .contact-phone > span {
    margin-bottom: 3px
}

.column-header .contact .contact-email > span {
    margin-bottom: 0
}

.single-property .page-title:lang(ja) {
    font-weight: 700
}

.feature {
    margin-top: 30px
}

.feature:first-child {
    margin-top: 0
}

.feature .button-outline {
    display: block
}

.feature .button-outline + .button-outline {
    margin-top: -10px
}

.feature .richtext h2, .feature .richtext h3 {
    margin-bottom: 10px
}

.floating-image {
    position: relative;
    width: 100%;
    padding-left: 0
}

.floating-image .image {
    max-width: 100%;
    height: auto
}

.feature-content {
    margin-top: 15px
}

.feature-wide {
    pointer-events: none
}

section.feature.feature-wide {
    margin-top: 30px;
}

.feature-wide .container {
    max-width: 1600px;
}

.feature-wide .feature-content, .feature-wide .floating-image {
    pointer-events: auto
}

.feature-wide .richtext h2 {
    margin-bottom: 10px;
    font-family: Libre Baskerville, "Noto Serif JP", Hiragino Mincho ProN, ヒラギノ明朝 ProN, 游明朝, 游明朝体, YuMincho, Yu Mincho, ＭＳ 明朝, MS Mincho, serif;
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1.6;
    color: #b31918
}

:lang(ja) .feature-wide .richtext h2 {
    font-weight: 700
}

.feature-wide .richtext p:first-of-type {
    position: relative;
    padding-top: 12px
}

.feature-wide .richtext p:first-of-type:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 40px;
    height: 1px;
    background-color: #d5cebf
}

.feature-reverse .floating-image {
    /* margin-left: 20px; */
}

.feature-intro {
    padding: 70px 0
}

.filters {
    padding: 15px 0 20px
}

.filters .filters-row {
    padding-top: 30px;
    padding-bottom: 30px
}

.filters .message-row {
    position: relative;
    padding-top: 20px;
    background-color: #fff
}

.filters .message-row .container {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    -ms-flex-align: center;
    align-items: center;
    background-color: #fff;
    flex-direction: row;
}

.filters .message-row strong {
    display: inline-block
}

.filters .message-row button {
    margin-right: 0
}

.filters .message-row .filter-label {
    margin: 0
}

.filters .caption {
    display: block;
    margin-bottom: 20px;
    max-width: 438px;
    line-height: 1.75;
    text-align: left
}

.filters .clear-button {
    display: inline-block;
    width: auto;
    height: auto;
    border: none;
    border-radius: 0;
    font-size: 0.8rem;
    color: #4F4F4F;
    line-height: 1;
    white-space: nowrap;
    padding: 0
}

:lang(ja) .filters .clear-button {
    font-size: .875rem
}

.filters .filter-cta {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative
}

.filters .filter-cta button {
    margin-right: 0
}

.filters .filter-cta > button > span {
    text-align: center
}

.filters .filter-cta .filter {
    width: 100%;
    text-align: center
}

.filters .filter-cta .filter span {
    display: inline-block;
    margin-top: .3em;
    width: 100%;
    font-size: .8125rem
}

.filters .filters-list {
    display: none;
    position: relative;
    width: 100%
}

.filters .filter-item {
    position: relative;
    margin-right: 5px
}

.filters .filter-item.expand .chevron {
    opacity: 1;
    display: block
}

.filters .filter-item.expand .filter-dropdown {
    pointer-events: auto;
    opacity: 1;
    display: block
}

.filters .filter {
    z-index: 10;
    position: relative;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: center;
    align-items: center;
    width: auto;
    height: 48px;
    padding-right: 30px;
    padding-left: 30px;
    border-radius: 4px;
    border: 1px solid #d5cebf;
    background-color: #fff;
    font-size: 0;
    overflow: hidden;
    outline: none;
    cursor: pointer;
    transition: all .15s
}

.filters .filter > div, .filters .filter span {
    margin-top: .1em;
    white-space: nowrap;
    font-size: .75rem;
    letter-spacing: 0px;
    text-align: center
}

:lang(ja) .filters .filter > div, :lang(ja) .filters .filter span {
    font-size: .8125rem;
    letter-spacing: 0
}

.filters .filter span:not(:only-child) {
    padding-left: 5px;
    padding-right: 10px
}

.filters .filter svg {
    margin-top: -2px;
    fill: #3d5a53
}

.filters .filter-haschevron {
    position: relative;
    padding-right: 40px !important
}

.filters .filter-haschevron:after {
    content: " ";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 48px;
    background-position: 15px;
    background-repeat: no-repeat;
    background-size: 10px 6px;
    background-image: url(../assets/icon-chevron-down-green@2x.png)
}

.filters .filter-hasicon {
    min-width: 48px
}

.filters .filter-hasexpand {
    background-image: url(../assets/icon-filter-green@2x.png);
    background-repeat: no-repeat;
    background-size: 14px 13px;
    background-position: 50%
}

.filters .filter-group {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -ms-flex-pack: center;
    justify-content: center
}

.filters .filter-group .filter:first-child:not(:last-child) {
    margin-right: 0;
    padding-right: 15px;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    border-right: none
}

.filters .filter-group .filter:last-child:not(:first-child) {
    padding-right: 20px;
    padding-left: 15px;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0
}

.filters .filter-group .filter span {
    padding-right: 0
}

.filters .active {
    border-color: #b31918;
    background-color: #b31918
}

a.filter.active {
    background: #3d5a53;
    color: #fff;
}

.filters .active div {
    /* color: #fff; */
}

.filters .active span {
    /* color: #FFFFFF; */
}

.filters .active.filter-haschevron:after {
    background-image: url(../assets/icon-chevron-down-green@2x.png);
}

.filters .active.filter-hasexpand {
    background-image: url(../assets/icon-filter-white@2x.png)
}

.filters .selected, .filters :checked + .filter, .filters :checked + .uppercase-text {
    border-color: #b31918
}

.filters .selected div, .filters .selected span, .filters :checked + .filter div, .filters :checked + .filter span, .filters :checked + .uppercase-text div, .filters :checked + .uppercase-text span {
    color: #b31918
}

.filters .selected.filter-haschevron:after, .filters :checked + .filter.filter-haschevron:after, .filters :checked + .uppercase-text.filter-haschevron:after {
    background-image: url(../assets/icon-chevron-down-red@2x.png)
}

.filters .selected.filter-hasexpand, .filters :checked + .filter.filter-hasexpand, .filters :checked + .uppercase-text.filter-hasexpand {
    background-image: url(../assets/icon-filter-red@2x.png)
}

.filters .selected {
    border-color: #b31918
}

.filters .selected span {
    color: #b31918
}

.filters .selected svg {
    fill: #b31918
}

.filters .dark {
    border-color: #181818;
    background-color: #181818
}

.filters .dark span {
    color: #fff
}

.filters .chevron {
    position: absolute;
    bottom: -10px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    opacity: 0;
    pointer-events: none;
    display: none
}

.filters .chevron svg {
    display: block
}

.filter-dropdown {
    position: absolute;
    top: 100%;
    z-index: 15;
    min-width: 350px;
    margin-top: 10px;
    padding: 20px;
    border-radius: 10px;
    box-shadow: 0 10px 20px 0 rgba(0, 0, 0, .1), 0 3px 5px 0 rgba(0, 0, 0, .05);
    background-color: #fff;
    opacity: 0;
    display: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    pointer-events: none
}

.filter-dropdown .filter {
    height: 44px !important
}

.filter-label {
    position: relative;
    display: inline-block;
    margin-bottom: 5px;
}

.filter-label:last-child {
    margin-right: 0
}

.minmax .filter-label {
    margin: 0
}

.minmax .filter-label:first-child:after {
    position: absolute;
    right: 0;
    top: 50%;
    -webkit-transform: translate(50%, -50%);
    transform: translate(50%, -50%);
    display: block;
    content: "~"
}

.filter-input, .filter-select {
    z-index: 15;
    position: absolute;
    top: 50%;
    right: 0;
    bottom: 0;
    left: 0;
    cursor: pointer;
    opacity: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.filter-input {
    width: 0;
    height: 0
}

.filter-select {
    width: 100%;
    height: 100%;
    -webkit-appearance: menulist-button;
}

.filters-group.row {
    margin-right: -10px;
    margin-left: -10px
}

.filters-group.row > [class*=col] {
    padding-right: 10px;
    padding-left: 10px
}

.filter-header {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-bottom: 10px
}

.filter-title {
    font-weight: 700;
    color: #181818
}

.tilde {
    display: inline-block;
    -ms-flex-align: center;
    align-items: center;
    margin-left: 5px;
    -webkit-transform: translateY(-2px);
    transform: translateY(-2px)
}

.filter-apply {
    margin-top: 10px
}

.filters-mobile-wrapper {
    display: none;
    z-index: 100000;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    overflow-y: auto;
    overflow-x: none;
    width: 100%;
    height: 100%;
    -webkit-overflow-scrolling: touch
}

.filters-mobile {
    position: relative;
    margin: 20px;
    padding: 20px;
    border-radius: 10px;
    box-shadow: 0 10px 20px 0 rgba(0, 0, 0, .1), 0 3px 5px 0 rgba(0, 0, 0, .05);
    background-color: #fff
}

.filters-mobile.show {
    opacity: 1;
    pointer-events: auto
}

.filters-mobile .filter-title {
    display: block;
    margin-bottom: 10px
}

.filters-mobile .filter-mobile-cta {
    display: -ms-flexbox;
    display: flex;
    margin-top: 20px;
    padding-top: 20px;
    border-top: 1px solid #d5cebf
}

.filters-mobile .filter-mobile-cta .filter-apply {
    margin-top: 0
}

.filters-mobile .filter-mobile-cta .clear-button {
    margin-top: 20px
}

.filters-mobile .close-filter {
    position: absolute;
    top: 5px;
    right: 10px;
    margin: 0;
    padding: 8px;
    width: 30px;
    height: 30px
}

.filters-mobile .close-filter svg {
    opacity: .7;
    width: 100%;
    height: 100%
}

.filters-group-mobile {
    padding-top: 20px
}

.filters-group-mobile .filter {
    padding: 0 25px;
    height: 38px;
    text-align: left
}

.filters-group-mobile .filter-haschevron {
    padding-right: 48px
}

.filters-mobile .uppercase-text {
    font-size: 1rem;
}

.filter.dark span.uppercase-text {
    font-size: 1rem;
}

button.filter.filter-apply.dark {
    border: 1px solid #222;
    background: #222;
}

.filter-group-mobile-radio {
    display: -ms-flexbox;
    display: flex;
}

.filter-group-mobile-radio .filter-label {
    display: block;
    margin-right: 6px;
}

.filter-group-mobile-radio .filter-label .filter {
    height: 38px;
    border-radius: 0;
}

.filter-group-mobile-radio .filter-label:first-child .filter {
    border-top-left-radius: 4px;
    border-bottom-left-radius: 4px
}

.filter-group-mobile-radio .filter-label:last-child .filter {
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px
}

.filters-simple {
    padding-top: 0;
    margin-top: -10px
}

.filters-simple .filters-row {
    padding: 0 !important
}

.filters-simple .filters-list {
    display: block;
    -ms-flex-pack: center;
    justify-content: center
}

.filters-simple .filter-item {
    margin: 0
}

.filters-simple .filter {
    margin: 0;
    min-width: 156px;
    -ms-flex-pack: center;
    justify-content: center
}

.gform_wrapper .gf_scroll_text, .ginput_container input[type=email], .ginput_container input[type=number], .ginput_container input[type=search], .ginput_container input[type=tel], .ginput_container input[type=text], .ginput_container input[type=url], .ginput_container select, .ginput_container textarea {
    display: block;
    min-height: 44px;
    width: 100%;
    height: 44px;
    padding: 5px 10px;
    background: #fff;
    border: 1px solid #d5cebf;
    border-radius: 3px;
    box-shadow: none;
    font-size: 16px
}

.gform_wrapper .gf_scroll_text:focus, .ginput_container input:focus[type=email], .ginput_container input:focus[type=number], .ginput_container input:focus[type=search], .ginput_container input:focus[type=tel], .ginput_container input:focus[type=text], .ginput_container input:focus[type=url], .ginput_container select:focus, .ginput_container textarea:focus {
    outline: none;
    border-color: #52b7fe
}

.gfield_error .gform_wrapper .gf_scroll_text, .gfield_error .ginput_container input[type=email], .gfield_error .ginput_container input[type=number], .gfield_error .ginput_container input[type=search], .gfield_error .ginput_container input[type=tel], .gfield_error .ginput_container input[type=text], .gfield_error .ginput_container input[type=url], .gfield_error .ginput_container select, .gfield_error .ginput_container textarea, .gform_wrapper .gfield_error .gf_scroll_text, .ginput_container .gfield_error input[type=email], .ginput_container .gfield_error input[type=number], .ginput_container .gfield_error input[type=search], .ginput_container .gfield_error input[type=tel], .ginput_container .gfield_error input[type=text], .ginput_container .gfield_error input[type=url], .ginput_container .gfield_error select, .ginput_container .gfield_error textarea {
    background-color: #fff;
    border-color: #ffc3c3
}

.gfield_time_ampm input[type=number], .gfield_time_hour input[type=number], .gfield_time_minute input[type=number], .ginput_container input[type=number] {
    max-width: 64px
}

.ginput_container input[type=number]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    appearance: none
}

.gfield_time_ampm label, .gfield_time_hour label, .gfield_time_minute label, .ginput_container_address label, .ginput_container_name label {
    display: block;
    margin-top: 2.5px;
    font-size: .75em;
    color: rgba(24, 24, 24, .45)
}

.gf_first_quarter .ginput_container_select, .gf_fourth_quarter .ginput_container_select, .gf_left_half .ginput_container_select, .gf_left_third .ginput_container_select, .gf_middle_third .ginput_container_select, .gf_right_half .ginput_container_select, .gf_right_third .ginput_container_select, .gf_second_quarter .ginput_container_select, .gf_third_quarter .ginput_container_select, .ginput_container_address .address_country {
    position: relative
}

.gf_first_quarter .ginput_container_select:after, .gf_fourth_quarter .ginput_container_select:after, .gf_left_half .ginput_container_select:after, .gf_left_third .ginput_container_select:after, .gf_middle_third .ginput_container_select:after, .gf_right_half .ginput_container_select:after, .gf_right_third .ginput_container_select:after, .gf_second_quarter .ginput_container_select:after, .gf_third_quarter .ginput_container_select:after, .ginput_container_address .address_country:after {
    content: " ";
    position: absolute;
    top: 22px;
    right: 10px;
    border: 6px solid transparent;
    border-top-color: #dfe5eb;
    pointer-events: none;
    -webkit-transform: translateY(-3px);
    transform: translateY(-3px)
}

.gform_wrapper {
    background: #fff;
    border: none;
    text-align: left
}

.gform_wrapper ul {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-left: -10px;
    margin-right: -10px;
    margin-bottom: 20px;
    padding-left: 0
}

.gform_wrapper ul li {
    width: auto;
    list-style-type: none;
    margin: 20px 0 0;
    padding-left: 10px;
    padding-right: 10px
}

.gform_wrapper ul li:before {
    content: none
}

.gform_wrapper ul li.gform_hidden {
    margin: 0
}

.gform_wrapper .gfield {
    width: 100%
}

.gform_wrapper .gfield .ginput_container {
    position: relative
}

.gform_wrapper .gfield .ginput_container .small {
    width: 50%;
    width: calc(50% - 20px)
}

.gform_wrapper .gf_first_quarter .ginput_container .large, .gform_wrapper .gf_first_quarter .ginput_container .medium, .gform_wrapper .gf_first_quarter .ginput_container .small, .gform_wrapper .gf_fourth_quarter .ginput_container .large, .gform_wrapper .gf_fourth_quarter .ginput_container .medium, .gform_wrapper .gf_fourth_quarter .ginput_container .small, .gform_wrapper .gf_left_half .ginput_container .large, .gform_wrapper .gf_left_half .ginput_container .medium, .gform_wrapper .gf_left_half .ginput_container .small, .gform_wrapper .gf_left_third .ginput_container .large, .gform_wrapper .gf_left_third .ginput_container .medium, .gform_wrapper .gf_left_third .ginput_container .small, .gform_wrapper .gf_middle_third .ginput_container .large, .gform_wrapper .gf_middle_third .ginput_container .medium, .gform_wrapper .gf_middle_third .ginput_container .small, .gform_wrapper .gf_right_half .ginput_container .large, .gform_wrapper .gf_right_half .ginput_container .medium, .gform_wrapper .gf_right_half .ginput_container .small, .gform_wrapper .gf_right_third .ginput_container .large, .gform_wrapper .gf_right_third .ginput_container .medium, .gform_wrapper .gf_right_third .ginput_container .small, .gform_wrapper .gf_second_quarter .ginput_container .large, .gform_wrapper .gf_second_quarter .ginput_container .medium, .gform_wrapper .gf_second_quarter .ginput_container .small, .gform_wrapper .gf_third_quarter .ginput_container .large, .gform_wrapper .gf_third_quarter .ginput_container .medium, .gform_wrapper .gf_third_quarter .ginput_container .small, .gform_wrapper .gfield .ginput_container .large, .gform_wrapper .gfield .ginput_container .medium {
    width: 100%
}

.gform_wrapper .gfield_error {
    position: relative;
    padding-top: 10px;
    padding-bottom: 10px
}

.gform_wrapper .gfield_error .gfield_label {
    color: #c56765
}

.gform_wrapper .gfield_error .validation_message {
    display: block;
    margin-top: 5px;
    font-size: .75em;
    color: #ff6c6c
}

.gform_wrapper .gfield_error:before {
    content: " ";
    position: absolute;
    z-index: 0;
    top: 0;
    left: -10px;
    right: -10px;
    bottom: 0;
    width: auto;
    height: auto;
    border-radius: 0;
    background-color: #fff8f8
}

.gform_confirmation_message {
    margin-top: 20px
}

.gform_wrapper {
    font-size: 1rem;
    padding: 0
}

.gform_wrapper .gform_title, .gform_wrapper .gsection_title {
    margin-top: 0;
    font-size: 1.5em
}

.gform_wrapper .gform_title {
    margin-bottom: 10px;
    font-family: Neue Einstellung, Noto Sans JP, Hiragino Kaku Gothic ProN, ヒラギノ角ゴ ProN, 游ゴシック, 游ゴシック体, YuGothic, Yu Gothic, メイリオ, Meiryo, ＭＳ ゴシック, MS Gothic, sans-serif;
    font-size: 1.125rem;
    font-weight: 500;
    line-height: 1;
    color: #181818
}

.gform_wrapper .gform_fields {
    padding: 0
}

.gform_wrapper .gfield_label {
    display: block;
    position: relative;
    margin: 0;
    font-weight: 600;
    font-size: 13px;
    font-size: 12px !important;
    line-height: 29px;
    letter-spacing: 1px;
    color: #3D5A53;
    text-transform: uppercase;
}

.gform_wrapper .top_label .gfield_label {
    margin-top: 0
}

.gform_wrapper .gfield_description {
    position: relative;
    font-size: .9em
}

.gform_wrapper .gfield_required {
    color: #ff6c6c;
    padding-left: 2px
}

.gform_wrapper .field_description_above .gfield_description {
    margin-bottom: 5px
}

.gform_wrapper .gform_footer {
    margin-top: 10px
}

.gform_wrapper .gform_footer .gform_button {
    width: 100%;
    color: #fff;
    font-size: .6875rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 2px;
    text-align: center
}

.gform_wrapper .gf_scroll_text {
    overflow: scroll;
    height: 200px;
    background: #fff;
    padding: 20px;
    margin-left: 10px;
    margin-right: 10px
}

.ginput_container textarea {
    height: 130px
}

.ginput_container input[type=number] {
    -moz-appearance: textfield
}

.gform_wrapper .gfield .ginput_container_phone .medium {
    width: 50%;
    width: calc(50% - 20px)
}

.ginput_container input[type=checkbox], .ginput_container input[type=radio] {
    vertical-align: middle;
    cursor: pointer
}

.ginput_container input[type=checkbox] + label, .ginput_container input[type=radio] + label {
    margin-bottom: 0;
    padding-left: 5px;
    font-size: 1rem;
    vertical-align: middle;
    cursor: pointer
}

.gfield_checkbox [class^=gchoice], .gfield_radio [class^=gchoice] {
    margin-top: 2.5px;
    margin-bottom: 2.5px
}

.gf_list_2col ul, .gf_list_3col ul, .gf_list_4col ul, .gf_list_5col ul {
    display: -ms-flexbox;
    display: flex
}

.gf_list_2col li {
    -ms-flex-preferred-size: 50%;
    flex-basis: 50%
}

.gf_list_3col li {
    -ms-flex-preferred-size: 33.33333%;
    flex-basis: 33.33333%
}

.gf_list_4col li {
    -ms-flex-preferred-size: 25%;
    flex-basis: 25%
}

.gf_list_5col li {
    -ms-flex-preferred-size: 20%;
    flex-basis: 20%
}

.ginput_container select {
    position: relative;
    -webkit-appearance: none;
    appearance: none;
    -moz-appearance: textfield
}

.gf_browser_gecko .ginput_container select:active, .gf_browser_gecko .ginput_container select:focus {
    color: rgba(24, 24, 24, .75);
    color: transparent;
    text-shadow: 0 0 0 rgba(24, 24, 24, .75)
}

.ginput_container select[multiple] {
    height: auto;
    padding-top: 10px;
    padding-bottom: 10px
}

.ginput_container select[multiple] option + option {
    margin-top: 5px
}

.ginput_complex {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-left: -10px;
    margin-right: -10px
}

.ginput_container_name > * {
    -ms-flex-preferred-size: 50%;
    flex-basis: 50%;
    width: auto;
    padding-left: 10px;
    padding-right: 10px
}

.gfield_time_ampm, .gfield_time_hour, .gfield_time_minute {
    display: -ms-inline-flexbox;
    display: inline-flex;
    vertical-align: top;
    padding-left: 0;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-direction: column;
    flex-direction: column
}

.gfield_time_ampm label, .gfield_time_hour label, .gfield_time_minute label {
    width: 100%
}

.gfield_time_ampm i, .gfield_time_hour i, .gfield_time_minute i {
    display: none
}

.ginput_container_address > * {
    width: auto;
    padding-left: 10px;
    padding-right: 10px
}

.ginput_container_address .ginput_full {
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%
}

.ginput_container_address .ginput_left, .ginput_container_address .ginput_right {
    -ms-flex-preferred-size: 50%;
    flex-basis: 50%
}

.ginput_container_address label {
    margin-bottom: 10px
}

.ginput_container_address .address_country:after {
    right: 20px
}

.info-list {
    margin-top: -10px;
    margin-right: -15px;
    margin-left: -15px
}

.info-list > [class*=col] {
    padding-right: 15px;
    padding-left: 15px
}

.info-item {
    border-right: 1px solid #d5cebf
}

.info-item:last-child {
    border-right: 0
}

.info-value {
    margin-bottom: 3px;
    color: #181818;
    letter-spacing: .43px
}

.info-value sup {
    display: inline-block;
    -webkit-transform: translateY(-1px);
    transform: translateY(-1px);
    font-size: 8px
}

.info-label {
    font-size: .5625rem;
    line-height: 1.3;
    letter-spacing: 1px
}

.building-banner {
    margin: 0 auto 32px auto;
    text-align: center;
    max-width: 1020px;
}

.building-banner img {
    width: 100%;
}

:lang(ja) .info-label {
    font-size: .71094rem;
    letter-spacing: 0
}

.vacancy-info {
    margin-bottom: 0;
    padding-left: 0;
    line-height: 0;
    list-style: none
}

.vacancy-info:before {
    content: attr(aria-label);
    display: block;
    margin-bottom: 5px;
    font-size: .6875rem;
    font-weight: 700;
    line-height: 1.3;
    color: #3d5a53;
    letter-spacing: 2px;
    text-transform: uppercase
}

.vacancy-info:before:lang(ja) .vacancy-info:before {
    font-size: .71094rem;
    letter-spacing: 0
}

.vacancy-item {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: center;
    align-items: center;
    border-top: 1px solid #d5cebf
}

.vacancy-item:last-child {
    border-bottom: 1px solid #d5cebf
}

.vacancy-item a {
    display: block;
    padding-top: 8px;
    padding-bottom: 8px;
    background-color: rgba(248, 246, 241, 0);
    transition: background-color .15s
}

.vacancy-item a:hover {
    background-color: #f8f6f1
}

.vacancy-title {
    margin-right: 18px;
    margin-bottom: 0;
    font-size: .75rem;
    line-height: 1.5;
    color: #950403
}

:lang(ja) .vacancy-title {
    font-weight: 700
}

.card-listing .vacancy-title, .main-callout .vacancy-title {
    -ms-flex-positive: 1;
    flex-grow: 1
}

.vacancy-floor-area {
    display: none;
    margin-top: 5px;
    font-size: .75rem;
    font-weight: 700;
    line-height: 1.69;
    color: #181818;
    letter-spacing: .5px
}

.vacancy-floor-area sup {
    display: inline-block;
    -webkit-transform: translateY(-1px);
    transform: translateY(-1px);
    font-size: 6px
}

.vacancy-tags .tag-status {
    margin-right: 0
}

.vacancy-tags .tag-price {
    min-width: 98px;
    text-align: right
}

.feature-info {
    margin-bottom: 0;
    padding-left: 0;
    line-height: 0;
    list-style: none;
    background-color: rgba(213, 206, 191, .2);
    overflow: hidden
}

.feature-item {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    padding: 12px 15px;
    border-top: 1px solid #d5cebf
}

.feature-item:last-child {
    border-bottom: 1px solid #d5cebf
}

.feature-item p {
    margin-bottom: 10px;
    line-height: 1.5;
    color: #181818
}

.feature-item p:last-child {
    margin-bottom: 0
}

.feature-item .header {
    margin-bottom: 10px;
    line-height: 1
}

.feature-item .uppercase-text {
    display: inline-block;
    line-height: 1.3;
    letter-spacing: 1px;
    text-transform: uppercase;
    font-size: 14px;
}

.feature-item .medium-text {
    line-height: 1.3;
    letter-spacing: 0;
}

.summary .info-list {
    position: relative;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 30px 0;
    margin-top: -30px
}

.summary .info-item {
    margin-top: 30px
}

.summary .separator:before {
    width: auto;
    top: auto;
    right: 10px;
    left: 10px;
    bottom: 0
}

.vacancy-table {
    padding: 30px 0
}

.vacancy-table h2 {
    text-align: center
}

.vacancy-table tbody tr {
    cursor: pointer
}

.vacancy-table .table-info {
    display: block;
    padding: 9px 20px 11px;
    background-color: #fff;
    overflow: hidden
}

.vacancy-table .table-info tbody, .vacancy-table .table-info thead {
    width: 100%;
    display: -ms-flexbox;
    display: flex
}

.vacancy-table .table-info tbody td, .vacancy-table .table-info tbody th, .vacancy-table .table-info thead td, .vacancy-table .table-info thead th {
    overflow: hidden
}

.vacancy-table .table-info tbody td:nth-child(2), .vacancy-table .table-info tbody th:nth-child(2), .vacancy-table .table-info thead td:nth-child(2), .vacancy-table .table-info thead th:nth-child(2) {
    min-width: 120px
}

.vacancy-table .table-info tbody td:nth-child(3), .vacancy-table .table-info tbody th:nth-child(3), .vacancy-table .table-info thead td:nth-child(3), .vacancy-table .table-info thead th:nth-child(3) {
    min-width: 130px;
    -ms-flex-positive: 1;
    flex-grow: 1
}

.vacancy-table .table-info tbody td:nth-child(4), .vacancy-table .table-info tbody th:nth-child(4), .vacancy-table .table-info thead td:nth-child(4), .vacancy-table .table-info thead th:nth-child(4) {
    min-width: 138px
}

.vacancy-table .table-info tbody td:nth-child(5), .vacancy-table .table-info tbody th:nth-child(5), .vacancy-table .table-info thead td:nth-child(5), .vacancy-table .table-info thead th:nth-child(5) {
    min-width: 136px
}

.vacancy-table .table-info tbody {
    -ms-flex-direction: column;
    flex-direction: column
}

.vacancy-table .table-info tbody tr {
    border-top: 1px solid #d5cebf
}

.vacancy-table .table-info tbody tr:first-child {
    border-top: 0
}

.vacancy-table .table-info tr {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 100%
}

.vacancy-table .table-info th {
    padding-bottom: 10px;
    font-size: .6875rem
}

.vacancy-table .table-info td {
    padding-top: 11px;
    padding-bottom: 9px
}

.vacancy-table .table-info .tags {
    -ms-flex-pack: end;
    justify-content: flex-end
}

.vacancy-table .table-info .tag-status {
    margin-right: 8px
}

.vacancy-table .table-info .tag-price {
    min-width: auto
}

.vacancy-table .text-heading {
    margin-right: 8px
}

.vacancy-table .text-heading .tag-new {
    display: inline-block;
    margin-right: 0;
    margin-left: 6px;
    width: 54px;
    min-width: auto;
    -webkit-transform: translateY(-1px);
    transform: translateY(-1px)
}

.vacancy-table .vacancy-floor-area {
    margin-top: 0;
    display: block
}

.gform_wrapper .gform_footer .vacancy-table .gform_button, .vacancy-table .button-primary, .vacancy-table .gform_wrapper .gform_footer .gform_button {
    padding-right: 15px;
    padding-left: 14px;
    height: 24px;
    line-height: 22px
}

.gform_wrapper .gform_footer .vacancy-table .gform_button span, .vacancy-table .button-primary span, .vacancy-table .gform_wrapper .gform_footer .gform_button span {
    font-size: .5625rem
}

/*! PhotoSwipe main CSS by Dmitry Semenov | photoswipe.com | MIT license */
.pswp {
    display: none;
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    overflow: hidden;
    -ms-touch-action: none;
    touch-action: none;
    z-index: 1500;
    -webkit-text-size-adjust: 100%;
    -webkit-backface-visibility: hidden;
    outline: none
}

.pswp * {
    box-sizing: border-box
}

.pswp img {
    max-width: none
}

.pswp--animate_opacity {
    opacity: .001;
    will-change: opacity;
    transition: opacity 333ms cubic-bezier(.4, 0, .22, 1)
}

.pswp--open {
    display: block
}

.pswp--zoom-allowed .pswp__img {
    cursor: -webkit-zoom-in;
    cursor: -moz-zoom-in;
    cursor: zoom-in
}

.pswp--zoomed-in .pswp__img {
    cursor: -webkit-grab;
    cursor: -moz-grab;
    cursor: grab
}

.pswp--dragging .pswp__img {
    cursor: -webkit-grabbing;
    cursor: -moz-grabbing;
    cursor: grabbing
}

.pswp__bg {
    background: #000;
    opacity: 0;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-backface-visibility: hidden
}

.pswp__bg, .pswp__scroll-wrap {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%
}

.pswp__scroll-wrap {
    overflow: hidden
}

.pswp__container, .pswp__zoom-wrap {
    -ms-touch-action: none;
    touch-action: none;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0
}

.pswp__container, .pswp__img {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    -webkit-touch-callout: none
}

.pswp__zoom-wrap {
    position: absolute;
    width: 100%;
    -webkit-transform-origin: left top;
    transform-origin: left top;
    transition: -webkit-transform 333ms cubic-bezier(.4, 0, .22, 1);
    transition: transform 333ms cubic-bezier(.4, 0, .22, 1);
    transition: transform 333ms cubic-bezier(.4, 0, .22, 1), -webkit-transform 333ms cubic-bezier(.4, 0, .22, 1)
}

.pswp__bg {
    will-change: opacity;
    transition: opacity 333ms cubic-bezier(.4, 0, .22, 1)
}

.pswp--animated-in .pswp__bg, .pswp--animated-in .pswp__zoom-wrap {
    transition: none
}

.pswp__container, .pswp__zoom-wrap {
    -webkit-backface-visibility: hidden
}

.pswp__item {
    right: 0;
    bottom: 0;
    overflow: hidden
}

.pswp__img, .pswp__item {
    position: absolute;
    left: 0;
    top: 0
}

.pswp__img {
    width: auto;
    height: auto
}

.pswp__img--placeholder {
    -webkit-backface-visibility: hidden
}

.pswp__img--placeholder--blank {
    background: #222
}

.pswp--ie .pswp__img {
    width: 100% !important;
    height: auto !important;
    left: 0;
    top: 0
}

.pswp__error-msg {
    position: absolute;
    left: 0;
    top: 50%;
    width: 100%;
    text-align: center;
    font-size: 14px;
    line-height: 16px;
    margin-top: -8px;
    color: #ccc
}

.pswp__error-msg a {
    color: #ccc;
    text-decoration: underline
}

/*! PhotoSwipe Default UI CSS by Dmitry Semenov | photoswipe.com | MIT license */
.pswp__button {
    width: 44px;
    height: 44px;
    position: relative;
    background: none;
    cursor: pointer;
    overflow: visible;
    -webkit-appearance: none;
    display: block;
    border: 0;
    padding: 0;
    margin: 0;
    float: right;
    opacity: .75;
    transition: opacity .2s;
    box-shadow: none
}

.pswp__button:focus, .pswp__button:hover {
    opacity: 1
}

.pswp__button:active {
    outline: none;
    opacity: .9
}

.pswp__button::-moz-focus-inner {
    padding: 0;
    border: 0
}

.pswp__ui--over-close .pswp__button--close {
    opacity: 1
}

.pswp__button, .pswp__button--arrow--left:before, .pswp__button--arrow--right:before {
    background: url(../assets/default-skin.png) 0 0 no-repeat;
    background-size: 264px 88px;
    width: 44px;
    height: 44px
}

.pswp__button--close {
    background-position: 0 -44px
}

.pswp__button--share {
    background-position: -44px -44px
}

.pswp__button--fs {
    display: none
}

.pswp--supports-fs .pswp__button--fs {
    display: block
}

.pswp--fs .pswp__button--fs {
    background-position: -44px 0
}

.pswp__button--zoom {
    display: none;
    background-position: -88px 0
}

.pswp--zoom-allowed .pswp__button--zoom {
    display: block
}

.pswp--zoomed-in .pswp__button--zoom {
    background-position: -132px 0
}

.pswp--touch .pswp__button--arrow--left, .pswp--touch .pswp__button--arrow--right {
    visibility: hidden
}

.pswp__button--arrow--left, .pswp__button--arrow--right {
    background: none;
    top: 50%;
    margin-top: -50px;
    width: 70px;
    height: 100px;
    position: absolute
}

.pswp__button--arrow--left {
    left: 0
}

.pswp__button--arrow--right {
    right: 0
}

.pswp__button--arrow--left:before, .pswp__button--arrow--right:before {
    content: "";
    top: 35px;
    background-color: rgba(0, 0, 0, .3);
    height: 30px;
    width: 32px;
    position: absolute
}

.pswp__button--arrow--left:before {
    left: 6px;
    background-position: -138px -44px
}

.pswp__button--arrow--right:before {
    right: 6px;
    background-position: -94px -44px
}

.pswp__counter, .pswp__share-modal {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.pswp__share-modal {
    display: block;
    background: rgba(0, 0, 0, .5);
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    padding: 10px;
    position: absolute;
    z-index: 1600;
    opacity: 0;
    transition: opacity .25s ease-out;
    -webkit-backface-visibility: hidden;
    will-change: opacity
}

.pswp__share-modal--hidden {
    display: none
}

.pswp__share-tooltip {
    z-index: 1620;
    position: absolute;
    background: #fff;
    top: 56px;
    border-radius: 2px;
    display: block;
    width: auto;
    right: 44px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, .25);
    -webkit-transform: translateY(6px);
    transform: translateY(6px);
    transition: -webkit-transform .25s;
    transition: transform .25s;
    transition: transform .25s, -webkit-transform .25s;
    -webkit-backface-visibility: hidden;
    will-change: transform
}

.pswp__share-tooltip a {
    display: block;
    padding: 8px 12px;
    font-size: 14px;
    line-height: 18px
}

.pswp__share-tooltip a, .pswp__share-tooltip a:hover {
    color: #000;
    text-decoration: none
}

.pswp__share-tooltip a:first-child {
    border-radius: 2px 2px 0 0
}

.pswp__share-tooltip a:last-child {
    border-radius: 0 0 2px 2px
}

.pswp__share-modal--fade-in {
    opacity: 1
}

.pswp__share-modal--fade-in .pswp__share-tooltip {
    -webkit-transform: translateY(0);
    transform: translateY(0)
}

.pswp--touch .pswp__share-tooltip a {
    padding: 16px 12px
}

a.pswp__share--facebook:before {
    content: "";
    display: block;
    width: 0;
    height: 0;
    position: absolute;
    top: -12px;
    right: 15px;
    border: 6px solid transparent;
    border-bottom-color: #fff;
    -webkit-pointer-events: none;
    -moz-pointer-events: none;
    pointer-events: none
}

a.pswp__share--facebook:hover {
    background: #3e5c9a;
    color: #fff
}

a.pswp__share--facebook:hover:before {
    border-bottom-color: #3e5c9a
}

a.pswp__share--twitter:hover {
    background: #55acee;
    color: #fff
}

a.pswp__share--pinterest:hover {
    background: #ccc;
    color: #ce272d
}

a.pswp__share--download:hover {
    background: #ddd
}

.pswp__counter {
    position: absolute;
    left: 0;
    top: 0;
    height: 44px;
    font-size: 13px;
    line-height: 44px;
    color: #fff;
    opacity: .75;
    padding: 0 10px
}

.pswp__caption {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    min-height: 44px
}

.pswp__caption small {
    font-size: 11px;
    color: #bbb
}

.pswp__caption__center {
    text-align: left;
    max-width: 420px;
    margin: 0 auto;
    font-size: 13px;
    padding: 10px;
    line-height: 20px;
    color: #ccc
}

.pswp__caption--empty {
    display: none
}

.pswp__caption--fake {
    visibility: hidden
}

.pswp__preloader {
    width: 44px;
    height: 44px;
    position: absolute;
    top: 0;
    left: 50%;
    margin-left: -22px;
    opacity: 0;
    transition: opacity .25s ease-out;
    will-change: opacity;
    direction: ltr
}

.pswp__preloader__icn {
    width: 20px;
    height: 20px;
    margin: 12px
}

.pswp__preloader--active {
    opacity: 1
}

.pswp__preloader--active .pswp__preloader__icn {
    background: url(../assets/preloader.gif) 0 0 no-repeat
}

.pswp--css_animation .pswp__preloader--active {
    opacity: 1
}

.pswp--css_animation .pswp__preloader--active .pswp__preloader__icn {
    -webkit-animation: clockwise .5s linear infinite;
    animation: clockwise .5s linear infinite
}

.pswp--css_animation .pswp__preloader--active .pswp__preloader__donut {
    -webkit-animation: donut-rotate 1s cubic-bezier(.4, 0, .22, 1) infinite;
    animation: donut-rotate 1s cubic-bezier(.4, 0, .22, 1) infinite
}

.pswp--css_animation .pswp__preloader__icn {
    background: none;
    opacity: .75;
    width: 14px;
    height: 14px;
    position: absolute;
    left: 15px;
    top: 15px;
    margin: 0
}

.pswp--css_animation .pswp__preloader__cut {
    position: relative;
    width: 7px;
    height: 14px;
    overflow: hidden
}

.pswp--css_animation .pswp__preloader__donut {
    box-sizing: border-box;
    width: 14px;
    height: 14px;
    border-radius: 50%;
    border-color: #fff #fff transparent transparent;
    border-style: solid;
    border-width: 2px;
    position: absolute;
    top: 0;
    left: 0;
    background: none;
    margin: 0
}

@-webkit-keyframes clockwise {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }

    to {
        -webkit-transform: rotate(1turn);
        transform: rotate(1turn)
    }
}

@keyframes clockwise {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }

    to {
        -webkit-transform: rotate(1turn);
        transform: rotate(1turn)
    }
}

@-webkit-keyframes donut-rotate {
    0% {
        -webkit-transform: rotate(0);
        transform: rotate(0)
    }

    50% {
        -webkit-transform: rotate(-140deg);
        transform: rotate(-140deg)
    }

    to {
        -webkit-transform: rotate(0);
        transform: rotate(0)
    }
}

@keyframes donut-rotate {
    0% {
        -webkit-transform: rotate(0);
        transform: rotate(0)
    }

    50% {
        -webkit-transform: rotate(-140deg);
        transform: rotate(-140deg)
    }

    to {
        -webkit-transform: rotate(0);
        transform: rotate(0)
    }
}

.pswp__ui {
    -webkit-font-smoothing: auto;
    visibility: visible;
    opacity: 1;
    z-index: 1550
}

.pswp__top-bar {
    position: absolute;
    left: 0;
    top: 0;
    height: 44px;
    width: 100%
}

.pswp--has_mouse .pswp__button--arrow--left, .pswp--has_mouse .pswp__button--arrow--right, .pswp__caption, .pswp__top-bar {
    -webkit-backface-visibility: hidden;
    will-change: opacity;
    transition: opacity 333ms cubic-bezier(.4, 0, .22, 1)
}

.pswp--has_mouse .pswp__button--arrow--left, .pswp--has_mouse .pswp__button--arrow--right {
    visibility: visible
}

.pswp__caption, .pswp__top-bar {
    background-color: rgba(0, 0, 0, .5)
}

.pswp__ui--fit .pswp__caption, .pswp__ui--fit .pswp__top-bar {
    background-color: rgba(0, 0, 0, .3)
}

.pswp__ui--idle .pswp__button--arrow--left, .pswp__ui--idle .pswp__button--arrow--right, .pswp__ui--idle .pswp__top-bar {
    opacity: 0
}

.pswp__ui--hidden .pswp__button--arrow--left, .pswp__ui--hidden .pswp__button--arrow--right, .pswp__ui--hidden .pswp__caption, .pswp__ui--hidden .pswp__top-bar {
    opacity: .001
}

.pswp__ui--one-slide .pswp__button--arrow--left, .pswp__ui--one-slide .pswp__button--arrow--right, .pswp__ui--one-slide .pswp__counter {
    display: none
}

.pswp__element--disabled {
    display: none !important
}

.pswp--minimal--dark .pswp__top-bar {
    background: none
}

.pswp__button.pswp__button--share {
    display: none
}

.poster {
    position: relative;
    overflow: hidden;
    z-index: 1;
    background-color: #181818
}

.poster.main-visual .poster-cover {
    height: 500px
}

.poster.main-visual .poster-content > * {
    max-width: 836px
}

.poster.main-visual .poster-text {
    letter-spacing: 1px
}

.poster.main-visual .button-invert {
    border-radius: 0
}

.poster.main-visual .button-invert span {
    font-size: .875rem
}

.poster + .vacancy-info {
    margin-top: 15px
}

.poster-cover {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    height: 500px;
    background-size: cover;
    background-position: 50%
}

.poster-cover .overlay:before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: .5;
    background-image: linear-gradient(180deg, #353535, transparent);
    background-color: rgba(0, 0, 0, .5)
}

.poster-content {
    -ms-flex-positive: 1;
    flex-grow: 1;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    margin-top: -20px;
    padding-right: 20px;
    padding-left: 20px;
    z-index: 1
}

.poster-title {
    font-size: 1.5rem;
    color: #fff !important;
    text-shadow: 0 0 20px rgba(0, 0, 0, .5)
}

:lang(ja) .poster-title {
    font-weight: 700
}

.poster-subtitle {
    display: block;
    font-size: .8125rem;
    font-weight: 500;
    font-family: Neue Einstellung, Noto Sans JP, Hiragino Kaku Gothic ProN, ヒラギノ角ゴ ProN, 游ゴシック, 游ゴシック体, YuGothic, Yu Gothic, メイリオ, Meiryo, ＭＳ ゴシック, MS Gothic, sans-serif;
    line-height: 1.6;
    color: #fff
}

.poster-text {
    margin-bottom: 20px;
    font-size: .8125rem;
    line-height: 1.54;
    color: hsla(0, 0%, 100%, .9);
    text-shadow: 0 3px 5px rgba(0, 0, 0, .25)
}

.poster-cta {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    margin-top: -10px
}

.poster-cta .button {
    margin-top: 10px
}

.gform_wrapper .gform_footer .poster-cta .gform_button, .poster-cta .button-primary, .poster-cta .gform_wrapper .gform_footer .gform_button {
    width: 200px
}

.poster-cta .button-invert {
    -ms-flex: 1 0 100%;
    flex: 1 0 100%;
    text-align: left
}

.poster-cta + .poster-text {
    position: absolute;
    right: 20px;
    bottom: 0;
    left: 20px;
    margin: 0 auto 20px
}

.poster-leaderboard .poster-cover {
    height: 200px
}

.poster-leaderboard .poster-content {
    margin: 0
}

.poster-leaderboard .poster-text {
    margin-bottom: 0
}

.poster-callout .poster-content {
    margin: 0
}

.poster-callout .poster-logo {
    margin-bottom: 10px
}

.poster-callout .poster-logo img {
    height: auto;
    width: 180px
}

.poster-callout .poster-text, .poster-callout .poster-title {
    margin-top: 0;
    margin-bottom: 10px
}

.poster-callout .button-invert {
    max-width: 200px;
    border-radius: 0;
    text-align: center
}

.main-callout {
    margin-bottom: 20px;
    background-color: #fff
}

.main-callout .poster-cover {
    position: relative;
    height: 200px
}

.main-callout .poster-content {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0
}

.richtext {
    font-family: Neue Einstellung, Noto Sans JP, Hiragino Kaku Gothic ProN, ヒラギノ角ゴ ProN, 游ゴシック, 游ゴシック体, YuGothic, Yu Gothic, メイリオ, Meiryo, ＭＳ ゴシック, MS Gothic, sans-serif;
    font-size: 1rem;
    color: rgba(24, 24, 24, .75);
    line-height: 1.6
}

.richtext:after {
    display: block;
    clear: both;
    content: ""
}

.richtext > * {
    margin-bottom: 20px
}

.richtext a:not([class^=button]) {
    color: #b31918;
    transition: color .25s
}

.richtext a:not([class^=button]):hover {
    color: #950403
}

.richtext small {
    display: block;
    margin-bottom: 10px;
    font-size: .8125rem;
    color: rgba(24, 24, 24, .5)
}

.richtext small:last-child {
    margin-bottom: 0
}

.richtext code {
    font-family: monospace
}

.richtext h1, .richtext h3, .richtext h4, .richtext h5, .richtext h6, .center-intro h3 {
    font-family: Libre Baskerville, "Noto Serif JP", Hiragino Mincho ProN, ヒラギノ明朝 ProN, 游明朝, 游明朝体, YuMincho, Yu Mincho, ＭＳ 明朝, MS Mincho, serif;
    color: #b31918
}

.richtext h1 {
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1.6
}

.richtext h2 {
    font-weight: 500;
    font-size: 1.125rem;
    line-height: 1;
    color: #181818
}

.richtext h3, .richtext h4 {
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1.6
}

.richtext h5, .richtext h6 {
    font-size: 1.25rem;
    font-weight: 400
}

.richtext ul {
    list-style: none;
    padding-left: 25px
}

.richtext ul li {
    position: relative
}

.richtext ul li:before {
    content: " ";
    position: absolute;
    top: .5em;
    left: -23px;
    width: 8px;
    height: 8px;
    background-color: #b31918;
    border-radius: 50%
}

.richtext ol {
    padding-left: 25px
}

.richtext li {
    padding-left: 6.25px
}

.richtext li + li {
    margin-top: 6.25px
}

.richtext blockquote {
    position: relative;
    padding-left: 40px;
    margin-top: 40px;
    margin-bottom: 40px
}

.richtext blockquote:before, .richtext blockquote p:last-of-type:after {
    content: " ";
    opacity: .1;
    display: block;
    position: absolute;
    width: 20px;
    height: 20px;
    background-repeat: no-repeat;
    background-size: contain
}

.richtext blockquote:before {
    top: 0;
    left: 0;
    background-image: url('data:image/svg+xml;charset=utf-8,<svg width="20" height="18" xmlns="http://www.w3.org/2000/svg"><path d="M0 18V8c0-2.551.692-4.348 2-6C3.462 1.087 5.436.297 8 0v5c-1.497.226-2.648.66-4 1-.257.933-.79 1.823-1 3h5v9H0zm12 0V8c0-2.551.692-4.348 2-6 1.462-.913 3.436-1.703 6-2v5c-1.497.226-2.648.66-4 1-.257.933-.79 1.823-1 3h5v9h-8z" fill-rule="evenodd"/></svg>')
}

.richtext blockquote p:last-of-type:after {
    right: 0;
    bottom: 0;
    background-image: url('data:image/svg+xml;charset=utf-8,<svg width="20" height="18" xmlns="http://www.w3.org/2000/svg"><path d="M20 0v10c0 2.551-.692 4.348-2 6-1.462.913-3.436 1.703-6 2v-5c1.497-.226 2.648-.66 3-1 1.257-.933 1.79-1.823 2-3h-5V0h8zM8 0v10c0 2.551-.692 4.348-2 6-1.462.913-3.436 1.703-6 2v-5c1.497-.226 2.648-.66 3-1 1.257-.933 1.79-1.823 2-3H0V0h8z" fill-rule="evenodd"/></svg>')
}

.richtext blockquote p {
    position: relative;
    font-size: 1.75rem;
    line-height: 1.5;
    color: rgba(24, 24, 24, .75)
}

.richtext blockquote p:last-of-type {
    margin-bottom: 5px;
    padding-right: 40px
}

.richtext blockquote cite {
    opacity: .8;
    padding-right: 40px;
    font-size: .9em;
    font-style: normal
}

.richtext figure, .richtext img {
    display: block;
    max-width: 100%;
    height: auto
}

.richtext figure.alignleft, .richtext img.alignleft {
    float: left;
    max-width: 33%;
    margin-top: 5px;
    margin-right: 20px;
    margin-bottom: 20px
}

.richtext figure.alignright, .richtext img.alignright {
    float: right;
    max-width: 33%;
    margin-top: 5px;
    margin-left: 20px;
    margin-bottom: 20px
}

.richtext figure.aligncenter, .richtext img.aligncenter {
    float: none;
    margin: 20px auto
}

.richtext figure.alignnone, .richtext img.alignnone {
    float: none;
    width: 100%;
    margin-top: 20px;
    margin-bottom: 20px
}

.richtext tr {
    border-bottom: 1px solid #e8e8e8
}

.richtext tr:last-child {
    border-bottom: 0
}

.richtext td, .richtext th {
    padding: 10px 15px
}

.richtext td:first-child, .richtext th:first-child {
    padding-left: 0
}

.richtext td:last-child, .richtext th:last-child {
    padding-right: 0
}

.richtext td {
    border-left: 1px solid #e8e8e8;
    border-right: 1px solid #e8e8e8
}

.richtext td:first-child {
    border-left: 0
}

.richtext td:last-child {
    border-right: 0
}

.richtext .richtext-media-1x1, .richtext .richtext-media-2x1, .richtext .richtext-media-4x3, .richtext .richtext-media-16x9 {
    position: relative;
    margin-top: 20px;
    margin-bottom: 20px
}

.richtext .richtext-media-1x1 iframe, .richtext .richtext-media-1x1 video, .richtext .richtext-media-2x1 iframe, .richtext .richtext-media-2x1 video, .richtext .richtext-media-4x3 iframe, .richtext .richtext-media-4x3 video, .richtext .richtext-media-16x9 iframe, .richtext .richtext-media-16x9 video {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    max-width: 100%
}

.richtext .richtext-media-1x1 {
    padding-bottom: 100%
}

.richtext .richtext-media-4x3 {
    padding-bottom: 75%
}

.richtext .richtext-media-16x9 {
    padding-bottom: 56.25%
}

.richtext .richtext-media-2x1 {
    padding-bottom: 50%
}

#inline-gallery-container {
    width: 100%;
    max-width: 800px;
    margin: 0 auto;
    height: 40vw;
    /* Adjust this value as needed */
    max-height: 600px;
    min-height: 400px;
}

.single-building #inline-gallery-container {
    max-width: 100%;
    height: 720px;
}

.lg-backdrop, .lg-outer .lg-thumb-outer {
    background-color: #F5F5EE;
}

.richtext .gallery {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: 20px;
    margin-bottom: 20px
}

.richtext .gallery br {
    display: none
}

.richtext .gallery-item {
    display: block;
    position: relative;
    overflow: hidden;
    width: 33.33333%;
    padding: 1px;
    margin-bottom: 0
}

.richtext .gallery-item:hover .gallery-icon img {
    -webkit-transform: scale(1.05) translateZ(0);
    transform: scale(1.05) translateZ(0)
}

.richtext .gallery-icon {
    display: block;
    overflow: hidden
}

.richtext .gallery-icon img {
    width: 100%;
    height: auto;
    -o-object-fit: cover;
    object-fit: cover;
    transition: -webkit-transform .5s;
    transition: transform .5s;
    transition: transform .5s, -webkit-transform .5s;
    margin-top: 0;
    margin-bottom: 0
}

.richtext .gallery-caption {
    display: none
}

.richtext .gallery-columns-1 .gallery-item {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%
}

.richtext .gallery-columns-2 .gallery-item {
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%
}

.richtext .gallery-columns-3 .gallery-item, .richtext .gallery-columns-4 .gallery-item {
    -ms-flex: 0 0 33.33333%;
    flex: 0 0 33.33333%;
    max-width: 33.33333%
}

.richtext .gallery-columns-5 .gallery-item, .richtext .gallery-columns-6 .gallery-item, .richtext .gallery-columns-7 .gallery-item, .richtext .gallery-columns-8 .gallery-item, .richtext .gallery-columns-9 .gallery-item {
    -ms-flex: 0 0 33.33333%;
    flex: 0 0 33.33333%;
    width: 33.33333%
}

.richtext .media-container.alignright {
    float: none
}

.richtext .attachment {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    margin-top: 16px;
    margin-bottom: 16px;
    border: 1px solid #e8e8e8;
    font-size: .875rem;
    transition: all .15s
}

.richtext .attachment:focus, .richtext .attachment:hover {
    border-color: #007bff
}

.richtext .attachment + .attachment {
    margin-top: -8px
}

.richtext .attachment-cover {
    padding: 12px
}

.richtext .attachment-cover img {
    min-width: 36px
}

.richtext .attachment-content {
    -ms-flex: 1;
    flex: 1;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    margin-right: 12px;
    padding-right: 52px;
    background-image: url(../assets/icon-download.svg);
    background-repeat: no-repeat;
    background-position: 100%
}

.richtext .attachment-title {
    display: block;
    margin-bottom: 4px;
    font-weight: 700;
    line-height: 1.25;
    color: #950403
}

.richtext .attachment-caption {
    display: block;
    color: #6c757d
}

.richtext .accordion {
    border-bottom: 1px solid #e8e8e8
}

.richtext .accordion button {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: 100%;
    border: 0;
    background: none;
    margin: 0;
    text-align: left;
    cursor: pointer
}

.richtext .accordion.active .accordion-header:after {
    -webkit-transform: translateY(-50%) rotate(0);
    transform: translateY(-50%) rotate(0)
}

.richtext .accordion-header {
    position: relative;
    padding: 16px 40px 16px 0;
    font-size: 1.25rem;
    color: #007bff
}

.richtext .accordion-header:after {
    content: "×";
    position: absolute;
    top: 50%;
    right: 16px;
    -webkit-transform: translateY(-50%) rotate(45deg);
    transform: translateY(-50%) rotate(45deg);
    transition: all .25s
}

.richtext .accordion-content {
    position: relative;
    overflow: hidden;
    max-height: 0;
    transition: all .5s;
    will-change: max-height
}

.richtext > :first-child {
    margin-top: 0
}

.richtext > :last-child {
    margin-bottom: 0
}

.richtext .date {
    font-size: .875rem;
    color: rgba(24, 24, 24, .5);
    line-height: 1.5
}

.sns, .sns a {
    display: -ms-flexbox;
    display: flex
}

.sns a {
    -ms-flex-align: end;
    align-items: flex-end
}

.sns a svg {
    fill: #3d5a53
}

.sns-share {
    margin-bottom: -1px;
    font-size: .625rem;
    line-height: 1.3
}

.sns-share:not(:last-child) {
    margin-right: 22px
}

.sns-facebook:not(:last-child) {
    margin-right: 20px
}

.sns-twitter {
    margin-bottom: 1px
}

.sns-twitter:not(:last-child) {
    margin-right: 15px
}

.sns-instagram:not(:last-child) {
    margin-right: 18px
}

.sns-linkedin {
    -ms-flex-item-align: start;
    align-self: flex-start;
    margin-top: 1px
}

.tags {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 0;
    padding-left: 0;
    line-height: 0;
    list-style: none;
    justify-content: flex-start;
    gap: 12px;
}

.tag-status {
    margin-right: 8px;
    padding: 6px 8px 4px;
    border-radius: 3px;
    font-size: 8px;
    line-height: 1;
    text-align: center;
    white-space: nowrap;
}

:lang(ja) .tag-status {
    font-size: 10px
}

.tag-available {
    background-color: #3d5a53;
    color: #fff
}

.tag-available.for-sale {
    background-color: #0071E3
}

.tag-unavailable {
    background-color: #d5cebf;
    color: #76726b
}

.tag-applied {
    background: #FA9222;
    border-radius: 24px;
    color: #fff;
}

.tag-price {
    margin-top: 5px;
    font-size: .75rem;
    font-weight: 700;
    line-height: 1.1;
    color: #181818;
    letter-spacing: .5px;
    white-space: nowrap;
}

.tag-new {
    background: #DC143C;
    border-radius: 24px;
    color: #fff;
}

.property-list-container {
    position: relative;
    overflow: hidden;
    background-color: #fff;
    padding: 0
}

.property-list .list-header, .property-list .list-item {
    margin-right: -5px;
    margin-left: -5px
}

.property-list .list-header > [class*=col], .property-list .list-item > [class*=col] {
    padding-right: 5px;
    padding-left: 5px
}

.property-list .list-header .col, .property-list .list-item .col {
    -ms-flex-order: 3;
    order: 3
}

.property-list .list-header .col:first-child, .property-list .list-item .col:first-child {
    -ms-flex-order: 1;
    order: 1
}

.property-list .list-header .col:last-child, .property-list .list-item .col:last-child {
    -ms-flex-order: 2;
    order: 2
}

.property-list .list-item {
    position: relative;
    border-top: 1px solid #d5cebf;
    padding: 10px 20px
}

.property-list .list-item:nth-child(2) {
    border-top: 0
}

.property-list .list-item .overlay-link {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0
}

.property-list .list-item .col {
    padding-top: 3px;
    padding-bottom: 3px
}

.property-list .list-item:last-child .col {
    border-bottom: 0
}

.property-list .list-header {
    font-size: .71094rem;
    font-weight: 700;
    text-transform: uppercase;
    color: #3d5a53;
    letter-spacing: 1px
}

.property-list .list-item {
    font-size: .875rem;
    font-weight: 500;
    color: #181818;
    transition: background-color .15s;
    cursor: pointer
}

.property-list .list-item:hover {
    background-color: #f8f6f1
}

.property-list .property-title {
    font-family: Libre Baskerville, "Noto Serif JP", Hiragino Mincho ProN, ヒラギノ明朝 ProN, 游明朝, 游明朝体, YuMincho, Yu Mincho, ＭＳ 明朝, MS Mincho, serif;
    font-size: .875rem;
    font-weight: 700;
    color: #950403;
    vertical-align: middle;
    margin-right: 4px;
}

.property-list .tags {
    display: -ms-inline-flexbox;
    display: inline-flex
}

.property-list .tag-new {
    min-width: 0;
    /* margin-right: 0; */
    /* margin-left: 5px; */
    /* padding-top: 5px; */
    /* padding-right: 5px; */
    /* padding-left: 7px; */
    /* vertical-align: middle; */
}

.property-list .tag-price {
    min-width: 100px;
    margin-left: 10px;
    text-align: left
}

.property-list .button {
    display: inline-block;
    margin-left: 5px
}

.blog-index {
    position: relative;
    padding: 30px 0
}

.blog-index .content {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column
}

body.blog {
    padding: 0
}

.article, .article-list {
    margin-top: 20px
}

.article-list .article-tile {
    background-color: #fff
}

.callouts .section-title {
    margin-bottom: 10px;
    font-size: 1.25rem;
    line-height: 1.4
}

.callouts > * {
    border-top: 1px solid #d5cebf;
    background-color: #fff
}

.callouts > :first-child {
    margin-top: 30px;
    border-top: none
}

.callouts > * {
    padding: 30px 20px
}

.callouts > * .text-link {
    display: block;
    position: relative;
    margin-top: 25px;
    font-size: .6875rem;
    letter-spacing: 1px
}

.callouts > * .text-link:after {
    content: "";
    display: inline-block;
    -webkit-transform: translate(2px, 2px);
    transform: translate(2px, 2px);
    width: 13px;
    height: 13px;
    background-image: url(../assets/arrow-green-wide.png);
    background-repeat: no-repeat;
    background-position: 50%;
    background-size: 13px 13px
}

.related-links .links {
    margin-bottom: 0;
    padding-left: 0;
    line-height: 0;
    list-style: none
}

.related-links .link {
    margin-top: 10px
}

.related-links a {
    display: block;
    font-size: .75rem;
    line-height: 1.4286;
    color: #950403
}

.latest-articles .article-tile a {
    display: block;
    height: auto
}

.latest-articles .article-tile + .article-tile {
    margin-top: 10px
}

.latest-articles .article-content {
    padding: 0
}

.latest-articles .article-title {
    margin-bottom: 1px;
    font-size: .75rem;
    line-height: 1.4286
}

.latest-articles .article-date {
    margin-bottom: 0;
    font-size: .75rem;
    font-weight: 500;
    color: rgba(24, 24, 24, .5)
}

.featured-properties .card-aside {
    margin-bottom: 25px
}

.featured-properties .card-aside:last-child {
    margin-bottom: 0
}

.contact .callout {
    font-size: .8125rem;
    line-height: 1.5385
}

.contact .contact-email, .contact .contact-phone {
    font-size: 1.25rem;
    line-height: 1.4
}

.contact .contact-email span, .contact .contact-phone span {
    display: block;
    margin-bottom: 8px;
    font-size: .6875rem;
    letter-spacing: 1px
}

.contact .contact-phone {
    color: #181818
}

.contact .contact-email {
    color: #b31918
}

.related-links {
    list-style: none;
    padding: 0;
    margin: 0;
    font-family: Libre Baskerville, "Noto Serif JP", Hiragino Mincho ProN, ヒラギノ明朝 ProN, 游明朝, 游明朝体, YuMincho, Yu Mincho, ＭＳ 明朝, MS Mincho, serif;
    font-size: 14px
}

.related-links li {
    margin-top: 10px
}

.related-links li:first-child {
    margin-top: 0
}

.blog-index.page-simple article.article {
    padding-top: 30px;
    padding-bottom: 20px
}

.blog-index.page-simple.simple-single .container {
    max-width: 820px
}

.showcase {
    padding: 30px 0;
    background: #fff
}

.showcase .container {
    overflow: hidden;
    max-width: 1600px
}

.showcase .section-title {
    margin-bottom: 20px;
    font-size: 1.25rem
}

.viewport {
    position: relative
}

.viewport .slider .simplebar-horizontal {
    bottom: 19px
}

.viewport .slider .simplebar-horizontal:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 2px;
    right: 2px;
    height: 1px;
    background-color: #d5cebf
}

.viewport .slider .simplebar-scrollbar {
    height: 11px;
    background-color: transparent
}

.viewport .slider .simplebar-scrollbar:before {
    top: 2px;
    height: 4px;
    border-radius: 0;
    background-color: #3d5a53;
    opacity: 1;
    z-index: 2
}

.viewport .cards {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: -30px;
    margin-right: -10px;
    margin-left: -10px
}

.viewport .card {
    max-width: 50%;
    -ms-flex: 1 0 50%;
    flex: 1 0 50%;
    margin-top: 30px;
    padding-right: 10px;
    padding-left: 10px
}

.controls {
    margin-top: 20px
}

.search {
    position: relative;
    padding-top: 30px
}

.search > .main-callout {
    padding-bottom: 30px
}

.search .section-title {
    margin-bottom: 15px
}

.search header p {
    text-align: left
}

.search .button-outline {
    margin-top: 20px;
    text-align: center
}

.search .pagination {
    position: relative;
    margin-top: 0
}

.listing-table, .search .pagination {
    padding-bottom: 30px;
    background-color: #fff
}

.listing-table .row {
    margin-right: -10px;
    margin-left: -10px
}

.listing-table .row > [class*=col] {
    padding-right: 10px;
    padding-left: 10px
}

.listing-table .cards {
    margin-top: -30px
}

.listing-table .card {
    margin-top: 30px
}

.listing-rows {
    position: relative;
    padding-top: 30px;
    padding-bottom: 30px;
    background-color: #fff
}

.listing-rows .cards {
    margin-top: -40px
}

.listing-rows .card-listing, .listing-rows .cards + .button-outline {
    margin-top: 40px
}

.listing-rows .card-listing .button-outline {
    display: block
}

.listing-rows .card-listing:last-child {
    margin-bottom: 0
}

.listing-rows + .pagination {
    padding-top: 0 !important
}

.listing-rows .button-outline {
    text-align: left
}

.columns {
    position: relative;
    padding-bottom: 30px;
    background-color: #fff
}

.columns .container > .row {
    margin-right: -10px;
    margin-left: -10px
}

.columns .container > .row > [class*=col] {
    padding-right: 10px;
    padding-left: 10px
}

.columns:last-child {
    padding-bottom: 0
}

.disclaimer {
    position: absolute;
    bottom: 0;
    -webkit-transform: translateY(100%);
    transform: translateY(100%)
}

.aside-column {
    position: relative;
    padding-top: 20px
}

.aside-column:before {
    content: " ";
    position: absolute;
    top: 80px;
    left: -20px;
    right: -20px;
    border-top: 1px solid #e7e1d1
}

.aside-column .row {
    -ms-flex-pack: center;
    justify-content: center
}

.aside-column .form-container {
    padding: 20px;
    border-radius: 10px;
    box-shadow: none;
    background: #fff
}

.aside-column .form-container .richtext p {
    font-size: 1rem;
    color: rgba(24, 24, 24, .75)
}

.aside-column .richtext {
    background-color: #fff;
    margin-top: 30px
}

.aside-column p {
    font-size: .8125rem;
    font-weight: 400;
    text-transform: none;
    letter-spacing: normal;
    color: rgba(24, 24, 24, .375)
}

.amenities {
    margin-right: -15px;
    margin-left: -15px
}

.amenities > [class*=col] {
    padding-right: 15px;
    padding-left: 15px
}

.amenities-list {
    margin-bottom: 0;
    line-height: 0;
    list-style: none;
    -webkit-column-count: 2;
    -moz-column-count: 2;
    column-count: 2
}

.amenities-item {
    position: relative;
    padding-bottom: 10px;
    padding-left: 30px;
    line-height: 1.5;
    -webkit-column-break-inside: avoid;
    -moz-column-break-inside: avoid;
    break-inside: avoid
}

.amenities-item:before {
    content: " ";
    display: block;
    position: absolute;
    left: 0;
    width: 15px;
    height: 15px;
    vertical-align: middle;
    background-image: url(../assets/icon-tick@2x.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: 50%;
}

.amenities-item-wrapper {
    display: block
}

.features {
    position: relative;
    padding-top: 30px;
    padding-bottom: 30px;
    background-color: #fff
}

.features.top-features {
    padding: 30px 0;
    background: transparent
}

.features.top-features section:first-of-type {
    /* margin-top: 0; */
}

.features .bg {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0
}

.features:last-child {
    padding-bottom: 60px
}

.global-footer-cta {
    position: relative;
    padding-top: 20px;
    padding-bottom: 20px
}

.global-footer-cta .additional-services {
    margin-top: 30px
}

.global-footer-cta .additional-services .row {
    margin-right: -10px;
    margin-left: -10px
}

.global-footer-cta .additional-services .row > [class*=col] {
    padding-right: 10px;
    padding-left: 10px
}

.global-footer-cta .additional-services .thumbnail {
    position: relative;
    margin-left: auto;
    margin-right: auto
}

.global-footer-cta .cta-title {
    margin-bottom: 10px;
    font-size: 1.25rem;
    font-weight: 400;
    line-height: 1.75;
    color: #e7e1d1;
    text-shadow: 0 0 10px rgba(0, 0, 0, .25)
}

:lang(ja) .global-footer-cta .cta-title {
    font-weight: 700
}

.global-footer-cta .cta-text {
    font-size: 1rem;
    color: rgba(248, 246, 241, .9);
    text-shadow: 0 0 10px rgba(0, 0, 0, .25)
}

.global-footer-cta .button-invert {
    margin-top: 20px
}

.global-footer-cta .thumbnail {
    max-width: 250px;
    margin: 0 auto
}

.global-footer-cta .thumbnail .cover {
    overflow: hidden;
    border-radius: 50%;
    background-repeat: no-repeat;
    background-position: 50%;
    background-size: cover
}

.global-footer-cta .thumbnail .caption {
    margin-top: 10px;
    color: #d5cebf;
    font-size: .75rem;
    text-align: center;
    text-shadow: 0 0 10px rgba(0, 0, 0, .25)
}

:lang(ja) .global-footer-cta .thumbnail .caption {
    font-size: .875rem;
    font-weight: 700
}

.global-footer-stripe .row {
    margin-right: -10px;
    margin-left: -10px;
    -ms-flex-pack: center;
    justify-content: center;
    padding-top: 15px;
    padding-bottom: 15px
}

.global-footer-stripe .row > [class*=col] {
    padding-right: 10px;
    padding-left: 10px
}

.global-footer-stripe .link {
    display: block;
    opacity: .8;
    transition: opacity .25s;
    padding-top: 10px;
    padding-bottom: 10px
}

.global-footer-stripe .link:hover {
    opacity: 1
}

.global-footer-stripe .logo {
    max-width: 100%;
    max-height: 40px
}

section.global-footer-stripe {
    padding: 100px 0px;
}

.global-footer-nav {
    position: relative;
    padding: 20px 0
}

.global-footer-nav .container {
    position: relative
}

.footer-links > [class^=col] > .row {
    margin-right: -25px;
    margin-left: -25px
}

.footer-links > [class^=col] > .row > [class*=col] {
    padding-right: 25px;
    padding-left: 25px
}

.footer-links h4 {
    margin-bottom: 20px;
    font-size: 1.125rem;
    font-weight: 400;
    color: #950403;
    line-height: 1.56
}

:lang(ja) .footer-links h4 {
    font-weight: 700
}

.footer-links ul {
    margin-bottom: 0;
    line-height: 0;
    list-style: none
}

.footer-links ul li + li {
    margin-top: 10px
}

.footer-links [class^=col-]:nth-child(2) {
    margin-top: 30px
}

.site-nav:first-child {
    position: relative
}

.site-nav:first-child:before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 1px;
    background-color: rgba(213, 206, 191, .5)
}

.footer-link {
    display: block;
    padding: 7px 0;
    color: rgba(24, 24, 24, .75);
    font-size: .875rem;
    line-height: 1.3
}

.footer-blog .article-tile {
    background-color: transparent
}

.footer-blog .article-tile a {
    display: block;
    height: auto
}

.footer-blog .article-tile + .article-tile {
    margin-top: 10px
}

.footer-blog .article-content {
    padding: 0
}

.footer-blog .article-title {
    display: block;
    font-size: .875rem;
    line-height: 1.43;
    color: rgba(24, 24, 24, .75)
}

.footer-blog .article-date {
    margin-bottom: 0;
    font-size: .75rem;
    line-height: 1.43
}

.footer-sns {
    margin-top: 30px
}

.footer-sns .sns {
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 10px 0
}

.footer-sns .sns-facebook:not(:last-child) {
    margin-right: 30px
}

.footer-sns .sns-twitter:not(:last-child) {
    margin-right: 25px
}

.footer-sns .sns-instagram:not(:last-child) {
    margin-right: 28px
}

.footer-meta {
    margin-top: 30px;
    margin-bottom: 10px;
    padding-top: 30px;
    padding-left: 0;
    border-top: 1px solid rgba(213, 206, 191, .5);
    font-size: .875rem;
    line-height: 1.28;
    color: rgba(24, 24, 24, .3);
    text-align: center;
    list-style: none
}

.footer-meta .copyright > span {
    text-transform: uppercase
}

.footer-meta .publisher {
    margin-top: 10px
}

.footer-meta .publisher a {
    color: rgba(24, 24, 24, .3)
}

.footer-meta .publisher svg {
    margin-bottom: 2px;
    margin-right: 1px;
    fill: rgba(24, 24, 24, .3)
}

.footer-meta .publisher span {
    text-transform: capitalize
}

.global-header {
    display: -ms-flexbox;
    display: flex;
    position: relative;
    z-index: 1100;
    -ms-flex-direction: column;
    flex-direction: column
}

.lg-outer {
    z-index: 999999;
    background-color: #F5F5EE;
}

.global-header .poster {
    -ms-flex-order: 2;
    order: 2
}

.global-header .poster + .navbar {
    -ms-flex-order: 1;
    order: 1
}

.navbar {
    position: relative;
    height: 56px;
    z-index: 2
}

.nav-links {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 0;
    padding: 10px 20px;
    background-image: linear-gradient(90deg, #900c23, #73091c);
    line-height: 0;
    list-style: none
}

.nav-item {
    position: relative
}

.wpml-ls {
    display: inline-block;
}

.wpml-ls ul {
    margin: 0;
    padding: 0;
    list-style: none;
    line-height: 35px;
}

.nav-item:after {
    content: none;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    -webkit-transform: rotate(35deg);
    transform: rotate(35deg);
    -webkit-transform-origin: center;
    transform-origin: center;
    width: 1px;
    background-color: hsla(0, 0%, 100%, .2)
}

.nav-link {
    display: none;
    margin: 0 6px;
    padding: 3px 12px 0;
    height: 20px;
    font-size: 1rem;
    font-weight: 500;
    line-height: 20px;
    color: #fff;
    letter-spacing: 0;
    text-transform: none;
}

:lang(ja) .nav-link {
    letter-spacing: 0;
    text-transform: none
}

.nav-link:focus, .nav-link:hover {
    color: #fff
}

.nav-logo {
    -ms-flex-positive: 1;
    flex-grow: 1;
    -ms-flex-item-align: end;
    align-self: flex-end
}

.nav-logo a {
    display: inline-block
}

.nav-logo h1 {
    margin-bottom: 0
}

.nav-logo img {
    max-width: 100%;
    height: 36px
}

.nav-lang::before {
    content: url(/wp-content/uploads/2023/04/lang-switcher-icon.png);
    display: inline-block;
    vertical-align: middle
}

.nav-lang {
    margin-right: 20px
}

.nav-lang a {
    display: inline-block;
    padding: 0;
    margin-top: .25em;
    font-weight: 700;
    color: #fff
}

.nav-lang .ja {
    font-size: .8125rem;
    line-height: 1.2
}

.nav-lang .en {
    font-size: .875rem;
    line-height: 1.2
}

li.nav-lang {
    padding-left: 20px;
}

.nav-mobile {
    display: block;
    position: absolute;
    top: 56px;
    right: 0;
    left: 0;
    opacity: 0;
    background-image: linear-gradient(90deg, #7d0d20, #650b1b);
    pointer-events: none;
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    transition: all .45s cubic-bezier(.19, 1, .22, 1);
    z-index: -1;
    height: 100vh;
}

.nav-mobile.active {
    opacity: 1;
    pointer-events: auto;
    -webkit-transform: translateY(0);
    transform: translateY(0);
}

.mobile-menu {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 0;
    padding: 10px 0 31px;
    line-height: 0;
    list-style: none
}

.mobile-menu .nav-item {
    position: relative;
    margin: 10px 0 11px
}

.mobile-menu .nav-item:after {
    content: "";
    position: absolute;
    top: auto;
    right: 0;
    left: 0;
    bottom: -11px;
    width: 100%;
    height: 1px;
    -webkit-transform: none;
    transform: none;
    background-color: hsla(0, 0%, 100%, .2)
}

.mobile-menu .nav-item.col-6 + .col-6 {
    padding-left: 20px
}

.mobile-menu .nav-item.col-6 + .col-6:before {
    content: "";
    position: absolute;
    top: -10px;
    left: 0;
    bottom: -10px;
    width: 1px;
    background-color: hsla(0, 0%, 100%, .2)
}

.mobile-menu .nav-link {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    height: 37px;
    margin: 0;
    padding: 4px 0 0;
    line-height: 1.31
}

.local-navigation {
    display: none;
    position: relative;
    height: 60px;
    overflow: hidden
}

.local-navigation .nav-links {
    -ms-flex-pack: center;
    justify-content: center;
    padding: 19px 60px 21px
}

.local-navigation .nav-item {
    margin-top: 0
}

.local-navigation .nav-item:last-child:after {
    content: none
}

.local-navigation .nav-link {
    display: -ms-flexbox;
    display: flex;
    position: relative;
    margin-right: 30px;
    margin-left: 30px;
    padding: 3px 0 0
}

.local-navigation .active:after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -21px;
    width: 100%;
    height: 3px;
    background-color: #fff
}

.headroom {
    will-change: transform;
    transition: -webkit-transform .2s linear;
    transition: transform .2s linear;
    transition: transform .2s linear, -webkit-transform .2s linear
}

.headroom--pinned {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    position: fixed
}

.headroom--unpinned {
    -webkit-transform: translateY(-300%);
    transform: translateY(-300%)
}

.headroom--init .global-header {
    background-image: linear-gradient(90deg, #7d0d20, #650b1b);
    height: 56px
}

.headroom--init .headroom {
    position: fixed;
    top: 0;
    right: 0;
    left: 0
}

.headroom--init.admin-bar .headroom {
    top: 32px
}

.intro {
    padding: 30px 0;
    background-color: #fff
}

.intro .container {
    max-width: 1600px
}

.intro .richtext h3, .intro .center-intro h3 {
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.75;
    color: #181818
}

:lang(ja) .intro .richtext h3 {
    font-weight: 700
}

.top-story {
    margin-top: 30px
}

.top-story a {
    display: block;
    overflow: hidden
}

.top-story a, .top-story a > * {
    position: relative
}

.top-story .text-heading {
    display: inline-block;
    margin-bottom: 13px;
    padding-right: 20px;
    background-color: #fff;
    font-size: 1rem;
    font-weight: 400;
    color: #181818
}

.top-story .callout {
    display: none;
    padding-left: 20px;
    background-color: #fff
}

.top-story .uppercase-text {
    display: inline-block;
    padding: 7px 12px 3px;
    border-radius: 3px;
    border: 1px solid #d5cebf;
    font-size: .5625rem;
    line-height: 1.33333;
    letter-spacing: 1.29px
}

.top-story .separator:before {
    top: 14px
}

.intro .row .center-intro {
    margin: 135px 0;
}

@media (min-width: 321px) {
    .col-sm {
        -ms-flex-preferred-size: 0;
        flex-basis: 0;
        -ms-flex-positive: 1;
        flex-grow: 1;
        max-width: 100%
    }

    .row-cols-sm-1 > * {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }

    .row-cols-sm-2 > * {
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%
    }

    .row-cols-sm-3 > * {
        -ms-flex: 0 0 33.33333%;
        flex: 0 0 33.33333%;
        max-width: 33.33333%
    }

    .row-cols-sm-4 > * {
        -ms-flex: 0 0 25%;
        flex: 0 0 25%;
        max-width: 25%
    }

    .row-cols-sm-5 > * {
        -ms-flex: 0 0 20%;
        flex: 0 0 20%;
        max-width: 20%
    }

    .row-cols-sm-6 > * {
        -ms-flex: 0 0 16.66667%;
        flex: 0 0 16.66667%;
        max-width: 16.66667%
    }

    .col-sm-auto {
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: auto;
        max-width: 100%
    }

    .col-sm-1 {
        -ms-flex: 0 0 8.33333%;
        flex: 0 0 8.33333%;
        max-width: 8.33333%
    }

    .col-sm-2 {
        -ms-flex: 0 0 16.66667%;
        flex: 0 0 16.66667%;
        max-width: 16.66667%
    }

    .col-sm-3 {
        -ms-flex: 0 0 25%;
        flex: 0 0 25%;
        max-width: 25%
    }

    .col-sm-4 {
        -ms-flex: 0 0 33.33333%;
        flex: 0 0 33.33333%;
        max-width: 33.33333%
    }

    .col-sm-5 {
        -ms-flex: 0 0 41.66667%;
        flex: 0 0 41.66667%;
        max-width: 41.66667%
    }

    .col-sm-6 {
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%
    }

    .col-sm-7 {
        -ms-flex: 0 0 58.33333%;
        flex: 0 0 58.33333%;
        max-width: 58.33333%
    }

    .col-sm-8 {
        -ms-flex: 0 0 66.66667%;
        flex: 0 0 66.66667%;
        max-width: 66.66667%
    }

    .col-sm-9 {
        -ms-flex: 0 0 75%;
        flex: 0 0 75%;
        max-width: 75%
    }

    .col-sm-10 {
        -ms-flex: 0 0 83.33333%;
        flex: 0 0 83.33333%;
        max-width: 83.33333%
    }

    .col-sm-11 {
        -ms-flex: 0 0 91.66667%;
        flex: 0 0 91.66667%;
        max-width: 91.66667%
    }

    .col-sm-12 {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }

    .order-sm-first {
        -ms-flex-order: -1;
        order: -1
    }

    .order-sm-last {
        -ms-flex-order: 13;
        order: 13
    }

    .order-sm-0 {
        -ms-flex-order: 0;
        order: 0
    }

    .order-sm-1 {
        -ms-flex-order: 1;
        order: 1
    }

    .order-sm-2 {
        -ms-flex-order: 2;
        order: 2
    }

    .order-sm-3 {
        -ms-flex-order: 3;
        order: 3
    }

    .order-sm-4 {
        -ms-flex-order: 4;
        order: 4
    }

    .order-sm-5 {
        -ms-flex-order: 5;
        order: 5
    }

    .order-sm-6 {
        -ms-flex-order: 6;
        order: 6
    }

    .order-sm-7 {
        -ms-flex-order: 7;
        order: 7
    }

    .order-sm-8 {
        -ms-flex-order: 8;
        order: 8
    }

    .order-sm-9 {
        -ms-flex-order: 9;
        order: 9
    }

    .order-sm-10 {
        -ms-flex-order: 10;
        order: 10
    }

    .order-sm-11 {
        -ms-flex-order: 11;
        order: 11
    }

    .order-sm-12 {
        -ms-flex-order: 12;
        order: 12
    }

    .offset-sm-0 {
        margin-left: 0
    }

    .offset-sm-1 {
        margin-left: 8.33333%
    }

    .offset-sm-2 {
        margin-left: 16.66667%
    }

    .offset-sm-3 {
        margin-left: 25%
    }

    .offset-sm-4 {
        margin-left: 33.33333%
    }

    .offset-sm-5 {
        margin-left: 41.66667%
    }

    .offset-sm-6 {
        margin-left: 50%
    }

    .offset-sm-7 {
        margin-left: 58.33333%
    }

    .offset-sm-8 {
        margin-left: 66.66667%
    }

    .offset-sm-9 {
        margin-left: 75%
    }

    .offset-sm-10 {
        margin-left: 83.33333%
    }

    .offset-sm-11 {
        margin-left: 91.66667%
    }

    .d-sm-none {
        display: none !important
    }

    .d-sm-inline {
        display: inline !important
    }

    .d-sm-inline-block {
        display: inline-block !important
    }

    .d-sm-block {
        display: block !important
    }

    .d-sm-table {
        display: table !important
    }

    .d-sm-table-row {
        display: table-row !important
    }

    .d-sm-table-cell {
        display: table-cell !important
    }

    .d-sm-flex {
        display: -ms-flexbox !important;
        display: flex !important
    }

    .d-sm-inline-flex {
        display: -ms-inline-flexbox !important;
        display: inline-flex !important
    }

    .flex-sm-row {
        -ms-flex-direction: row !important;
        flex-direction: row !important
    }

    .flex-sm-column {
        -ms-flex-direction: column !important;
        flex-direction: column !important
    }

    .flex-sm-row-reverse {
        -ms-flex-direction: row-reverse !important;
        flex-direction: row-reverse !important
    }

    .flex-sm-column-reverse {
        -ms-flex-direction: column-reverse !important;
        flex-direction: column-reverse !important
    }

    .flex-sm-wrap {
        -ms-flex-wrap: wrap !important;
        flex-wrap: wrap !important
    }

    .flex-sm-nowrap {
        -ms-flex-wrap: nowrap !important;
        flex-wrap: nowrap !important
    }

    .flex-sm-wrap-reverse {
        -ms-flex-wrap: wrap-reverse !important;
        flex-wrap: wrap-reverse !important
    }

    .flex-sm-fill {
        -ms-flex: 1 1 auto !important;
        flex: 1 1 auto !important
    }

    .flex-sm-grow-0 {
        -ms-flex-positive: 0 !important;
        flex-grow: 0 !important
    }

    .flex-sm-grow-1 {
        -ms-flex-positive: 1 !important;
        flex-grow: 1 !important
    }

    .flex-sm-shrink-0 {
        -ms-flex-negative: 0 !important;
        flex-shrink: 0 !important
    }

    .flex-sm-shrink-1 {
        -ms-flex-negative: 1 !important;
        flex-shrink: 1 !important
    }

    .justify-content-sm-start {
        -ms-flex-pack: start !important;
        justify-content: flex-start !important
    }

    .justify-content-sm-end {
        -ms-flex-pack: end !important;
        justify-content: flex-end !important
    }

    .justify-content-sm-center {
        -ms-flex-pack: center !important;
        justify-content: center !important
    }

    .justify-content-sm-between {
        -ms-flex-pack: justify !important;
        justify-content: space-between !important
    }

    .justify-content-sm-around {
        -ms-flex-pack: distribute !important;
        justify-content: space-around !important
    }

    .align-items-sm-start {
        -ms-flex-align: start !important;
        align-items: flex-start !important
    }

    .align-items-sm-end {
        -ms-flex-align: end !important;
        align-items: flex-end !important
    }

    .align-items-sm-center {
        -ms-flex-align: center !important;
        align-items: center !important
    }

    .align-items-sm-baseline {
        -ms-flex-align: baseline !important;
        align-items: baseline !important
    }

    .align-items-sm-stretch {
        -ms-flex-align: stretch !important;
        align-items: stretch !important
    }

    .align-content-sm-start {
        -ms-flex-line-pack: start !important;
        align-content: flex-start !important
    }

    .align-content-sm-end {
        -ms-flex-line-pack: end !important;
        align-content: flex-end !important
    }

    .align-content-sm-center {
        -ms-flex-line-pack: center !important;
        align-content: center !important
    }

    .align-content-sm-between {
        -ms-flex-line-pack: justify !important;
        align-content: space-between !important
    }

    .align-content-sm-around {
        -ms-flex-line-pack: distribute !important;
        align-content: space-around !important
    }

    .align-content-sm-stretch {
        -ms-flex-line-pack: stretch !important;
        align-content: stretch !important
    }

    .align-self-sm-auto {
        -ms-flex-item-align: auto !important;
        align-self: auto !important
    }

    .align-self-sm-start {
        -ms-flex-item-align: start !important;
        align-self: flex-start !important
    }

    .align-self-sm-end {
        -ms-flex-item-align: end !important;
        align-self: flex-end !important
    }

    .align-self-sm-center {
        -ms-flex-item-align: center !important;
        align-self: center !important
    }

    .align-self-sm-baseline {
        -ms-flex-item-align: baseline !important;
        align-self: baseline !important
    }

    .align-self-sm-stretch {
        -ms-flex-item-align: stretch !important;
        align-self: stretch !important
    }

    .float-sm-left {
        float: left !important
    }

    .float-sm-right {
        float: right !important
    }

    .float-sm-none {
        float: none !important
    }

    .m-sm-0 {
        margin: 0 !important
    }

    .mt-sm-0, .my-sm-0 {
        margin-top: 0 !important
    }

    .mr-sm-0, .mx-sm-0 {
        margin-right: 0 !important
    }

    .mb-sm-0, .my-sm-0 {
        margin-bottom: 0 !important
    }

    .ml-sm-0, .mx-sm-0 {
        margin-left: 0 !important
    }

    .m-sm-1 {
        margin: 5px !important
    }

    .mt-sm-1, .my-sm-1 {
        margin-top: 5px !important
    }

    .mr-sm-1, .mx-sm-1 {
        margin-right: 5px !important
    }

    .mb-sm-1, .my-sm-1 {
        margin-bottom: 5px !important
    }

    .ml-sm-1, .mx-sm-1 {
        margin-left: 5px !important
    }

    .m-sm-2 {
        margin: 10px !important
    }

    .mt-sm-2, .my-sm-2 {
        margin-top: 10px !important
    }

    .mr-sm-2, .mx-sm-2 {
        margin-right: 10px !important
    }

    .mb-sm-2, .my-sm-2 {
        margin-bottom: 10px !important
    }

    .ml-sm-2, .mx-sm-2 {
        margin-left: 10px !important
    }

    .m-sm-3 {
        margin: 20px !important
    }

    .mt-sm-3, .my-sm-3 {
        margin-top: 20px !important
    }

    .mr-sm-3, .mx-sm-3 {
        margin-right: 20px !important
    }

    .mb-sm-3, .my-sm-3 {
        margin-bottom: 20px !important
    }

    .ml-sm-3, .mx-sm-3 {
        margin-left: 20px !important
    }

    .m-sm-4 {
        margin: 30px !important
    }

    .mt-sm-4, .my-sm-4 {
        margin-top: 30px !important
    }

    .mr-sm-4, .mx-sm-4 {
        margin-right: 30px !important
    }

    .mb-sm-4, .my-sm-4 {
        margin-bottom: 30px !important
    }

    .ml-sm-4, .mx-sm-4 {
        margin-left: 30px !important
    }

    .m-sm-5 {
        margin: 40px !important
    }

    .mt-sm-5, .my-sm-5 {
        margin-top: 40px !important
    }

    .mr-sm-5, .mx-sm-5 {
        margin-right: 40px !important
    }

    .mb-sm-5, .my-sm-5 {
        margin-bottom: 40px !important
    }

    .ml-sm-5, .mx-sm-5 {
        margin-left: 40px !important
    }

    .m-sm-6 {
        margin: 60px !important
    }

    .mt-sm-6, .my-sm-6 {
        margin-top: 60px !important
    }

    .mr-sm-6, .mx-sm-6 {
        margin-right: 60px !important
    }

    .mb-sm-6, .my-sm-6 {
        margin-bottom: 60px !important
    }

    .ml-sm-6, .mx-sm-6 {
        margin-left: 60px !important
    }

    .p-sm-0 {
        padding: 0 !important
    }

    .pt-sm-0, .py-sm-0 {
        padding-top: 0 !important
    }

    .pr-sm-0, .px-sm-0 {
        padding-right: 0 !important
    }

    .pb-sm-0, .py-sm-0 {
        padding-bottom: 0 !important
    }

    .pl-sm-0, .px-sm-0 {
        padding-left: 0 !important
    }

    .p-sm-1 {
        padding: 5px !important
    }

    .pt-sm-1, .py-sm-1 {
        padding-top: 5px !important
    }

    .pr-sm-1, .px-sm-1 {
        padding-right: 5px !important
    }

    .pb-sm-1, .py-sm-1 {
        padding-bottom: 5px !important
    }

    .pl-sm-1, .px-sm-1 {
        padding-left: 5px !important
    }

    .p-sm-2 {
        padding: 10px !important
    }

    .pt-sm-2, .py-sm-2 {
        padding-top: 10px !important
    }

    .pr-sm-2, .px-sm-2 {
        padding-right: 10px !important
    }

    .pb-sm-2, .py-sm-2 {
        padding-bottom: 10px !important
    }

    .pl-sm-2, .px-sm-2 {
        padding-left: 10px !important
    }

    .p-sm-3 {
        padding: 20px !important
    }

    .pt-sm-3, .py-sm-3 {
        padding-top: 20px !important
    }

    .pr-sm-3, .px-sm-3 {
        padding-right: 20px !important
    }

    .pb-sm-3, .py-sm-3 {
        padding-bottom: 20px !important
    }

    .pl-sm-3, .px-sm-3 {
        padding-left: 20px !important
    }

    .p-sm-4 {
        padding: 30px !important
    }

    .pt-sm-4, .py-sm-4 {
        padding-top: 30px !important
    }

    .pr-sm-4, .px-sm-4 {
        padding-right: 30px !important
    }

    .pb-sm-4, .py-sm-4 {
        padding-bottom: 30px !important
    }

    .pl-sm-4, .px-sm-4 {
        padding-left: 30px !important
    }

    .p-sm-5 {
        padding: 40px !important
    }

    .pt-sm-5, .py-sm-5 {
        padding-top: 40px !important
    }

    .pr-sm-5, .px-sm-5 {
        padding-right: 40px !important
    }

    .pb-sm-5, .py-sm-5 {
        padding-bottom: 40px !important
    }

    .pl-sm-5, .px-sm-5 {
        padding-left: 40px !important
    }

    .p-sm-6 {
        padding: 60px !important
    }

    .pt-sm-6, .py-sm-6 {
        padding-top: 60px !important
    }

    .pr-sm-6, .px-sm-6 {
        padding-right: 60px !important
    }

    .pb-sm-6, .py-sm-6 {
        padding-bottom: 60px !important
    }

    .pl-sm-6, .px-sm-6 {
        padding-left: 60px !important
    }

    .m-sm-n1 {
        margin: -5px !important
    }

    .mt-sm-n1, .my-sm-n1 {
        margin-top: -5px !important
    }

    .mr-sm-n1, .mx-sm-n1 {
        margin-right: -5px !important
    }

    .mb-sm-n1, .my-sm-n1 {
        margin-bottom: -5px !important
    }

    .ml-sm-n1, .mx-sm-n1 {
        margin-left: -5px !important
    }

    .m-sm-n2 {
        margin: -10px !important
    }

    .mt-sm-n2, .my-sm-n2 {
        margin-top: -10px !important
    }

    .mr-sm-n2, .mx-sm-n2 {
        margin-right: -10px !important
    }

    .mb-sm-n2, .my-sm-n2 {
        margin-bottom: -10px !important
    }

    .ml-sm-n2, .mx-sm-n2 {
        margin-left: -10px !important
    }

    .m-sm-n3 {
        margin: -20px !important
    }

    .mt-sm-n3, .my-sm-n3 {
        margin-top: -20px !important
    }

    .mr-sm-n3, .mx-sm-n3 {
        margin-right: -20px !important
    }

    .mb-sm-n3, .my-sm-n3 {
        margin-bottom: -20px !important
    }

    .ml-sm-n3, .mx-sm-n3 {
        margin-left: -20px !important
    }

    .m-sm-n4 {
        margin: -30px !important
    }

    .mt-sm-n4, .my-sm-n4 {
        margin-top: -30px !important
    }

    .mr-sm-n4, .mx-sm-n4 {
        margin-right: -30px !important
    }

    .mb-sm-n4, .my-sm-n4 {
        margin-bottom: -30px !important
    }

    .ml-sm-n4, .mx-sm-n4 {
        margin-left: -30px !important
    }

    .m-sm-n5 {
        margin: -40px !important
    }

    .mt-sm-n5, .my-sm-n5 {
        margin-top: -40px !important
    }

    .mr-sm-n5, .mx-sm-n5 {
        margin-right: -40px !important
    }

    .mb-sm-n5, .my-sm-n5 {
        margin-bottom: -40px !important
    }

    .ml-sm-n5, .mx-sm-n5 {
        margin-left: -40px !important
    }

    .m-sm-n6 {
        margin: -60px !important
    }

    .mt-sm-n6, .my-sm-n6 {
        margin-top: -60px !important
    }

    .mr-sm-n6, .mx-sm-n6 {
        margin-right: -60px !important
    }

    .mb-sm-n6, .my-sm-n6 {
        margin-bottom: -60px !important
    }

    .ml-sm-n6, .mx-sm-n6 {
        margin-left: -60px !important
    }

    .m-sm-auto {
        margin: auto !important
    }

    .mt-sm-auto, .my-sm-auto {
        margin-top: auto !important
    }

    .mr-sm-auto, .mx-sm-auto {
        margin-right: auto !important
    }

    .mb-sm-auto, .my-sm-auto {
        margin-bottom: auto !important
    }

    .ml-sm-auto, .mx-sm-auto {
        margin-left: auto !important
    }

    .text-sm-left {
        text-align: left !important
    }

    .text-sm-right {
        text-align: right !important
    }

    .text-sm-center {
        text-align: center !important
    }

    .cover-sm-4x1 {
        padding-bottom: 25%
    }

    .cover-sm-8x3 {
        padding-bottom: 37.5%
    }

    .cover-sm-16x9 {
        padding-bottom: 56.25%
    }

    .cover-sm-4x3 {
        padding-bottom: 75%
    }

    .cover-sm-1x1 {
        padding-bottom: 100%
    }

    .cover-sm-3x4 {
        padding-bottom: 133.33%
    }

    .cover-sm-1x2 {
        padding-bottom: 200%
    }

    .richtext .gallery-columns-4 .gallery-item, .richtext .gallery-columns-6 .gallery-item, .richtext .gallery-columns-7 .gallery-item, .richtext .gallery-columns-8 .gallery-item, .richtext .gallery-columns-9 .gallery-item {
        -ms-flex: 0 0 25%;
        flex: 0 0 25%;
        width: 25%
    }
}

@media (min-width: 768px) {
    .col-md {
        -ms-flex-preferred-size: 0;
        flex-basis: 0;
        -ms-flex-positive: 1;
        flex-grow: 1;
        max-width: 100%
    }

    .row-cols-md-1 > * {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }

    .row-cols-md-2 > * {
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%
    }

    .row-cols-md-3 > * {
        -ms-flex: 0 0 33.33333%;
        flex: 0 0 33.33333%;
        max-width: 33.33333%
    }

    .row-cols-md-4 > * {
        -ms-flex: 0 0 25%;
        flex: 0 0 25%;
        max-width: 25%
    }

    .row-cols-md-5 > * {
        -ms-flex: 0 0 20%;
        flex: 0 0 20%;
        max-width: 20%
    }

    .row-cols-md-6 > * {
        -ms-flex: 0 0 16.66667%;
        flex: 0 0 16.66667%;
        max-width: 16.66667%
    }

    .col-md-auto {
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: auto;
        max-width: 100%
    }

    .col-md-1 {
        -ms-flex: 0 0 8.33333%;
        flex: 0 0 8.33333%;
        max-width: 8.33333%
    }

    .col-md-2 {
        -ms-flex: 0 0 16.66667%;
        flex: 0 0 16.66667%;
        max-width: 16.66667%
    }

    .col-md-3 {
        -ms-flex: 0 0 25%;
        flex: 0 0 25%;
        max-width: 25%
    }

    .col-md-4 {
        -ms-flex: 0 0 33.33333%;
        flex: 0 0 33.33333%;
        max-width: 33.33333%
    }

    .col-md-5 {
        -ms-flex: 0 0 41.66667%;
        flex: 0 0 41.66667%;
        max-width: 41.66667%
    }

    .col-md-6 {
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%;
    }

    .col-md-7 {
        -ms-flex: 0 0 58.33333%;
        flex: 0 0 58.33333%;
        max-width: 58.33333%
    }

    .col-md-8 {
        -ms-flex: 0 0 66.66667%;
        flex: 0 0 66.66667%;
        max-width: 66.66667%
    }

    .col-md-9 {
        -ms-flex: 0 0 75%;
        flex: 0 0 75%;
        max-width: 75%
    }

    .col-md-10 {
        -ms-flex: 0 0 83.33333%;
        flex: 0 0 83.33333%;
        max-width: 83.33333%
    }

    .col-md-11 {
        -ms-flex: 0 0 91.66667%;
        flex: 0 0 91.66667%;
        max-width: 91.66667%
    }

    .col-md-12 {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }

    .order-md-first {
        -ms-flex-order: -1;
        order: -1
    }

    .order-md-last {
        -ms-flex-order: 13;
        order: 13
    }

    .order-md-0 {
        -ms-flex-order: 0;
        order: 0
    }

    .order-md-1 {
        -ms-flex-order: 1;
        order: 1
    }

    .order-md-2 {
        -ms-flex-order: 2;
        order: 2
    }

    .order-md-3 {
        -ms-flex-order: 3;
        order: 3
    }

    .order-md-4 {
        -ms-flex-order: 4;
        order: 4
    }

    .order-md-5 {
        -ms-flex-order: 5;
        order: 5
    }

    .order-md-6 {
        -ms-flex-order: 6;
        order: 6
    }

    .order-md-7 {
        -ms-flex-order: 7;
        order: 7
    }

    .order-md-8 {
        -ms-flex-order: 8;
        order: 8
    }

    .order-md-9 {
        -ms-flex-order: 9;
        order: 9
    }

    .order-md-10 {
        -ms-flex-order: 10;
        order: 10
    }

    .order-md-11 {
        -ms-flex-order: 11;
        order: 11
    }

    .order-md-12 {
        -ms-flex-order: 12;
        order: 12
    }

    .offset-md-0 {
        margin-left: 0
    }

    .offset-md-1 {
        margin-left: 8.33333%
    }

    .offset-md-2 {
        margin-left: 16.66667%
    }

    .offset-md-3 {
        margin-left: 25%
    }

    .offset-md-4 {
        margin-left: 33.33333%
    }

    .offset-md-5 {
        margin-left: 41.66667%
    }

    .offset-md-6 {
        margin-left: 50%
    }

    .offset-md-7 {
        margin-left: 58.33333%
    }

    .offset-md-8 {
        margin-left: 66.66667%
    }

    .offset-md-9 {
        margin-left: 75%
    }

    .offset-md-10 {
        margin-left: 83.33333%
    }

    .offset-md-11 {
        margin-left: 91.66667%
    }

    .d-md-none {
        display: none !important
    }

    .d-md-inline {
        display: inline !important
    }

    .d-md-inline-block {
        display: inline-block !important
    }

    .d-md-block {
        display: block !important;
    }

    .d-md-table {
        display: table !important
    }

    .d-md-table-row {
        display: table-row !important
    }

    .d-md-table-cell {
        display: table-cell !important
    }

    .d-md-flex {
        display: -ms-flexbox !important;
        display: flex !important
    }

    .d-md-inline-flex {
        display: -ms-inline-flexbox !important;
        display: inline-flex !important
    }

    .flex-md-row {
        -ms-flex-direction: row !important;
        flex-direction: row !important
    }

    .flex-md-column {
        -ms-flex-direction: column !important;
        flex-direction: column !important
    }

    .flex-md-row-reverse {
        -ms-flex-direction: row-reverse !important;
        flex-direction: row-reverse !important
    }

    .flex-md-column-reverse {
        -ms-flex-direction: column-reverse !important;
        flex-direction: column-reverse !important
    }

    .flex-md-wrap {
        -ms-flex-wrap: wrap !important;
        flex-wrap: wrap !important
    }

    .flex-md-nowrap {
        -ms-flex-wrap: nowrap !important;
        flex-wrap: nowrap !important
    }

    .flex-md-wrap-reverse {
        -ms-flex-wrap: wrap-reverse !important;
        flex-wrap: wrap-reverse !important
    }

    .flex-md-fill {
        -ms-flex: 1 1 auto !important;
        flex: 1 1 auto !important
    }

    .flex-md-grow-0 {
        -ms-flex-positive: 0 !important;
        flex-grow: 0 !important
    }

    .flex-md-grow-1 {
        -ms-flex-positive: 1 !important;
        flex-grow: 1 !important
    }

    .flex-md-shrink-0 {
        -ms-flex-negative: 0 !important;
        flex-shrink: 0 !important
    }

    .flex-md-shrink-1 {
        -ms-flex-negative: 1 !important;
        flex-shrink: 1 !important
    }

    .justify-content-md-start {
        -ms-flex-pack: start !important;
        justify-content: flex-start !important
    }

    .justify-content-md-end {
        -ms-flex-pack: end !important;
        justify-content: flex-end !important
    }

    .justify-content-md-center {
        -ms-flex-pack: center !important;
        justify-content: center !important
    }

    .justify-content-md-between {
        -ms-flex-pack: justify !important;
        justify-content: space-between !important
    }

    .justify-content-md-around {
        -ms-flex-pack: distribute !important;
        justify-content: space-around !important
    }

    .align-items-md-start {
        -ms-flex-align: start !important;
        align-items: flex-start !important
    }

    .align-items-md-end {
        -ms-flex-align: end !important;
        align-items: flex-end !important
    }

    .align-items-md-center {
        -ms-flex-align: center !important;
        align-items: center !important
    }

    .align-items-md-baseline {
        -ms-flex-align: baseline !important;
        align-items: baseline !important
    }

    .align-items-md-stretch {
        -ms-flex-align: stretch !important;
        align-items: stretch !important
    }

    .align-content-md-start {
        -ms-flex-line-pack: start !important;
        align-content: flex-start !important
    }

    .align-content-md-end {
        -ms-flex-line-pack: end !important;
        align-content: flex-end !important
    }

    .align-content-md-center {
        -ms-flex-line-pack: center !important;
        align-content: center !important
    }

    .align-content-md-between {
        -ms-flex-line-pack: justify !important;
        align-content: space-between !important
    }

    .align-content-md-around {
        -ms-flex-line-pack: distribute !important;
        align-content: space-around !important
    }

    .align-content-md-stretch {
        -ms-flex-line-pack: stretch !important;
        align-content: stretch !important
    }

    .align-self-md-auto {
        -ms-flex-item-align: auto !important;
        align-self: auto !important
    }

    .align-self-md-start {
        -ms-flex-item-align: start !important;
        align-self: flex-start !important
    }

    .align-self-md-end {
        -ms-flex-item-align: end !important;
        align-self: flex-end !important
    }

    .align-self-md-center {
        -ms-flex-item-align: center !important;
        align-self: center !important
    }

    .align-self-md-baseline {
        -ms-flex-item-align: baseline !important;
        align-self: baseline !important
    }

    .align-self-md-stretch {
        -ms-flex-item-align: stretch !important;
        align-self: stretch !important
    }

    .float-md-left {
        float: left !important
    }

    .float-md-right {
        float: right !important
    }

    .float-md-none {
        float: none !important
    }

    .m-md-0 {
        margin: 0 !important
    }

    .mt-md-0, .my-md-0 {
        margin-top: 0 !important
    }

    .mr-md-0, .mx-md-0 {
        margin-right: 0 !important
    }

    .mb-md-0, .my-md-0 {
        margin-bottom: 0 !important
    }

    .ml-md-0, .mx-md-0 {
        margin-left: 0 !important
    }

    .m-md-1 {
        margin: 5px !important
    }

    .mt-md-1, .my-md-1 {
        margin-top: 5px !important
    }

    .mr-md-1, .mx-md-1 {
        margin-right: 5px !important
    }

    .mb-md-1, .my-md-1 {
        margin-bottom: 5px !important
    }

    .ml-md-1, .mx-md-1 {
        margin-left: 5px !important
    }

    .m-md-2 {
        margin: 10px !important
    }

    .mt-md-2, .my-md-2 {
        margin-top: 10px !important
    }

    .mr-md-2, .mx-md-2 {
        margin-right: 10px !important
    }

    .mb-md-2, .my-md-2 {
        margin-bottom: 10px !important
    }

    .ml-md-2, .mx-md-2 {
        margin-left: 10px !important
    }

    .m-md-3 {
        margin: 20px !important
    }

    .mt-md-3, .my-md-3 {
        margin-top: 20px !important
    }

    .mr-md-3, .mx-md-3 {
        margin-right: 20px !important
    }

    .mb-md-3, .my-md-3 {
        margin-bottom: 20px !important
    }

    .ml-md-3, .mx-md-3 {
        margin-left: 20px !important
    }

    .m-md-4 {
        margin: 30px !important
    }

    .mt-md-4, .my-md-4 {
        margin-top: 30px !important
    }

    .mr-md-4, .mx-md-4 {
        margin-right: 30px !important
    }

    .mb-md-4, .my-md-4 {
        margin-bottom: 30px !important
    }

    .ml-md-4, .mx-md-4 {
        margin-left: 30px !important
    }

    .m-md-5 {
        margin: 40px !important
    }

    .mt-md-5, .my-md-5 {
        margin-top: 40px !important
    }

    .mr-md-5, .mx-md-5 {
        margin-right: 40px !important
    }

    .mb-md-5, .my-md-5 {
        margin-bottom: 40px !important
    }

    .ml-md-5, .mx-md-5 {
        margin-left: 40px !important
    }

    .m-md-6 {
        margin: 60px !important
    }

    .mt-md-6, .my-md-6 {
        margin-top: 60px !important
    }

    .mr-md-6, .mx-md-6 {
        margin-right: 60px !important
    }

    .mb-md-6, .my-md-6 {
        margin-bottom: 60px !important
    }

    .ml-md-6, .mx-md-6 {
        margin-left: 60px !important
    }

    .p-md-0 {
        padding: 0 !important
    }

    .pt-md-0, .py-md-0 {
        padding-top: 0 !important
    }

    .pr-md-0, .px-md-0 {
        padding-right: 0 !important
    }

    .pb-md-0, .py-md-0 {
        padding-bottom: 0 !important
    }

    .pl-md-0, .px-md-0 {
        padding-left: 0 !important
    }

    .p-md-1 {
        padding: 5px !important
    }

    .pt-md-1, .py-md-1 {
        padding-top: 5px !important
    }

    .pr-md-1, .px-md-1 {
        padding-right: 5px !important
    }

    .pb-md-1, .py-md-1 {
        padding-bottom: 5px !important
    }

    .pl-md-1, .px-md-1 {
        padding-left: 5px !important
    }

    .p-md-2 {
        padding: 10px !important
    }

    .pt-md-2, .py-md-2 {
        padding-top: 10px !important
    }

    .pr-md-2, .px-md-2 {
        padding-right: 10px !important
    }

    .pb-md-2, .py-md-2 {
        padding-bottom: 10px !important
    }

    .pl-md-2, .px-md-2 {
        padding-left: 10px !important
    }

    .p-md-3 {
        padding: 20px !important
    }

    .pt-md-3, .py-md-3 {
        padding-top: 20px !important
    }

    .pr-md-3, .px-md-3 {
        padding-right: 20px !important
    }

    .pb-md-3, .py-md-3 {
        padding-bottom: 20px !important
    }

    .pl-md-3, .px-md-3 {
        padding-left: 20px !important
    }

    .p-md-4 {
        padding: 30px !important
    }

    .pt-md-4, .py-md-4 {
        padding-top: 30px !important
    }

    .pr-md-4, .px-md-4 {
        padding-right: 30px !important
    }

    .pb-md-4, .py-md-4 {
        padding-bottom: 30px !important
    }

    .pl-md-4, .px-md-4 {
        padding-left: 30px !important
    }

    .p-md-5 {
        padding: 40px !important
    }

    .pt-md-5, .py-md-5 {
        padding-top: 40px !important
    }

    .pr-md-5, .px-md-5 {
        padding-right: 40px !important
    }

    .pb-md-5, .py-md-5 {
        padding-bottom: 40px !important
    }

    .pl-md-5, .px-md-5 {
        padding-left: 40px !important
    }

    .p-md-6 {
        padding: 60px !important
    }

    .pt-md-6, .py-md-6 {
        padding-top: 60px !important
    }

    .pr-md-6, .px-md-6 {
        padding-right: 60px !important
    }

    .pb-md-6, .py-md-6 {
        padding-bottom: 60px !important
    }

    .pl-md-6, .px-md-6 {
        padding-left: 60px !important
    }

    .m-md-n1 {
        margin: -5px !important
    }

    .mt-md-n1, .my-md-n1 {
        margin-top: -5px !important
    }

    .mr-md-n1, .mx-md-n1 {
        margin-right: -5px !important
    }

    .mb-md-n1, .my-md-n1 {
        margin-bottom: -5px !important
    }

    .ml-md-n1, .mx-md-n1 {
        margin-left: -5px !important
    }

    .m-md-n2 {
        margin: -10px !important
    }

    .mt-md-n2, .my-md-n2 {
        margin-top: -10px !important
    }

    .mr-md-n2, .mx-md-n2 {
        margin-right: -10px !important
    }

    .mb-md-n2, .my-md-n2 {
        margin-bottom: -10px !important
    }

    .ml-md-n2, .mx-md-n2 {
        margin-left: -10px !important
    }

    .m-md-n3 {
        margin: -20px !important
    }

    .mt-md-n3, .my-md-n3 {
        margin-top: -20px !important
    }

    .mr-md-n3, .mx-md-n3 {
        margin-right: -20px !important
    }

    .mb-md-n3, .my-md-n3 {
        margin-bottom: -20px !important
    }

    .ml-md-n3, .mx-md-n3 {
        margin-left: -20px !important
    }

    .m-md-n4 {
        margin: -30px !important
    }

    .mt-md-n4, .my-md-n4 {
        margin-top: -30px !important
    }

    .mr-md-n4, .mx-md-n4 {
        margin-right: -30px !important
    }

    .mb-md-n4, .my-md-n4 {
        margin-bottom: -30px !important
    }

    .ml-md-n4, .mx-md-n4 {
        margin-left: -30px !important
    }

    .m-md-n5 {
        margin: -40px !important
    }

    .mt-md-n5, .my-md-n5 {
        margin-top: -40px !important
    }

    .mr-md-n5, .mx-md-n5 {
        margin-right: -40px !important
    }

    .mb-md-n5, .my-md-n5 {
        margin-bottom: -40px !important
    }

    .ml-md-n5, .mx-md-n5 {
        margin-left: -40px !important
    }

    .m-md-n6 {
        margin: -60px !important
    }

    .mt-md-n6, .my-md-n6 {
        margin-top: -60px !important
    }

    .mr-md-n6, .mx-md-n6 {
        margin-right: -60px !important
    }

    .mb-md-n6, .my-md-n6 {
        margin-bottom: -60px !important
    }

    .ml-md-n6, .mx-md-n6 {
        margin-left: -60px !important
    }

    .m-md-auto {
        margin: auto !important
    }

    .mt-md-auto, .my-md-auto {
        margin-top: auto !important
    }

    .mr-md-auto, .mx-md-auto {
        margin-right: auto !important
    }

    .mb-md-auto, .my-md-auto {
        margin-bottom: auto !important
    }

    .ml-md-auto, .mx-md-auto {
        margin-left: auto !important
    }

    .text-md-left {
        text-align: left !important
    }

    .text-md-right {
        text-align: right !important
    }

    .text-md-center {
        text-align: center !important
    }

    :root {
        font-size: 100%
    }

    .container {
        padding-right: 30px;
        padding-left: 30px
    }

    .pagination {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: center;
        justify-content: center;
        margin-top: 20px;
        margin-left: -5px
    }

    .cover-md-4x1 {
        padding-bottom: 25%
    }

    .cover-md-8x3 {
        padding-bottom: 37.5%
    }

    .cover-md-16x9 {
        padding-bottom: 56.25%
    }

    .cover-md-4x3 {
        padding-bottom: 75%
    }

    .cover-md-1x1 {
        padding-bottom: 100%
    }

    .cover-md-3x4 {
        padding-bottom: 133.33%
    }

    .cover-md-1x2 {
        padding-bottom: 200%
    }

    .article-content .poster-callout .poster-cover {
        padding-top: 50%
    }

    .article {
        margin-right: 10px
    }

    .article > :not(.cover):not(.article-related):not(.media) {
        margin-left: auto;
        margin-right: auto;
        max-width: 600px
    }

    .card-aside {
        -ms-flex-direction: row;
        flex-direction: row;
        -ms-flex-align: center;
        align-items: center
    }

    .card-aside .card-cover {
        padding-top: 0;
        width: 80px;
        height: 60px
    }

    .card-aside .card-content {
        margin-top: 0;
        padding-left: 10px
    }

    .card-aside .card-tags .tag-price {
        letter-spacing: .43px
    }

    .card-aside .card-caption {
        display: none
    }

    .card-aside .card-caption.separator:before {
        content: none
    }

    .card-listing {
        -ms-flex-direction: row;
        flex-direction: row;
        -ms-flex-pack: justify;
        justify-content: space-between
    }

    .card-listing .card-cover {
        -ms-flex: 1 0 45%;
        flex: 1 0 45%;
        padding-top: 30%
    }

    .card-listing .card-content {
        -ms-flex: 1 0 55%;
        flex: 1 0 55%;
        padding-left: 30px
    }

    .card-listing .card-content > :first-child {
        margin-top: 5px
    }

    .card-listing .button-outline {
        max-width: 300px
    }

    .footer-card .cover {
        height: 283px
    }

    .column-content, .column-header, .split-content {
        padding-top: 40px
    }

    .split-content > .row {
        margin-top: 0;
        margin-right: -20px;
        margin-left: -20px
    }

    .split-content > .row > [class*=col] {
        padding-right: 20px;
        padding-left: 20px
    }

    .floor-plan, .location {
        margin-top: 0
    }

    .column-header {
        padding-bottom: 40px
    }

    .column-header .tag-status {
        padding: 7px 10px 4px;
        font-size: .71094rem;
        line-height: 1;
    }

    .column-header .contact {
        display: -ms-flexbox;
        display: flex
    }

    .column-header .contact .contact-email, .column-header .contact .contact-phone {
        margin-bottom: 0
    }

    .column-header .contact .contact-email span, .column-header .contact .contact-phone span {
        margin-bottom: 5px
    }

    .column-header .contact .contact-email {
        margin-left: 30px;
        padding-left: 29px;
        border-left: 1px solid #d5cebf
    }

    .feature {
        margin-top: 40px
    }

    .feature .row {
        -ms-flex-align: center;
        align-items: center
    }

    .feature .richtext h2, .feature .richtext h3 {
        margin-bottom: 15px
    }

    .floating-image {
        padding-left: 20px
    }

    .feature-content {
        margin-top: 0
    }

    .feature-wide .row {
        -ms-flex-align: end;
        /* align-items: flex-end; */
        margin-right: -15px;
        margin-left: -15px
    }

    .feature-wide .row > [class*=col] {
        padding-right: 15px;
        padding-left: 15px
    }

    .feature-wide .button-outline {
        margin-top: 0
    }

    .feature-wide .richtext h2 {
        margin-bottom: 15px
    }

    .feature-wide .richtext p {
        margin-bottom: 0
    }

    .feature-wide .richtext .button {
        display: none
    }

    .feature-reverse .floating-image {
        -ms-flex-order: 1;
        /* order: 1; */
        /* margin-left: 0; */
    }

    .split-feature .row {
        -ms-flex-align: start;
        align-items: flex-start
    }

    .filters {
        padding: 20px 0 30px
    }

    .filters .filters-row {
        padding-bottom: 20px
    }

    .filters .message-row .container {
        -ms-flex-direction: row;
        flex-direction: row;
        -ms-flex-pack: justify;
        justify-content: space-between
    }

    .filters .caption {
        margin: 0;
        padding-top: 7px;
        max-width: 77%;
    }

    .filters .filters-list {
        display: -ms-flexbox;
        display: flex
    }

    .filters .filter {
        height: 32px;
        padding-right: 20px;
        padding-left: 20px
    }

    .filters .filter > div, .filters .filter span {
        margin-top: .2em;
        font-size: .6875rem
    }

    :lang(ja) .filters .filter > div, :lang(ja) .filters .filter span {
        font-size: .8125rem
    }

    .filters .filter svg {
        margin-top: -1px
    }

    .filters .filter-haschevron {
        padding-right: 38px
    }

    .filters .filter-haschevron:after {
        background-position: 20px;
        background-size: 8px 5px
    }

    .filters .filter-hasicon {
        min-width: 44px
    }

    .filter-dropdown {
        min-width: 400px
    }

    .filters-simple {
        margin-top: -30px;
        padding-bottom: 20px
    }

    .gfield_time_ampm label, .gfield_time_hour label, .gfield_time_minute label, .ginput_container_address label, .ginput_container_name label {
        margin-top: 5px
    }

    .gform_wrapper .gfield .ginput_container .small {
        width: 30%;
        width: calc(30% - 10px)
    }

    .gform_wrapper .gfield .ginput_container .medium {
        width: 50%;
        width: calc(50% - 10px)
    }

    .gform_wrapper .gf_left_half .ginput_container .large, .gform_wrapper .gf_left_half .ginput_container .medium, .gform_wrapper .gf_left_half .ginput_container .small, .gform_wrapper .gf_right_half .ginput_container .large, .gform_wrapper .gf_right_half .ginput_container .medium, .gform_wrapper .gf_right_half .ginput_container .small, .gform_wrapper .gfield .ginput_container .large {
        width: 100%
    }

    .gform_wrapper .gf_left_half, .gform_wrapper .gf_right_half {
        width: 50%
    }

    .gform_wrapper .gf_left_third .ginput_container .large, .gform_wrapper .gf_left_third .ginput_container .medium, .gform_wrapper .gf_left_third .ginput_container .small, .gform_wrapper .gf_middle_third .ginput_container .large, .gform_wrapper .gf_middle_third .ginput_container .medium, .gform_wrapper .gf_middle_third .ginput_container .small, .gform_wrapper .gf_right_third .ginput_container .large, .gform_wrapper .gf_right_third .ginput_container .medium, .gform_wrapper .gf_right_third .ginput_container .small {
        width: 100%
    }

    .gform_wrapper .gf_left_third, .gform_wrapper .gf_middle_third, .gform_wrapper .gf_right_third {
        width: 33.33333%
    }

    .gform_wrapper .gf_first_quarter .ginput_container .large, .gform_wrapper .gf_first_quarter .ginput_container .medium, .gform_wrapper .gf_first_quarter .ginput_container .small, .gform_wrapper .gf_fourth_quarter .ginput_container .large, .gform_wrapper .gf_fourth_quarter .ginput_container .medium, .gform_wrapper .gf_fourth_quarter .ginput_container .small, .gform_wrapper .gf_second_quarter .ginput_container .large, .gform_wrapper .gf_second_quarter .ginput_container .medium, .gform_wrapper .gf_second_quarter .ginput_container .small, .gform_wrapper .gf_third_quarter .ginput_container .large, .gform_wrapper .gf_third_quarter .ginput_container .medium, .gform_wrapper .gf_third_quarter .ginput_container .small {
        width: 100%
    }

    .gform_wrapper .gf_first_quarter, .gform_wrapper .gf_fourth_quarter, .gform_wrapper .gf_second_quarter, .gform_wrapper .gf_third_quarter {
        width: 25%
    }

    .gform_wrapper .gfield_label {
        font-size: .8125rem
    }

    .gform_wrapper .top_label .gfield_label {
        margin-top: 0
    }

    .gform_wrapper .field_description_above .gfield_description {
        margin-bottom: 10px
    }

    .gform_wrapper .gform_footer .gform_button {
        font-size: .8125rem
    }

    .gform_wrapper .gf_scroll_text {
        height: 240px
    }

    .gform_wrapper .gfield .ginput_container_phone .medium {
        width: 30%;
        width: calc(30% - 10px)
    }

    .ginput_container_address label {
        margin-bottom: 20px
    }

    .info-list {
        margin-right: -20px;
        margin-left: -20px
    }

    .info-list > [class*=col] {
        padding-right: 20px;
        padding-left: 20px
    }

    .info-value {
        letter-spacing: 0
    }

    .info-label {
        font-size: .5625rem
    }

    .vacancy-info:before:lang(ja) .vacancy-info:before, :lang(ja) .info-label {
        font-size: .8125rem
    }

    .vacancy-tags {
        -ms-flex-positive: 1;
        flex-grow: 1;
        -ms-flex-pack: end;
        justify-content: flex-end
    }

    .vacancy-tags .tag-status {
        min-width: 82px;
        padding-right: 10px;
        padding-left: 10px
    }

    .summary .info-list {
        padding: 40px 0;
        margin-top: -40px;
        margin-right: -30px;
        margin-left: -30px
    }

    .summary .info-list > [class*=col] {
        padding-right: 30px;
        padding-left: 30px
    }

    .summary .info-item {
        margin-top: 40px
    }

    .summary .separator:before {
        right: 30px;
        left: 30px
    }

    .summary .info-item {
        margin-top: 35px
    }

    .summary .info-value {
        font-size: 1.25rem;
        font-weight: 500
    }

    .summary .info-label {
        font-size: .6875rem;
        letter-spacing: 2px
    }

    .vacancy-table {
        padding: 40px 0
    }

    .vacancy-table .table-info {
        padding: 20px 20px 11px
    }

    .vacancy-table .table-info tbody td:first-child, .vacancy-table .table-info tbody th:first-child, .vacancy-table .table-info thead td:first-child, .vacancy-table .table-info thead th:first-child {
        min-width: 240px
    }

    .vacancy-table .table-info tbody td:nth-child(6), .vacancy-table .table-info tbody th:nth-child(6), .vacancy-table .table-info thead td:nth-child(6), .vacancy-table .table-info thead th:nth-child(6) {
        min-width: 184px
    }

    .vacancy-table .table-info tbody tr:first-child {
        border-top: 1px solid #d5cebf
    }

    .vacancy-table .table-info tr {
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap
    }

    .vacancy-table .table-info .tags {
        -ms-flex-pack: start;
        justify-content: flex-start
    }

    .vacancy-table .text-heading {
        margin: 0;
        padding-bottom: 10px
    }

    .poster.main-visual .poster-cover {
        height: 440px
    }

    .poster.main-visual .button-invert {
        text-align: center
    }

    .poster-cover {
        height: 440px
    }

    .poster-content > * {
        max-width: 720px
    }

    .poster-title {
        font-size: 2rem;
        font-weight: 400
    }

    .poster-subtitle {
        font-size: 1.125rem;
        font-weight: 400
    }

    .poster-text {
        font-size: .875rem
    }

    .poster-cta {
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        margin-top: 0;
        margin-left: -20px
    }

    .poster-cta .button {
        margin-top: 0;
        margin-left: 20px
    }

    .gform_wrapper .gform_footer .poster-cta .gform_button, .poster-cta .button-primary, .poster-cta .gform_wrapper .gform_footer .gform_button {
        width: auto;
        min-width: 270px
    }

    .poster-cta .button-invert {
        max-width: 250px
    }

    .poster-leaderboard .poster-cover {
        height: 300px
    }

    .poster-callout .poster-logo img {
        width: 240px
    }

    .poster-callout .poster-title {
        font-size: 1.75rem;
        line-height: 1.43
    }

    .main-callout {
        margin-bottom: 30px
    }

    .main-callout .poster-cover {
        height: 300px
    }

    .richtext .gallery, .richtext figure.aligncenter, .richtext figure.alignnone, .richtext img.aligncenter, .richtext img.alignnone {
        margin-top: 40px;
        margin-bottom: 40px
    }

    .richtext .gallery-columns-5 .gallery-item, .richtext .gallery-columns-6 .gallery-item, .richtext .gallery-columns-7 .gallery-item, .richtext .gallery-columns-8 .gallery-item, .richtext .gallery-columns-9 .gallery-item {
        -ms-flex: 0 0 20%;
        flex: 0 0 20%;
        width: 20%
    }

    .richtext .attachment {
        margin-top: 40px;
        margin-bottom: 40px
    }

    .richtext .attachment + .attachment {
        margin-top: -30px
    }

    .richtext .attachment-cover {
        padding: 16px
    }

    .richtext .attachment-content {
        margin-right: 16px;
        padding-right: 56px
    }

    .richtext > :first-child {
        margin-top: 0
    }

    .richtext > :last-child {
        margin-bottom: 0
    }

    .tags {
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap
    }

    :lang(ja) .tag-status {
        font-size: .7rem;
        line-height: 1
    }

    .property-list-container {
        padding: 10px 0
    }

    .property-list {
        display: table;
        table-layout: fixed
    }

    .property-list .list-header, .property-list .list-item {
        display: table-row;
        margin-right: -10px;
        margin-left: -10px
    }

    .property-list .list-header > [class*=col], .property-list .list-item > [class*=col] {
        padding-right: 10px;
        padding-left: 10px
    }

    .property-list .list-header .col, .property-list .list-item .col {
        display: table-cell;
        width: 150px;
        border-bottom: 1px solid #d5cebf;
        -ms-flex-order: 1;
        order: 1
    }

    .property-list .list-header .col:first-child, .property-list .list-item .col:first-child {
        width: 300px;
        padding-left: 20px;
        -ms-flex-order: 1;
        order: 1
    }

    .property-list .list-header .col:last-child, .property-list .list-item .col:last-child {
        padding-right: 20px;
        -ms-flex-order: 1;
        order: 1
    }

    .property-list .list-header .col {
        padding-top: 10px;
        padding-bottom: 10px
    }

    .property-list .list-item {
        border-bottom: 0;
        padding-top: 0;
        padding-bottom: 0
    }

    .property-list .list-item .col {
        padding-top: 10px;
        padding-bottom: 10px
    }

    .property-list .property-title {
        font-size: .8125rem;
        font-weight: 400
    }

    .blog-index {
        padding: 30px 0
    }

    .blog-index .content {
        -ms-flex-direction: row;
        flex-direction: row
    }

    body.blog {
        padding: 0
    }

    .article, .article-list {
        -ms-flex-positive: 1;
        flex-grow: 1;
        max-width: 820px
    }

    .article-list {
        margin-right: 10px
    }

    .callouts {
        -ms-flex: 1 0 40%;
        flex: 1 0 40%;
        padding-left: 10px;
        max-width: 320px
    }

    .callouts > * {
        padding: 20px
    }

    .blog-index.page-simple article.article {
        padding-top: 50px;
        padding-bottom: 30px
    }

    .blog-index.page-simple.simple-single .article {
        margin-right: 0
    }

    .showcase .section-title {
        margin-bottom: 25px
    }

    .showcase h3 {
        color: #181818 !important;
    }

    .viewport:after {
        content: "";
        position: absolute;
        top: 0;
        right: -20px;
        width: 200px;
        background-image: linear-gradient(90deg, hsla(0, 0%, 100%, 0), #fff), linear-gradient(90deg, hsla(0, 0%, 100%, 0), #fff);
        pointer-events: none;
        bottom: 68px;
        opacity: 1;
        transition: opacity .3s linear
    }

    .end .viewport:after {
        opacity: 0
    }

    .viewport:after {
        right: -30px
    }

    .viewport .slider {
        padding-bottom: 68px
    }

    .viewport .cards {
        margin-top: 0;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap
    }

    .viewport .card {
        max-width: 42.5%;
        -ms-flex: 1 0 42.5%;
        flex: 1 0 42.5%;
        margin-top: 0;
        max-width: 420px
    }

    .controls {
        padding-right: 30px;
        position: absolute;
        bottom: 0;
        right: 0
    }

    .controls .actions {
        display: -ms-flexbox;
        display: flex
    }

    .controls .actions button {
        display: block
    }

    .controls .button-outline {
        width: 300px;
        max-width: none
    }

    .controls .slider {
        pointer-events: none;
        z-index: 0;
        -ms-flex-positive: 1;
        flex-grow: 1;
        position: relative;
        margin-right: 30px
    }

    .search .section-title {
        margin-bottom: 20px
    }

    .search .button-outline {
        display: none
    }

    .columns {
        padding-bottom: 40px
    }

    .columns .container > .row {
        margin-right: -20px;
        margin-left: -20px
    }

    .columns .container > .row > [class*=col] {
        padding-right: 20px;
        padding-left: 20px
    }

    .columns:last-child {
        padding-bottom: 0
    }

    .column-wrapper {
        margin-right: -15px;
        margin-left: -15px
    }

    .column-wrapper > [class*=col] {
        padding-right: 15px;
        padding-left: 15px
    }

    .aside-column {
        padding-top: 30px
    }

    .aside-column:before {
        content: none
    }

    .aside-column .form-container {
        padding: 30px 20px
    }

    .aside-column .richtext {
        margin-top: 40px
    }

    .features {
        padding-top: 40px;
        padding-bottom: 40px
    }

    .features.top-features {
        padding: 40px 0
    }

    .features.top-features section:first-of-type {
        /* margin-top: -123px; */
    }

    .features:last-child {
        padding-bottom: 80px
    }

    .global-footer-cta {
        padding-top: 30px;
        padding-bottom: 30px
    }

    .global-footer-cta .additional-services {
        margin-top: 0
    }

    .global-footer-cta .additional-services .thumbnail {
        width: 100%
    }

    .global-footer-cta .cta-title {
        font-size: 1.125rem;
        line-height: 1.6
    }

    .global-footer-cta .cta-text {
        margin-bottom: 0
    }

    .global-footer-cta .button-invert {
        max-width: 300px
    }

    .global-footer-cta .thumbnail {
        margin: 0
    }

    .global-footer-cta .thumbnail .caption {
        margin-top: 15px
    }

    .global-footer-stripe .row {
        margin-right: -15px;
        margin-left: -15px;
        padding-top: 15px;
        padding-bottom: 15px
    }

    .global-footer-stripe .row > [class*=col] {
        padding-right: 15px;
        padding-left: 15px
    }

    .global-footer-stripe .link {
        padding-top: 15px;
        padding-bottom: 15px
    }

    .global-footer-stripe .logo {
        max-height: 42px
    }

    .global-footer-nav {
        padding: 30px 0
    }

    .footer-meta {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: justify;
        justify-content: space-between;
        margin-bottom: 0
    }

    .navbar {
        height: 72px;
        background-image: linear-gradient(90deg, #900c23, #73091c)
    }

    .nav-links {
        padding: 10px 30px 20px;
        height: 100%;
        background-image: none
    }

    .nav-item {
        margin-top: 10px
    }

    .nav-logo img {
        height: 40px
    }

    .nav-lang {
        margin-top: 10px
    }

    .nav-mobile {
        top: 72px
    }

    .local-navigation {
        display: block
    }

    .headroom--init .global-header {
        height: 72px
    }

    .intro {
        padding: 40px 0
    }

    .top-story {
        margin-top: 0
    }
}

@media (min-width: 991px) {
    .col-lg {
        -ms-flex-preferred-size: 0;
        flex-basis: 0;
        -ms-flex-positive: 1;
        flex-grow: 1;
        max-width: 100%
    }

    .row-cols-lg-1 > * {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }

    .row-cols-lg-2 > * {
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%
    }

    .row-cols-lg-3 > * {
        -ms-flex: 0 0 33.33333%;
        flex: 0 0 33.33333%;
        max-width: 33.33333%
    }

    .row-cols-lg-4 > * {
        -ms-flex: 0 0 25%;
        flex: 0 0 25%;
        max-width: 25%
    }

    .row-cols-lg-5 > * {
        -ms-flex: 0 0 20%;
        flex: 0 0 20%;
        max-width: 20%
    }

    .row-cols-lg-6 > * {
        -ms-flex: 0 0 16.66667%;
        flex: 0 0 16.66667%;
        max-width: 16.66667%
    }

    .col-lg-auto {
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: auto;
        max-width: 100%
    }

    .col-lg-1 {
        -ms-flex: 0 0 8.33333%;
        flex: 0 0 8.33333%;
        max-width: 8.33333%
    }

    .col-lg-2 {
        -ms-flex: 0 0 16.66667%;
        flex: 0 0 16.66667%;
        max-width: 16.66667%
    }

    .col-lg-3 {
        -ms-flex: 0 0 25%;
        flex: 0 0 25%;
        max-width: 25%
    }

    .col-lg-4 {
        -ms-flex: 0 0 33.33333%;
        flex: 0 0 33.33333%;
        max-width: 33.33333%
    }

    .col-lg-5 {
        -ms-flex: 0 0 41.66667%;
        flex: 0 0 41.66667%;
        max-width: 41.66667%
    }

    .col-lg-6 {
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%
    }

    .col-lg-7 {
        -ms-flex: 0 0 58.33333%;
        flex: 0 0 58.33333%;
        max-width: 58.33333%
    }

    .col-lg-8 {
        -ms-flex: 0 0 66.66667%;
        flex: 0 0 66.66667%;
        max-width: 66.66667%
    }

    .col-lg-9 {
        -ms-flex: 0 0 75%;
        flex: 0 0 75%;
        max-width: 75%
    }

    .col-lg-10 {
        -ms-flex: 0 0 83.33333%;
        flex: 0 0 83.33333%;
        max-width: 83.33333%
    }

    .col-lg-11 {
        -ms-flex: 0 0 91.66667%;
        flex: 0 0 91.66667%;
        max-width: 91.66667%
    }

    .col-lg-12 {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }

    .order-lg-first {
        -ms-flex-order: -1;
        order: -1
    }

    .order-lg-last {
        -ms-flex-order: 13;
        order: 13
    }

    .order-lg-0 {
        -ms-flex-order: 0;
        order: 0
    }

    .order-lg-1 {
        -ms-flex-order: 1;
        order: 1
    }

    .order-lg-2 {
        -ms-flex-order: 2;
        order: 2
    }

    .order-lg-3 {
        -ms-flex-order: 3;
        order: 3
    }

    .order-lg-4 {
        -ms-flex-order: 4;
        order: 4
    }

    .order-lg-5 {
        -ms-flex-order: 5;
        order: 5
    }

    .order-lg-6 {
        -ms-flex-order: 6;
        order: 6
    }

    .order-lg-7 {
        -ms-flex-order: 7;
        order: 7
    }

    .order-lg-8 {
        -ms-flex-order: 8;
        order: 8
    }

    .order-lg-9 {
        -ms-flex-order: 9;
        order: 9
    }

    .order-lg-10 {
        -ms-flex-order: 10;
        order: 10
    }

    .order-lg-11 {
        -ms-flex-order: 11;
        order: 11
    }

    .order-lg-12 {
        -ms-flex-order: 12;
        order: 12
    }

    .offset-lg-0 {
        margin-left: 0
    }

    .offset-lg-1 {
        margin-left: 8.33333%
    }

    .offset-lg-2 {
        margin-left: 16.66667%
    }

    .offset-lg-3 {
        margin-left: 25%
    }

    .offset-lg-4 {
        margin-left: 33.33333%
    }

    .offset-lg-5 {
        margin-left: 41.66667%
    }

    .offset-lg-6 {
        margin-left: 50%
    }

    .offset-lg-7 {
        margin-left: 58.33333%
    }

    .offset-lg-8 {
        margin-left: 66.66667%
    }

    .offset-lg-9 {
        margin-left: 75%
    }

    .offset-lg-10 {
        margin-left: 83.33333%
    }

    .offset-lg-11 {
        margin-left: 91.66667%
    }

    .d-lg-none {
        display: none !important
    }

    .d-lg-inline {
        display: inline !important
    }

    .d-lg-inline-block {
        display: inline-block !important
    }

    .d-lg-block {
        display: block !important
    }

    .d-lg-table {
        display: table !important
    }

    .d-lg-table-row {
        display: table-row !important
    }

    .d-lg-table-cell {
        display: table-cell !important
    }

    .d-lg-flex {
        display: -ms-flexbox !important;
        display: flex !important
    }

    .d-lg-inline-flex {
        display: -ms-inline-flexbox !important;
        display: inline-flex !important
    }

    .flex-lg-row {
        -ms-flex-direction: row !important;
        flex-direction: row !important
    }

    .flex-lg-column {
        -ms-flex-direction: column !important;
        flex-direction: column !important
    }

    .flex-lg-row-reverse {
        -ms-flex-direction: row-reverse !important;
        flex-direction: row-reverse !important
    }

    .flex-lg-column-reverse {
        -ms-flex-direction: column-reverse !important;
        flex-direction: column-reverse !important
    }

    .flex-lg-wrap {
        -ms-flex-wrap: wrap !important;
        flex-wrap: wrap !important
    }

    .flex-lg-nowrap {
        -ms-flex-wrap: nowrap !important;
        flex-wrap: nowrap !important
    }

    .flex-lg-wrap-reverse {
        -ms-flex-wrap: wrap-reverse !important;
        flex-wrap: wrap-reverse !important
    }

    .flex-lg-fill {
        -ms-flex: 1 1 auto !important;
        flex: 1 1 auto !important
    }

    .flex-lg-grow-0 {
        -ms-flex-positive: 0 !important;
        flex-grow: 0 !important
    }

    .flex-lg-grow-1 {
        -ms-flex-positive: 1 !important;
        flex-grow: 1 !important
    }

    .flex-lg-shrink-0 {
        -ms-flex-negative: 0 !important;
        flex-shrink: 0 !important
    }

    .flex-lg-shrink-1 {
        -ms-flex-negative: 1 !important;
        flex-shrink: 1 !important
    }

    .justify-content-lg-start {
        -ms-flex-pack: start !important;
        justify-content: flex-start !important
    }

    .justify-content-lg-end {
        -ms-flex-pack: end !important;
        justify-content: flex-end !important
    }

    .justify-content-lg-center {
        -ms-flex-pack: center !important;
        justify-content: center !important
    }

    .justify-content-lg-between {
        -ms-flex-pack: justify !important;
        justify-content: space-between !important
    }

    .justify-content-lg-around {
        -ms-flex-pack: distribute !important;
        justify-content: space-around !important
    }

    .align-items-lg-start {
        -ms-flex-align: start !important;
        align-items: flex-start !important
    }

    .align-items-lg-end {
        -ms-flex-align: end !important;
        align-items: flex-end !important
    }

    .align-items-lg-center {
        -ms-flex-align: center !important;
        align-items: center !important
    }

    .align-items-lg-baseline {
        -ms-flex-align: baseline !important;
        align-items: baseline !important
    }

    .align-items-lg-stretch {
        -ms-flex-align: stretch !important;
        align-items: stretch !important
    }

    .align-content-lg-start {
        -ms-flex-line-pack: start !important;
        align-content: flex-start !important
    }

    .align-content-lg-end {
        -ms-flex-line-pack: end !important;
        align-content: flex-end !important
    }

    .align-content-lg-center {
        -ms-flex-line-pack: center !important;
        align-content: center !important
    }

    .align-content-lg-between {
        -ms-flex-line-pack: justify !important;
        align-content: space-between !important
    }

    .align-content-lg-around {
        -ms-flex-line-pack: distribute !important;
        align-content: space-around !important
    }

    .align-content-lg-stretch {
        -ms-flex-line-pack: stretch !important;
        align-content: stretch !important
    }

    .align-self-lg-auto {
        -ms-flex-item-align: auto !important;
        align-self: auto !important
    }

    .align-self-lg-start {
        -ms-flex-item-align: start !important;
        align-self: flex-start !important
    }

    .align-self-lg-end {
        -ms-flex-item-align: end !important;
        align-self: flex-end !important
    }

    .align-self-lg-center {
        -ms-flex-item-align: center !important;
        align-self: center !important
    }

    .align-self-lg-baseline {
        -ms-flex-item-align: baseline !important;
        align-self: baseline !important
    }

    .align-self-lg-stretch {
        -ms-flex-item-align: stretch !important;
        align-self: stretch !important
    }

    .float-lg-left {
        float: left !important
    }

    .float-lg-right {
        float: right !important
    }

    .float-lg-none {
        float: none !important
    }

    .m-lg-0 {
        margin: 0 !important
    }

    .mt-lg-0, .my-lg-0 {
        margin-top: 0 !important
    }

    .mr-lg-0, .mx-lg-0 {
        margin-right: 0 !important
    }

    .mb-lg-0, .my-lg-0 {
        margin-bottom: 0 !important
    }

    .ml-lg-0, .mx-lg-0 {
        margin-left: 0 !important
    }

    .m-lg-1 {
        margin: 5px !important
    }

    .mt-lg-1, .my-lg-1 {
        margin-top: 5px !important
    }

    .mr-lg-1, .mx-lg-1 {
        margin-right: 5px !important
    }

    .mb-lg-1, .my-lg-1 {
        margin-bottom: 5px !important
    }

    .ml-lg-1, .mx-lg-1 {
        margin-left: 5px !important
    }

    .m-lg-2 {
        margin: 10px !important
    }

    .mt-lg-2, .my-lg-2 {
        margin-top: 10px !important
    }

    .mr-lg-2, .mx-lg-2 {
        margin-right: 10px !important
    }

    .mb-lg-2, .my-lg-2 {
        margin-bottom: 10px !important
    }

    .ml-lg-2, .mx-lg-2 {
        margin-left: 10px !important
    }

    .m-lg-3 {
        margin: 20px !important
    }

    .mt-lg-3, .my-lg-3 {
        margin-top: 20px !important
    }

    .mr-lg-3, .mx-lg-3 {
        margin-right: 20px !important
    }

    .mb-lg-3, .my-lg-3 {
        margin-bottom: 20px !important
    }

    .ml-lg-3, .mx-lg-3 {
        margin-left: 20px !important
    }

    .m-lg-4 {
        margin: 30px !important
    }

    .mt-lg-4, .my-lg-4 {
        margin-top: 30px !important
    }

    .mr-lg-4, .mx-lg-4 {
        margin-right: 30px !important
    }

    .mb-lg-4, .my-lg-4 {
        margin-bottom: 30px !important
    }

    .ml-lg-4, .mx-lg-4 {
        margin-left: 30px !important
    }

    .m-lg-5 {
        margin: 40px !important
    }

    .mt-lg-5, .my-lg-5 {
        margin-top: 40px !important
    }

    .mr-lg-5, .mx-lg-5 {
        margin-right: 40px !important
    }

    .mb-lg-5, .my-lg-5 {
        margin-bottom: 40px !important
    }

    .ml-lg-5, .mx-lg-5 {
        margin-left: 40px !important
    }

    .m-lg-6 {
        margin: 60px !important
    }

    .mt-lg-6, .my-lg-6 {
        margin-top: 60px !important
    }

    .mr-lg-6, .mx-lg-6 {
        margin-right: 60px !important
    }

    .mb-lg-6, .my-lg-6 {
        margin-bottom: 60px !important
    }

    .ml-lg-6, .mx-lg-6 {
        margin-left: 60px !important
    }

    .p-lg-0 {
        padding: 0 !important
    }

    .pt-lg-0, .py-lg-0 {
        padding-top: 0 !important
    }

    .pr-lg-0, .px-lg-0 {
        padding-right: 0 !important
    }

    .pb-lg-0, .py-lg-0 {
        padding-bottom: 0 !important
    }

    .pl-lg-0, .px-lg-0 {
        padding-left: 0 !important
    }

    .p-lg-1 {
        padding: 5px !important
    }

    .pt-lg-1, .py-lg-1 {
        padding-top: 5px !important
    }

    .pr-lg-1, .px-lg-1 {
        padding-right: 5px !important
    }

    .pb-lg-1, .py-lg-1 {
        padding-bottom: 5px !important
    }

    .pl-lg-1, .px-lg-1 {
        padding-left: 5px !important
    }

    .p-lg-2 {
        padding: 10px !important
    }

    .pt-lg-2, .py-lg-2 {
        padding-top: 10px !important
    }

    .pr-lg-2, .px-lg-2 {
        padding-right: 10px !important
    }

    .pb-lg-2, .py-lg-2 {
        padding-bottom: 10px !important
    }

    .pl-lg-2, .px-lg-2 {
        padding-left: 10px !important
    }

    .p-lg-3 {
        padding: 20px !important
    }

    .pt-lg-3, .py-lg-3 {
        padding-top: 20px !important
    }

    .pr-lg-3, .px-lg-3 {
        padding-right: 20px !important
    }

    .pb-lg-3, .py-lg-3 {
        padding-bottom: 20px !important
    }

    .pl-lg-3, .px-lg-3 {
        padding-left: 20px !important
    }

    .p-lg-4 {
        padding: 30px !important
    }

    .pt-lg-4, .py-lg-4 {
        padding-top: 30px !important
    }

    .pr-lg-4, .px-lg-4 {
        padding-right: 30px !important
    }

    .pb-lg-4, .py-lg-4 {
        padding-bottom: 30px !important
    }

    .pl-lg-4, .px-lg-4 {
        padding-left: 30px !important
    }

    .p-lg-5 {
        padding: 40px !important
    }

    .pt-lg-5, .py-lg-5 {
        padding-top: 40px !important
    }

    .pr-lg-5, .px-lg-5 {
        padding-right: 40px !important
    }

    .pb-lg-5, .py-lg-5 {
        padding-bottom: 40px !important
    }

    .pl-lg-5, .px-lg-5 {
        padding-left: 40px !important
    }

    .p-lg-6 {
        padding: 60px !important
    }

    .pt-lg-6, .py-lg-6 {
        padding-top: 60px !important
    }

    .pr-lg-6, .px-lg-6 {
        padding-right: 60px !important
    }

    .pb-lg-6, .py-lg-6 {
        padding-bottom: 60px !important
    }

    .pl-lg-6, .px-lg-6 {
        padding-left: 60px !important
    }

    .m-lg-n1 {
        margin: -5px !important
    }

    .mt-lg-n1, .my-lg-n1 {
        margin-top: -5px !important
    }

    .mr-lg-n1, .mx-lg-n1 {
        margin-right: -5px !important
    }

    .mb-lg-n1, .my-lg-n1 {
        margin-bottom: -5px !important
    }

    .ml-lg-n1, .mx-lg-n1 {
        margin-left: -5px !important
    }

    .m-lg-n2 {
        margin: -10px !important
    }

    .mt-lg-n2, .my-lg-n2 {
        margin-top: -10px !important
    }

    .mr-lg-n2, .mx-lg-n2 {
        margin-right: -10px !important
    }

    .mb-lg-n2, .my-lg-n2 {
        margin-bottom: -10px !important
    }

    .ml-lg-n2, .mx-lg-n2 {
        margin-left: -10px !important
    }

    .m-lg-n3 {
        margin: -20px !important
    }

    .mt-lg-n3, .my-lg-n3 {
        margin-top: -20px !important
    }

    .mr-lg-n3, .mx-lg-n3 {
        margin-right: -20px !important
    }

    .mb-lg-n3, .my-lg-n3 {
        margin-bottom: -20px !important
    }

    .ml-lg-n3, .mx-lg-n3 {
        margin-left: -20px !important
    }

    .m-lg-n4 {
        margin: -30px !important
    }

    .mt-lg-n4, .my-lg-n4 {
        margin-top: -30px !important
    }

    .mr-lg-n4, .mx-lg-n4 {
        margin-right: -30px !important
    }

    .mb-lg-n4, .my-lg-n4 {
        margin-bottom: -30px !important
    }

    .ml-lg-n4, .mx-lg-n4 {
        margin-left: -30px !important
    }

    .m-lg-n5 {
        margin: -40px !important
    }

    .mt-lg-n5, .my-lg-n5 {
        margin-top: -40px !important
    }

    .mr-lg-n5, .mx-lg-n5 {
        margin-right: -40px !important
    }

    .mb-lg-n5, .my-lg-n5 {
        margin-bottom: -40px !important
    }

    .ml-lg-n5, .mx-lg-n5 {
        margin-left: -40px !important
    }

    .m-lg-n6 {
        margin: -60px !important
    }

    .mt-lg-n6, .my-lg-n6 {
        margin-top: -60px !important
    }

    .mr-lg-n6, .mx-lg-n6 {
        margin-right: -60px !important
    }

    .mb-lg-n6, .my-lg-n6 {
        margin-bottom: -60px !important
    }

    .ml-lg-n6, .mx-lg-n6 {
        margin-left: -60px !important
    }

    .m-lg-auto {
        margin: auto !important
    }

    .mt-lg-auto, .my-lg-auto {
        margin-top: auto !important
    }

    .mr-lg-auto, .mx-lg-auto {
        margin-right: auto !important
    }

    .mb-lg-auto, .my-lg-auto {
        margin-bottom: auto !important
    }

    .ml-lg-auto, .mx-lg-auto {
        margin-left: auto !important
    }

    .text-lg-left {
        text-align: left !important
    }

    .text-lg-right {
        text-align: right !important
    }

    .text-lg-center {
        text-align: center !important
    }

    p {
        line-height: 1.75
    }

    .global-content:before {
        background-image: url(../assets/bg-parchment@2x.png);
        background-size: 150px 150px
    }

    .container {
        padding-right: 40px;
        padding-left: 40px
    }

    .centered .intro-text-container, .centered > span {
        padding: 0 30px
    }

    .bg:before {
        background-size: 150px 150px
    }

    .bg-parchment:before {
        background-image: url(../assets/bg-parchment@2x.png)
    }

    .bg-sayagata:before {
        background-image: linear-gradient(90deg, transparent, rgba(0, 0, 0, .2)), url(../assets/bg-sayagata@2x.png);
        background-size: contain, 150px
    }

    .page-title {
        font-weight: 400;
        color: #950403
    }

    .section-title {
        font-size: 1.5rem
    }

    .section-title.with-highlight:after {
        width: 181px
    }

    .title {
        font-size: 1.75rem
    }

    .intro-text, .title {
        font-weight: 400;
        color: #950403 !important
    }

    .intro-text {
        font-size: 1.25rem
    }

    .intro-text.centered .intro-text-container {
        max-width: 700px
    }

    .text-heading {
        font-weight: 400;
        color: #950403
    }

    .cover-lg-4x1 {
        padding-bottom: 25%
    }

    .cover-lg-8x3 {
        padding-bottom: 37.5%
    }

    .cover-lg-16x9 {
        padding-bottom: 56.25%
    }

    .cover-lg-4x3 {
        padding-bottom: 75%
    }

    .cover-lg-1x1 {
        padding-bottom: 100%
    }

    .cover-lg-3x4 {
        padding-bottom: 133.33%
    }

    .cover-lg-1x2 {
        padding-bottom: 200%
    }

    section.blog.showcase {
        margin-bottom: 50px;
    }

    .article-content {
        padding: 30px
    }

    .article-content .poster-callout .poster-title {
        font-size: 1.75rem;
        line-height: 1.43
    }

    .article-content .poster-callout .poster-subtitle {
        font-size: 1.125rem;
        font-weight: 400
    }

    .article-content .feature-info {
        margin-top: 50px
    }

    .article-title {
        font-size: 1.25rem;
        line-height: 1.4
    }

    .article {
        margin-right: 20px
    }

    .article .cover {
        margin-bottom: 30px
    }

    .article .poster .cover {
        margin-bottom: 0
    }

    .article .article-header h1 {
        margin-bottom: 10px
    }

    .article .article-related {
        padding-right: 30px;
        padding-left: 30px
    }

    .article .article-related .row {
        margin-right: -30px;
        margin-left: -30px
    }

    .article .article-related .row > [class*=col] {
        padding-right: 30px;
        padding-left: 30px
    }

    .article .article-related .text-heading a {
        font-size: .875rem
    }

    .pagination-button {
        width: 56px;
        height: 56px
    }

    .button {
        padding-left: 30px;
        height: 50px;
        line-height: 48px
    }

    .link-arrow:after {
        right: 12px
    }

    .button-primary, .gform_wrapper .gform_footer .gform_button {
        padding-right: 25px;
        padding-left: 25px;
        border-radius: 3px;
    }

    .navigation-button {
        width: 56px;
        height: 56px
    }

    .navigation-button:after {
        top: 12px
    }

    .navigation-button.prev:after {
        -webkit-transform: rotate(180deg) translateX(-1px);
        transform: rotate(180deg) translateX(-1px)
    }

    .navigation-button.next:after {
        -webkit-transform: translateX(1px);
        transform: translateX(1px)
    }

    .pagination-button span {
        line-height: 58px
    }

    .pagination-button.link-arrow:after {
        top: 13px;
        right: 11px
    }

    .pagination-button.prev:after {
        -webkit-transform: rotate(180deg);
        transform: rotate(180deg)
    }

    .pagination-button.next:after {
        -webkit-transform: translateY(-1px);
        transform: translateY(-1px)
    }

    .card-default .card-content {
        margin-top: 17px
    }

    .card-default .card-title {
        margin-bottom: 8px;
        font-size: 1.125rem;
        line-height: 1.56
    }

    .card-default .card-caption {
        margin-top: 15px;
        padding-top: 11px;
        font-size: .875rem
    }

    .card-aside .card-title {
        font-size: .875rem;
        line-height: 1.43
    }

    .card-listing .card-content {
        padding-left: 40px;
        max-width: 590px
    }

    .card-listing .card-content > * {
        margin-top: 20px
    }

    .card-listing .card-title {
        font-size: 1.75rem;
        line-height: 1.3
    }

    .card-listing .card-caption {
        font-size: .875rem
    }

    .footer-card {
        -ms-flex: 1 0 33.33333%;
        flex: 1 0 33.33333%
    }

    .footer-card .cover {
        height: 450px
    }

    .footer-card .medium-text {
        line-height: 1.6
    }

    .footer-card .button-invert {
        padding-right: 30px
    }

    p.intro-text.centered {
        margin: 50px 0 150px 0;
    }

    .single-building #inline-gallery-container {
        margin-left: -40px;
        margin-right: -40px;
        height: 560px
    }

    .column-content, .column-header, .split-content {
        padding-top: 50px
    }

    .split-content .caption {
        font-size: .8125rem
    }

    .split-content > .row {
        margin-right: -30px;
        margin-left: -30px
    }

    .split-content > .row > [class*=col] {
        padding-right: 30px;
        padding-left: 30px
    }

    .split-content .main-callout {
        margin-top: 60px
    }

    .location .text-heading {
        margin-top: 20px;
        font-size: 1.125rem
    }

    .location .uppercase-text {
        margin-bottom: 5px
    }

    .column-split > .row {
        margin-right: -20px;
        margin-left: -20px
    }

    .column-split > .row > [class*=col] {
        padding-right: 20px;
        padding-left: 20px
    }

    .column-header {
        padding-bottom: 50px
    }

    .column-header .page-title {
        font-size: 2rem
    }

    .column-header .unit-info {
        margin-bottom: 0
    }

    .column-header .unit-info span {
        margin-bottom: 10px;
        font-size: 1rem;
        font-size: 1.125rem
    }

    .column-header .unit-info span:before {
        padding-right: 5px;
        padding-left: 5px;
    }

    .column-header .tags {
        margin-top: 10px
    }

    .column-header .tags .tag-status {
        margin-bottom: 5px
    }

    .column-header .tag-status {
        padding: 8px 10px 5px
    }

    .column-header .tag-price {
        margin-top: 0;
        margin-right: 20px;
        font-size: 2rem
    }

    .column-header .tag-new {
        margin-left: 0;
    }

    .feature {
        margin-top: 50px
    }

    .feature .row {
        -ms-flex-pack: justify;
        justify-content: space-between;
    }

    .feature .richtext h2, .feature .richtext h3 {
        margin-bottom: 20px
    }

    .feature-wide .row {
        margin-right: -20px;
        margin-left: -20px
    }

    .feature-wide .row > [class*=col] {
        padding-right: 20px;
        padding-left: 20px
    }

    .feature-wide .floating-image {
        /* max-width: 1020px; */
    }

    .feature-wide .feature-content {
        /* max-width: 460px; */
    }

    .feature-wide .richtext h2 {
        margin-bottom: 20px;
        font-size: 1.75rem;
        font-weight: 400;
        line-height: 1.4;
        color: #950403
    }

    .feature-wide .richtext p {
        display: block;
        margin-bottom: 20px
    }

    .feature-wide .richtext p:first-of-type {
        padding-top: 20px
    }

    .feature-wide .richtext .button {
        display: inline-block;
    }

    .feature-intro {
        padding: 0
    }

    .filters .filters-row {
        padding-bottom: 30px
    }

    .filters .filter {
        height: 36px
    }

    .filters .filter > div, .filters .filter span {
        margin-top: .3em;
        font-size: .85rem
    }

    .filters .filter-haschevron {
        padding-right: 38px
    }

    .filters .filter-haschevron:after {
        background-position: 20px;
        background-size: 9px 6px
    }

    .filters .filter-hasicon {
        min-width: 48px
    }

    .filters .filter-group .filter:first-child:not(:last-child) {
        padding-right: 20px
    }

    .filters .filter-group .filter:last-child:not(:first-child) {
        padding-right: 30px;
        padding-left: 20px
    }

    .price .filter-dropdown {
        min-width: 480px
    }

    .filter-apply {
        margin-top: 15px
    }

    .filters-simple {
        margin-top: -20px;
        padding-bottom: 30px
    }

    .filters-simple .filter {
        min-width: 224px
    }

    .gform_wrapper .gform_title {
        font-size: 1.5rem
    }

    .info-value {
        margin-bottom: 5px;
        font-size: 1.25rem;
        font-weight: 500;
        line-height: 1.6
    }

    .info-value sup {
        -webkit-transform: translateY(-4px);
        transform: translateY(-4px);
        font-size: .5625rem
    }

    .info-label {
        font-size: .6875rem
    }

    .vacancy-info:before:lang(ja) .vacancy-info:before, :lang(ja) .info-label {
        font-size: .8125rem
    }

    .vacancy-title {
        margin-right: 36px;
        font-size: .875rem;
        line-height: 1.43
    }

    .vacancy-floor-area {
        display: block;
        margin-top: 3px;
        font-size: .875rem;
        font-weight: 500
    }

    .vacancy-floor-area sup {
        -webkit-transform: translateY(-2px);
        transform: translateY(-2px);
        font-size: 7px
    }

    .vacancy-tags .tag-price {
        min-width: 110px
    }

    .feature-item {
        padding: 10px 0;
        -ms-flex-direction: row;
        flex-direction: row
    }

    .feature-item .header {
        -ms-flex: 0 0 175px;
        flex: 0 0 175px;
        margin: 0;
        padding-left: 15px
    }

    .feature-item .description {
        padding-right: 15px;
        padding-left: 20px
    }

    .summary .info-value {
        margin-bottom: 4px;
        font-size: 1.75rem;
        line-height: 1.15
    }

    .summary .info-label {
        font-size: .8125rem
    }

    .vacancy-table {
        padding: 50px 0
    }

    .vacancy-table .table-info {
        padding: 30px 30px 21px
    }

    .vacancy-table .table-info tbody td:first-child, .vacancy-table .table-info tbody th:first-child, .vacancy-table .table-info thead td:first-child, .vacancy-table .table-info thead th:first-child {
        min-width: 260px
    }

    .vacancy-table .table-info tbody td:nth-child(3), .vacancy-table .table-info tbody th:nth-child(3), .vacancy-table .table-info thead td:nth-child(3), .vacancy-table .table-info thead th:nth-child(3) {
        -ms-flex-positive: 0;
        flex-grow: 0
    }

    .vacancy-table .table-info tbody td:nth-child(6), .vacancy-table .table-info tbody th:nth-child(6), .vacancy-table .table-info thead td:nth-child(6), .vacancy-table .table-info thead th:nth-child(6) {
        min-width: 200px
    }

    .vacancy-table .table-info tr {
        -ms-flex-pack: justify;
        justify-content: space-between
    }

    .vacancy-table .table-info th {
        font-size: .8125rem
    }

    .vacancy-table .table-info .tag-status {
        margin-right: 0
    }

    .vacancy-table .table-info .tag-price {
        min-width: 110px
    }

    .poster.main-visual .button-invert span {
        font-size: 1rem
    }

    .poster-cover {
        height: 520px
    }

    .poster-content {
        margin-top: 20px
    }

    .poster-title {
        font-size: 2rem;
        line-height: 1.4
    }

    .poster-subtitle {
        margin-top: 5px;
        font-size: 1.25rem
    }

    .poster-text {
        font-size: 1rem;
        line-height: 1.75
    }

    .poster-leaderboard .poster-cover {
        height: 400px
    }

    .poster-callout .poster-logo img {
        width: 280px
    }

    .poster-callout .poster-title {
        font-size: 2.5rem;
        line-height: 1.4
    }

    .poster-callout .button-invert {
        padding-right: 30px
    }

    .main-callout {
        margin-bottom: 40px
    }

    .main-callout .poster-cover {
        height: 360px
    }

    .richtext {
        line-height: 1.75
    }

    .richtext h1, .richtext h3, .richtext h4, .richtext h5, .richtext h6 {
        color: #950403
    }

    .richtext h1 {
        font-size: 1.75rem;
        font-weight: 400;
        line-height: 1.42857
    }

    .richtext h1, .richtext h2 {
        margin-top: 30px;
        margin-bottom: 20px
    }

    .richtext h2 {
        font-size: 1.5rem
    }

    .richtext h3, .richtext h4 {
        margin-top: 30px;
        margin-bottom: 20px;
        font-size: 1.75rem;
        font-weight: 400;
        line-height: 1.42857
    }

    .richtext h5, .richtext h6 {
        margin-top: 30px;
        margin-bottom: 0 !important
    }

    .richtext .richtext-media-1x1, .richtext .richtext-media-2x1, .richtext .richtext-media-4x3, .richtext .richtext-media-16x9 {
        margin-top: 40px;
        margin-bottom: 40px
    }

    .richtext .media-container.alignright {
        float: right
    }

    .richtext > :first-child {
        margin-top: 0
    }

    .richtext > :last-child {
        margin-bottom: 0
    }

    .tag-status {
        display: flex;
        flex-direction: row;
        justify-content: center;
        align-items: center;
        padding: 8px 12px 6px;
        gap: 8px;
        min-width: 57px;
        margin: 0px;
        font-size: 11px;
        line-height: 1.2;
        color: #FFFFFF;
        text-align: center;
        flex: none;
        order: 0;
        flex-grow: 0;
    }

    .tag-price {
        margin-top: 8px;
        font-size: .875rem;
        font-weight: 500
    }

    .property-list-container {
        padding: 20px 0
    }

    .property-list .list-header .col:first-child, .property-list .list-item .col:first-child {
        padding-left: 30px
    }

    .property-list .list-header .col:last-child, .property-list .list-item .col:last-child {
        padding-right: 30px
    }

    .property-list .list-header {
        font-size: .8125rem
    }

    .property-list .property-title {
        font-size: .875rem
    }

    .blog-index {
        padding: 40px 0
    }

    body.blog {
        padding: 0
    }

    .article-list {
        margin-right: 20px
    }

    .callouts {
        padding-left: 20px;
        max-width: 380px
    }

    .callouts > * {
        padding: 30px
    }

    .latest-articles .article-title, .related-links a {
        font-size: .875rem
    }

    .showcase {
        padding: 40px 0
    }

    .showcase .section-title {
        margin-bottom: 35px;
        font-size: 1.5rem
    }

    .showcase .richtext img {
        max-width: 40%;
    }

    .viewport:after {
        right: -40px
    }

    .viewport .slider {
        padding-bottom: 76px
    }

    .viewport .slider .simplebar-horizontal {
        bottom: 24px
    }

    .viewport .card {
        max-width: 35%;
        -ms-flex: 1 0 35%;
        flex: 1 0 35%;
        margin-top: 0;
        max-width: 420px
    }

    .controls {
        padding-right: 40px
    }

    .search > .main-callout {
        padding-bottom: 50px
    }

    .search .section-title {
        padding-top: 30px
    }

    .listing-table, .search .pagination {
        padding-bottom: 60px
    }

    .listing-table .cards {
        margin-top: -50px
    }

    .listing-table .card {
        margin-top: 50px
    }

    .listing-rows {
        padding-top: 50px;
        padding-bottom: 50px
    }

    .listing-rows .cards {
        margin-top: -60px
    }

    .listing-rows .card-listing {
        margin-top: 60px
    }

    .columns {
        padding-bottom: 50px
    }

    .columns:last-child {
        padding-bottom: 0
    }

    .column-wrapper {
        margin-right: -20px;
        margin-left: -20px
    }

    .column-wrapper > [class*=col] {
        padding-right: 20px;
        padding-left: 20px
    }

    .aside-column {
        padding-top: 50px
    }

    .aside-column .form-container {
        padding: 40px 25px 30px;
    }

    .aside-column .richtext {
        margin-top: 50px
    }

    .features {
        padding-top: 100px;
        padding-bottom: 100px
    }

    .features.top-features section:first-of-type {
        /* margin-top: -120px; */
    }

    .features:last-child {
        padding-bottom: 100px
    }

    .global-footer-cards .cards-container {
        display: -ms-flexbox;
        display: flex
    }

    .global-footer-cta {
        padding-top: 40px;
        padding-bottom: 40px
    }

    .global-footer-cta .container > .row {
        margin-right: -40px;
        margin-left: -40px
    }

    .global-footer-cta .container > .row > [class*=col] {
        padding-right: 40px;
        padding-left: 40px
    }

    .global-footer-cta .additional-services .row {
        margin-right: -15px;
        margin-left: -15px
    }

    .global-footer-cta .additional-services .row > [class*=col] {
        padding-right: 15px;
        padding-left: 15px
    }

    .global-footer-cta .cta-title {
        margin-bottom: 20px;
        font-size: 1.25rem;
        line-height: 1.6
    }

    .global-footer-cta .cta-text {
        line-height: 1.75
    }

    .global-footer-cta .button-invert {
        margin-top: 20px
    }

    .global-footer-stripe .row {
        margin-right: -20px;
        margin-left: -20px;
        padding-top: 20px;
        padding-bottom: 20px
    }

    .global-footer-stripe .row > [class*=col] {
        padding-right: 20px;
        padding-left: 20px
    }

    .global-footer-stripe .link {
        padding-top: 20px;
        padding-bottom: 20px
    }

    .global-footer-stripe .logo {
        max-height: 48px
    }

    .global-footer-nav {
        padding: 40px 0
    }

    .footer-links [class^=col-]:nth-child(2) {
        margin-top: 0
    }

    .site-nav:first-child:before {
        top: -48px;
        bottom: -20px
    }

    .site-nav:last-child {
        max-width: 290px
    }

    .footer-sns {
        margin-top: 0
    }

    .footer-meta {
        margin-top: 20px;
        padding-top: 20px
    }

    .global-header .poster {
        -ms-flex-order: 1;
        order: 1
    }

    .global-header .poster + .navbar {
        -ms-flex-order: 2;
        order: 2
    }

    .navbar {
        height: 88px
    }

    .nav-links {
        padding: 10px 40px 20px
    }

    .nav-item:after {
        content: ""
    }

    .nav-link {
        display: inline-block
    }

    :lang(ja) .nav-link {
        font-size: 1rem;
        font-weight: 400
    }

    .nav-logo img {
        height: 48px
    }

    .nav-lang {
        margin-right: 0
    }

    .nav-lang a {
        margin-left: 0;
        padding: 0
    }

    .nav-mobile {
        display: none
    }

    .headroom--init .global-header {
        height: 88px
    }

    .intro .row {
        margin-right: -30px;
        margin-left: -30px
    }

    .intro .row > [class*=col] {
        padding-right: 30px;
        padding-left: 30px
    }

    .intro .row > .center-intro {
        padding-right: 10em;
        padding-left: 10em;
    }

    .intro .richtext {
        /* max-width: 460px; */
    }

    .intro .top-story {
        max-width: 1020px
    }

    .intro .richtext h3 {
        font-size: 1.25rem;
        line-height: 1.6
    }
}

@media (min-width: 1200px) {
    .container, .container-lg, .container-md, .container-sm, .container-xl {
        max-width: 1320px
    }

    .col-xl {
        -ms-flex-preferred-size: 0;
        flex-basis: 0;
        -ms-flex-positive: 1;
        flex-grow: 1;
        max-width: 100%
    }

    .row-cols-xl-1 > * {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }

    .row-cols-xl-2 > * {
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%
    }

    .row-cols-xl-3 > * {
        -ms-flex: 0 0 33.33333%;
        flex: 0 0 33.33333%;
        max-width: 33.33333%
    }

    .row-cols-xl-4 > * {
        -ms-flex: 0 0 25%;
        flex: 0 0 25%;
        max-width: 25%
    }

    .row-cols-xl-5 > * {
        -ms-flex: 0 0 20%;
        flex: 0 0 20%;
        max-width: 20%
    }

    .row-cols-xl-6 > * {
        -ms-flex: 0 0 16.66667%;
        flex: 0 0 16.66667%;
        max-width: 16.66667%
    }

    .col-xl-auto {
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: auto;
        max-width: 100%
    }

    .col-xl-1 {
        -ms-flex: 0 0 8.33333%;
        flex: 0 0 8.33333%;
        max-width: 8.33333%
    }

    .col-xl-2 {
        -ms-flex: 0 0 16.66667%;
        flex: 0 0 16.66667%;
        max-width: 16.66667%
    }

    .col-xl-3 {
        -ms-flex: 0 0 25%;
        flex: 0 0 25%;
        max-width: 25%
    }

    .col-xl-4 {
        -ms-flex: 0 0 33.33333%;
        flex: 0 0 33.33333%;
        max-width: 33.33333%
    }

    .col-xl-5 {
        -ms-flex: 0 0 41.66667%;
        flex: 0 0 41.66667%;
        max-width: 41.66667%
    }

    .col-xl-6 {
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%
    }

    .col-xl-7 {
        -ms-flex: 0 0 58.33333%;
        flex: 0 0 58.33333%;
        max-width: 58.33333%
    }

    .col-xl-8 {
        -ms-flex: 0 0 66.66667%;
        flex: 0 0 66.66667%;
        max-width: 66.66667%
    }

    .col-xl-9 {
        -ms-flex: 0 0 75%;
        flex: 0 0 75%;
        max-width: 75%
    }

    .col-xl-10 {
        -ms-flex: 0 0 83.33333%;
        flex: 0 0 83.33333%;
        max-width: 83.33333%
    }

    .col-xl-11 {
        -ms-flex: 0 0 91.66667%;
        flex: 0 0 91.66667%;
        max-width: 91.66667%
    }

    .col-xl-12 {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }

    .order-xl-first {
        -ms-flex-order: -1;
        order: -1
    }

    .order-xl-last {
        -ms-flex-order: 13;
        order: 13
    }

    .order-xl-0 {
        -ms-flex-order: 0;
        order: 0
    }

    .order-xl-1 {
        -ms-flex-order: 1;
        order: 1
    }

    .order-xl-2 {
        -ms-flex-order: 2;
        order: 2
    }

    .order-xl-3 {
        -ms-flex-order: 3;
        order: 3
    }

    .order-xl-4 {
        -ms-flex-order: 4;
        order: 4
    }

    .order-xl-5 {
        -ms-flex-order: 5;
        order: 5
    }

    .order-xl-6 {
        -ms-flex-order: 6;
        order: 6
    }

    .order-xl-7 {
        -ms-flex-order: 7;
        order: 7
    }

    .order-xl-8 {
        -ms-flex-order: 8;
        order: 8
    }

    .order-xl-9 {
        -ms-flex-order: 9;
        order: 9
    }

    .order-xl-10 {
        -ms-flex-order: 10;
        order: 10
    }

    .order-xl-11 {
        -ms-flex-order: 11;
        order: 11
    }

    .order-xl-12 {
        -ms-flex-order: 12;
        order: 12
    }

    .offset-xl-0 {
        margin-left: 0
    }

    .offset-xl-1 {
        margin-left: 8.33333%
    }

    .offset-xl-2 {
        margin-left: 16.66667%
    }

    .offset-xl-3 {
        margin-left: 25%
    }

    .offset-xl-4 {
        margin-left: 33.33333%
    }

    .offset-xl-5 {
        margin-left: 41.66667%
    }

    .offset-xl-6 {
        margin-left: 50%
    }

    .offset-xl-7 {
        margin-left: 58.33333%
    }

    .offset-xl-8 {
        margin-left: 66.66667%
    }

    .offset-xl-9 {
        margin-left: 75%
    }

    .offset-xl-10 {
        margin-left: 83.33333%
    }

    .offset-xl-11 {
        margin-left: 91.66667%
    }

    .d-xl-none {
        display: none !important
    }

    .d-xl-inline {
        display: inline !important
    }

    .d-xl-inline-block {
        display: inline-block !important
    }

    .d-xl-block {
        display: block !important
    }

    .d-xl-table {
        display: table !important
    }

    .d-xl-table-row {
        display: table-row !important
    }

    .d-xl-table-cell {
        display: table-cell !important
    }

    .d-xl-flex {
        display: -ms-flexbox !important;
        display: flex !important
    }

    .d-xl-inline-flex {
        display: -ms-inline-flexbox !important;
        display: inline-flex !important
    }

    .flex-xl-row {
        -ms-flex-direction: row !important;
        flex-direction: row !important
    }

    .flex-xl-column {
        -ms-flex-direction: column !important;
        flex-direction: column !important
    }

    .flex-xl-row-reverse {
        -ms-flex-direction: row-reverse !important;
        flex-direction: row-reverse !important
    }

    .flex-xl-column-reverse {
        -ms-flex-direction: column-reverse !important;
        flex-direction: column-reverse !important
    }

    .flex-xl-wrap {
        -ms-flex-wrap: wrap !important;
        flex-wrap: wrap !important
    }

    .flex-xl-nowrap {
        -ms-flex-wrap: nowrap !important;
        flex-wrap: nowrap !important
    }

    .flex-xl-wrap-reverse {
        -ms-flex-wrap: wrap-reverse !important;
        flex-wrap: wrap-reverse !important
    }

    .flex-xl-fill {
        -ms-flex: 1 1 auto !important;
        flex: 1 1 auto !important
    }

    .flex-xl-grow-0 {
        -ms-flex-positive: 0 !important;
        flex-grow: 0 !important
    }

    .flex-xl-grow-1 {
        -ms-flex-positive: 1 !important;
        flex-grow: 1 !important
    }

    .flex-xl-shrink-0 {
        -ms-flex-negative: 0 !important;
        flex-shrink: 0 !important
    }

    .flex-xl-shrink-1 {
        -ms-flex-negative: 1 !important;
        flex-shrink: 1 !important
    }

    .justify-content-xl-start {
        -ms-flex-pack: start !important;
        justify-content: flex-start !important
    }

    .justify-content-xl-end {
        -ms-flex-pack: end !important;
        justify-content: flex-end !important
    }

    .justify-content-xl-center {
        -ms-flex-pack: center !important;
        justify-content: center !important
    }

    .justify-content-xl-between {
        -ms-flex-pack: justify !important;
        justify-content: space-between !important
    }

    .justify-content-xl-around {
        -ms-flex-pack: distribute !important;
        justify-content: space-around !important
    }

    .align-items-xl-start {
        -ms-flex-align: start !important;
        align-items: flex-start !important
    }

    .align-items-xl-end {
        -ms-flex-align: end !important;
        align-items: flex-end !important
    }

    .align-items-xl-center {
        -ms-flex-align: center !important;
        align-items: center !important
    }

    .align-items-xl-baseline {
        -ms-flex-align: baseline !important;
        align-items: baseline !important
    }

    .align-items-xl-stretch {
        -ms-flex-align: stretch !important;
        align-items: stretch !important
    }

    .align-content-xl-start {
        -ms-flex-line-pack: start !important;
        align-content: flex-start !important
    }

    .align-content-xl-end {
        -ms-flex-line-pack: end !important;
        align-content: flex-end !important
    }

    .align-content-xl-center {
        -ms-flex-line-pack: center !important;
        align-content: center !important
    }

    .align-content-xl-between {
        -ms-flex-line-pack: justify !important;
        align-content: space-between !important
    }

    .align-content-xl-around {
        -ms-flex-line-pack: distribute !important;
        align-content: space-around !important
    }

    .align-content-xl-stretch {
        -ms-flex-line-pack: stretch !important;
        align-content: stretch !important
    }

    .align-self-xl-auto {
        -ms-flex-item-align: auto !important;
        align-self: auto !important
    }

    .align-self-xl-start {
        -ms-flex-item-align: start !important;
        align-self: flex-start !important
    }

    .align-self-xl-end {
        -ms-flex-item-align: end !important;
        align-self: flex-end !important
    }

    .align-self-xl-center {
        -ms-flex-item-align: center !important;
        align-self: center !important
    }

    .align-self-xl-baseline {
        -ms-flex-item-align: baseline !important;
        align-self: baseline !important
    }

    .align-self-xl-stretch {
        -ms-flex-item-align: stretch !important;
        align-self: stretch !important
    }

    .float-xl-left {
        float: left !important
    }

    .float-xl-right {
        float: right !important
    }

    .float-xl-none {
        float: none !important
    }

    .m-xl-0 {
        margin: 0 !important
    }

    .mt-xl-0, .my-xl-0 {
        margin-top: 0 !important
    }

    .mr-xl-0, .mx-xl-0 {
        margin-right: 0 !important
    }

    .mb-xl-0, .my-xl-0 {
        margin-bottom: 0 !important
    }

    .ml-xl-0, .mx-xl-0 {
        margin-left: 0 !important
    }

    .m-xl-1 {
        margin: 5px !important
    }

    .mt-xl-1, .my-xl-1 {
        margin-top: 5px !important
    }

    .mr-xl-1, .mx-xl-1 {
        margin-right: 5px !important
    }

    .mb-xl-1, .my-xl-1 {
        margin-bottom: 5px !important
    }

    .ml-xl-1, .mx-xl-1 {
        margin-left: 5px !important
    }

    .m-xl-2 {
        margin: 10px !important
    }

    .mt-xl-2, .my-xl-2 {
        margin-top: 10px !important
    }

    .mr-xl-2, .mx-xl-2 {
        margin-right: 10px !important
    }

    .mb-xl-2, .my-xl-2 {
        margin-bottom: 10px !important
    }

    .ml-xl-2, .mx-xl-2 {
        margin-left: 10px !important
    }

    .m-xl-3 {
        margin: 20px !important
    }

    .mt-xl-3, .my-xl-3 {
        margin-top: 20px !important
    }

    .mr-xl-3, .mx-xl-3 {
        margin-right: 20px !important
    }

    .mb-xl-3, .my-xl-3 {
        margin-bottom: 20px !important
    }

    .ml-xl-3, .mx-xl-3 {
        margin-left: 20px !important
    }

    .m-xl-4 {
        margin: 30px !important
    }

    .mt-xl-4, .my-xl-4 {
        margin-top: 30px !important
    }

    .mr-xl-4, .mx-xl-4 {
        margin-right: 30px !important
    }

    .mb-xl-4, .my-xl-4 {
        margin-bottom: 30px !important
    }

    .ml-xl-4, .mx-xl-4 {
        margin-left: 30px !important
    }

    .m-xl-5 {
        margin: 40px !important
    }

    .mt-xl-5, .my-xl-5 {
        margin-top: 40px !important
    }

    .mr-xl-5, .mx-xl-5 {
        margin-right: 40px !important
    }

    .mb-xl-5, .my-xl-5 {
        margin-bottom: 40px !important
    }

    .ml-xl-5, .mx-xl-5 {
        margin-left: 40px !important
    }

    .m-xl-6 {
        margin: 60px !important
    }

    .mt-xl-6, .my-xl-6 {
        margin-top: 60px !important
    }

    .mr-xl-6, .mx-xl-6 {
        margin-right: 60px !important
    }

    .mb-xl-6, .my-xl-6 {
        margin-bottom: 60px !important
    }

    .ml-xl-6, .mx-xl-6 {
        margin-left: 60px !important
    }

    .p-xl-0 {
        padding: 0 !important
    }

    .pt-xl-0, .py-xl-0 {
        padding-top: 0 !important
    }

    .pr-xl-0, .px-xl-0 {
        padding-right: 0 !important
    }

    .pb-xl-0, .py-xl-0 {
        padding-bottom: 0 !important
    }

    .pl-xl-0, .px-xl-0 {
        padding-left: 0 !important
    }

    .p-xl-1 {
        padding: 5px !important
    }

    .pt-xl-1, .py-xl-1 {
        padding-top: 5px !important
    }

    .pr-xl-1, .px-xl-1 {
        padding-right: 5px !important
    }

    .pb-xl-1, .py-xl-1 {
        padding-bottom: 5px !important
    }

    .pl-xl-1, .px-xl-1 {
        padding-left: 5px !important
    }

    .p-xl-2 {
        padding: 10px !important
    }

    .pt-xl-2, .py-xl-2 {
        padding-top: 10px !important
    }

    .pr-xl-2, .px-xl-2 {
        padding-right: 10px !important
    }

    .pb-xl-2, .py-xl-2 {
        padding-bottom: 10px !important
    }

    .pl-xl-2, .px-xl-2 {
        padding-left: 10px !important
    }

    .p-xl-3 {
        padding: 20px !important
    }

    .pt-xl-3, .py-xl-3 {
        padding-top: 20px !important
    }

    .pr-xl-3, .px-xl-3 {
        padding-right: 20px !important
    }

    .pb-xl-3, .py-xl-3 {
        padding-bottom: 20px !important
    }

    .pl-xl-3, .px-xl-3 {
        padding-left: 20px !important
    }

    .p-xl-4 {
        padding: 30px !important
    }

    .pt-xl-4, .py-xl-4 {
        padding-top: 30px !important
    }

    .pr-xl-4, .px-xl-4 {
        padding-right: 30px !important
    }

    .pb-xl-4, .py-xl-4 {
        padding-bottom: 30px !important
    }

    .pl-xl-4, .px-xl-4 {
        padding-left: 30px !important
    }

    .p-xl-5 {
        padding: 40px !important
    }

    .pt-xl-5, .py-xl-5 {
        padding-top: 40px !important
    }

    .pr-xl-5, .px-xl-5 {
        padding-right: 40px !important
    }

    .pb-xl-5, .py-xl-5 {
        padding-bottom: 40px !important
    }

    .pl-xl-5, .px-xl-5 {
        padding-left: 40px !important
    }

    .p-xl-6 {
        padding: 60px !important
    }

    .pt-xl-6, .py-xl-6 {
        padding-top: 60px !important
    }

    .pr-xl-6, .px-xl-6 {
        padding-right: 60px !important
    }

    .pb-xl-6, .py-xl-6 {
        padding-bottom: 60px !important
    }

    .pl-xl-6, .px-xl-6 {
        padding-left: 60px !important
    }

    .m-xl-n1 {
        margin: -5px !important
    }

    .mt-xl-n1, .my-xl-n1 {
        margin-top: -5px !important
    }

    .mr-xl-n1, .mx-xl-n1 {
        margin-right: -5px !important
    }

    .mb-xl-n1, .my-xl-n1 {
        margin-bottom: -5px !important
    }

    .ml-xl-n1, .mx-xl-n1 {
        margin-left: -5px !important
    }

    .m-xl-n2 {
        margin: -10px !important
    }

    .mt-xl-n2, .my-xl-n2 {
        margin-top: -10px !important
    }

    .mr-xl-n2, .mx-xl-n2 {
        margin-right: -10px !important
    }

    .mb-xl-n2, .my-xl-n2 {
        margin-bottom: -10px !important
    }

    .ml-xl-n2, .mx-xl-n2 {
        margin-left: -10px !important
    }

    .m-xl-n3 {
        margin: -20px !important
    }

    .mt-xl-n3, .my-xl-n3 {
        margin-top: -20px !important
    }

    .mr-xl-n3, .mx-xl-n3 {
        margin-right: -20px !important
    }

    .mb-xl-n3, .my-xl-n3 {
        margin-bottom: -20px !important
    }

    .ml-xl-n3, .mx-xl-n3 {
        margin-left: -20px !important
    }

    .m-xl-n4 {
        margin: -30px !important
    }

    .mt-xl-n4, .my-xl-n4 {
        margin-top: -30px !important
    }

    .mr-xl-n4, .mx-xl-n4 {
        margin-right: -30px !important
    }

    .mb-xl-n4, .my-xl-n4 {
        margin-bottom: -30px !important
    }

    .ml-xl-n4, .mx-xl-n4 {
        margin-left: -30px !important
    }

    .m-xl-n5 {
        margin: -40px !important
    }

    .mt-xl-n5, .my-xl-n5 {
        margin-top: -40px !important
    }

    .mr-xl-n5, .mx-xl-n5 {
        margin-right: -40px !important
    }

    .mb-xl-n5, .my-xl-n5 {
        margin-bottom: -40px !important
    }

    .ml-xl-n5, .mx-xl-n5 {
        margin-left: -40px !important
    }

    .m-xl-n6 {
        margin: -60px !important
    }

    .mt-xl-n6, .my-xl-n6 {
        margin-top: -60px !important
    }

    .mr-xl-n6, .mx-xl-n6 {
        margin-right: -60px !important
    }

    .mb-xl-n6, .my-xl-n6 {
        margin-bottom: -60px !important
    }

    .ml-xl-n6, .mx-xl-n6 {
        margin-left: -60px !important
    }

    .m-xl-auto {
        margin: auto !important
    }

    .mt-xl-auto, .my-xl-auto {
        margin-top: auto !important
    }

    .mr-xl-auto, .mx-xl-auto {
        margin-right: auto !important
    }

    .mb-xl-auto, .my-xl-auto {
        margin-bottom: auto !important
    }

    .ml-xl-auto, .mx-xl-auto {
        margin-left: auto !important
    }

    .text-xl-left {
        text-align: left !important
    }

    .text-xl-right {
        text-align: right !important
    }

    .text-xl-center {
        text-align: center !important
    }

    .container {
        padding-right: 100px;
        padding-left: 100px
    }

    .cover-xl-4x1 {
        padding-bottom: 25%
    }

    .cover-xl-8x3 {
        padding-bottom: 37.5%
    }

    .cover-xl-16x9 {
        padding-bottom: 56.25%
    }

    .cover-xl-4x3 {
        padding-bottom: 75%
    }

    .cover-xl-1x1 {
        padding-bottom: 100%
    }

    .cover-xl-3x4 {
        padding-bottom: 133.33%
    }

    .cover-xl-1x2 {
        padding-bottom: 200%
    }

    .article-tile a {
        display: -ms-flexbox;
        display: flex
    }

    .article-media {
        padding-top: 0;
        min-width: 240px;
        max-width: 320px;
        height: 100%
    }

    .article-content {
        -ms-flex-positive: 1;
        flex-grow: 1;
        margin-top: 0;
        padding: 0 40px
    }

    .article .article-related .text-heading a {
        font-size: 1rem
    }

    .article-thumb {
        padding-bottom: 0;
        width: 320px;
        -ms-flex-negative: 0;
        flex-shrink: 0
    }

    .card-listing .card-cover {
        max-width: 570px;
        height: 380px
    }

    .card-listing .card-content {
        -ms-flex: 1 0 50%;
        flex: 1 0 50%;
        max-width: 610px
    }

    .single-building #inline-gallery-container {
        margin-left: 0;
        margin-right: 0;
        height: 709px;
    }

    .column-header .page-title {
        font-size: 2.5rem
    }

    .column-header .unit-info span {
        font-size: 1.25rem
    }

    .column-header .tag-status {
        padding: 10px 15px 5px;
        font-size: .8125rem
    }

    .column-header .contact .contact-email, .column-header .contact .contact-phone {
        font-size: 1.75rem
    }

    .column-header .contact .contact-email span, .column-header .contact .contact-phone span {
        margin-bottom: 10px;
        font-size: .8125rem
    }

    .feature-wide .row {
        margin-right: -30px;
        margin-left: -30px
    }

    .feature-wide .row > [class*=col] {
        padding-right: 30px;
        padding-left: 30px
    }

    article.feature-content-updated.col-sm-12.col-md-6 {
    }

    .feature-wide .row {
        -ms-flex-pack: justify;
        justify-content: space-between
    }

    .feature-wide .feature-content {
        margin-bottom: 40px
    }

    .feature-wide .richtext h2 {
        font-size: 2.25rem
    }

    .filters .message-row {
        padding-top: 30px
    }

    .filters .filter {
        height: 40px;
        padding-right: 15px;
        padding-left: 20px
    }

    .filters .filter > div, .filters .filter span {
        margin-top: .4em
    }

    :lang(ja) .filters .filter > div, :lang(ja) .filters .filter span {
        font-size: .875rem
    }

    .filters .filter span:not(:only-child) {
        padding-right: 20px
    }

    .filters .filter-haschevron {
        padding-right: 48px
    }

    .filters .filter-hasicon {
        min-width: 56px
    }

    .summary .info-list {
        padding: 60px 0;
        margin-top: -60px
    }

    .summary .info-item {
        margin-top: 60px;
        margin-top: 55px
    }

    .vacancy-table .table-info tbody td:first-child, .vacancy-table .table-info tbody th:first-child, .vacancy-table .table-info thead td:first-child, .vacancy-table .table-info thead th:first-child {
        min-width: 270px
    }

    .vacancy-table .table-info tbody td:nth-child(2), .vacancy-table .table-info tbody th:nth-child(2), .vacancy-table .table-info thead td:nth-child(2), .vacancy-table .table-info thead th:nth-child(2) {
        min-width: 124px
    }

    .vacancy-table .table-info tbody td:nth-child(3), .vacancy-table .table-info tbody th:nth-child(3), .vacancy-table .table-info thead td:nth-child(3), .vacancy-table .table-info thead th:nth-child(3) {
        min-width: 135px
    }

    .vacancy-table .table-info tbody td:nth-child(5), .vacancy-table .table-info tbody th:nth-child(5), .vacancy-table .table-info thead td:nth-child(5), .vacancy-table .table-info thead th:nth-child(5) {
        min-width: 143px
    }

    .vacancy-table .table-info tbody td:nth-child(6), .vacancy-table .table-info tbody th:nth-child(6), .vacancy-table .table-info thead td:nth-child(6), .vacancy-table .table-info thead th:nth-child(6) {
        min-width: 233px
    }

    .poster-cover, .poster.main-visual .poster-cover {
        height: 600px
    }

    .poster-title {
        font-size: 2.5rem;
        line-height: 1.4
    }

    .main-callout {
        margin-bottom: 60px
    }

    .richtext .gallery-columns-6 .gallery-item, .richtext .gallery-columns-7 .gallery-item, .richtext .gallery-columns-8 .gallery-item, .richtext .gallery-columns-9 .gallery-item {
        -ms-flex: 0 0 16.66667%;
        flex: 0 0 16.66667%;
        width: 16.66667%
    }

    .richtext > :first-child {
        margin-top: 0
    }

    .richtext > :last-child {
        margin-bottom: 0
    }

    .property-list .list-header .col, .property-list .list-header .col:first-child, .property-list .list-header .col:last-child, .property-list .list-item .col:first-child, .property-list .list-item .col:last-child {
        white-space: nowrap
    }

    .blog-index, .showcase {
        padding: 60px 0
    }

    .viewport:after {
        right: -60px;
        width: 250px
    }

    .viewport .card {
        max-width: 30%;
        -ms-flex: 1 0 30%;
        flex: 1 0 30%;
        margin-top: 0;
        max-width: 420px
    }

    .controls {
        padding-right: 60px
    }

    .columns .container > .row {
        margin-right: -30px;
        margin-left: -30px
    }

    .columns .container > .row > [class*=col] {
        padding-right: 30px;
        padding-left: 30px
    }

    .column-wrapper {
        margin-right: -30px;
        margin-left: -30px
    }

    .column-wrapper > [class*=col] {
        padding-right: 30px;
        padding-left: 30px
    }

    .main-column {
        max-width: 780px
    }

    .aside-column {
        max-width: 480px !important
    }

    .features.top-features {
        padding: 60px 0
    }

    .features.top-features section:first-of-type {
        /* margin-top: -200px; */
    }

    .global-footer-cta {
        padding-top: 60px;
        padding-bottom: 60px
    }

    .global-footer-cta .additional-services .row {
        margin-right: -30px;
        margin-left: -30px
    }

    .global-footer-cta .additional-services .row > [class*=col] {
        padding-right: 30px;
        padding-left: 30px
    }

    .global-footer-cta .button-invert {
        margin-top: 30px
    }

    .global-footer-stripe .row {
        margin-right: -30px;
        margin-left: -30px
    }

    .global-footer-stripe .row > [class*=col] {
        padding-right: 30px;
        padding-left: 30px
    }

    .global-footer-nav {
        padding: 100px 0 20px 0
    }

    .footer-links {
        margin-right: -30px;
        margin-left: -30px
    }

    .footer-links > [class*=col] {
        padding-right: 30px;
        padding-left: 30px
    }

    .footer-blog .blog-list {
        max-width: 320px
    }

    .footer-sns {
        max-width: 198px
    }

    .navbar {
        height: 106px
    }

    .nav-links {
        padding: 20px 60px 30px;
        margin: 0 auto;
        max-width: 1600px
    }

    .nav-link {
        padding: 3px 15px 0
    }

    .nav-logo img {
        height: 40px
    }

    .nav-lang a {
        padding: 0
    }

    .headroom--init .global-header {
        height: 106px
    }

    .intro {
        padding: 60px 0
    }

    .intro .container {
        padding: 0 60px
    }

    .showcase {
        padding: 150px 0;
    }
}

@media (min-width: 1440px) {
    .col-xxl {
        -ms-flex-preferred-size: 0;
        flex-basis: 0;
        -ms-flex-positive: 1;
        flex-grow: 1;
        max-width: 100%
    }

    .row-cols-xxl-1 > * {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }

    .row-cols-xxl-2 > * {
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%
    }

    .row-cols-xxl-3 > * {
        -ms-flex: 0 0 33.33333%;
        flex: 0 0 33.33333%;
        max-width: 33.33333%
    }

    .row-cols-xxl-4 > * {
        -ms-flex: 0 0 25%;
        flex: 0 0 25%;
        max-width: 25%
    }

    .row-cols-xxl-5 > * {
        -ms-flex: 0 0 20%;
        flex: 0 0 20%;
        max-width: 20%
    }

    .row-cols-xxl-6 > * {
        -ms-flex: 0 0 16.66667%;
        flex: 0 0 16.66667%;
        max-width: 16.66667%
    }

    .col-xxl-auto {
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: auto;
        max-width: 100%
    }

    .col-xxl-1 {
        -ms-flex: 0 0 8.33333%;
        flex: 0 0 8.33333%;
        max-width: 8.33333%
    }

    .col-xxl-2 {
        -ms-flex: 0 0 16.66667%;
        flex: 0 0 16.66667%;
        max-width: 16.66667%
    }

    .col-xxl-3 {
        -ms-flex: 0 0 25%;
        flex: 0 0 25%;
        max-width: 25%
    }

    .col-xxl-4 {
        -ms-flex: 0 0 33.33333%;
        flex: 0 0 33.33333%;
        max-width: 33.33333%
    }

    .col-xxl-5 {
        -ms-flex: 0 0 41.66667%;
        flex: 0 0 41.66667%;
        max-width: 41.66667%
    }

    .col-xxl-6 {
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%
    }

    .col-xxl-7 {
        -ms-flex: 0 0 58.33333%;
        flex: 0 0 58.33333%;
        max-width: 58.33333%
    }

    .col-xxl-8 {
        -ms-flex: 0 0 66.66667%;
        flex: 0 0 66.66667%;
        max-width: 66.66667%
    }

    .col-xxl-9 {
        -ms-flex: 0 0 75%;
        flex: 0 0 75%;
        max-width: 75%
    }

    .col-xxl-10 {
        -ms-flex: 0 0 83.33333%;
        flex: 0 0 83.33333%;
        max-width: 83.33333%
    }

    .col-xxl-11 {
        -ms-flex: 0 0 91.66667%;
        flex: 0 0 91.66667%;
        max-width: 91.66667%
    }

    .col-xxl-12 {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }

    .order-xxl-first {
        -ms-flex-order: -1;
        order: -1
    }

    .order-xxl-last {
        -ms-flex-order: 13;
        order: 13
    }

    .order-xxl-0 {
        -ms-flex-order: 0;
        order: 0
    }

    .order-xxl-1 {
        -ms-flex-order: 1;
        order: 1
    }

    .order-xxl-2 {
        -ms-flex-order: 2;
        order: 2
    }

    .order-xxl-3 {
        -ms-flex-order: 3;
        order: 3
    }

    .order-xxl-4 {
        -ms-flex-order: 4;
        order: 4
    }

    .order-xxl-5 {
        -ms-flex-order: 5;
        order: 5
    }

    .order-xxl-6 {
        -ms-flex-order: 6;
        order: 6
    }

    .order-xxl-7 {
        -ms-flex-order: 7;
        order: 7
    }

    .order-xxl-8 {
        -ms-flex-order: 8;
        order: 8
    }

    .order-xxl-9 {
        -ms-flex-order: 9;
        order: 9
    }

    .order-xxl-10 {
        -ms-flex-order: 10;
        order: 10
    }

    .order-xxl-11 {
        -ms-flex-order: 11;
        order: 11
    }

    .order-xxl-12 {
        -ms-flex-order: 12;
        order: 12
    }

    .offset-xxl-0 {
        margin-left: 0
    }

    .offset-xxl-1 {
        margin-left: 8.33333%
    }

    .offset-xxl-2 {
        margin-left: 16.66667%
    }

    .offset-xxl-3 {
        margin-left: 25%
    }

    .offset-xxl-4 {
        margin-left: 33.33333%
    }

    .offset-xxl-5 {
        margin-left: 41.66667%
    }

    .offset-xxl-6 {
        margin-left: 50%
    }

    .offset-xxl-7 {
        margin-left: 58.33333%
    }

    .offset-xxl-8 {
        margin-left: 66.66667%
    }

    .offset-xxl-9 {
        margin-left: 75%
    }

    .offset-xxl-10 {
        margin-left: 83.33333%
    }

    .offset-xxl-11 {
        margin-left: 91.66667%
    }

    .d-xxl-none {
        display: none !important
    }

    .d-xxl-inline {
        display: inline !important
    }

    .d-xxl-inline-block {
        display: inline-block !important
    }

    .d-xxl-block {
        display: block !important
    }

    .d-xxl-table {
        display: table !important
    }

    .d-xxl-table-row {
        display: table-row !important
    }

    .d-xxl-table-cell {
        display: table-cell !important
    }

    .d-xxl-flex {
        display: -ms-flexbox !important;
        display: flex !important
    }

    .d-xxl-inline-flex {
        display: -ms-inline-flexbox !important;
        display: inline-flex !important
    }

    .flex-xxl-row {
        -ms-flex-direction: row !important;
        flex-direction: row !important
    }

    .flex-xxl-column {
        -ms-flex-direction: column !important;
        flex-direction: column !important
    }

    .flex-xxl-row-reverse {
        -ms-flex-direction: row-reverse !important;
        flex-direction: row-reverse !important
    }

    .flex-xxl-column-reverse {
        -ms-flex-direction: column-reverse !important;
        flex-direction: column-reverse !important
    }

    .flex-xxl-wrap {
        -ms-flex-wrap: wrap !important;
        flex-wrap: wrap !important
    }

    .flex-xxl-nowrap {
        -ms-flex-wrap: nowrap !important;
        flex-wrap: nowrap !important
    }

    .flex-xxl-wrap-reverse {
        -ms-flex-wrap: wrap-reverse !important;
        flex-wrap: wrap-reverse !important
    }

    .flex-xxl-fill {
        -ms-flex: 1 1 auto !important;
        flex: 1 1 auto !important
    }

    .flex-xxl-grow-0 {
        -ms-flex-positive: 0 !important;
        flex-grow: 0 !important
    }

    .flex-xxl-grow-1 {
        -ms-flex-positive: 1 !important;
        flex-grow: 1 !important
    }

    .flex-xxl-shrink-0 {
        -ms-flex-negative: 0 !important;
        flex-shrink: 0 !important
    }

    .flex-xxl-shrink-1 {
        -ms-flex-negative: 1 !important;
        flex-shrink: 1 !important
    }

    .justify-content-xxl-start {
        -ms-flex-pack: start !important;
        justify-content: flex-start !important
    }

    .justify-content-xxl-end {
        -ms-flex-pack: end !important;
        justify-content: flex-end !important
    }

    .justify-content-xxl-center {
        -ms-flex-pack: center !important;
        justify-content: center !important
    }

    .justify-content-xxl-between {
        -ms-flex-pack: justify !important;
        justify-content: space-between !important
    }

    .justify-content-xxl-around {
        -ms-flex-pack: distribute !important;
        justify-content: space-around !important
    }

    .align-items-xxl-start {
        -ms-flex-align: start !important;
        align-items: flex-start !important
    }

    .align-items-xxl-end {
        -ms-flex-align: end !important;
        align-items: flex-end !important
    }

    .align-items-xxl-center {
        -ms-flex-align: center !important;
        align-items: center !important
    }

    .align-items-xxl-baseline {
        -ms-flex-align: baseline !important;
        align-items: baseline !important
    }

    .align-items-xxl-stretch {
        -ms-flex-align: stretch !important;
        align-items: stretch !important
    }

    .align-content-xxl-start {
        -ms-flex-line-pack: start !important;
        align-content: flex-start !important
    }

    .align-content-xxl-end {
        -ms-flex-line-pack: end !important;
        align-content: flex-end !important
    }

    .align-content-xxl-center {
        -ms-flex-line-pack: center !important;
        align-content: center !important
    }

    .align-content-xxl-between {
        -ms-flex-line-pack: justify !important;
        align-content: space-between !important
    }

    .align-content-xxl-around {
        -ms-flex-line-pack: distribute !important;
        align-content: space-around !important
    }

    .align-content-xxl-stretch {
        -ms-flex-line-pack: stretch !important;
        align-content: stretch !important
    }

    .align-self-xxl-auto {
        -ms-flex-item-align: auto !important;
        align-self: auto !important
    }

    .align-self-xxl-start {
        -ms-flex-item-align: start !important;
        align-self: flex-start !important
    }

    .align-self-xxl-end {
        -ms-flex-item-align: end !important;
        align-self: flex-end !important
    }

    .align-self-xxl-center {
        -ms-flex-item-align: center !important;
        align-self: center !important
    }

    .align-self-xxl-baseline {
        -ms-flex-item-align: baseline !important;
        align-self: baseline !important
    }

    .align-self-xxl-stretch {
        -ms-flex-item-align: stretch !important;
        align-self: stretch !important
    }

    .float-xxl-left {
        float: left !important
    }

    .float-xxl-right {
        float: right !important
    }

    .float-xxl-none {
        float: none !important
    }

    .m-xxl-0 {
        margin: 0 !important
    }

    .mt-xxl-0, .my-xxl-0 {
        margin-top: 0 !important
    }

    .mr-xxl-0, .mx-xxl-0 {
        margin-right: 0 !important
    }

    .mb-xxl-0, .my-xxl-0 {
        margin-bottom: 0 !important
    }

    .ml-xxl-0, .mx-xxl-0 {
        margin-left: 0 !important
    }

    .m-xxl-1 {
        margin: 5px !important
    }

    .mt-xxl-1, .my-xxl-1 {
        margin-top: 5px !important
    }

    .mr-xxl-1, .mx-xxl-1 {
        margin-right: 5px !important
    }

    .mb-xxl-1, .my-xxl-1 {
        margin-bottom: 5px !important
    }

    .ml-xxl-1, .mx-xxl-1 {
        margin-left: 5px !important
    }

    .m-xxl-2 {
        margin: 10px !important
    }

    .mt-xxl-2, .my-xxl-2 {
        margin-top: 10px !important
    }

    .mr-xxl-2, .mx-xxl-2 {
        margin-right: 10px !important
    }

    .mb-xxl-2, .my-xxl-2 {
        margin-bottom: 10px !important
    }

    .ml-xxl-2, .mx-xxl-2 {
        margin-left: 10px !important
    }

    .m-xxl-3 {
        margin: 20px !important
    }

    .mt-xxl-3, .my-xxl-3 {
        margin-top: 20px !important
    }

    .mr-xxl-3, .mx-xxl-3 {
        margin-right: 20px !important
    }

    .mb-xxl-3, .my-xxl-3 {
        margin-bottom: 20px !important
    }

    .ml-xxl-3, .mx-xxl-3 {
        margin-left: 20px !important
    }

    .m-xxl-4 {
        margin: 30px !important
    }

    .mt-xxl-4, .my-xxl-4 {
        margin-top: 30px !important
    }

    .mr-xxl-4, .mx-xxl-4 {
        margin-right: 30px !important
    }

    .mb-xxl-4, .my-xxl-4 {
        margin-bottom: 30px !important
    }

    .ml-xxl-4, .mx-xxl-4 {
        margin-left: 30px !important
    }

    .m-xxl-5 {
        margin: 40px !important
    }

    .mt-xxl-5, .my-xxl-5 {
        margin-top: 40px !important
    }

    .mr-xxl-5, .mx-xxl-5 {
        margin-right: 40px !important
    }

    .mb-xxl-5, .my-xxl-5 {
        margin-bottom: 40px !important
    }

    .ml-xxl-5, .mx-xxl-5 {
        margin-left: 40px !important
    }

    .m-xxl-6 {
        margin: 60px !important
    }

    .mt-xxl-6, .my-xxl-6 {
        margin-top: 60px !important
    }

    .mr-xxl-6, .mx-xxl-6 {
        margin-right: 60px !important
    }

    .mb-xxl-6, .my-xxl-6 {
        margin-bottom: 60px !important
    }

    .ml-xxl-6, .mx-xxl-6 {
        margin-left: 60px !important
    }

    .p-xxl-0 {
        padding: 0 !important
    }

    .pt-xxl-0, .py-xxl-0 {
        padding-top: 0 !important
    }

    .pr-xxl-0, .px-xxl-0 {
        padding-right: 0 !important
    }

    .pb-xxl-0, .py-xxl-0 {
        padding-bottom: 0 !important
    }

    .pl-xxl-0, .px-xxl-0 {
        padding-left: 0 !important
    }

    .p-xxl-1 {
        padding: 5px !important
    }

    .pt-xxl-1, .py-xxl-1 {
        padding-top: 5px !important
    }

    .pr-xxl-1, .px-xxl-1 {
        padding-right: 5px !important
    }

    .pb-xxl-1, .py-xxl-1 {
        padding-bottom: 5px !important
    }

    .pl-xxl-1, .px-xxl-1 {
        padding-left: 5px !important
    }

    .p-xxl-2 {
        padding: 10px !important
    }

    .pt-xxl-2, .py-xxl-2 {
        padding-top: 10px !important
    }

    .pr-xxl-2, .px-xxl-2 {
        padding-right: 10px !important
    }

    .pb-xxl-2, .py-xxl-2 {
        padding-bottom: 10px !important
    }

    .pl-xxl-2, .px-xxl-2 {
        padding-left: 10px !important
    }

    .p-xxl-3 {
        padding: 20px !important
    }

    .pt-xxl-3, .py-xxl-3 {
        padding-top: 20px !important
    }

    .pr-xxl-3, .px-xxl-3 {
        padding-right: 20px !important
    }

    .pb-xxl-3, .py-xxl-3 {
        padding-bottom: 20px !important
    }

    .pl-xxl-3, .px-xxl-3 {
        padding-left: 20px !important
    }

    .p-xxl-4 {
        padding: 30px !important
    }

    .pt-xxl-4, .py-xxl-4 {
        padding-top: 30px !important
    }

    .pr-xxl-4, .px-xxl-4 {
        padding-right: 30px !important
    }

    .pb-xxl-4, .py-xxl-4 {
        padding-bottom: 30px !important
    }

    .pl-xxl-4, .px-xxl-4 {
        padding-left: 30px !important
    }

    .p-xxl-5 {
        padding: 40px !important
    }

    .pt-xxl-5, .py-xxl-5 {
        padding-top: 40px !important
    }

    .pr-xxl-5, .px-xxl-5 {
        padding-right: 40px !important
    }

    .pb-xxl-5, .py-xxl-5 {
        padding-bottom: 40px !important
    }

    .pl-xxl-5, .px-xxl-5 {
        padding-left: 40px !important
    }

    .p-xxl-6 {
        padding: 60px !important
    }

    .pt-xxl-6, .py-xxl-6 {
        padding-top: 60px !important
    }

    .pr-xxl-6, .px-xxl-6 {
        padding-right: 60px !important
    }

    .pb-xxl-6, .py-xxl-6 {
        padding-bottom: 60px !important
    }

    .pl-xxl-6, .px-xxl-6 {
        padding-left: 60px !important
    }

    .m-xxl-n1 {
        margin: -5px !important
    }

    .mt-xxl-n1, .my-xxl-n1 {
        margin-top: -5px !important
    }

    .mr-xxl-n1, .mx-xxl-n1 {
        margin-right: -5px !important
    }

    .mb-xxl-n1, .my-xxl-n1 {
        margin-bottom: -5px !important
    }

    .ml-xxl-n1, .mx-xxl-n1 {
        margin-left: -5px !important
    }

    .m-xxl-n2 {
        margin: -10px !important
    }

    .mt-xxl-n2, .my-xxl-n2 {
        margin-top: -10px !important
    }

    .mr-xxl-n2, .mx-xxl-n2 {
        margin-right: -10px !important
    }

    .mb-xxl-n2, .my-xxl-n2 {
        margin-bottom: -10px !important
    }

    .ml-xxl-n2, .mx-xxl-n2 {
        margin-left: -10px !important
    }

    .m-xxl-n3 {
        margin: -20px !important
    }

    .mt-xxl-n3, .my-xxl-n3 {
        margin-top: -20px !important
    }

    .mr-xxl-n3, .mx-xxl-n3 {
        margin-right: -20px !important
    }

    .mb-xxl-n3, .my-xxl-n3 {
        margin-bottom: -20px !important
    }

    .ml-xxl-n3, .mx-xxl-n3 {
        margin-left: -20px !important
    }

    .m-xxl-n4 {
        margin: -30px !important
    }

    .mt-xxl-n4, .my-xxl-n4 {
        margin-top: -30px !important
    }

    .mr-xxl-n4, .mx-xxl-n4 {
        margin-right: -30px !important
    }

    .mb-xxl-n4, .my-xxl-n4 {
        margin-bottom: -30px !important
    }

    .ml-xxl-n4, .mx-xxl-n4 {
        margin-left: -30px !important
    }

    .m-xxl-n5 {
        margin: -40px !important
    }

    .mt-xxl-n5, .my-xxl-n5 {
        margin-top: -40px !important
    }

    .mr-xxl-n5, .mx-xxl-n5 {
        margin-right: -40px !important
    }

    .mb-xxl-n5, .my-xxl-n5 {
        margin-bottom: -40px !important
    }

    .ml-xxl-n5, .mx-xxl-n5 {
        margin-left: -40px !important
    }

    .m-xxl-n6 {
        margin: -60px !important
    }

    .mt-xxl-n6, .my-xxl-n6 {
        margin-top: -60px !important
    }

    .mr-xxl-n6, .mx-xxl-n6 {
        margin-right: -60px !important
    }

    .mb-xxl-n6, .my-xxl-n6 {
        margin-bottom: -60px !important
    }

    .ml-xxl-n6, .mx-xxl-n6 {
        margin-left: -60px !important
    }

    .m-xxl-auto {
        margin: auto !important
    }

    .mt-xxl-auto, .my-xxl-auto {
        margin-top: auto !important
    }

    .mr-xxl-auto, .mx-xxl-auto {
        margin-right: auto !important
    }

    .mb-xxl-auto, .my-xxl-auto {
        margin-bottom: auto !important
    }

    .ml-xxl-auto, .mx-xxl-auto {
        margin-left: auto !important
    }

    .text-xxl-left {
        text-align: left !important
    }

    .text-xxl-right {
        text-align: right !important
    }

    .text-xxl-center {
        text-align: center !important
    }

    .cover-xxl-4x1 {
        padding-bottom: 25%
    }

    .cover-xxl-8x3 {
        padding-bottom: 37.5%
    }

    .cover-xxl-16x9 {
        padding-bottom: 56.25%
    }

    .cover-xxl-4x3 {
        padding-bottom: 75%
    }

    .cover-xxl-1x1 {
        padding-bottom: 100%
    }

    .cover-xxl-3x4 {
        padding-bottom: 133.33%
    }

    .cover-xxl-1x2 {
        padding-bottom: 200%
    }

    .article-tile {
        -ms-flex-positive: 1;
        flex-grow: 1;
        max-width: 100%
    }

    .article-tile .article-title {
        padding-right: 20px
    }

    .home .article-tile .article-date {
        padding-left: 20px
    }

    .article .article-related {
        padding-right: 60px;
        padding-left: 60px
    }

    .article-highlight {
        padding: 0 20px
    }

    .article-highlight .article-content {
        display: -ms-flexbox;
        display: flex
    }

    .article-highlight .article-title {
        -ms-flex-order: 1;
        order: 1;
        margin-bottom: 0;
        padding-left: 20px
    }

    .button-icon {
        -webkit-transform: scale(1);
        transform: scale(1)
    }

    .feature-wide .feature-content {
        margin-right: 60px;
        margin-bottom: 60px
    }

    .feature-wide .richtext h2 {
        font-size: 2.5rem
    }

    .vacancy-table .table-info tr {
        -ms-flex-pack: start;
        justify-content: flex-start
    }

    .richtext > :first-child {
        margin-top: 0
    }

    .richtext > :last-child {
        margin-bottom: 0
    }

    .features.top-features section:first-of-type {
        margin-top: -240px
    }

    .top-story a {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -ms-flex-align: center;
        align-items: center
    }

    .top-story .text-heading {
        margin-bottom: 0
    }

    .top-story .callout {
        display: block
    }

    .top-story .separator:before {
        top: 11px
    }
}

@media screen and (max-width: 1024px) {
    .pswp__preloader {
        position: relative;
        left: auto;
        top: auto;
        margin: 0;
        float: right
    }
}

@media screen and (max-width: 782px) {
    .headroom--init.admin-bar .headroom {
        top: 0
    }

    .headroom--init.admin-bar .headroom--ontop {
        top: 46px
    }
}

@media (max-width: 767.98px) {
    .single .article, .single aside.callouts {
        margin-left: -20px;
        margin-right: -20px
    }
}

@media (max-width: 320.98px) {
    .card-listing a.d-flex, .main-callout a.d-flex {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }

    .card-listing .vacancy-title, .main-callout .vacancy-title {
        width: 100%
    }
}

@media (-webkit-min-device-pixel-ratio: 1.1),(-webkit-min-device-pixel-ratio: 1.09375),(min-resolution: 1.1dppx),(min-resolution: 105dpi) {
    .pswp--svg .pswp__button, .pswp--svg .pswp__button--arrow--left:before, .pswp--svg .pswp__button--arrow--right:before {
        background-image: url(../assets/default-skin.svg)
    }

    .pswp--svg .pswp__button--arrow--left, .pswp--svg .pswp__button--arrow--right {
        background: none
    }
}

@media print {
    .d-print-none {
        display: none !important
    }

    .d-print-inline {
        display: inline !important
    }

    .d-print-inline-block {
        display: inline-block !important
    }

    .d-print-block {
        display: block !important
    }

    .d-print-table {
        display: table !important
    }

    .d-print-table-row {
        display: table-row !important
    }

    .d-print-table-cell {
        display: table-cell !important
    }

    .d-print-flex {
        display: -ms-flexbox !important;
        display: flex !important
    }

    .d-print-inline-flex {
        display: -ms-inline-flexbox !important;
        display: inline-flex !important
    }
}

/*introduce*/
.introduce {
    padding: 150px 15% 150px 15%;
    background-color: #ffffff
}

.introduce h2, .feature-content-updated h2 a, .blog h3 {
    font-family: Libre Baskerville, "Noto Serif JP", Hiragino Mincho ProN, ヒラギノ明朝 ProN, 游明朝, 游明朝体, YuMincho, Yu Mincho, ＭＳ 明朝, MS Mincho, serif;
    font-weight: 400;
    font-size: 28px;
    line-height: 43px;
    color: #181818 !important
}

.introduce p {
    font-weight: 400;
    font-size: 16px;
    line-height: 28px;
    text-align: center;
    letter-spacing: 0.03em;
    color: #181818
}

/*Feature update*/
.features-updated.top-features.richtext {
    padding: 125px 0;
}

section.feature.showcase {
    padding: 125px 0;
}

.features-updated {
    background-color: #F6F7F0;
    padding: 0
}

/*Feature*/
.richtext h2 {
    color: #950403
}

.feature-wide .row {
    align-items: unset !important
}

.feature-content-updated a, .feature-content a {
    display: inline-block !important
}

.home .feature .feature-content p {
    padding: 0
}

.feature-content .image {
    display: flex;
    justify-content: center
}

.feature-content {
    margin-top: 0
}

h2.section-title {
    font-family: Libre Baskerville, "Noto Serif JP", Hiragino Mincho ProN, ヒラギノ明朝 ProN, 游明朝, 游明朝体, YuMincho, Yu Mincho, ＭＳ 明朝, MS Mincho, serif !important;
    padding: 0px;
    margin-bottom: 40px
}

.feature-items {
    padding: 0 24px 0 24px
}

.mg-1 {
    margin-top: 36px
}

section.full-width.service-bg {
    position: relative;
    background-position: bottom !important
}

section.full-width.service-bg:after {
    content: "-";
    position: absolute;
    width: 100%;
    height: 881px;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.9) -34.58%, rgba(0, 0, 0, 0) 151.45%);
    z-index: 1
}

.white-text {
    z-index: 2
}

.cover.cover-4x3 {
    margin-bottom: 15px
}

/*Service*/
.service-bg {
    min-height: 882px;
    display: flex;
    align-items: center /*background-color: #1b3a5a;*/
}

.service-bg h2 {
    font-family: Libre Baskerville, "Noto Serif JP", Hiragino Mincho ProN, ヒラギノ明朝 ProN, 游明朝, 游明朝体, YuMincho, Yu Mincho, ＭＳ 明朝, MS Mincho, serif;
    font-weight: 400;
    font-size: 1.7rem;
    color: #E7E1D1
}

.service-bg .container {
    padding: 80px 10% 80px 10%
}

.service h2 {
    font-weight: 400;
    font-size: 28px;
    line-height: 39px;
    color: #E7E1D1
}

.service p {
    font-weight: 500;
    font-size: 16px;
    line-height: 28px;
    letter-spacing: 0.03em;
    color: #FFFFFF
}

.service-bg h2, .service-bg p, .introduce h2, .introduce p {
    text-align: center
}

.white-text, a.button-fix {
    color: #fff
}

.btn-flex {
    display: flex;
    justify-content: center;
    gap: 16px
}

.button-fix {
    width: fit-content
}

/*blog*/
.blog article {
    display: flex;
    flex-direction: column;
    justify-content: center
}

.blog h2 {
    padding-bottom: 32px !important;
    margin-bottom: 0px !important
}

.blog span.blog-line {
    background-color: #D5CEBF;
    display: block;
    width: 100%;
    height: 1px;
    margin-bottom: 49px
}

.blog span.blog-line:before {
    content: "";
    position: absolute;
    width: 200px;
    height: 1px;
    background-color: #B31918
}

.blog .feature-content a {
    width: fit-content
}

section.blog.showcase {
    padding-bottom: 70px
}

.feature article {
    margin-bottom: 30px;
}

@media only screen and (max-width: 767px) {
    /*Find*/
    section.feature.showcase {
        padding: 80px 0;
    }

    .features-updated.top-features.richtext {
        padding: 0 !important;
    }

    .global-footer-nav {
        background-color: #F5F5EE;
        padding-top: 75px;
    }

    .floating-image.col-12.col-md-6 {
        padding-right: 20px;
        padding-left: 20px;
        margin-bottom: 50px
    }

    .introduce {
        margin: 80px 0 60px
    }

    .feature .mb-reverse {
        flex-direction: column-reverse
    }

    .introduce, .feature .feature-content {
        padding: 20px 15px 80px 15px
    }

    .feature-items {
        padding-top: 15px
    }

    .feature-content-updated a, .feature-content a {
        display: block !important
    }

    .feature article {
        margin-bottom: 80px
    }

    .richtext h2 {
        font-size: 20px;
        line-height: 30px
    }

    .introduce h2, .feature-content-updated h2 a, .blog h3 {
        font-weight: 400;
        font-size: 22px;
        line-height: 34px
    }

    h2.section-title {
        font-family: Libre Baskerville, "Noto Serif JP", Hiragino Mincho ProN, ヒラギノ明朝 ProN, 游明朝, 游明朝体, YuMincho, Yu Mincho, ＭＳ 明朝, MS Mincho, serif;
        padding-top: 40px
    }

    .btn-flex {
        flex-direction: column;
        align-content: center;
        align-items: center
    }
}

/*Page general*/
span.introduction-text {
    padding: 72px 0 72px
}

span.introduction-text p {
    font-weight: 400;
    font-size: 17px;
    line-height: 1.75;
    text-align: center;
    letter-spacing: 0;
    color: #181818
}

.feature-intro .richtext {
    padding-top: 72px
}

/*Site footer*/
h3.text-heading.cta-title {
    font-weight: 400;
    font-size: 24px;
    line-height: 39px;
    text-align: center;
    padding: 0;
    margin-bottom: 0
}

.footer-card .cover {
    height: 400px
}

h2.title-text, .message h2 {
    font-family: Libre Baskerville, "Noto Serif JP", Hiragino Mincho ProN, ヒラギノ明朝 ProN, 游明朝, 游明朝体, YuMincho, Yu Mincho, ＭＳ 明朝, MS Mincho, serif;
    font-weight: 400;
    font-size: 25px;
    line-height: 39px;
    color: #181818;
    text-align: center
}

article.feature-content.richtext h2 {
    font-family: Libre Baskerville, "Noto Serif JP", Hiragino Mincho ProN, ヒラギノ明朝 ProN, 游明朝, 游明朝体, YuMincho, Yu Mincho, ＭＳ 明朝, MS Mincho, serif;
    font-weight: 400;
    font-size: 25px;
    line-height: 39px;
    color: #181818
}

article.feature-content.richtext.col-12.col-md-6 {
    padding: 0 50px
}

.global-footer-stripe .logo {
    max-height: 100% !important
}

.footer-card .content.w-100 a.button {
    padding-left: 20px
}

.sticky-header {
    -webkit-transform: translateY(0%) !important;
    transform: translateY(0%) !important
}

/*page message*/
.message .richtext {
    max-width: 850px;
    margin: auto
}

.feature-content.richtext ul li:before {
    content: " ";
    position: absolute;
    top: 10px;
    left: -8px;
    width: 5px;
    height: 5px;
    background-color: #181818;
    border-radius: 50%
}

.message .btn-items {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px
}

.message .btn-items .button {
    min-width: 250px
}

/*Footer*/
.global-footer-nav {
    background-color: #F5F5EE
}

.footer-links .site-nav:first-child:before {
    content: unset !important
}

.footer-links .footer-blog ul li {
    margin-top: 0px !important
}

.footer-links .footer-blog ul li a {
    font-weight: 500;
    font-size: 18px;
    line-height: 25px;
    letter-spacing: 0;
    color: #646464
}

.footer-meta li.medium-text.copyright {
    font-weight: 400;
    font-size: 13px;
    line-height: 20px;
    align-items: center;
    letter-spacing: 0.03em;
    color: #707070
}

/*update All property */
.filters .filter {
    background: #FFFFFF;
    border: 1px solid #DAD4C7;
    border-radius: 4px;
}

.sort-by {
    display: inline-block;
}

/*end*/
/*update property single*/
section.prop-single.js-gallery-poster.gallery.poster-gallery.pd-60 {
    background: #F5F5EE;
}

.prop-single-desc {
    background-color: #fff;
}

.pd-60 {
    padding: 60px !important;
}

.mrl-60 {
    padding-left: 40px;
}

.gallery-section {
    display: flex;
    align-items: center;
}

.column-header:after {
    visibility: hidden;
}

.column-header .tag-status.tag-available {
    font-weight: 600;
    font-size: 13px;
    line-height: 20px;
    text-align: center;
    letter-spacing: 0.08em;
    color: #FFFFFF;
    display: inline-block;
    margin-bottom: 25px;
}

.column-header .tag-price {
    font-weight: 500;
    font-size: 22px;
    line-height: 29px;
    letter-spacing: 0.03em;
    color: #181818;
}

.column-header .page-title {
    font-weight: 400;
    font-size: 28px;
    line-height: 39px;
    color: #900C23;
}

.column-header .unit-info span {
    font-weight: 400;
    font-size: 13px;
    line-height: 17px;
    letter-spacing: 0;
    color: #181818;
}

.prop-single h2.section-title {
    font-family: "Neue Einstellung", "Noto Sans JP", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN", 游ゴシック, 游ゴシック体, YuGothic, "Yu Gothic", メイリオ, Meiryo, "ＭＳ ゴシック", "MS Gothic", sans-serif !important;
    margin-bottom: 16px;
    padding-bottom: 0;
    font-weight: 500;
    font-size: 22px;
    line-height: 29px;
    letter-spacing: 0;
    color: #181818;
}

.floor-plan {
    margin-bottom: 64px;
}

.feature-info {
    background-color: #fff;
}

.poster-callout .poster-title {
    font-weight: 400;
    font-size: 30px;
    line-height: 28px;
    text-align: center;
    color: #FFFFFF;
}

.poster-subtitle {
    font-weight: 400;
    font-size: 13px;
    line-height: 20px;
    padding-top: 8px;
    text-align: center;
    letter-spacing: 0.03em;
    color: #FFFFFF;
}

.poster .poster-content .poster-cta .button-primary {
    border: 1px solid #FFFFFF;
    border-radius: 3px;
    background-color: transparent;
}

.prop-other .header h3 {
    padding-top: 18px;
    padding-bottom: 18px;
}

.feature-item {
    align-items: center;
}

.feature-item .header {
    padding-left: 0;
}

.prop-other .feature-item .uppercase-text {
    font-family: 'Libre Baskerville';
    font-weight: 400;
    font-size: 15px;
    line-height: 28px;
    color: #900C23;
    display: inline;
}

.prop-other .item-avai .uppercase-text {
    font-weight: 600;
    font-size: 9px;
    line-height: 29px;
    text-align: center;
    letter-spacing: 0.08em;
    color: #FFFFFF;
}

.prop-other ul li {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-direction: row;
    flex-wrap: nowrap;
}

/*floor*/
.floor-plan .cover {
    background-color: #fff;
}

.floor-plan .tile .cover {
    border: 1px solid #D0D0D0;
    box-shadow: none;
}

/* Form*/
.aside-column .form-container {
    border: 1px solid #d6d6d6;
    border-radius: 6px;
}

.richtext h2 {
    font-weight: 500;
    font-size: 23px;
    line-height: 29px;
    text-align: center;
    letter-spacing: 0.03em;
    color: #181818;
}

.feature-items h2 {
    text-align: left;
}

.feature-items .richtext h2 {
    text-align: left;
}

.feature-content-updated.richtext h2 {
    text-align: left;
}

.introduce .richtext h2 {
    font-size: 24px;
    line-height: 1.6em;
}

.aside-column .form-container .richtext p {
    font-weight: 400;
    font-size: 15px;
    line-height: 28px;
    letter-spacing: 0;
    color: #181818;
}

.aside-column .form-container {
    padding: 40px 25px 30px;
}

/*fix button home page*/
a.button.button-outline.link-arrow {
    pointer-events: auto;
}

@media only screen and (max-width: 767px) {
    .pd-60 {
        padding: 0 !important;
    }

    .feature-item {
        align-items: flex-start;
    }

    .richtext {
        font-weight: 400;
        font-size: 17px;
        line-height: 31px;
        letter-spacing: 0.02em;
        color: #181818;
    }

    .richtext small {
        font-weight: 400;
        font-size: 12px;
        line-height: 23px;
        letter-spacing: 0.02em;
        color: rgba(24, 24, 24, 0.65);
    }

    .item-name .uppercase-text, .item-area {
        font-size: 10px !important;
        line-height: 28px;
        text-transform: capitalize !important;
    }

    .item-avai .uppercase-text {
        font-size: 8px !important;
        line-height: 33px;
    }

    .prop-other .feature-item {
        padding-left: 0;
        padding-right: 0;
    }

    /* nav menu mobile */
    .nav-links li:nth-child(6), .nav-links li:nth-child(7) {
        display: block;
    }
}

/*    nav menu desktop */
.nav-links li:nth-child(6), .nav-links li:nth-child(7) {
    /* display: none; */
}

/*All prop*/
.filter-label span.filter-title {
    position: absolute;
    left: -70px;
    top: 3px;
    font-weight: 600;
    font-size: 15px;
    line-height: 25px;
    letter-spacing: 0.04em;
    color: #414141;
}

.filters .filter {
    height: 28px;
    background: #ffffff;
    border: 1px solid #DAD4C7;
    border-radius: 4px;
}

.filter .uppercase-text {
    font-weight: 500;
    font-size: 12px;
    line-height: 29px;
    text-align: center;
    letter-spacing: 0.04em;
    color: #3D5A53;
    text-transform: capitalize;
}

.js-load.filter.disabled {
    background: #DADADA;
    border: 1px solid #DAD4C7;
    border-radius: 4px;
    pointer-events: none;
}

a.js-load.filter.active {
    background: #3d5a53;
    color: #fff
}

span.uppercase-text.js-apply-filter {
    color: #ffffff;
    font-size: 13px !important;
}

/*Checklist*/
.amenities.row {
    border-top: 1px solid #D5CEBF;
    padding: 20px 0 20px;
    margin: 0 auto 0;
}

.cl_title {
    font-weight: 600;
    font-size: 19px;
    line-height: 29px;
    letter-spacing: 0;
    color: #3D5A53;
}

.amenities ul {
    padding-left: 0 !important;
}

.amenities li {
    font-weight: 400;
    font-size: 16px;
    line-height: 23px;
    letter-spacing: 0;
    color: #181818;
}

/*Other*/
.poster.poster-callout {
    margin-bottom: 20px;
}

.vacancy-info {
    font-weight: 600;
    font-size: 13px;
    line-height: 29px;
    letter-spacing: 0.08em;
    color: #3D5A53;
    padding: 20px 0 20px;
}

.vacancy-item a {
    padding: 20px 0 20px;
}

.vacancy-info:before {
    padding-bottom: 20px;
}

.icon-arrow:after {
    content: "";
    position: absolute;
    top: 50%;
    width: 13px;
    height: 13px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    transition: all .35s cubic-bezier(.19, 1, .22, 1);
    background-image: url(../assets/arrow.png);
    background-size: 11px;
    right: 12px;
}

.footer-card .button-invert.icon-arrow {
    width: auto !important;
}

/** About Us Message Section **/
section.message {
    padding: 75px 0;
}

img.mess-img {
    border-radius: 50%;
}