@charset "utf-8";

body {
    font-family: "Noto Sans JP", sans-serif;
    letter-spacing: 1px;
}

.l-contents__inner:last-child {
    padding-bottom: 0;
}

/*======================= 共通クラス =======================*/
p,
a,
li,
td {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
}

p {
    margin-top: 0 !important;
}

h2 {
    margin-top: 0 !important;
    margin-bottom: 30px !important;
    font-size: 3rem;
    line-height: 1.5 !important;
}

a {
    text-decoration: none !important;
}

/* padding・margin左右上下リセット */
.p_0 {
    padding: 0 !important;
}

.m_0 {
    margin: 0 !important;
}

.p_20 {
    padding: 20px !important;
}

.pt_0 {
    padding-top: 0 !important;
}

.pb_0 {
    padding-bottom: 0 !important;
}

.pb_0 {
    padding-bottom: 0 !important;
}

.pl_0 {
    padding-left: 0 !important;
}

.pr_0 {
    padding-right: 0 !important;
}

.mt_0 {
    margin-top: 0 !important;
}

.mb_0 {
    margin-bottom: 0 !important;
}

.ml_0 {
    margin-left: 0 !important;
}

.mr_0 {
    margin-right: 0 !important;
}

/* padding・margin 10px・20px */
.pt_10 {
    padding-top: 10px !important;
}

.pb_10 {
    padding-bottom: 10px !important;
}

.pt_20 {
    padding-top: 20px !important;
}

.pb_20 {
    padding-bottom: 20px !important;
}

.pt_30 {
    padding-top: 30px !important;
}

.pb_30 {
    padding-bottom: 30px !important;
}

.mt_10 {
    margin-top: 10px !important;
}

.mb_10 {
    margin-bottom: 10px !important;
}

.mt_20 {
    margin-top: 20px !important;
}

.mb_20 {
    margin-bottom: 20px !important;
}

/* FLEX関連 */
.d_flex {
    display: flex;
}

.d_flex.f_wrap {
    flex-wrap: wrap;
}

.inline_b {
    display: inline-block;
}

.jc_ct {
    justify-content: center;
}

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

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

.ai_ct {
    align-items: center;
}

.fd_cm {
    flex-direction: column;
}

.fd_rr {
    flex-direction: row-reverse;
}

.gap_0 {
    gap: 0 !important;
}

.gap_10 {
    gap: 10px !important;
}

.gap_20 {
    gap: 20px !important;
}

/* Z-INDEX */
.z_0 {
    z-index: 0;
}

.z_1 {
    z-index: 1;
}

.z_999 {
    z-index: 999;
}

/* POSITION */
.p_ab {
    position: absolute;
}

.p_rel {
    position: relative;
}

.o_hidden {
    overflow: hidden;
}

.maru {
    font-family: "Zen Maru Gothic", serif;
}

.mincho {
    font-family: "Shippori Mincho B1", serif;
    font-weight: 500;
}

.br_20 {
    border-radius: 20px !important;
}

/* アイコン */
svg.svg-inline--fa {
    margin-right: 10px;
}

.p-global-nav--hover-extend-underline .c-navbar__item.cta:hover>a:after {
    width: 0;
}

/*======================= ボタン =======================*/
a.smb-btn {
    align-items: center;
    position: relative;
    z-index: 999;
    width: 300px !important;
    height: 50px;
    border: solid 1px var(--wp--preset--color--sm-accent);
    border-radius: 0;
    background-color: var(--wp--preset--color--sm-accent);
    color: #ffffff !important;
    font-weight: 500 !important;
}

a.smb-btn:hover {
    background-color: #ffffff;
    color: var(--wp--preset--color--sm-accent) !important;
    filter: brightness(100%);
    transition: .5s;
}

/*======================= ヘッダー =======================*/
/* g_nav */
.l-header {
    padding: 10px 0;
}

.header-contact a {
    height: 45px;
    background-color: #ffffff90;
    color: var(--wp--preset--color--sm-accent) !important;
}

.header-contact a:hover {
    border-radius: 100px;
    background-color: #ffffff;
    transition: .5s;
}

.c-row--middle {
    justify-content: center;
    align-items: center;
}

.c-navbar__item.header-contact {
    align-items: center;
}

.p-global-nav .c-navbar__item a:hover {
    color: #abceff;
}

.p-global-nav .c-navbar__item>a {
    color: #ffffff;
}

@media (min-width: 1024px) {
    [data-scrolled=true] .l-header--sticky-overlay-colored-lg {
        box-shadow: none;
        background-color: transparent;
        color: #ffffff;
        backdrop-filter: blur(17px) brightness(.53);
        -webkit-backdrop-filter: blur(17px) brightness(.53);
    }
}

/* 下層ページヘッダー */
.c-page-header__title {
    font-size: 2.5rem !important;
}

.l-contents__inner {
    margin-top: 0 !important;
}

.c-page-header {
    padding: 100px 0 50px;
    background-color: #4b4b4bea;
    color: #ffffff;
    font-family: "Shippori Mincho B1", serif;
}

.c-page-header::before {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: rgba(47, 47, 47, .62);
    content: " ";
}

.c-page-header[data-has-image=true] {
    height: unset;
}

.c-page-header[data-has-image=true] .c-page-header__content {
    color: unset;
}

.c-page-header__bgimage>img,
.c-page-header__bgimage>picture>img {
    display: none;
}

.tel a {
    line-height: 1.1 !important;
}

.tel-num {
    font-size: 1.5rem !important;
}

.tel-num svg {
    font-size: 1.3rem;
}

.l-header span.time {
    padding-top: 10px !important;
    font-size: 14px !important;
    font-weight: 400;
}

/* spヘッダー */
@media (max-width: 1024px) {
    .l-header .c-fluid-container {
        padding: 0 5%;
    }
}

@media not all and (min-width: 1024px) {
    [data-scrolled=true] .l-header--sticky-overlay-colored-sm {
        background: #333333;
    }
}

.c-drawer {
    background-color: #132139f2;
}

.c-drawer__item {
    padding-bottom: 20px;
    font-size: 1rem;
    text-align: center;
}

.sp_contact {
    margin-top: 30px !important;
    padding: 13px 0;
    border: solid 1px #ffffff;
    text-align: center;
}

.l-header .c-hamburger-btn__bar {
    background-color: #ffffff;
}

.c-hamburger-btn__label {
    color: #ffffff !important;
}

.c-drawer__menu {
    padding-top: 50px !important;
}

.sp_contact {
    margin-top: 20px !important;
    border: solid 1px #ffffff;
    text-align: center;
}

/* TOPへ戻るボタン */
#page-top svg.svg-inline--fa {
    margin-right: 0 !important;
}

/*======================= フッター =======================*/
.l-footer {
    border-top: none;
    background-color: var(--wp--preset--color--sm-accent);
    color: #ffffff;
}

.footer-logo {
    width: 70%;
    margin-bottom: 20px !important;
    margin-left: 0 !important;
}

.l-footer--footer-2 .l-footer__header {
    display: none;
}

.l-footer--footer-2 .l-footer__body {
    border-top: none;
}

.l-footer--footer-2 .l-footer__footer {
    padding: 0 0 20px 0;
    background-color: var(--wp--preset--color--sm-accent);
}

.l-footer-widget-area__item {
    margin-bottom: 0 !important;
}

.l-footer-widget-area__item a,
.l-footer-widget-area__item p {
    font-size: 1rem;
}

#block-7 .footer-btn {
    width: 100% !important;
}

#block-7 .footer-btn a {
    width: 100% !important;
    border: solid 1px #ffffff !important;
}

#block-7 .footer-btn a span {
    color: #ffffff;
}

.banner-e {
    width: 20%;
}

/*======================= TOP =======================*/
/* mv */
#mv video{
filter: brightness(80%);
}
#mv .c-container.alignfull.c-container--no-padding,#mv .smb-section__inner{
position:static
}
.p_m{
position:absolute;
bottom:5%;
	right:5%;
}
/* fv */
h2 {
    font-family: "Shippori Mincho B1", serif;
    font-weight: 700 !important;
}

#fv {
    padding: 0;
    overflow: visible;
}

#fv .com-name {
    width: 80%;
    margin-bottom: 20px;
    margin-left: 0 !important;
}

#fv .fv_slider .spider {
    height: 80vh !important;
}

#fv .wp-block-snow-monkey-blocks-spider-slider.smb-spider-slider.fv_slider {
    z-index: 0;
    margin-top: 0 !important;
    filter: brightness(45%);
}

#fv .fv_txt-group {
    position: absolute;
    bottom: 5%;
    left: 5%;
    z-index: 1;
    color: #ffffff;
}

#fv .fv-banner {
    position: absolute;
    right: 2%;
    bottom: -5%;
    z-index: 3;
    width: 25%;
}

#mv .fv-banner:hover {
    transform: scale(1.05);
    transition: .5s;
}

/* 事業内容 */
.business-column {
    z-index: 999;
    padding: 20px 0;
}

.right-column {
    display: flex;
    justify-content: flex-end;
}

.top-column {
    width: 100% !important;
}

.bottom-column {
    position: absolute;
    top: 50%;
    right: 0;
    z-index: 0;
    transform: translateY(-50%);
    width: 100% !important;
    margin-top: 0 !important;
}

.t-bleft_figure img {
    aspect-ratio: 18/9 !important;
    object-fit: cover;
}

.bottom-column_left {
    position: absolute;
    top: 50%;
    left: 0;
    z-index: 0;
    transform: translateY(-50%);
    width: 100% !important;
    margin-top: 0 !important;
}

.rbusiness-column {
    justify-content: flex-end;
}

.t-bright_column {
    position: absolute;
    top: 50%;
    right: 9%;
    transform: translateY(-50%);
    max-width: 49%;
    min-height: 330px;
    padding: 40px;
    overflow: visible;
}

.t-left_column {
    position: absolute;
    top: 50%;
    left: 9%;
    z-index: 3;
    transform: translateY(-50%);
    max-width: 49%;
    min-height: 330px;
    padding: 40px;
    overflow: visible;
}

.tb_column {
    z-index: revert-layer;
    margin-top: 100px !important;
    padding: 30px 50px !important;
    background-color: #ffffff;
}

.tb_column::before {
    position: absolute;
    top: 5%;
    bottom: 5%;
    left: -3%;
    z-index: -1;
    width: 100%;
    height: 100%;
    border: solid 1px var(--wp--preset--color--sm-accent);
    content: "";
}

/* 施工実績 */
/* 背景枠線 */
#work,
#greeting,
#mm,
#busi-flow {
    background-image: linear-gradient(0deg, transparent calc(100% - 1px), #f5f5f5 calc(100% - 1px)), linear-gradient(90deg, transparent calc(100% - 1px), #f0f0f0 calc(100% - 1px));
    background-position: center center;
    background-size: 60px 60px;
    background-repeat: repeat;
}

#work .c-entries-carousel .spider__dots {
    margin-top: 0;
}

.spider__dots:not([data-thumbnails=true]) .spider__dot[aria-current=true] {
    background-color: #c6c6c6;
}

#work .c-entry-summary__figure {
    margin-bottom: 0;

    aspect-ratio: 5 / 3;
}

#work .c-entry-summary__title {
    padding: 10px;
    background-color: #565656;
    color: #ffffff;
    text-align: center;
}

/* スライダーの矢印を外に出す */
.wp-block-snow-monkey-blocks-spider-contents-slider {
    overflow: visible !important;
}

.spider__arrow[data-direction="prev"] {
    left: -50px !important;
}

.spider__arrow[data-direction="next"] {
    right: -50px !important;
}

/* スライドの矢印の色・太さ */
.spider__arrow[data-direction="prev"]:before,
.spider__arrow[data-direction="next"]:before {
    border-color: #2e2e2e !important;
}

/* .spider__arrow {
    border: 2px solid #ffffff !important;
    border-radius: 50% !important;
} */

.spider__arrow[data-direction=prev]:before {
    border-bottom: 4px solid var(--spider--arrow-color);
    border-left: 4px solid var(--spider--arrow-color);
}

.spider__arrow[data-direction=next]:before {
    border-top: 4px solid var(--spider--arrow-color);
    border-right: 4px solid var(--spider--arrow-color);
}

@media screen and (max-width: 1250px) {

    /* スライダーの矢印の位置調整 */
    .spider>.spider__arrows {
        top: 33% !important;
    }

    .spider__arrow[data-direction="prev"] {
        left: -8px !important;
    }

    .spider__arrow[data-direction="next"] {
        right: -8px !important;
    }

    .spider__arrow {
        border: none !important;
    }
}

/* 選ばれる理由 */
#reason h3 {
    margin-bottom: 0 !important;
    font-size: 2rem;
}

.reason_ttl-group {
    margin-bottom: 15px !important;
    border-bottom: solid 1px;
    font-style: italic;
}

#reason .reason_num {
    font-size: 2.5rem;
}

.reason_img {
    z-index: 1;
}

#reason .reason_img::before {
    position: absolute;
    top: 5%;
    right: -3%;
    bottom: 5%;
    z-index: -1;
    width: 100%;
    height: 100%;
    border: solid 1px var(--wp--preset--color--sm-accent);
    content: "";
}

#reason .reason_img-left::before {
    right: inherit;
    left: -3% !important;
}

/* 対応地域 */
#area {
    overflow: hidden;
}

#area h2 {
    z-index: 3;
}

#area .map-img {
    opacity: .3;
    position: absolute;
    top: -59%;
    right: 0;
}

.area_name-group {
    gap: 10px;
}

#area .area_name {
    padding: .2em 1em;
    background-color: #d9e7f3;
    color: var(--wp--preset--color--sm-accent);
    font-weight: 500 !important;
}

/*--- 写真ループ ---*/
#loop {
    top: 0;
    right: 0;
    transform: translate(50%, -50%);
}

#loop figure {
    /* 写真画面幅で縮小させない */
    flex-shrink: 0;
    margin-top: 0;
}

/* 写真一つ目のグループ */
#loop_1 {
    top: 0;
    right: 0;
    /* 繰り返し右から左へアニメーション */
    width: 1800px;
    overflow: hidden;
    animation: loopAnimation_1 25s linear infinite;
}

/* 写真二つ目のグループ */
#loop_2 {
    top: 0;
    right: -1800px;
    /* 繰り返し右から左へアニメーション */
    width: 1800px;
    overflow: hidden;
    animation: loopAnimation_1 25s linear infinite;
}

@keyframes loopAnimation_1 {
    0% {
        transform: translate(0%);

        -webkit-transform: translate(0%);
    }

    100% {
        transform: translate(-100%);

        -webkit-transform: translate(-100%);
    }
}

/* 代表挨拶 */
.round_com-img {
    opacity: .2;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 50%;
    animation: 60s linear infinite rotation;
}

@keyframes rotation {
    0% {
        transform: rotate(0);
    }

    100% {
        transform: rotate(360deg);
    }
}
.d_p{
width:70%;
}
.d_p img{
width:100%!important;
}
/* .d_p img {
    object-position: 55% 30%;
} */

.greeting-illu {
    position: absolute;
    right: 0;
    bottom: 0;
    width: 25%;
}

.greeting-illu img {
    width: 100% !important;
}

/* 採用情報 */
#top-rec .top-rec_group {
    background: linear-gradient(300deg, rgba(0, 191, 255, .913), #39bbccea, #177299e0);
    background-size: 180% 180%;
    animation: gradient-animation 18s ease infinite;
}

@keyframes gradient-animation {
    0% {
        background-position: 0 50%;
    }

    50% {
        background-position: 100% 50%;
    }

    100% {
        background-position: 0 50%;
    }
}

#top-rec h2 {
    margin-bottom: 0 !important;
    font-size: 4.5rem;
}

#top-rec h3 {
    margin-top: 0 !important;
    margin-bottom: 25px !important;
}

.top-rec_group {
    padding: 85px 50px;
}

.top-rec_group:hover {
    transition: .5s;

    -webkit-backdrop-filter: blur(17px) brightness(.43);
}

.rec_img-ttl {
    opacity: .4;
    position: absolute;
    top: -35%;
    left: 0;
    width: 30%;
}

.rec_tag-group {
    gap: 15px;
}

.rec_tag {
    padding: .25em 1em;
    border-radius: 100px;
    background-color: #ffffffe5;
    color: #177399;
    font-weight: 600;
}

.rec_arrow {
    position: absolute;
    top: 50%;
    right: 5%;
    transform: translateY(-50%);
    width: 9%;
    padding: 35px;
    border: solid 2px;
    border-radius: 50%;
}

#top-rec .top-rec_group:hover+.rec_arrow {
    border: none;
    box-shadow: 0 6px 16px 0 rgb(228 228 228 / 40%);
    background: #359fe6;
}

.rec_arrow:hover {
    border: none;
    box-shadow: 0 6px 16px 0 rgb(228 228 228 / 40%);
    background: #359fe6;
}

.rec_txt1 {
    margin-top: 10px !important;
    margin-bottom: 10px !important;
    margin-left: 0 !important;
    font-size: 1.1rem;
    font-weight: 500;
}

.rec_txt1 strong {
    width: fit-content;
    padding-top: 3px;
    padding-bottom: 1px;
    border-bottom: double 4px;
}

/*======================= CTA =======================*/
#cta .smb-panels__item__body {
    padding: 15px 0 !important;
}

#cta .smb-panels__item {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

#cta .panel_left .smb-panels__item {
    box-shadow: none;
    background: transparent;
}

#cta .panel_right .smb-panels__item {
    background-color: var(--wp--preset--color--sm-accent);
    color: #ffffff;
}

#cta .panel_right .smb-panels__item:hover {
    background-color: #ffffff;
    color: var(--wp--preset--color--sm-accent);
    transition: .5s;
}

#cta .panel_left .smb-panels__item {
    border: solid 1px var(--wp--preset--color--sm-accent);
    color: var(--wp--preset--color--sm-accent);
}

#cta .panel_left .smb-panels__item:hover {
    background-color: var(--wp--preset--color--sm-accent);
    color: #ffffff;
    transition: .5s;
}

#cta .cta_subttl {
    font-size: 1.5rem;
    font-weight: 600 !important;
}

#cta .cta_subttl.cta_subttl-l {
    font-size: 2.3rem !important;
    line-height: 1.3;
}

#cta .cta_icon {
    display: grid;
    position: absolute;
    top: 50%;
    left: 4%;
    transform: translateY(-50%);
    width: 55px;
    height: 55px;
    padding: 5px;
    border-radius: 100px;
    background-color: #ffffff;
    color: var(--wp--preset--color--sm-accent);

    place-items: center;
}

#cta .smb-panels__item:hover .cta_icon {
    background-color: var(--wp--preset--color--sm-accent);
    color: #ffffff;
}

#cta .cta_icon.cta_icon-left {
    background-color: var(--wp--preset--color--sm-accent) !important;
    color: #ffffff !important;
}

#cta .panel_left:hover .cta_icon.cta_icon-left {
    background-color: #ffffff !important;
    color: var(--wp--preset--color--sm-accent) !important;
}

#cta .cta_icon svg {
    margin-right: 3px !important;
    font-size: 1.3rem;
}

/*======================= 事業内容 =======================*/
.page-id-21 .c-page-header {
    background-image: url(https://ozawakenkou.com/wp-content/uploads/2024/11/28618164_m.jpg);
}

.busi-logo {
    opacity: .2;
    position: absolute;
    top: -10%;
    left: 0;
    z-index: 1;
    width: 43%;
}

.busi-logo img {
    width: 100% !important;
}

#mm {
    overflow: hidden;
}

#mm h2 {
    padding-bottom: 5px;
    border-bottom: solid 1px;
}

#mm h3,
#recruit2 h3 {
    font-size: 2rem;
}

.mm_column-r {
    z-index: 1;
}

.mm_column-r::before {
    position: absolute;
    top: 5%;
    right: -3%;
    bottom: 5%;
    z-index: -1;
    width: 100%;
    height: 100%;
    border: solid 1px var(--wp--preset--color--sm-accent);
    content: "";
}

#mm .smb-panels__item__body {
    z-index: 1;
    padding: 0;
}

#mm .flow_panel {
    position: relative;
}

#mm .flow_panel:hover .flow_bg {
    filter: brightness(20%);
    transition: .5s;
}

#mm .sub-ttl {
    z-index: 1;
    width: fit-content;
    margin-bottom: 20px;
    padding: 0 5px;
    border-bottom: solid 2px #ffffff;
    font-family: "Shippori Mincho B1", serif;
    font-size: 1.8rem;
    font-weight: 600;
}

#mm .flow_desc {
    font-weight: 500;
}

#mm .flow_num {
    opacity: .7;
    position: absolute;
    top: 4%;
    left: 4%;
    z-index: 1;
    width: 40%;
}

#mm .flow_num img {
    width: 100%;
}

#mm .flow_txt-group {
    display: inline-block;
    position: absolute;
    top: 10%;
    left: 50%;
    z-index: 1;
    transform: translateX(-50%);
    width: 100%;
    padding: 20px;
    color: #ffffff;
}

#mm .flow_bg {
    z-index: 0;
    margin-top: 0;
    filter: brightness(60%);
}

#mm .flow_bg img {
    display: block;
    transition-duration: .5s;

    object-fit: cover;
    aspect-ratio: 3 / 3 !important;
}

/*======================= 採用情報 =======================*/
/* ページヘッダー */
.page-id-101 .c-page-header {
    background-image: url(https://ozawakenkou.com/wp-content/uploads/2024/11/25856197_l-1.jpg);
    background-position: 28% 35%;
    background-color: transparent;
}

/* #recruit-top,
#recruit2 {
    background: linear-gradient(300deg, rgb(16, 16, 16), #3f3f3f, #a1a1a1);
    background-size: 180% 180%;
    animation: gradient-animation 18s ease infinite;
}

@keyframes gradient-animation {
    0% {
        background-position: 0 50%;
    }

    50% {
        background-position: 100% 50%;
    }

    100% {
        background-position: 0 50%;
    }
} */

#recruit-top,
#recruit2 {
    background: linear-gradient(300deg, rgb(8, 159, 209), #39bbcc, #177399);
    background-size: 180% 180%;
    animation: gradient-animation 18s ease infinite;
}

@keyframes gradient-animation {
    0% {
        background-position: 0 50%;
    }

    50% {
        background-position: 100% 50%;
    }

    100% {
        background-position: 0 50%;
    }
}

#recruit-top a.smb-btn,
#ctar a.smb-btn {
    height: 55px;
    border: none;
    border-radius: 100px;
    background-color: #ffffffcf;
    color: #177399 !important;
    font-size: 1.2rem;
}

#recruit-top a.smb-btn:hover,
#ctar a.smb-btn:hover {
    background-color: #177399;
    color: #ffffff !important;
}

#recruit-top .rec_ttl-img {
    opacity: .5;
    position: absolute;
    top: -8%;
    left: 5%;
    width: 25%;
}

#recruit-top .rec_ttl-img img {
    width: 100% !important;
}

/* 画像付きトピック */
.topic_group {
    display: flex;
    gap: 20px !important;
    margin-top: 40px !important;
}

.rec_topic-group {
    margin: 0 !important;
    padding: 15px 0 15px 0;
    border-radius: 15px;
    box-shadow: 0 6px 16px 0 rgba(234, 234, 234, .234);
    background-color: #ffffff;
    color: var(--wp--preset--color--sm-accent);
}

p.rec_topic {
    margin-left: 30px !important;
    color: #177399;
    font-size: 1.2rem;
    font-weight: 600;
    text-align: center;
}

.rec_topic span {
    width: fit-content;
    background-image: linear-gradient(transparent 60%, #d8ebffa3 30%);
}

.rec-sub {
    width: fit-content;
    margin-top: 20px !important;
    margin-bottom: 20px !important;
    font-size: 1.3rem;
}

.rec-sub strong {
    padding-bottom: 1px !important;
    border-bottom: double 4px;
}

.rec_topic-img {
    position: absolute;
    bottom: -1px;
    left: 12px;
    width: 87px;
    max-width: 30%;
}

.illust_01 {
    position: absolute;
    top: -19%;
    right: 0;
    width: 30%;
}

.illust_01 img {
    width: 100% !important;
}

/* ctar */
.ctar_column {
    position: relative;
    border-radius: 5px;
}

.ctar_img-l {
    position: absolute;
    bottom: 0;
    left: 4%;
    z-index: 999;
    width: 20%;
}

.ctar_img-r {
    position: absolute;
    right: 4%;
    bottom: 0;
    z-index: 999;
    width: 20%;
}

/*======================= 施工実績 =======================*/


/*======================= 会社概要 =======================*/
/* ページヘッダー */
.page-id-19 .c-page-header {
    background-image: url(https://ozawakenkou.com/wp-content/uploads/2024/04/97F532FC-80EF-4554-87BD-A67829F6969B_0.jpg);
    background-position: 28% 35%;
    background-color: transparent;
}


/* 会社概要 bg-color */
figure.wp-block-table tr td:first-child,
figure.wp-block-table tr td:first-child {
    width: 30%;
    background-color: #172945;
    color: #ffffff;
    font-size: 1.1rem;
    font-weight: 400;
    font-weight: 500;
    text-align: center;
    vertical-align: middle;
}

figure.wp-block-table tr td:last-child,
figure.wp-block-table tr td:last-child {
    background-color: #ffffff;
}

@media screen and (max-width: 435px) {

    figure.wp-block-table tr td:first-child,
    figure.wp-block-table tr td:first-child {
        width: 32%;
        font-size: 1rem !important;
    }
}

/* ページトップボタン */
.page-btn {
    padding: 30px;
}

.page-btn .wp-block-cover__inner-container {
    width: 400px;
}

/*======================= お問い合わせ =======================*/
#tel-cta .cta_subttl {
    font-size: 2.5rem;
}

/* placeholder */
.smf-text-control__control::placeholder {
    color: #cccccc !important;
}

.smf-form--letter .smf-item {
    padding: 1.5rem 0;
}

/* 必須の文字 */
.smf-form--letter .smf-item__col--label {
    display: flex;
    gap: 10px;
    align-items: center;
    padding-bottom: 10px;
}

.smf-item__description {
    width: fit-content;
    margin-bottom: 7px;
    padding: .1em .8em;
    border-radius: 20px;
    background-color: #cd2b43;
    color: #ffffff !important;
    font-size: 14px;
    font-weight: 600;
}

.smf-item__label {
    color: var(--wp--preset--color--sm-accent);
    font-weight: 600;
}

.smf-form .smf-text-control__control,
.smf-form .smf-textarea-control__control {
    border: none !important;
}

/* 確認ボタン */
.smf-action .smf-button-control__control {
    position: relative;
    width: 100%;
    max-width: 400px;
    margin-top: 20px;
    padding-top: 1rem;
    padding-bottom: 1rem;
    border: solid 2px #2d2d2d !important;
    border-radius: 0;
    background: #333333;
    color: #ffffff;
    font-size: 1.1rem;
    font-weight: 600;
    letter-spacing: 3px;
}

.smf-action .smf-button-control__control:hover {
    border: solid 2px #2d2d2d !important;
    background: #ffffff;
    color: #2d2d2d;
}

.smf-action .smf-button-control+.smf-button-control {
    margin-left: 0 !important;
}

.smf-action .smf-button-control__control {
    margin-bottom: 20px;
}

#autozip {
    display: none !important;
}

/* プライバシーポリシー */
#privacy h3 {
    margin-bottom: 10px !important;
    padding-left: 10px;
    border-left: solid 3px var(--wp--preset--color--sm-accent);
    font-weight: 700;
}

/*===================================== お知らせ =====================================*/
.c-meta__item--author {
    display: none;
}

/* 投稿(シンプル)のSPレスポンシブ */
@media screen and (max-width: 639px) {
    .c-entries--simple .c-entry-summary__content {
        display: block;
    }

    .c-entries--simple .c-entry-summary__figure {
        float: inherit;
        width: 100%;
        margin-bottom: 20px;
    }
}

/*=================================================================================*/
/*=================================== レスポンシブ ===================================*/
/*=================================================================================*/
@media screen and (max-width: 1180px) {
    #mm .flow_txt-group {
        top: 0;
    }
}

@media screen and (max-width: 1065px) {
    .rec_arrow {
        padding: 30px;
    }

    #recruit2 .rec2-column {
        display: block;
    }

    .rec2_child {
        margin: 0 10% 30px 10% !important;
    }

    #mm .flow_txt-group {
        top: -6%;
    }
}

@media screen and (max-width: 1023px) {
    .c-page-header {
        padding: 130px 0 50px !important;
    }

    .c-widget.widget_block .wp-block-columns {
        margin-top: 30px;
    }

    [data-scrolled=true] .l-header--sticky-overlay-colored-sm {
        box-shadow: none;
        background-color: transparent;
        color: #ffffff;
      backdrop-filter: blur(17px) brightness(.53);
        -webkit-backdrop-filter: blur(17px) brightness(.53);
    }
	.l-header{
		    box-shadow: none;
    background-color: transparent;
    color: #ffffff;
    backdrop-filter: blur(17px) brightness(.53);
}
    /* TOP */
    #fv .fv_slider .spider {
        aspect-ratio: 16/9 !important;
    }

    #mv .fv-banner {
        width: 35%;
    }

    .bottom-column {
        top: 30%;
    }

    .t-bleft_figure img {
        aspect-ratio: 12/9 !important;
    }

    #recruit-top .rec_ttl-img {
        top: -6% !important;
        left: 3% !important;
        width: 36% !important;
    }

    .l-header .c-hamburger-btn__bar {
        background-color: #ffffff;
    }

    .busi-logo {
        top: -3%;
        width: 53%;
    }

    #mm .flow_txt-group {
        top: 2%;
    }
}

/* デバイスが横向き、画面の横幅が1023px 以下の場合の記述 */
@media (orientation: landscape) and (max-width: 1023px) {
    #fv .fv_slider .spider {
        aspect-ratio: 23 / 6 !important;
    }

    #fv .com-name {
        width: 40%;
    }

    #fv h2 {
        font-size: 1.5rem;
        margin-bottom: 10px !important;
    }
}

@media (orientation: landscape) and (max-width: 768px) {
    #fv .fv_slider .spider {
        aspect-ratio: 16 / 5 !important;
    }
}

@media screen and (max-width: 910px) {
    .rec_arrow {
        top: inherit;
        right: 4%;
        bottom: 8%;
        transform: inherit;
        padding: 24px;
    }

    .reason_ttl-group {
        gap: 20px;
    }

    #reason h3 {
        z-index: 1;
        font-size: 1.7rem;
    }

    #reason .reason_num {
        font-size: 2.1rem;
    }
}

@media screen and (max-width: 850px) {
    #area .area_name {
        padding: .1em .5em;
        font-size: 15px !important;
    }
}

@media screen and (max-width: 800px) {
    .rec_arrow {
        padding: 20px;
    }

    .rec_img-ttl {
        top: -45%;
        width: 50%;
    }

    .top-rec_group {
        padding: 65px 30px;
    }

    .illust_01 {
        position: absolute;
        top: -11%;
        right: 0;
        width: 45%;
    }

    #recruit-top .rec_ttl-img {
        top: -5% !important;
        left: 5% !important;
        width: 44% !important;
    }
}

@media screen and (max-width: 781px) {
    .c-widget.widget_block .wp-block-columns {
        gap: var(--_margin-2);
    }
/* 
    .d_p img {
        aspect-ratio: 16/9 !important;
        object-position: 30% 0;
    } */

    .greeting-illu {
        right: inherit;
        left: 0;
    }

    #page-btn {
        padding-bottom: 0 !important;
    }

    #page-btn .btn_column {
        gap: 0;
    }

    .page-btn {
        margin-top: 0 !important;
    }

    .round_com-img {
        top: -10%;
        bottom: inherit;
        left: -15%;
        width: 80%;
    }

    .reason2_column {
        flex-direction: column-reverse;
    }
}

@media screen and (max-width: 720px) {
    #mm .flow_txt-group {
        top: -5%;
    }
}

@media screen and (max-width: 700px) {
	.p_m{
width:30%;
	}
	.p_m img{
		width:100%;
}
    #top-rec h2 {
        font-size: 4rem;
    }

    .rec_arrow {
        bottom: 5%;
        width: 15%;
        padding: 28px;
    }

    .top-rec_group {
        padding: 85px 30px;
    }

    .c-row[data-md-columns="2"] {
        --_item-width: 100%;
    }

    #mm .flow_txt-group {
        top: 2%;
    }
}

@media screen and (max-width: 650px) {
    h2 {
        font-size: 2.5rem;
    }

    .l-header.l-header--1row {
        padding: 0;
    }

    .l-header .c-fluid-container {
        padding-right: 15px;
        padding-left: 15px;
    }

    .l-footer--footer-2 .l-footer__widget-area {
        padding-top: 20px !important;
    }

    .l-footer--footer-2 .l-footer__widget-area a,
    .l-footer--footer-2 .l-footer__widget-area p {
        font-size: 15px;
    }

    #mv .fv-banner {
        bottom: -12%;
        width: 55%;
    }
}

@media screen and (max-width: 550px) {
    .tb_column {
        margin-top: 200px !important;
    }

    .rec_arrow {
        bottom: 4%;
        width: 15%;
        padding: 22px;
    }

    .busi-logo {
        top: -1%;
        width: 75%;
    }

    #reason .reason_num {
        position: absolute;
        bottom: -35%;
        z-index: 0;
        color: #b8b8b8a2;
        font-size: 4.5rem;
    }
}

@media screen and (max-width: 500px) {
    .btn-center.smb-buttons {
        justify-content: center;
    }

    #recruit-top .rec_ttl-img {
        top: -1% !important;
        left: 7% !important;
        z-index: 1;
        width: 44% !important;
    }

    #recruit-top .wp-block-snow-monkey-blocks-buttons.smb-buttons {
        justify-content: center;
    }

    #recruit-top a.smb-btn,
    #ctar a.smb-btn {
        height: 48px;
    }

    .rec2_child {
        margin: 0 0 35px 0 !important;
    }

    /* CTA */
    #cta .cta_subttl.cta_subttl-l {
        font-size: 1.8rem !important;
    }

    #cta .cta_subttl {
        font-size: 1.2rem;
    }

    .rea_column {
        gap: 10px;
        margin-bottom: 60px !important;
    }
}

/*=================================== SPレスポンシブ ===================================*/
@media screen and (max-width: 435px) {

    #contact-form .c-container,
    .archive .c-fluid-container,
    #overview .c-container,
    #greeting .c-container,
    #ctar .c-container,
    #recruit2 .c-container,
    #recruit-top .c-container,
    #cta .c-container,
    #mm .c-container,
    #reason .c-container,
    #service .c-container,
    #work .c-container,
    #reason .c-container,
    #area .c-container,
    #top-rec .c-container,
    #news .c-container,
    #insta .c-container, #rec_banner .c-container {
        padding: 0 5%;
    }

    h2 {
        font-size: 2rem;
    }

    .sp_none {
        display: none;
    }

    .c-page-header__title {
        font-size: 2rem !important;
    }

    .c-page-header {
        padding: 90px 0 40px !important;
    }

    /* TOP */
.c-site-branding__title .custom-logo {
    width: 170px!important;
}
	
    #fv h2 {
        font-size: 1.5rem;
    }

    #fv .com-name {
        width: 90%;
        margin-bottom: 10px;
    }

    #fv .fv_slider .spider {
        height: 65vh !important;

        aspect-ratio: 12 / 9 !important;
    }

    #mv .fv-banner {
        bottom: -8%;
        width: 63%;
    }

    .bottom-column {
        top: 20%;
    }

    .tb_column {
        padding: 30px !important;
    }

    #service .smb-buttons {
        justify-content: center;
    }

    #area .map-img {
        opacity: .2;
    }

    .rec_img-ttl {
        top: -35%;
        width: 80%;
    }

    #top-rec h2 {
        font-size: 3.5rem;
    }

    .top-rec_group {
        padding: 85px 20px;
    }

    .rec_tag {
        padding: .1em 1em;
    }

    .rec_arrow {
        bottom: 3%;
        width: 17%;
        padding: 17px;
    }

    #area .map-img {
        top: 0;
    }

    /* ボタン */
    a.smb-btn {
        width: 270px !important;
    }

    /* 事業内容 */
    .page-id-21 .c-page-header {
        background-position: 40% 11%;
    }

    .busi-logo {
        top: -1%;
        width: 85%;
    }

    #mm .mm_column-r img {
        aspect-ratio: 16/9 !important;
        object-position: 30% 37%;
    }

    #mm .sub-ttl {
        margin-bottom: 15px;
        font-size: 1.5rem;
    }

    #mm .flow_txt-group {
        top: 2%;
    }

    #reason h3 {
        font-size: 1.3rem;
    }

    /* 会社概要 */
    .page-id-19 .c-page-header {
        background-position: 88% 24%;
    }

    /* 採用情報 */
	.rec_topic-img {
    left: 7px;
		width: 77px;}
    .page-id-101 .c-page-header {
        background-position: 45% 34%;
    }

    .illust_01 {
        position: absolute;
        top: -9%;
        right: 0;
        width: 40%;
    }

    #recruit-top .rec_ttl-img {
        top: 0 !important;
        width: 52% !important;
    }

    .illust_01 img {
        width: 100% !important;

        aspect-ratio: 3 / 4;
        object-fit: cover;
    }
    #members h2 {
        font-size: 1.8rem;
    }
    /* お問い合わせ */
    .smf-form--letter .smf-item {
        padding: 1rem 0;
    }

    #cta .cta_icon {
        width: 35px;
        height: 35px;
    }

    #cta .cta_icon svg {
        font-size: 1rem;
    }

    #cta .cta_subttl.cta_subttl-l {
        font-size: 1.7rem !important;
    }

    #cta .cta_subttl {
        font-size: 1.1rem;
    }

    #cta .cta_txt {
        font-size: 15px;
    }

    /* フッター */
    .l-footer .c-container {
        padding: 0 5%;
    }

    .footer-logo {
      width: 70%;
        margin-bottom: 10px !important;
        margin-top: 15px !important;
    }

    .c-row__col.c-row__col--1-1.c-row__col--lg-fit {
        margin-bottom: 10px;
    }

    .l-footer--footer-2 .c-copyright {
        font-size: 12px;
        text-align: center;
    }

    .banner-e {
        width: 25%;
    }

    .round_com-img {
        width: 100%;
    }
}

@media screen and (max-width: 350px) {
    #mm .flow_txt-group {
        top: -5%;
    }

    #mm .sub-ttl {
        margin-bottom: 10px;
    }
		.rec_topic-img {
		width: 65px;}
	.ctar_img-l {
		left:-2%;
}

}