@charset "UTF-8";

/*----------------ブログ-------------*/
.post_content>* {
    clear: both;
    margin-bottom: 2em;
}

/*--------【工期】-----------*/
p.has-border.-border04 {
    padding: 1.5em;
    border: solid 4px hsla(0, 0%, 78%, .15);
    margin: 20px 0;
}

/*--------★当初のご要望★-----------*/
.has-border.-border03 {
    padding: 1.5em;
    border: dashed 2px hsla(0, 0%, 78%, .5);
    margin-bottom: 20px;
}

.has-border.-border03 span.swl-marker.mark_yellow {
    color: var(--i_txt_color);
}

/*--------写真・コメント箇所---------*/
.c-balloon__icon.-circle {
    display: flex;
    flex-direction: column;
    width: 120px !important;
    height: auto;
    min-width: 120px;
    min-height: 120px;
    text-align: center;
}

.c-balloon {
    align-content: flex-start;
    display: flex;
    justify-content: flex-start;
    position: relative;
}

.post_content .swell-block-balloon .c-balloon__icon .c-balloon__iconImg, .wp-admin .edit-post-visual-editor .swell-block-balloon .c-balloon__icon .c-balloon__iconImg {
    width: 120px;
    height: 120px;
}

.c-balloon__body.-speaking.-border-none {
    align-items: flex-start;
    display: flex;
    flex-basis: 100%;
    padding: 4px 24px;
}

@media (min-width: 600px) {
    .c-balloon__body {
        padding: 8px 24px;
    }
}

.c-balloon__iconName {
    padding-top: 1em;
    font-weight: 500;
    font-size: 16px;
    color: #848484;
    text-align: center;
}

.c-balloon__icon.-circle img {
    border: 2px solid #ececec;
    border-radius: 50%;
    width: 120px !important;
    height: 120px !important;
    margin-bottom: 0;
    object-fit: cover;
}

.c-balloon__iconImg {
    display: block;
    margin: 0 auto;
    -o-object-fit: cover;
    object-fit: cover;
}

.c-balloon__after, .c-balloon__before {
    border-color: transparent;
    border-style: solid;
    display: block;
    height: 0;
    position: absolute;
    top: 0;
    width: 0;
}

.c-balloon__before {
    z-index: 3;
}

.-speaking .c-balloon__after, .-speaking .c-balloon__before {
    border-width: 8px 10px 8px 0;
    left: -10px;
}

[data-col="red"] .c-balloon__before {
    border-right-color: #ffebeb;
}

.-speaking.-border-none .c-balloon__after {
    display: none;
}

[data-col="red"] .c-balloon__text {
    background: #ffebeb;
    border-color: #f48789;
}

span.c-balloon__shapes {
    position: absolute;
    top: 16px;
    z-index: 1;
    left: 0;
}

.c-balloon__text {
    max-width: none;
}
.c-balloon__text {
    border-radius: 8px;
    color: #333;
    line-height: 1.6;
    max-width: 560px;
    padding: 1em;
    position: relative;
}



/*--------代表コメント箇所---------*/
[data-col="blue"] .c-balloon__text {
    background: #e2f6ff;
    border-color: #93d2f0;
}

.c-balloon__shapes {
    position: absolute;
    top: 16px;
    z-index: 1;
    left: 0;
}

span.c-balloon__before {
    border-right-color: #e2f6ff;
}

/*--------見出し----------*/
h2.wp-block-heading {
    position: relative;
    padding: 0.677109375em 1em;
    font-size: 32px;
    color: #fff;
    background-color: #008092;
    margin: 4em 0 2em;
}



.post_content h2:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title))::before {
    position: absolute;
    display: block;
    pointer-events: none;
}

h2.wp-block-heading::before, h2.wp-block-heading::after {
    content: "";
    position: absolute;
    left: 0;
    display: block;
    width: 100%;
    height: 4px;
    background-color: #fff;
}

h2.wp-block-heading::before {
    top: 2px;
}

h2.wp-block-heading::after {
    bottom: 2px;
}

/*---------h3---------*/
h3.wp-block-heading {
    padding: 0 0.7916666667em 0.9041666667em;
    font-size: 24px;
    border-bottom: 4px double #c1e9e5;
}

/*---------2カラム------------*/
figure.wp-block-gallery.has-nested-images.columns-default.is-cropped.wp-block-gallery-3.is-layout-flex.wp-block-gallery-is-layout-flex {
    display: flex;
    --wp--style--gallery-gap-default: 1em;
    --wp--style--unstable-gallery-gap: var(--wp--style--gallery-gap-default, var(--gallery-block--gutter-size, var(--wp--style--block-gap, 0.5em)));
    gap: var(--wp--style--gallery-gap-default, var(--gallery-block--gutter-size, var(--wp--style--block-gap, 0.5em)));
    align-items: normal;
}

figure.wp-block-gallery.has-nested-images.columns-default.is-cropped.wp-block-gallery-3.is-layout-flex.wp-block-gallery-is-layout-flex figure.wp-block-image.size-large {
    width: calc(50% - var(--wp--style--unstable-gallery-gap, 16px) * .5);
    position: relative;
    display: inline-block;
    margin: 0;
}

figure.wp-block-gallery.has-nested-images.columns-default.is-cropped.wp-block-gallery-3.is-layout-flex.wp-block-gallery-is-layout-flex figure.wp-block-image.size-large:before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 30%;
    backdrop-filter: blur(3px);
    -webkit-backdrop-filter: blur(3px);
    -webkit-mask-image: linear-gradient(0deg, #000 20%, #0000);
    mask-image: linear-gradient(0deg, #000 20%, #0000);
    pointer-events: none;
}

figure.wp-block-gallery.has-nested-images.columns-default.is-cropped.wp-block-gallery-3.is-layout-flex.wp-block-gallery-is-layout-flex figure.wp-block-image.size-large img {
    flex: 1 0 0%;
    height: 100%;
    object-fit: cover;
    width: 100%;
}

figure.wp-block-gallery.has-nested-images.columns-default.is-cropped.wp-block-gallery-3.is-layout-flex.wp-block-gallery-is-layout-flex figure.wp-block-image.size-large img+figcaption.wp-element-caption {
    left: 0;
    max-height: 100%;
    position: relative;
    top: -50px;
    background: linear-gradient(0deg, #0006, #0000);
    box-sizing: border-box;
    color: #fff;
    font-size: 13px;
    margin: 0;
    overflow: auto;
    padding: 1em;
    scrollbar-color: #0000 #0000;
    scrollbar-gutter: stable both-edges;
    scrollbar-width: thin;
    text-align: center;
    text-shadow: 0 0 1.5px #000;
    will-change: transform;
    z-index: 5;
}

figure.wp-block-gallery.has-nested-images.columns-default.is-cropped.wp-block-gallery-4.is-layout-flex.wp-block-gallery-is-layout-flex {
    display: flex;
    --wp--style--unstable-gallery-gap: var(--wp--style--gallery-gap-default, var(--gallery-block--gutter-size, var(--wp--style--block-gap, 0.5em)));
    gap: var(--wp--style--gallery-gap-default, var(--gallery-block--gutter-size, var(--wp--style--block-gap, 0.5em)));
    align-items: normal;
}

/*--------Before--------*/
.mark_blue {
    background: -webkit-linear-gradient(transparent 64%, var(--color_mark_blue) 0%);
    background: linear-gradient(transparent 64%, #b2ebe4 0%);
}

.swl-marker {
    display: inline;
    padding: 2px;
}

/*---------After--------*/
.mark_yellow {
    background: -webkit-linear-gradient(transparent 64%, var(--color_mark_yellow) 0%);
    background: linear-gradient(transparent 64%, #f2de96 0%);
    color: #e44141;
}

.swl-marker {
    display: inline;
    padding: 2px;
}


/*---------店舗情報--------*/
.has-border.-border01 {
    border: solid 1px #008092;
}
.has-border, div.has-background, p.has-background {
    padding: 1.5em;
}

.post_content a {
    color: #4d80ad;
    transition: 0.2s ease-in-out;
    text-decoration: underline;
}

.post_content a:hover {
    opacity: 0.7;
}

article .entry_body img {
     margin-bottom: 0px;
}

/*--------頂戴コメント----------*/
p.is-style-bg_stripe.has-swl-pale-01-background-color.has-background {
    background: linear-gradient(-45deg, transparent 25%, hsla(0, 0%, 78%, .15) 25%, hsla(0, 0%, 78%, .15) 50%, transparent 50%, transparent 75%, hsla(0, 0%, 78%, .15) 75%, hsla(0, 0%, 78%, .15));
    background-clip: padding-box;
    background-size: 6px 6px;
    position: relative;
    background-color: #fff2f0 !important;
}

p.is-style-crease {
    background-color: #f7f7f7;
    padding: calc(.5em + 20px);
    position: relative;
}

p.is-style-crease:before {
    background-color: inherit;
    border-color: #fff #fff rgba(0, 0, 0, .1) rgba(0, 0, 0, .1);
    border-style: solid;
    border-width: 0 20px 20px 0;
    box-shadow: -1px 1px 1px rgba(0, 0, 0, .05);
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    width: 0;
}

/*---------アイランド型-----------*/
span.c-balloon__iconName {
    display: ruby;
}

p.is-style-bg_stripe {
    background: linear-gradient(-45deg, transparent 25%, hsla(0, 0%, 78%, .15) 25%, hsla(0, 0%, 78%, .15) 50%, transparent 50%, transparent 75%, hsla(0, 0%, 78%, .15) 75%, hsla(0, 0%, 78%, .15));
    background-clip: padding-box;
    background-size: 6px 6px;
    padding: 1.5em;
    position: relative;
}

h2.wp-block-heading+p.has-border.-border02 {
    background: transparent;
}


.swell-block-columns__inner {
    display: flex;
    margin-top: 20px;
    margin-bottom: 20px;
}

.swell-block-columns__inner .swell-block-column:nth-of-type(2) figure.wp-block-image.size-full {
    margin-left: 20px;
}

.swell-block-columns__inner > .swell-block-column:nth-of-type(2) .swell-block-column figure.wp-block-image {
    margin-left: 20px;
}

.swell-block-columns__inner > .swell-block-column:nth-of-type(2) figure.wp-block-image {
    margin-left: 20px;
}

.swell-block-columns__inner .swell-block-column:nth-of-type(2) p {
    margin-left: 20px;
}

.has-border.-border03 h4.wp-block-heading {
    font-weight: bold;
    font-size: 2.0rem;
    margin-left: 20px;
}

.has-border.-border03 h4.wp-block-heading:before {
    content: "";
    position: relative;
    left: -16px;
    top: auto;
    bottom: -27px;
    display: block;
    width: 18px;
    height: 18px;
    border-radius: 999px;
    background-color: rgba(0, 187, 167, 0.5);
}

.u-mb-40 {
    margin-bottom: 30px;
}

figure.wp-block-image.size-large+p {
    margin: 20px 0;
}

.c-balloon.-bln-left {
    margin-top: 20px;
}

figure.alignleft.size-large.is-resized img {
    margin-bottom: 20px;
}

figcaption.wp-element-caption {
    text-align: center;
   font-size: 1.3rem;
}
figure.wp-block-image.size-large img {
    margin-bottom: 20px;
}

figure.wp-block-gallery.has-nested-images.columns-default.is-cropped.wp-block-gallery-2.is-layout-flex.wp-block-gallery-is-layout-flex {
    display: flex;
    margin-top: 20px;
}

figure.wp-block-gallery.has-nested-images.columns-default.is-cropped.wp-block-gallery-2.is-layout-flex.wp-block-gallery-is-layout-flex figure.wp-block-image.size-large {
    margin-left: 20px;
}

figure.wp-block-gallery.has-nested-images.columns-default.is-cropped.wp-block-gallery-2.is-layout-flex.wp-block-gallery-is-layout-flex figcaption.wp-element-caption.wp2 {
    left: 0px;
    max-height: 100%;
    position: relative;
    top: -71px;
    background: linear-gradient(0deg, #0006, #0000);
    color: #fff;
    font-size: 13px;
    margin: 0;
    overflow: auto;
    padding: 1em;
    scrollbar-color: #0000 #0000;
    scrollbar-gutter: stable both-edges;
    scrollbar-width: thin;
    text-align: center;
    text-shadow: 0 0 1.5px #000;
    will-change: transform;
    z-index: 5;
}

figcaption.wp-element-caption.wp2:before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 30px;
    backdrop-filter: blur(3px);
    -webkit-backdrop-filter: blur(3px);
    /* -webkit-mask-image: linear-gradient(0deg, #000 20%, #0000); */
    mask-image: linear-gradient(0deg, #000 20%, #0000);
    pointer-events: none;
}

h3.wp-block-heading {
    margin-bottom: 30px;
    margin-top: 30px;
}