.wp-block-lazyblock-circle-pattern {
    overflow: hidden;
    position: absolute;
    width: min(54vw, 330px);
    height: min(54vw, 330px);
}
.wp-block-lazyblock-circle-pattern::before {
    animation: wheel-spin 80s linear infinite;
    background: url('../img/cmn/deco-circle_pattern.svg') no-repeat center / contain;
    content: '';
    display: block;
    margin: auto;
    position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
    width: 100%;
    height: 100%;
}
@keyframes wheel-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}


.deco-flower {
    background: url('../img/cmn/deco-flower.svg') no-repeat center / contain;
    display: inline-block;
    vertical-align: -.25em;
    width: 1.3em;
    height: 1.3em;
}

.deco-flower2 {
    background: url('../img/cmn/deco-flower2.png') no-repeat center / contain;
    display: inline-block;
    vertical-align: -.1em;
    width: 1.2em;
    height: 1.0em;
}


.is-style-attention-note {
    list-style: none;
    padding-left: 1.5em;
    position: relative;
}
.is-style-attention-note li {
    position: relative;
}
.is-style-attention-note li::before {
    content: "※";
    position: absolute;
    left: -1.2em;
    font-weight: bold;
}


/*====================================================
////id page_title
====================================================*/
#page_title {
    overflow: hidden;
}
#page_title::before {
    background-image: url('../img/cmn/bg_pattern-beg.png');
    background-size: min(7.5vw, 75px);
    content: '';
    display: block;
    margin: auto;
    position: absolute;
        bottom: 0;
        right: 0;
    width: 75%;
    height: calc(100% - 120px);
}
.page_title-head {
    display: grid;
}
.page_title-head .en {
    color: var(--mainColor);
    letter-spacing: .05em;
    line-height: 1;
}
/* ////////// mobile ////////// */
@media screen and (max-width: 1199.9px) {
    .page_title-head .en {
        font-size: min(10.5vw, 100px);
        margin: 120px 0 .5em;
    }
    .page_title-head .jp {
        font-size: min(3.7vw, 16px);
    }
}
@media screen and (max-width: 769px) {
}

/* ////////// PC ////////// */
@media print, screen and (min-width: 769px) {
}
@media screen and (min-width: 1200px) {
    #page_title::before {
        right: 3.5%;
        width: 65.5%;
    }
    .page_title-head .en {
        font-size: min(10.5vw, 100px);
        margin: .9em 0 .5em;
    }
    .page_title-head .jp {
        font-size: min(2vw, 18px);
    }
}

@media (hover: hover) {}

/*====================================================
////id |  linkBtn
====================================================*/
.arrow {
    background-color: var(--mainColor);
    border-radius: 100%;
    display: inline-block;
    margin-left: .3em;
    overflow: hidden;
    position: relative;
    transition: .3s ease-in-out;
    vertical-align: -.25em;
    width: 1.2em;
    height: 1.2em;
}
.arrow.black {
    background-color: var(--black);
}
.arrow::before,
.arrow::after {
    background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 6 9"><path fill="%23008C4F" d="M6,4.5L1.46,9l-1.46-1.44,3.09-3.06L0,1.44,1.46,0l4.54,4.5Z" /></svg>') no-repeat center / contain;
    content: '';
    display: block;
    filter: brightness(0) invert(10);
    margin: auto;
    position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
    transition: .3s ease-in-out;
    width: .35em;
    height: .35em;
}
.arrow::before {
    left: 0;
}
.arrow::after {
    left: -200%;
} 

.wp-block-button:not(.is-style-outline) .wp-block-button__link,
.formBtn,
.linkBtn { /*class linkBtn */
	background: #fff;
    border: solid 1px var(--mainColor);
	border-radius: 3em;
    color: var(--mainColor);
	cursor: pointer;
	display: flex;
		align-items: center;
		grid-gap: 0 .4em;
        justify-content: center;
    font-family: var(--f_serif);
    font-size: 1.0em;
    font-weight: 400;
	line-height: 1.4;
	margin: 0;
	opacity: 1;
    overflow: hidden;
	padding: .3em 1.2em .3em 1.5em;
	position: relative;
    text-align: center;
	transition: .3s ease-in-out;
    min-height: 3em;
    max-width: 100%;
	z-index: auto;
}

.wp-block-button:not(.is-style-outline) .wp-block-button__link .arrow ,
.formBtn .arrow,
.linkBtn .arrow {
    background-color: transparent;
}
.wp-block-button:not(.is-style-outline) .wp-block-button__link .arrow::before ,
.wp-block-button:not(.is-style-outline) .wp-block-button__link .arrow::after ,
.formBtn .arrow::before,
.formBtn .arrow::after,
.linkBtn .arrow::before,
.linkBtn .arrow::after {
    filter: none;
}

.wp-block-button .wp-block-button__link .linkBtn-inner,
.linkBtn .linkBtn-inner {
    flex: 1;
    position: relative;
}

.wp-block-button:not(.is-style-outline) .wp-block-button__link.has-vk-color-custom-1-background-color,
.formBtn.bg-mainColor,
.linkBtn.bg-mainColor {
    color: #fff;
}
.wp-block-button:not(.is-style-outline) .wp-block-button__link.has-vk-color-custom-1-background-color .arrow::before,
.wp-block-button:not(.is-style-outline) .wp-block-button__link.has-vk-color-custom-1-background-color .arrow::after,
.formBtn.bg-mainColor .arrow::before,
.formBtn.bg-mainColor .arrow::after,
.linkBtn.bg-mainColor .arrow::before,
.linkBtn.bg-mainColor .arrow::after {
    filter: brightness(0) invert(10);
}

.download.wp-block-button:not(.is-style-outline) .wp-block-button__link ,
.download .linkBtn {
    justify-content: center;
}
.download.wp-block-button:not(.is-style-outline) .wp-block-button__link .arrow ,
.download .linkBtn .arrow {
    background: url('../img/cmn/icon-pdf.svg') no-repeat center / contain;
    border-radius: 0;
    width: 1.6em;
    height: 2em;
}
.download.wp-block-button:not(.is-style-outline) .wp-block-button__link .arrow::before ,
.download.wp-block-button:not(.is-style-outline) .wp-block-button__link .arrow::after ,
.download .linkBtn .arrow::before,
.download .linkBtn .arrow::after {
    display: none;
}
.download.wp-block-button .wp-block-button__link .linkBtn-inner,
.download .linkBtn .linkBtn-inner {
    flex: unset;
}


.onlinestore.wp-block-button:not(.is-style-outline) .wp-block-button__link .linkBtn-inner ,
.onlinestore .linkBtn .linkBtn-inner {
    display: flex;
        align-items: center;
        justify-content: center;
        gap: .4em;
}
.onlinestore.wp-block-button:not(.is-style-outline) .wp-block-button__link .linkBtn-inner::before ,
.onlinestore .linkBtn .linkBtn-inner::before {
    background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 29 30"><path fill="%23008C4F" d="M24.45,0c-.55,0-1.02.37-1.16.9l-1.19,4.6H1.2C.54,5.5,0,6.04,0,6.7c0,.11.02.22.05.33l3.44,11.96c.15.52.62.87,1.15.87h13.77l-.52,2.01H4.75v2.12h13.85c.55,0,1.02-.37,1.16-.9L25.16,2.12h3.84V0h-4.55ZM19.99,13.69l-1.05,4.06h-2.64v-4.06h3.69,0ZM21.56,7.62l-1.01,3.95h-4.23v-3.95h5.25ZM14.19,13.69v4.06h-4.51v-4.06h4.51ZM14.19,7.62v3.95h-4.51v-3.95h4.51ZM7.9,7.62v3.95H3.56l-1.14-3.95h5.49ZM7.9,13.69v4.06h-2.57l-1.17-4.06h3.74ZM6.76,25.59c-1.18,0-2.14.96-2.14,2.15s.96,2.15,2.14,2.15,2.14-.96,2.14-2.15-.96-2.15-2.14-2.15h0ZM17.05,25.71c-1.18,0-2.14.96-2.14,2.15s.96,2.15,2.14,2.15,2.14-.96,2.14-2.15-.96-2.15-2.14-2.15h0Z" /></svg>') no-repeat center / contain;
    content: '';
    display: block;
    width: 1.15em;
    height: 1.15em;
}

.wp-block-button.is-style-outline .wp-block-button__link,
main .is-style-outline .wp-block-button__link,
.linkBtn-small {
	background: transparent;
	border: none;
	border-radius: 0;
    color: var(--mainColor);
	cursor: pointer;
    display: flex;
        align-items: center;
        grid-gap: 0 .8em;
	filter: none;
    font-family: var(--f_serif);
	font-size: 1.0em;
	line-height: 1.4;
	opacity: 1;
    padding: .3em .1em;
	position: relative;
    text-align: left;
    width: auto;
}

@media (hover: hover) {
    a:has(.arrow):hover {
        color: var(--d_mainColor);
        opacity: 1;
    }

    .arrow:hover,
    a:hover .arrow ,
    button:hover .arrow ,
    .formBox .btn-outer:hover .arrow {
        background-color: var(--d_mainColor);
    }
    .arrow:hover::before,
    a:hover .arrow::before ,
    button:hover .arrow::before ,
    .formBox .btn-outer:hover .arrow::before {
        left: 200%;
    }
    .arrow:hover::after,
    a:hover .arrow::after ,
    button:hover .arrow::after ,
    .formBox .btn-outer:hover .arrow::after {
        left: 0;
    }

    .wp-block-button:not(.is-style-outline) .wp-block-button__link:hover,
	.formBox button[type="submit"]:hover,
    .formBtn:hover,
	.linkBtn:hover ,
	a:hover .linkBtn {
        box-shadow: 0 .2em .4em rgba(0, 0, 0, .2);
        filter: brightness(1.1) saturate(1.1);
		opacity: 1;
        /* transform: scale(1.03); */
	}
	.wp-block-button:not(.is-style-outline) .wp-block-button__link:hover .triangle_arrow,
	.formBox button[type="submit"]:hover .triangle_arrow,
    .formBtn:hover .triangle_arrow,
	.linkBtn:hover .triangle_arrow ,
	a:hover .linkBtn .triangle_arrow {
        transform: translateX(.3em);
    }

    .wp-block-button.is-style-outline .wp-block-button__link:hover,
    main .is-style-outline .wp-block-button__link:hover,
    .linkBtn-small:hover {
        color: var(--d_mainColor);
    }
    .wp-block-button.is-style-outline .wp-block-button__link:hover .triangle_arrow,
    main .is-style-outline .wp-block-button__link:hover .triangle_arrow,
    .linkBtn-small:hover .triangle_arrow {
        transform: translateX(.3em);
    }


	.is-style-outline .wp-block-button__link:hover,
	main .is-style-outline .wp-block-button__link:hover,
	a:hover .linkBtn-small ,
	.linkBtn-small:hover {
		opacity: 1;
	}
    .wp-block-button.is-style-outline .wp-block-button__link:hover::after,
    main .is-style-outline .wp-block-button__link:hover::after,
    .linkBtn-small:hover::after {
        transform: translateX(.3em);
    }
    .wp-block-button.is-style-outline .wp-block-button__link:hover::before,
    main .is-style-outline .wp-block-button__link:hover::before,
    .linkBtn-small:hover::before {
        width: calc(100% + .3em);
    }

}


ul.is-style-default, ul.is-style-vk-arrow-mark, ul.is-style-vk-triangle-mark, ul.is-style-vk-check-mark, ul.is-style-vk-check-circle-mark, ul.is-style-vk-check-square-mark, ul.is-style-vk-handpoint-mark, ul.is-style-vk-pencil-mark, ul.is-style-vk-smile-mark, ul.is-style-vk-frown-mark, ul.is-style-vk-numbered-circle-mark, ul.is-style-vk-numbered-square-mark, ol.is-style-default, ol.is-style-vk-arrow-mark, ol.is-style-vk-triangle-mark, ol.is-style-vk-check-mark, ol.is-style-vk-check-circle-mark, ol.is-style-vk-check-square-mark, ol.is-style-vk-handpoint-mark, ol.is-style-vk-pencil-mark, ol.is-style-vk-smile-mark, ol.is-style-vk-frown-mark, ol.is-style-vk-numbered-circle-mark, ol.is-style-vk-numbered-square-mark {
    margin-left: 0 !important;
}
ul.wp-block-list {
    padding-left: 1em;
}
ul.is-style-default li {
    position: relative;
}
ul.is-style-default li::before {
	background: var(--mainColor);
	border-radius: 100%;
	content: '';
    font-weight: 900;
    position: absolute;
        top: .5em;
        left: -1em;
	width: .5em;
	height: .5em;
}
ul.is-style-vk-numbered-square-mark li:before, 
ol.is-style-vk-numbered-square-mark li:before,
ul.is-style-vk-numbered-circle-mark li:before, 
ol.is-style-vk-numbered-circle-mark li:before {
    display: flex;
        align-items: center;
        justify-content: center;
    font-size: .9em;
    width: 1.5em;
    height: 1.5em;
}
ol.wp-block-list {
}
/* ol.wp-block-list > li {
    padding: .3em 0 .8em 1em;
} */
ol.wp-block-list > li::before {
    left: -2.4em;
}
ol.wp-block-list > li:last-child {
    padding-bottom: .3em;
}
ol.wp-block-list > li:last-child::after {
    display: none;
}

li + li {
    margin-top: .3em;
}

.category-wrapper,
.archive-item-category {
    display: flex;
        flex-wrap: wrap;
        gap: .5em;
}
.cate_item {
    color: var(--mainColor);
    font-family: var(--f_serif);
}
.cate_item-border {
    border: solid 1px;
    border-radius: 1em;
    line-height: 1.2;
    padding: .2em .8em;
}

/*====================================================
////id |  mapBox
====================================================*/
.mapBox > div {
	overflow: hidden;
	position: relative;
}
.mapBox iframe {
	margin: auto;
	position: absolute;
		top: 0;
	width: 100%;
	height: 100%;
}

/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {
	.mapBox > div {
		width: 100%;
		height: min(80vw, 400px);
	}
}

@media screen and (max-width:580px) {
}

/* ////////// PC ////////// */
@media print, screen and (min-width: 769px) {
	.mapBox > div {
		width: 100%;
		height: 400px;
	}
}

/*====================================================
////id |  flow
====================================================*/
.flow-item {
    border: solid 1px var(--mainColor);
    display: grid;
    line-height: 1.8;
}
.flow-item dt {
    border-bottom: solid 1px #DBDBDB;
    font-size: 1.375em;
    margin-bottom: .5em;
}
.flow-item-no {
    color: var(--mainColor);
    font-size: 1.1365em;
}
.flow-item dd {
    margin-inline-start: 0;
}
/* ////////// mobile ////////// */
@media screen and (max-width: 768.9px) {
    .flow-item {
        grid-template-rows: auto 1fr;
        padding: 70px 25px 20px;
        position: relative;
    }
    .flow-item-img {
        margin: 10px auto;
        width: 60px;
    }
    .flow-item dt {
        margin-bottom: .5em;
        padding-bottom: .3em;
        text-align: center;
    }
    .flow-item-no {
        display: block;
        line-height: 1.3;
        position: absolute;
            bottom: calc(100% - 65px);
            left: 0;
            right: 0;
        text-align: center;
    }

    .swiper:has(.flow-item) {
        margin-left: -10px;
        overflow: visible;
        width: min(90%, 400px);
    }
    .swiper:has(.flow-item) .swiper-pagination {
        width: 90vw;
    }
    .swiper .vk_slider_item:has(.flow-item) {
        display: block;
    }
    .swiper .container:has(.flow-item),
    .swiper .wp-block-lazyblock-flow-item {
        height: 100%;
    }
    .swiper .wp-block-lazyblock-flow-item {
        padding: 0 10px;
    }
    .swiper .flow-item {
        height: 100%;
    }
}

/* ////////// PC ////////// */
@media print, screen and (min-width: 769px) {
    .flow-item {
        align-items: center;
        grid-gap: min(4vw, 60px);
        grid-template-columns: 80px 1fr;
        margin: auto;
        max-width: 970px;
        padding: 24px 40px 24px 50px;
    }

    .swiper:has(.flow-item) .swiper-pagination {
        display: none;
    }
    .swiper-wrapper:has(.flow-item) {
        display: grid;
            grid-gap: 16px;
        transform: none !important;
    }
}

@media (hover: hover) {}

/*====================================================
////id |  img-text-set
====================================================*/
.img-text-set {
    line-height: 1.8;
}
.img-text-set-img {
    margin: 0 auto 15px;
}
.img-text-set-img:has(.type-radius) ,
.img-text-set-img:has(.type-square) {
    margin-left: auto;
    margin-right: auto;
    width: min(90%, 180px);
}
.img-text-set .coverImg.type-radius {
    border-radius: 100%;
    padding-top: 100%;
}
.img-text-set .coverImg.type-square {
    padding-top: 100%;
}
.img-text-set-text dt {
    font-size: 1.25em;
    line-height: 1.4;
    text-align: center;
    margin-bottom: .3em;
}
.img-text-set-text dd {
    display: flex;
        justify-content: center;
}
/* ////////// mobile ////////// */
@media screen and (max-width: 1199.9px) {
}

/* ////////// PC ////////// */
@media print, screen and (min-width: 1200px) {
}

@media (hover: hover) {}

/*====================================================
////id |  faq
====================================================*/

.faq-item {
    overflow: hidden;
    line-height: 1.6;
    margin: auto;
    max-width: 970px;
}
.wp-block-lazyblock-faq + .wp-block-lazyblock-faq ,
.faq-item + .faq-item {
    margin-top: min(1vw, 20px);
}
.faq-item dt {
    background: var(--l_gray);
    border-radius: 2px;
    display: grid;
        align-items: center;
        grid-template-columns: auto 1fr;
    font-weight: 500;
    position: relative;
    transition: filter .2s ease-in-out;
}
.faq-item dt::before ,
.faq-item .accordion-inner::before {
    box-sizing: border-box;
    color: var(--mainColor);
    display: block;
    font-weight: 500;
    line-height: 1;
    text-align: center;
}
.faq-item dt::before {
    border-radius: 100%;
    content: 'Q';
    display: flex;
        align-items: center;
        justify-content: center;
    padding: 0 0 .15em .3em;
}
.faq-item dt > div {
    display: grid;
        align-items: center;
        grid-template-columns: 1fr auto;
    position: relative;
    transition: .3s ease-in-out;
}
.faq-item .accordion-inner::before {
    content: 'A';
    padding-left: .3em;
}
.faq-item dt .icon {
    position: relative;
    width: .8em;
    height: .8em;
}
.faq-item dt .icon::before,
.faq-item dt .icon::after {
    border-top: solid 1px var(--black);
    content: '';
    display: block;
    margin: auto;
    position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
    transition: .3s ease-in-out;
    width: 100%;
    height: 0;
}
.faq-item dt .icon::after {
    transform: rotate(90deg);
}
.faq-item.open dt .icon::before {
    transform: rotate(180deg);
}
.faq-item.open dt .icon::after {
    opacity: 0;
    transform: rotate(180deg);
}

.faq-item .accordion-inner {
    display: grid;
        align-items: flex-start;
        grid-template-columns: auto 1fr;
    position: relative;
}
/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {
    .faq-item dt::before {
        font-size: 1.2em;
        padding-left: .6em;
        width: 2.6em;
        height: 1.86em;
    }
    .faq-item dt > div {
        border-radius: 6px;
        line-height: 1.4;
        padding: 10px 13px 12px;
    }
    .faq-item dt .text {
        padding-top: .1em;
    }
    .faq-item .accordion-inner {
        padding: 1em 0 1em 1em;
    }
    .faq-item .accordion-inner::before {
        font-size: 1.2em;
        padding-top: .2em;
        width: 1.6em;
    }
    .faq-item .accordion-inner .text {
        padding-left: .5em;
    }
}

/* ////////// PC ////////// */
@media print, screen and (min-width: 769px) {
    .faq-item dt::before {
        font-size: 1.25em;
        width: 3em;
    }
    .faq-item dt > div {
        border-radius: 30px;
        padding: .7em 1.5em .8em 0;
    }
    .faq-item dt .text {
        padding-top: .1em;
    }
    .faq-item .accordion-inner .text {
        padding: 1em 1em 1em 0;
    }
    .faq-item .accordion-inner::before {
        font-size: 1.25em;
        padding-top: .9em;
        text-align: center;
        width: 3em;
    }
}

/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:960px) {
}

@media (hover: hover) {
    .faq-item dt:hover {
        filter: brightness(.95);
    }
}


/*====================================================
////id |  banner-large
====================================================*/
.banner-large {
    display: grid;
        grid-gap: min(3vw, 30px);
}
/* ////////// mobile ////////// */
@media screen and (max-width: 1199.9px) {
    .banner-large {
        margin: auto;
        max-width: 600px;
    }
}

/* ////////// PC ////////// */
@media print, screen and (min-width: 1200px) {
}

/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:960px) {
}

@media (hover: hover) {}


.icon-tel {
    background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 10 13"><path fill="%23008c4f" d="M.89.55C0,1.13-.18,2.94.16,4.42c.35,1.47.95,2.87,1.77,4.14.84,1.26,1.88,2.37,3.07,3.3,1.21.91,2.94,1.49,3.84.91.46-.34.85-.76,1.16-1.24l-.48-.74-1.32-2.04c-.1-.15-.71-.01-1.03.16-.33.24-.6.53-.81.88-.29.17-.53,0-1.04-.23-.77-.51-1.41-1.19-1.88-1.98-.53-.75-.89-1.61-1.04-2.52,0-.56-.06-.85.21-1.04.4-.05.79-.18,1.14-.38.29-.21.67-.72.57-.87L2.98.74l-.48-.74c-.56.08-1.11.27-1.6.55Z" /></svg>') no-repeat center / contain;
    display: inline-block;
    width: .6em;
    height: .8em;
}
.icon-mail {
    background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 17 12"><path fill="%23008c4f" d="M15.02,0H1.98C.89,0,0,.88,0,1.97c0,0,0,0,0,0v8.05c0,1.09.89,1.97,1.98,1.97h13.04c1.09,0,1.98-.88,1.98-1.97h0V1.97C17,.88,16.11,0,15.02,0h0ZM16.05,10.56l-.38.45-5.28-4.3-.82.78c-.61.55-1.54.55-2.14,0l-.82-.78L1.32,11.01l-.38-.45,4.96-4.52L.91,1.37l.3-.39,7.29,5.5L15.79.98l.3.39-5,4.67,4.96,4.52Z" /></svg>') no-repeat center / contain;
    display: inline-block;
    width: 1.1em;
    height: .8em;
}

.sns_icon-instagram {
    background: url('../img/cmn/sns_icon-instagram.png') no-repeat center / contain;
    display: inline-block;
    vertical-align: -.4em;
    width: 1.5em;
    height: 1.5em;
}


/*====================================================
////id |  new-post-wroks
====================================================*/
.new-post-wroks-item-wrapper {
    display: flex;
        flex-wrap: wrap;
        gap: min(7vw, 40px) 0;
        justify-content: center;
}
.new-post-wroks-item-wrapper .works_archive-item {
    padding: 0 min(2vw, 10px);
    width: 50%;
}
.new-post-wroks-item-wrapper.type-thumb .works_archive-item {
    width: 33%;
}
.new-post-wroks-item-wrapper.type-thumb .works_archive-item-coverImg {
    padding-top: 100%;
}

.swiper.new-post-wroks_slider .swiper-slide {
    padding: 0 min(2vw, 10px);
}

/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {
    section:has(.swiper.new-post-wroks_slider) {
        overflow: hidden;
    }
    .swiper.new-post-wroks_slider {
        margin-left: 0;
        overflow: visible;
        width: 88%;
    }
}

@media screen and (max-width: 500px) {
}

/* ////////// PC ////////// */
@media print, screen and (min-width: 769px) {
    .swiper.new-post-wroks_slider .swiper-wrapper {
        flex-wrap: wrap;
        gap: min(7vw, 40px) 0;
        justify-content: center;
        transform: none !important;
    }
    .swiper.new-post-wroks_slider .swiper-slide {
        width: 50% !important;
    }
    .swiper.new-post-wroks_slider.type-thumb .swiper-slide {
        width: 33% !important;
    }

    /* .type-thumb_title.works_archive-item-wrapper {
        grid-template-columns: repeat(auto-fit, minmax(380px, 1fr));
    }
    .type-thumb .works_archive-item-link {
        max-width: 400px;
    }
    .type-thumb.works_archive-item-wrapper {
        grid-template-columns: repeat(auto-fit, minmax(285px, 1fr));
    }
    .type-thumb .works_archive-item-link {
        max-width: 300px;
    } */
}

@media screen and (min-width: 1200px) {
    .new-post-wroks-item-wrapper .works_archive-item {
        width: 33%;
    }
    .new-post-wroks-item-wrapper.type-thumb .works_archive-item {
        width: 25%;
    }
    .swiper.new-post-wroks_slider .swiper-slide {
        width: 33% !important;
    }
    .swiper.new-post-wroks_slider.type-thumb .swiper-slide {
        width: 25% !important;
    }

}

/*====================================================
////id |  cmn_cta
====================================================*/
#cmn_cta {
    background-image: url('../img/cmn/bg_pattern-gry.png');
}
#cmn_cta .cmn_cta-wrapper {
    display: grid;
}
#cmn_cta .cmn_cta-item {
    display: flex;
        align-items: center;
        justify-content: center;
    height: 100%;
}
#cmn_cta .cmn_cta-item-inner {
    display: grid;
        place-items: center;
    position: relative;
    z-index: 5;
}

#cmn_cta .cmn_cta-text {
    display: flex;
        align-items: center;
}

#cmn_cta .cmn_cta-link {
    position: relative;
}
#cmn_cta .cmn_cta-link::before {
    background-color: rgba(255, 255, 255, .5);
    border: solid 1px var(--mainColor);
    box-sizing: border-box;
    content: '';
    display: block;
    margin: auto;
    opacity: 0;
    position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
    transform: scale(.9);
    transition: .2s ease-in-out;
    width: calc(100% - 20px);
    height: calc(100% - 20px);
}
#cmn_cta .cmn_cta-web .icon-mail {
    width: 1.55em;
    height: 1.1em;
}

#cmn_cta .cmn_cta-tel .tel_link {
    letter-spacing: .07em;
    line-height: 1.2;
}
#cmn_cta .cmn_cta-tel .icon-tel {
    margin-right: .2em;
    width: .46em;
    height: .6em;
}
#cmn_cta .cmn_cta-tel .time {
    font-size: min(3.2vw, 14px);
    line-height: 1.6;
    text-align: center;
}
/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {
    #cmn_cta {
        background-size: min(17vw, 80px);
    }
    #cmn_cta .cmn_cta-inner {
        padding: min(6vw, 30px) 0;
    }
    #cmn_cta .cmn_cta-text {
        border-bottom: solid 1px #C5C5C5;
        padding: min(10vw, 40px) 0;
    }
    #cmn_cta .cmn_cta-type {
        border-bottom: solid 1px #C5C5C5;
        height: min(42vw, 200px);
    }
    #cmn_cta .cmn_cta-web {
        font-size: min(5.3vw, 26px);
    }
    #cmn_cta .cmn_cta-tel .tel_link {
        font-size: min(8vw, 33px);
    }
}

/* ////////// PC ////////// */
@media print, screen and (min-width: 769px) {
    #cmn_cta {
        background-size: min(7vw, 130px);
    }
    #cmn_cta .cmn_cta-inner {
        padding: 25px 0;
    }
}

@media screen and (min-width:769px) and (max-width:1199.9px) {
    #cmn_cta .cmn_cta-wrapper {
        grid-gap: 1.5em 0;
        grid-template-columns: 1fr 1fr;
    }
    #cmn_cta .cmn_cta-text {
        border-bottom: solid 1px #C5C5C5;
        grid-column: 1 / 3;
        padding: min(10vw, 40px) 0;
    }
    #cmn_cta .cmn_cta-web + .cmn_cta-tel {
        border-left: solid 1px #C5C5C5;
    }
    #cmn_cta .cmn_cta-type {
        min-height: 200px;
    }
    #cmn_cta .cmn_cta-web {
        font-size: 26px;
    }
    #cmn_cta .cmn_cta-tel .tel_link {
        font-size: 33px;
    }
}


@media screen and (min-width: 1200px) {
    #cmn_cta .cmn_cta-wrapper {
        grid-template-columns: 1fr 32% 32%;
    }
    #cmn_cta .cmn_cta-text {
        padding-right: 2em;
    }
    #cmn_cta .cmn_cta-text .text {
        margin-top: .3em;
    }
    #cmn_cta .cmn_cta-type {
        min-height: 300px;
    }
    #cmn_cta .cmn_cta-item {
        border-left: solid 1px #C5C5C5;
    }
    #cmn_cta .cmn_cta-web {
        font-size: min(2.0vw, 26px);
    }
    #cmn_cta .cmn_cta-tel .tel_link {
        font-size: min(2.4vw, 33px);
    }
}


@media (hover: hover) {
    #cmn_cta .cmn_cta-link:hover::before {
        opacity: 1;
        transform: none;
    }
}

/*====================================================
////id |  top mv
====================================================*/
#mv::before {
    background: url('../img/top/mv-deco-l.webp') no-repeat left bottom / contain;
    content: '';
    display: block;
    margin: auto;
    position: absolute;
        left: 0;
        bottom: calc(min(22.6vw, 78px) * -1);
    width: min(53vw, 380px);
        max-width: 30%;
    height: 50%;
    z-index: 10;
}
#mv::after {
    background: url('../img/top/mv-deco-r.webp') no-repeat top right / contain;
    content: '';
    display: block;
    margin: auto;
    position: absolute;
        right: 0;
        top: 0;
    width: min(50vw, 390px);
        max-width: 32%;
    height: 50%;
    z-index: 10;
}
#mv .innerBox::before {
    content: 'scroll';
    color: var(--mainColor);
    font-family: var(--f_en);
    font-size: min(2.7vw, 1.2rem);
    display: block;
    margin: auto;
    position: absolute;
        bottom: min(40vw, 180px);
        left: 0;
        right: 0;
    text-align: center;
    width: 3em;
    height: 2em;
}
#mv .innerBox::after {
    animation: scrollBar 3s infinite;
    border-left: solid 1px var(--mainColor);
    content: '';
    display: block;
    margin: auto;
    position: absolute;
        bottom: 0;
        left: 0;
        right: 0;
    width: 0;
    /* height: min(37vw, 175px); */
}
@keyframes scrollBar {
  /* 下付きから消える */
  0% {
    bottom: 0;
    height: min(37vw, 175px);
  }
  47% {
    bottom: 0;
    height: 0;
  }

  /* 上付きから伸びてくる */
  50% {
    bottom: min(37vw, 175px);
    height: 0;
  }
  97% {
    bottom: 0;
    height: min(37vw, 175px);
  }

  /* 最後にリセット */
  100% {
    bottom: 0;
    height: min(37vw, 175px);
  }
}

/* ////////// PC ////////// */
@media print, screen and (min-width: 1200px) {
}

@media (hover: hover) {}

/*====================================================
////id |  xxx
====================================================*/

/* ////////// mobile ////////// */
@media screen and (max-width: 1199.9px) {
}

/* ////////// PC ////////// */
@media print, screen and (min-width: 1200px) {
}

@media (hover: hover) {}
