@charset "utf-8";

body {
    background-color: #fff3e6;
    font-family: "Zen Kaku Gothic New", serif;
    letter-spacing: 1px;
}

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

/*======================= 共通クラス =======================*/
.wp-block-image {
    margin-right: 0 !important;
    margin-left: 0 !important;
}

.wp-block-image img {
    width: 100%;
}

p,
a,
li,
td {
    font-weight: 400;
}

p {
    margin-top: 0 !important;
}

h2 {
    margin-top: 0 !important;
    margin-bottom: 20px !important;
    font-size: 2.5rem;
}

.sub_ttl {
    display: flex;
    gap: 10px;
    align-items: center;
    position: relative;
    z-index: 3;
    color: var(--wp--preset--color--sm-accent);
    font-family: "Figtree", sans-serif;
    font-size: 15px;
    font-weight: 600;
    text-transform: uppercase;
}

.sub_ttl::before {
    width: 6px;
    margin-top: 1px;
    border-radius: 50%;
    background-color: var(--wp--preset--color--sm-accent);
    content: "";

    aspect-ratio: 1;
}

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;
}

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

.smb-box__background {
    border: none;
}

/* アイコン */
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 span {
    font-size: 1.1rem;
    font-weight: 500;
}

.r_btn a span {
    color: #333333;
    text-transform: uppercase;
}

.r_btn a {
    display: inline-flex !important;
    justify-content: center;
    align-items: center;
    position: relative;
    position: relative;
    width: 300px !important;
    padding-right: 60px;
    background-color: transparent;
    background-color: transparent;
    color: #333333 !important;
    font-size: 1rem;
    font-weight: bold;
}

.r_btn a::after {
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    width: 27px;
    height: 27px;
    border: 1px solid #333333;
    border-radius: 50%;
    box-sizing: border-box;
    content: "";
}

/* 矢印の棒（ライン） */
.r_btn a::before {
    position: absolute;
    top: 50%;
    right: 13px;
    transform: translateY(-50%);
    width: 31px;
    height: 1px;
    background-color: #333333;
    content: "";
}

/* 矢印の先端 */
.r_btn a span::after {
    position: absolute;
    top: 50%;
    right: 13px;
    transform: translateY(-50%) rotate(45deg);
    width: 7px;
    height: 7px;
    border-top: 1px solid #333333;
    border-right: 1px solid #333333;
    content: "";
}

@media screen and (max-width: 500px) {
    .btn_center {
        justify-content: center !important;
    }
}

/* 右寄せボタン */
.r_btn a {
    display: flex;
    justify-content: flex-end;
    /* margin-right: 30px; */
}

.s_btn a {
    width: 300px !important;
    padding: 13px 0;
    border-radius: 50px;
}

/* アニメ */
/* ホバーアニメーション付きボタン */
.r_btn a {
    position: relative;
    filter: brightness(100%) !important;
    transition: all .3s ease;
}

/* 丸背景 */
.r_btn a::after {
    z-index: 1;
    transition: all .3s ease;
}

/* 矢印の横線（ライン） */
.r_btn a::before {
    z-index: 2;
    transition: all .3s ease;
}

/* 矢印の先端（三角形） */
.r_btn a span::after {
    z-index: 3;
    transition: all .3s ease;
}

/* ホバー時のアニメーション */
.r_btn a:hover::after {
    transform: translateY(-50%) scale(1.1);
    background-color: #ffffff87;
    filter: brightness(100%) !important;
}

.r_btn a:hover::before {
    transform: translateY(-50%) translateX(1px);
}

.r_btn a:hover span::after {
    transform: translateY(-55%) rotate(45deg) translateX(1px);
}

/*======================= ヘッダー =======================*/
/* g_nav */
.l-header .c-fluid-container {
    padding: 15px 30px;
}

.p-global-nav .c-navbar__item>a {
    padding: 0 30px;
    color: #333333;
    font-family: "Figtree", sans-serif;
    font-size: 1.2rem;
    font-weight: 800;
}

.p-global-nav .c-navbar__item>a small {
    font-size: 12px;
    line-height: 1.1;
}

.header_cta.contact span {
    padding: 10px 25px;
    border: solid 1px var(--wp--preset--color--sm-accent);
    border-radius: 50px;
    background-color: var(--wp--preset--color--sm-accent);
    color: #ffffff;
    font-family: "Zen Kaku Gothic New", serif;
    font-size: 15px;
}

.header_cta.contact:hover span {
    background-color: transparent;
    color: var(--wp--preset--color--sm-accent);
    transition: all .3s ease;
}

/* 下層ページヘッダー */
.c-page-header__content,
.c-container,
.c-page-header__title {
    text-align: left !important;
}

.c-page-header__title {
    display: block;
    width: 100%;
}

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

.c-page-header__title {
    color: #333333;
    font-size: 2.5rem;
    text-align: left !important;
}

.c-page-header {
    padding: 200px 0 50px;
    background-color: #fff3e6;
}

.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ヘッダー */
.l-header .c-hamburger-btn .c-hamburger-btn__bar {
    background-color: #333333;
}

.c-hamburger-btn__label {
    color: #333333;
}

.c-drawer {
    background-color: #6e665df2;
}

.c-drawer__inner {
    padding: 0 40px !important;
}

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

.c-drawer a {
    font-weight: 500;
    text-align: center;
}

.dr_cta {
    margin-top: 20px !important;
    padding: 10px 0;
    border: solid 1px;
    border-radius: 50px;
}

/* ページトップボタン */
#page-top svg {
    margin-right: 0 !important;
}

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

.l-footer a,
.l-footer p {
    font-weight: 500;
}

.l-footer__footer {
    background-color: #f8e7d3 !important;
}

.l-footer__widget-area,
.l-footer--footer-2 .l-footer__header {
    padding-bottom: 0 !important;
}

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

.l-footer .l-footer__footer .c-row--middle {
    justify-content: center;
}

.l-footer--footer-2 .l-footer__footer {
    background-color: var(--wp--preset--color--sm-accent) !important;
    color: #ffffff;
}

.l-footer .c-site-branding__title {
    display: none;
}

.l-footer .footer_logo {
    width: 300px;
    margin-bottom: 25px;
}

.footer_insta {
    margin-top: 10px;
    width: 30px;
}

.l-footer__body .footer_tel a {
    color: #fff !important;
}

@media screen and (max-width: 1023px) {
    .c-widget.widget_block .wp-block-columns {
        margin-top: 30px;
    }
}

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

    /* footer */
    .c-widget.widget_block .wp-block-columns {
        gap: var(--_margin-2);
    }
}

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

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

@media screen and (max-width: 435px) {
    .l-footer .c-container {
        padding: 0 5%;
    }
}

/*======================= トップページ =======================*/
#fv {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    height: 85vh;
    padding: 8% 5%;
}

#fv .smb-section__inner,
#fv .c-container,
#fv .smb-section__contents-wrapper,
#fv .smb-section__body {
    position: static;
    height: 100%;
}

.fv-slider {
    position: relative !important;
    z-index: 0;
    width: 100%;
    height: 100%;
    min-height: 800px;
    margin: 0 auto;
    overflow: visible;
}

.fv-slide::after {
    position: absolute;
    z-index: 1;
    background: linear-gradient(to bottom, rgba(249, 249, 249, .4), rgb(248 248 248 / 75%));
    content: "";

    inset: 0;
}

.fv-slide {
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    width: 100%;
    height: 100%;
    transition: opacity 1s ease;
}

.fv-slide::before {
    position: absolute;
    top: 3px;
    left: -10px;
    z-index: 0;
    transform: rotate(3deg);
    width: 100%;
    height: 100%;
    background-color: #0e2e1c;
    content: "";
}

.fv-slide.is-active {
    opacity: 1;
    z-index: 1;
}

.fv-slide img {
    display: block;
    position: relative;
    z-index: 1;
    width: 100%;
    height: 100%;

    object-fit: cover;
}

/* FVテキストグループ */
#fv h2 {
    margin-top: 10px !important;
    margin-bottom: 5px !important;
    color: var(--wp--preset--color--sm-accent);
    font-weight: 900;
}

.fv_sub-copy {
    color: var(--wp--preset--color--sm-accent);
    font-size: 1.1rem;
    font-weight: 600;
}

.fv_content-group {
    position: relative;
}

.fv_txt-group {
    position: absolute;
    bottom: 10%;
    left: 10%;
}

.txt_ly {
    width: 285px;
}

.custom-fade-slider {
    position: relative;
    width: 283px;
    margin: 0 !important;
    overflow: hidden;
}

.custom-fade-slider-inner {
    display: flex;
    width: calc(283px * 2);
    transition: transform .6s ease;
}

.custom-fade-slide {
    flex: 0 0 283px;
    width: 283px;
}

.custom-fade-slide img {
    display: block;
    width: 100%;
    height: 100%;

    object-fit: contain;
}

/* キャッチ */
.animated-title {
    display: block;
    text-align: center;
}

.animated-title span {
    display: inline-block;
    opacity: 0;
    transform: translateY(20px);
    margin: 0 auto;
}

/* アニメーション開始クラス */
.animated-title.is-visible span {
    animation: fadeUp .6s ease forwards;
}

@keyframes fadeUp {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

#catch {
    padding: 100px 0;
}

#catch h2 {
    margin-bottom: 30px !important;
    font-weight: 900;
    letter-spacing: .15em;
}

.fv2_logo {
    width: 30%;
    margin: 30px auto 0 !important;
}

.catch_p {
    margin-bottom: 25px;
    line-height: 2.0;
}

.parallax-image {
    box-shadow: 0 6px 105px 0 #d5c0a6;
}

.catch_img1 {
    position: absolute;
    top: 0;
    left: 2%;
    width: 15% !important;

    transform-origin: bottom;
}

.catch_img1::before {
    position: absolute;
    bottom: -90px;
    left: 10px;
    width: 150px;
    height: 85px;
    background-image: url(https://yamato0904.com/wp-content/uploads/2025/05/plant1.png);
    background-size: contain;
    background-repeat: no-repeat;
    content: "";

    transform-origin: bottom left;
}

.catch_img2 {
    position: absolute;
    top: -20%;
    right: 0;
    width: 15% !important;

    transform-origin: bottom;
}

.catch_img3 {
    position: absolute;
    bottom: -20%;
    left: 0;
    width: 15% !important;

    transform-origin: bottom;
}

.catch_img3::before {
    position: absolute;
    top: -90px;
    right: 10px;
    width: 85px;
    height: 85px;
    background-image: url(https://yamato0904.com/wp-content/uploads/2025/05/illu_3.png);
    background-size: contain;
    background-repeat: no-repeat;
    content: "";

    transform-origin: top right;
}

.catch_img4 {
    position: absolute;
    right: 2%;
    bottom: -20%;
    width: 10% !important;

    transform-origin: bottom;
}

.catch_img4::before {
    position: absolute;
    top: -60px;
    left: 10px;
    width: 47px;
    height: 60px;
    background-image: url(https://yamato0904.com/wp-content/uploads/2025/05/cups_illu.png);
    background-size: contain;
    background-repeat: no-repeat;
    content: "";

    transform-origin: top left;
}

/* 大和リフォーム */
.service {
    position: relative;
}

.service .c-container {
    z-index: 1;
}

.service::after {
    opacity: .5;
    position: absolute;
    z-index: 0;
    width: 100px;
    height: 100%;
    background-image: url(https://yamato0904.com/wp-content/uploads/2025/05/logo_tate-scaled.png);
    background-size: contain;
    content: "";
}

.service_w-ttl {
    width: fit-content !important;
    margin-top: 15px !important;
    margin-bottom: 30px !important;
    margin-left: 0 !important;
    padding: 5px 25px 8px !important;
    background-color: #ffffff !important;
    font-size: 2rem !important;
}

.service_w-ttl::before {
    position: absolute !important;
    top: -4px !important;
    left: -4px !important;
    width: 100%;
    height: 100%;
    border: solid 1px;
    content: "";
}

.ser_sub-ttl {
    margin-bottom: 20px;
    font-weight: 600;
}

.service_pic {
    position: relative;
    overflow: visible;
}

.service_pic img,
.slider_11 img {
    aspect-ratio: 3/3 !important;
    object-fit: cover;
}

.service_pic::before {
    position: absolute;
    z-index: 1;
    background-size: contain;
    background-repeat: no-repeat;
    content: "";

    transform-origin: bottom;
}

.service_1pic::before {
    bottom: -10%;
    left: -20%;
    width: 255px;
    height: 150px;
    background-image: url(https://yamato0904.com/wp-content/uploads/2025/05/house_illu.png);
}

.service_2pic::before {
    bottom: -10%;
    left: -20%;
    width: 250px;
    height: 150px;
    background-image: url(https://yamato0904.com/wp-content/uploads/2025/05/aqua_22.png);
}

.service_3pic::before {
    bottom: -10%;
    left: -20%;
    width: 150px;
    height: 100px;
    background-image: url(https://yamato0904.com/wp-content/uploads/2025/05/wood.png);
}

.ser_parent {
    gap: 100px;
    margin-bottom: 80px;
    padding-bottom: 80px;
    border-bottom: solid 1px;
}

.am_ttl {
    position: relative;
}

.am_ttl::after {
    position: absolute;
    right: -30px;
    bottom: -26px;
    width: 24px;
    height: 100%;
    background-image: url(https://yamato0904.com/wp-content/uploads/2025/05/slush.png);
    background-size: contain;
    background-repeat: no-repeat;
    content: "";

    transform-origin: bottom;
}

.am_ttl::before {
    position: absolute;
    right: -155px;
    bottom: -10px;
    background-image: linear-gradient(transparent 60%, #0d3f0a1f 30%);
    font-size: 1rem;
    content: "by AQUA LINK";
}

.am_ttl2::before {
    right: -170px;
    content: "by WONDERBAL" !important;
}

.hojin_tag-group {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
    margin-top: 10px !important;
}

.hojin_tag {
    margin: 0 0 10px !important;
    padding: 0 .6em;
    border-radius: 3px;
    background-color: #f1e8d4;
    font-size: 1rem;
    font-weight: 500;
}

.hojin_parent {
    gap: 50px;
    padding: 30px;
    border-radius: 5px;
    box-shadow: 0 6px 90px 0 #dfd6cc;
    background-color: #d7cec3;
}

#service .hojin_parent h3 {
    width: 100%;
    margin-top: 0;
    margin-bottom: 25px;
    padding: 0;
    padding-bottom: 15px;
    border-bottom: dashed 1px;
    background-color: transparent !important;
    font-size: 1.8rem !important;
}

#service .hojin_parent h3::before {
    position: static;
    border: none !important;
}

/* 施工実績 */
#works {
    padding-bottom: 0 !important;
}

.works_group {
    padding: 30px;
    border: solid 1px;
    border-radius: 5px;
}

.ba_pic {
    position: relative;
}

.ba_pic::before {
    position: absolute;
    top: 10px;
    left: 10px;
    width: 80px;
    padding: 0 .3em;
    font-weight: 600;
    text-align: center;
}

.before_pic::before {
    border: solid 1px #ffffff;
    color: #ffffff;
    content: "Before";
}

.after_pic::before {
    background-color: #ffffff;
    color: #333333;
    content: "After";
}

/* loop */
#loop {
    z-index: 999;
    overflow: visible;
}

.loop_box .loop_img_02 {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 400px;
    margin-right: 50px !important;
    overflow: visible !important;
    background-image: url(https://yamato0904.com/wp-content/uploads/2025/05/img_loop-1.png);
    background-position: center bottom;
    background-size: contain;
    background-repeat: repeat-x;
    animation: loop_img 130s linear infinite;
}

.loop_box {
    position: relative;
    z-index: 1;
    width: 100%;
    margin: 0 !important;
}

@keyframes loop_img {
    0% {
        background-position: 0 0;
    }

    100% {
        background-position: -4000px 0;
    }
}


/* ３つの約束 */
#promises h2 {
    position: relative;
    z-index: 2;
}

#promises h2::before {
    opacity: .5;
    position: absolute;
    top: -400%;
    left: -40%;
    z-index: -1;
    width: 650px;
    height: 650px;
    background-image: url(https://yamato0904.com/wp-content/uploads/2025/05/w_icon.png);
    background-size: contain;
    background-repeat: no-repeat;
    content: "";

    transform-origin: top left;
}

#promises h3 {
    z-index: 3;
    margin-top: 10px !important;
    margin-bottom: 30px !important;
    padding-bottom: 20px;
    border-bottom: dashed 1px;
    font-size: 2rem;
    font-weight: 700;
}

.pro_sub-ttl {
    position: relative;
    z-index: 3;
    font-family: "Figtree", sans-serif;
    font-size: 1.1rem;
    font-weight: 600;
    text-transform: uppercase;
}

.pro_sub-ttl::before {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 25px;
    height: 25px;
    margin-right: 15px;
    padding: 10px;
    border-radius: 50%;
    background-color: var(--wp--preset--color--sm-accent);
    color: #ffffff;
    font-size: 15px;
    content: "1";
}

.pro_sub-ttl2::before {
    content: "2";
}

.pro_sub-ttl3::before {
    content: "3";
}

.pro_btn-group {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
    justify-content: flex-end;
    margin: 0 !important;
}

.pro_btn {
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 10;
    width: 145px;
    height: 145px;
    margin: 0 !important;
    padding-top: 15px;
    border: solid 1px;
    border-radius: 50%;
}

.pro_btn a {
    z-index: 2;
    font-weight: 600;
}

.pro_btn::before {
    position: absolute;
    top: 20px;
    left: 50%;
    transform: translateX(-50%);
    font-weight: 600;
    content: "1.";
}

.pro_btn2::before {
    content: "2." !important;
}

.pro_btn3::before {
    content: "3." !important;
}

.pro_parent {
    gap: 55px !important;
    z-index: 3;
    margin-bottom: 75px !important;
}

.pro_pic img {
    aspect-ratio: 5/3 !important;
}

.pro_pic::after {
    position: absolute;
    top: -10px;
    left: -10px;
    z-index: 1;
    width: 100%;
    height: 100%;
    border: solid 1px;
    content: "";
}

/* 代表挨拶 */
#greeting h3 {
    margin-bottom: 15px;
}

#greeting .greeting_parent {
    gap: 80px;
}



/*======================= 事業内容 =======================*/
/* ページヘッダータイトル */
.page-id-21 .c-page-header__title::before {
    position: absolute;
    top: -12%;
    transform: translateY(-50%);
    color: #053f0b17;
    font-size: 8rem;
    text-transform: uppercase;
    content: "service";
}

/* 大和リフォーム */
#service1 .service1 {
    padding: 200px 0 !important;
    overflow: visible !important;
}

#service1 .smb-section__inner,
#service1 .c-container {
    position: static;
}

.logo_b {
    opacity: .1;
    position: absolute;
    top: -5%;
    right: -5%;
    z-index: -1;
    width: 30%;
    filter: blur(5px);
}

.busi-btn_group {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
    justify-content: center;
    justify-content: space-between;
    margin: 25px auto 0 !important;
}

.busi_box-btn {
    position: relative;
    width: calc((100% - 15px * 3) / 4);
    margin: 0 !important;
    border: solid 1px;
    border-radius: 0 !important;
    box-shadow: 0 6px 11px 0 #d5c0a64f;
    background-position: 30%;
    background-size: cover;

    -webkit-transform: translateZ(0);
    aspect-ratio: 6/3;
    background-blend-mode: overlay;
}

.busi_box-btn1 {
    background-image: url(https://yamato0904.com/wp-content/uploads/2025/06/24462706_m-1.jpg);
}

.busi_box-btn2 {
    background-image: url(https://yamato0904.com/wp-content/uploads/2025/05/IMG_1275-1.jpg);
}

.busi_box-btn3 {
    background-image: url(https://yamato0904.com/wp-content/uploads/2025/05/skan_2.jpg);
}

.busi_box-btn4 {
    background-image: url(https://yamato0904.com/wp-content/uploads/2025/05/IMG_1250.jpg);
}

.busi_box-btn .smb-box__body {
    position: static;
}

.busi-box_ttl {
    position: absolute;
    bottom: 15px;
    left: 15px;
    width: 100%;
    font-size: 1.1rem;
    font-weight: 600;
    text-align: left;
}

.busi-box_ttl svg {
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
}

/* めも */
.busi_box-btn .smb-box__background {
    opacity: 1 !important;
    border-radius: 0 !important;
    background-color: #ffffffb6 !important;
}

/* 住宅リフォーム */
.renovation {
    position: relative;
}

.renovation::after,
.aquarium::after {
    display: block;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    max-width: var(--container-width, 1100px);
    height: 1px;
    background-color: #333333;
    content: "";
}

.reno_tag {
    width: fit-content;
    margin: 20px 0 5px !important;
    padding: 0 .3em;
    background-color: #dfd3c6;
    font-weight: 600;
}

/* アクアリウム */
.fish_1 {
    position: absolute;
    right: 5%;
    width: 10%;
}

.fish_1::before {
    position: absolute;
    top: -40px;
    left: -26px;
    z-index: 1;
    width: 70px;
    height: 60px;
    background-image: url(https://yamato0904.com/wp-content/uploads/2025/06/bubble.png);
    background-size: contain;
    background-repeat: no-repeat;
    content: "";
}

/* 薪ストーブ */
.service_pic_2::before {
    right: -10% !important;
    left: inherit !important;
}

/* 法人のお客様へ */
.place_tag-group {
    gap: 15px;
}

.place_tag {
    padding: 0 .8em;
    border-radius: 5px;
    background-color: #fff3e6;
    font-weight: 500;
}

.hojin_panel .smb-panels__item__body {
    padding: 0 !important;
}

.hojin_panel img {
    aspect-ratio: 2/1;
    object-fit: cover;
}

.hojin_txt {
    position: absolute;
    bottom: 5px;
    left: 5px;
    z-index: 1;
    padding: 0 .8em;
    padding-left: 30px !important;
    border: solid 1px;
    background-color: #ffffff;
    font-weight: 500;
}

.hojin_txt::before {
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    width: 15px;
    height: 15px;
    margin-left: 8px;
    background-image: url(https://yamato0904.com/wp-content/uploads/2025/06/check.png);
    background-size: contain;
    background-repeat: no-repeat;
    content: "";
}

.pro_btn:hover {
    background: linear-gradient(135deg, #f5e5d3, #f2c99c);
}

/* 対応地域 */
#area h3 {
    margin-bottom: 15px !important;
    padding-bottom: 5px;
    border-bottom: dotted 2px;
}

.area_tag-group {
    gap: 10px;
    margin-top: 15px;
    margin-bottom: 5px;
}

.area_tag {
    padding: 0 .5em;
    border: solid 1px;
    font-size: 15px;
}

.area_tag svg {
    font-size: 13px;
}

/*======================= 会社概要 =======================*/
/* ページヘッダータイトル */
.page-id-19 .c-page-header__title::before {
    position: absolute;
    top: -12%;
    transform: translateY(-50%);
    color: #053f0b17;
    font-size: 8rem;
    text-transform: uppercase;
    content: "company";
}

.overview_pic {
    position: relative;
}

.overview_pic::before {
    position: absolute;
    right: -10px;
    bottom: -10px;
    z-index: 1;
    width: 100%;
    height: 100%;
    border: solid 1px #333333;
    content: "";
}

#page-btn {
    position: relative;
}

#page-btn .wp-block-cover__inner-container {
    position: static;
}

#page-btn .page-btn_txt {
    position: absolute;
    bottom: 5%;
    left: 5%;
    color: #ffffff;
}

#page-btn h3 {
    margin-bottom: 0;
    font-family: "Figtree", sans-serif;
    font-size: 3rem;
    line-height: 1.1;
    text-transform: uppercase;
}

#page-btn .wp-block-cover__inner-container::before {
    position: absolute;
    right: 5%;
    bottom: 10%;
    width: 20px;
    height: 20px;
    background-image: url(https://yamato0904.com/wp-content/uploads/2025/06/arrow.png);
    background-size: contain;
    background-repeat: no-repeat;
    content: "";

    transform-origin: bottom;
}

.page-btn_box {
    padding: 0;
}

/* カバー画像を拡大させるアニメーション */
.page-btn_box .wp-block-cover__image-background {
    transition: transform .5s ease;

    will-change: transform;
}

.page-btn_box:hover .wp-block-cover__image-background {
    transform: scale(1.08);
}

/* 会社概要 bg-color */
figure.wp-block-table td {
    padding: 20px !important;
    border: 1px solid #cfbfb1 !important;
    border-right: none !important;
    border-left: none !important;
}

figure.wp-block-table tr td:first-child,
figure.wp-block-table tr td:last-child {
    border-top: 0 !important;
}

figure.wp-block-table tr td:first-child {
    width: 30% !important;
    font-weight: 500;
}

@media screen and (max-width: 435px) {
    figure.wp-block-table tr td:first-child {
        width: 32%;
        font-size: 1rem !important;
    }
}

/* お知らせ */
.c-entries--simple,
.c-entries--text,
.c-entries--text2 {
    border-top: solid 1px #e9dac9;
}

.c-entries--simple .c-entries__item,
.c-entries--text .c-entries__item,
.c-entries--text2 .c-entries__item {
    border-bottom: solid 1px #e9dac9;
}

/*-------- CTA セクション --------*/


.cta_group {
    padding: 40px;
    border-radius: 5px;
    background-color: #ffffffac;
}

.cta_parent {
    gap: 0 !important;
}


.cta_sub-ttl {
    font-weight: 600;
}

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

.cta_tel-btn a {
    padding-bottom: 0 !important;
}

.cta_tel-btn a span {
    font-family: "Figtree", sans-serif;
    font-size: 2.9rem;
    font-weight: 700;
}

.cta_tel-btn svg {
    position: inherit;
    font-size: 2.1rem;
}

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

.cta_mail-btn a {
    width: 320px;
    padding: 15px;
    border: solid 1px var(--wp--preset--color--sm-accent);
    border-radius: 50px;
    background-color: var(--wp--preset--color--sm-accent);
}

.cta_mail-btn a span {
    color: #ffffff;
}

.cta_mail-btn a:hover {
    background-color: transparent;
}

.cta_mail-btn a:hover span {
    color: var(--wp--preset--color--sm-accent);
}

/*======================= 施工実績 =======================*/
.post-type-archive-works .l-contents__inner {
    padding: 50px 0 100px !important;
}

.post-type-archive-works .c-entry-summary__figure {
    margin-bottom: 10px;
}

.post-type-archive-works .c-entry-summary__title {
    position: relative;
    font-size: 1.1rem;
    font-weight: 500;
}

.post-type-archive-works .c-entry-summary__title::before {
    position: absolute;
    top: 50%;
    right: 8px;
    transform: translateY(-50%);
    width: 23px;
    height: 13px;
    background-image: url(https://yamato0904.com/wp-content/uploads/2025/06/arro_works.png);
    background-size: contain;
    background-repeat: no-repeat;
    content: "";
    transition: right .25s cubic-bezier(.4, 0, .2, 1);
}

.post-type-archive-works .c-page-header__title {
    position: relative;
}

.post-type-archive-works .c-page-header__title::before {
    position: absolute;
    top: -12%;
    transform: translateY(-50%);
    color: #053f0b17;
    font-size: 8rem;
    text-transform: uppercase;
    content: "works";
}

.single-works .c-prev-next-nav__item-label {
    margin-bottom: 5px !important;
}

.single-works .c-prev-next-nav__item-label svg {
    margin: 0 10px !important;
}

/* ホバー時に矢印を少し右へ移動 */
.post-type-archive-works .c-entry-summary__figure:hover+.c-entry-summary__body .c-entry-summary__title::before {
    right: 0;
}

.single .spider__dot img {
    aspect-ratio: 1/1;
    object-fit: cover;
}

/*======================= お問い合わせ =======================*/
.page-id-23 .c-page-header__title::before {
    position: absolute;
    top: -12%;
    transform: translateY(-50%);
    color: #053f0b17;
    font-size: 8rem;
    text-transform: uppercase;
    content: "contact" !important;
}

#contact_tel a.smb-btn {
    padding-bottom: 0 !important;
}

#contact_tel .sub_ttl {
    justify-content: center;
}

.contact_group {
    padding: 30px;
    border: solid 1px;
}

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

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

.contact_tel a span {
    font-family: "Figtree", sans-serif;
    font-size: 3.5rem !important;
    font-weight: 800;
}

.contact_tel a span svg {
    font-size: 2.5rem !important;
}

.smf-action {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 10px;
}

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

.wp-block-snow-monkey-forms-item.smf-item {
    margin-bottom: 50px !important;
}

.smf-form .smf-text-control__control,
.smf-form .smf-textarea-control__control {
    border: none !important;
    border-radius: 5px !important;
    box-shadow: none !important;
}

.smf-form .smf-text-control__control,
.smf-form .smf-text-control__control,
.smf-form .smf-textarea-control__control,
.smf-form .smf-radio-button-control__control,
.smf-form .smf-checkbox-control__control {
    background-color: #f4e6d5;
}


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

.smf-item__description {
    width: fit-content;
    margin-top: 0;
    margin-left: 20px;
    padding: 0 .5em;
    border-radius: 50px;
    background-color: #cd2b43;
    color: #ffffff !important;
    font-size: 13px;
    font-weight: 600;
}

/* ボックス */
.wp-block-snow-monkey-blocks-box.smb-box.contact-form_box {
    padding: 50px !important;
}

.wp-block-snow-monkey-blocks-box.smb-box.contact-form_box .smb-box__background {
    border-radius: 0;
    background-color: #f8f7f7;
}

.smf-item__label {
    font-weight: 600;
}

.smf-form .smf-text-control__control {
    width: 100%;
    border-radius: 0;
}

/* 項目の幅 */
.snow-monkey-form .smf-form.smf-form--simple-table .smf-item .smf-item__col--label {
    flex: 0 0 18em !important;
    max-width: 18em !important;
}

.snow-monkey-form .smf-form.smf-form--simple-table .smf-item .smf-item__col--controls {
    flex: 1 1 calc(100% - 18em) !important;
    max-width: calc(100% - 18em) !important;
}

.smf-radio-buttons-control__control .smf-label {
    margin-bottom: 7px !important;
}

/* 確認ボタン */
.smf-action {
    margin-bottom: 0 !important;
}

.smf-action .smf-button-control__control {
    position: relative;
    width: 400px;
    margin-top: 20px;
    padding-top: 1rem;
    padding-bottom: 1rem;
    border: solid 2px var(--wp--preset--color--sm-accent) !important;
    border-radius: 50px !important;
    border-radius: 0;
    background: var(--wp--preset--color--sm-accent);
    color: #ffffff;
    font-size: 1.1rem;
    font-weight: 600;
    letter-spacing: 3px;
}

.smf-action .smf-button-control__control:hover {
    border: solid 2px var(--wp--preset--color--sm-accent) !important;
    background: #ffffff;
    color: var(--wp--preset--color--sm-accent);
}

.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;
}

/* お問い合わせ完了画面 */
.cfm_list-b {
    width: fit-content;
    margin: 20px auto !important;
    padding: 30px 20px;
    background-color: #e8e8e8;
}

.cfm_last-txt svg.svg-inline--fa {
    margin-right: 5px;
    font-size: 13px;
}

/*===================================== お知らせ =====================================*/
.blog .c-page-header__title::before {
    position: absolute;
    top: -12%;
    transform: translateY(-50%);
    color: #053f0b17;
    font-size: 8rem;
    text-transform: uppercase;
    content: "info" !important;
}

.blog .l-contents__inner {
    margin: 50px 0 !important;
}

.c-meta__item--author {
    display: none;
}

.c-page-header__meta {
    display: block;
    width: 100%;
    text-align: left !important;
}

.c-page-header__meta .c-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    justify-content: flex-start;
    margin: 10px 0 0;
    padding: 0;
}

.c-page-header__meta .c-meta__item {
    list-style: 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 (orientation: landscape) and (max-width: 900px) {
    #fv {
        height: 190vh;
    }

    .fv_spacer {
        height: 150px !important;
    }

    #catch.wp-block-snow-monkey-blocks-section {
        padding: 100px 0 !important;
    }
}

/* iPadが縦向きのみの記述 */
@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) and (orientation:portrait) {
    .fv_spacer {
        display: none !important;
    }

    #catch {
        padding: 0 0 100px !important;
    }
}

@media screen and (max-width: 1200px) {
    .cta_tel-btn a span {
        font-size: 2.5rem;
    }

    .cta_tel-btn svg {
        font-size: 2rem;
    }

    .cta_mail-btn a {
        width: 300px;
    }

    .cta_group {
        padding: 30px;
    }
}

@media screen and (max-width: 1140px) {
    div.h_p {
        display: none;
    }

    .header_cta.contact span {
        padding: 20px;
    }

    .header_cta svg {
        margin-right: 0 !important;
    }

    .p-global-nav .c-navbar__item>a:last-child {
        padding-right: 0 !important;
    }
}

@media screen and (max-width: 1100px) {
    .txt_ly {
        width: 200px;
    }

    .custom-fade-slide img {
        width: 70%;
    }

    #fv h2 {
        font-size: 2rem;
    }

    .fv_sub-copy {
        font-size: 1rem;
    }

    /* キャッチ */
    .catch_img1 {
        top: -61px;
        width: 20% !important;
    }

    .catch_img2 {
        width: 25% !important;
    }

    .catch_img3 {
        width: 11% !important;
    }

    .catch_img3::before {
        top: -56px;
        width: 55px;
        height: 55px;
    }

    .catch_img4 {
        right: 1%;
        bottom: -35%;
        width: 10% !important;
    }

    .catch_img4::before {
        top: -43px;
        left: 56px;
        width: 34px;
        height: 47px;
    }

    #catch {
        padding: 50px 0 100px !important;
    }
}

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

    .page-id-19 .c-page-header__title::before,
    .page-id-23 .c-page-header__title::before,
    .page-id-21 .c-page-header__title::before,
    .blog .c-page-header__title::before,
    .post-type-archive-works .c-page-header__title::before {
        top: 10%;
        font-size: 6rem;
    }

    .sp325 {
        height: 190px !important;
    }

    .loop_box .loop_img_02 {
        height: 210px;
    }

    .pro_btn {
        width: 125px;
        height: 125px;
    }

    .pro_btn a {
        font-size: 15px;
    }
}

@media screen and (max-width: 950px) {
    .catch_img3 {
        bottom: -30%;
        width: 15% !important;
    }

    .cta_parent {
        display: block !important;
    }

    .cta_column1::before {
        display: none;
    }

    .cta_column1 {
        margin-bottom: 30px !important;
    }

    .cta_tel-btn a {
        padding-top: 0 !important;
    }

    .cta_tel-btn a span {
        font-size: 3.5rem;
    }

    .cta_tel-btn svg {
        font-size: 2.5rem;
    }
}

@media screen and (max-width: 900px) {
    .pro_ttl-p {
        display: block !important;
    }

    #promises h3 {
        font-size: 1.5rem;
    }

    .pro_sub-ttl {
        font-size: 1rem;
    }

    .pro_sub-ttl::before {
        width: 15px;
        height: 15px;
        font-size: 12px;
    }

    .works_group {
        padding: 20px;
    }
}

@media screen and (max-width: 850px) {
    .busi_box-btn {
        width: calc((100% - 15px * 1) / 2);
    }

    .catch_img3 {
        bottom: -37%;
        width: 20% !important;
    }

    .catch_img3::before {
        top: -46px;
        width: 45px;
        height: 45px;
    }
}

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

    h2,
    .c-page-header__title {
        font-size: 2rem;
    }

    .footer_insta {
        font-size: 2rem !important;
    }

    .overview_pic img {
        aspect-ratio: 16/9 !important;
    }

    #greeting .greeting_parent {
        gap: 0 !important;
    }

    #greeting .greeting_parent figure {
        opacity: .1;
        position: absolute;
        top: 0;
        left: 50%;
        z-index: -1;
        width: 60%;
    }

    .loop_box .loop_img_02 {
        background-size: cover;
    }

    #overview {
        padding-top: 80px !important;
    }

    .contact_tel a span {
        font-size: 3rem !important;
    }

    .cta_tel-btn a span {
        font-size: 3.1rem;
    }

    .cta_tel-btn svg {
        font-size: 2.3rem;
    }

    .cta_group {
        padding: 55px 50px;
    }

    .logo_b {
        top: -15%;
        width: 60%;
    }

    .pro_parent-r {
        flex-direction: column-reverse;
    }

    .pro_parent {
        gap: 30px !important;
    }

    .catch_img1::before {
        bottom: -50px;
        left: -1px;
        height: 45px;
    }

    .catch_img1 {
        opacity: .2;
        top: -20px;
        width: 30% !important;
    }

    .catch_img2 {
        opacity: .2;
        top: -10%;
        width: 25% !important;
    }

    .catch_img3 {
        opacity: .2;
        bottom: -23%;
        left: 10px;
        z-index: -1;
        width: 25% !important;
    }

    .catch_img3::before {
        top: -36px;
        right: 98px;
        width: 40px;
        height: 40px;
    }

    .catch_img4 {
        opacity: .2;
        right: 3%;
        bottom: -25%;
        z-index: -1;
        width: 20% !important;
    }

    .catch_img4::before {
        left: 85px;
    }

    .ser_parent {
        gap: 50px;
    }

    .service_1pic::before {
        left: 0;
    }

    .service_2pic::before,
    .service_3pic::before {
        left: -10px;
    }

    .fish_1 {
        width: 15%;
    }

    .fish_1::before {
        left: 3px;
        width: 50px;
        height: 40px;
    }
}

@media screen and (max-width: 600px) {
    #greeting .greeting_parent figure {
        left: 40%;
        width: 80%;
    }

    .page-id-19 .c-page-header__title::before,
    .page-id-23 .c-page-header__title::before,
    .page-id-21 .c-page-header__title::before,
    .blog .c-page-header__title::before,
    .post-type-archive-works .c-page-header__title::before {
        top: -10%;
        font-size: 4rem;
    }

    .catch_img1::before {
        width: 40px;
        height: 65px;
    }
}

@media screen and (max-width: 550px) {
    .logo_b {
        top: -10%;
        width: 80%;
    }

    .pro_btn {
        width: 100%;
        height: 50px;
        padding-top: 0;
        border-radius: 5px;
    }

    #promises h3 {
        margin-bottom: 15px !important;
    }

    .pro_br {
        display: none;
    }

    .pro_btn::before {
        top: 50%;
        left: 15%;
        transform: translateY(-50%);
    }

    .pro_btn-group {
        margin-bottom: 50px !important;
    }
}

@media screen and (max-width: 500px) {
    #page-btn h3 {
        font-size: 2rem;
    }

    figure.wp-block-table td {
        padding: 15px !important;
    }

    figure.wp-block-table tr td:first-child {
        width: 40% !important;
    }

    .smf-action .smf-button-control__control {
        width: 280px;
    }

    .contact_group h3 {
        margin-top: 0 !important;
        font-size: 1.1rem;
    }

    .contact_tel a span {
        font-size: 2.5rem !important;
    }

    .contact_tel a span svg {
        font-size: 2rem !important;
    }

    .cta_tel-btn a span {
        font-size: 2.7rem;
    }

    .cta_tel-btn svg {
        font-size: 2.1rem;
    }

    .busi-box_ttl {
        bottom: 5px;
        left: 10px;
        font-size: 1rem;
    }

    .busi-box_ttl svg {
        right: 11px;
    }

    #catch {
        padding: 0 0 100px !important;
    }

    #catch h2 {
        font-size: 1.5rem !important;
    }

    .catch_img1::before {
        bottom: -50px;
        left: -1px;
        height: 45px;
    }

    .catch_img1 {
        top: 50px;
        width: 30% !important;
    }

    .catch_img2 {
        opacity: .2;
        top: 20%;
        width: 45% !important;
    }

    .catch_img3 {
        bottom: -23%;
        width: 40% !important;
    }

    .catch_img3::before {
        top: -36px;
        right: 95px;
        width: 40px;
        height: 40px;
    }

    .catch_img4 {
        right: 4%;
        bottom: 5%;
        width: 30% !important;
    }

    .catch_img4::before {
        left: 65px;
    }

    .loop_box .loop_img_02 {
        height: 160px;
    }

    .fv2_logo {
        width: 50%;
    }
}

@media screen and (max-width: 435px) {
    .sp_none {
        display: none !important;
    }

    .c-container {
        padding: 0 6%;
    }

    .sp_none {
        display: none;
    }

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

    h2,
    .c-page-header__title {
        font-size: 1.8rem;
    }

    /* ヘッダー */
    .l-header__content {
        padding: 0 !important;
    }

    .l-header .c-fluid-container {
        padding: 15px 5%;
    }

    .c-site-branding__title .custom-logo {
        width: 165px;
    }

    .page-id-19 .c-page-header__title::before,
    .page-id-23 .c-page-header__title::before,
    .page-id-21 .c-page-header__title::before,
    .blog .c-page-header__title::before,
    .post-type-archive-works .c-page-header__title::before {
        font-size: 3rem;
    }

    /* フッター */
    .l-footer--footer-2 .l-footer__widget-area {
        padding-top: 10px;
    }

    .l-footer .footer_logo {
        width: 210px;
    }

    /* FV */
    #fv {
        padding: 20% 4%;
    }

    .fv-slide::before {
        transform: rotate(-5deg);
    }

    .fv-slider {
        min-height: 75vh;
    }

    .txt_ly {
        width: 175px;
    }

    .custom-fade-slide img {
        width: 62%;
    }

    #fv h2 {
        margin-bottom: 0 !important;
        font-size: 1.6rem;
    }

    .fv_sub-copy {
        font-size: 15px;
    }

    .fv_txt-group {
        bottom: 7%;
        left: 7%;
    }

    .ser_parent {
        gap: 30px;
    }

    .service_1pic::before {
        bottom: -14%;
        width: 125px;
        height: 110px;
    }

    .service_2pic::before {
        bottom: -15%;
        width: 130px;
        height: 100px;
    }

    .hojin_tag-group {
        gap: 10px;
    }

    #greeting .greeting_parent figure {
        left: 20%;
        width: 100%;
    }

    .contact_tel a span {
        font-size: 2.2rem !important;
    }

    .contact_tel a span svg {
        font-size: 1.6rem !important;
    }

    .cta_tel-btn a span {
        font-size: 2rem;
    }

    .cta_tel-btn svg {
        font-size: 1.7rem;
    }

    .cta_mail-btn a {
        width: 270px;
    }

    .cta_group {
        padding: 35px 30px;
    }

    .busi_box-btn {
        width: 100%;
    }

    .busi-box_ttl {
        bottom: 10px;
        left: 15px;
    }

    .busi-box_ttl svg {
        right: 20px;
    }

    .logo_b {
        top: -3%;
        right: -20%;
        width: 90%;
    }

    .service_w-ttl {
        font-size: 1.5rem !important;
    }

    .am_ttl::after {
        right: -28px;
        bottom: -17px;
    }

    .am_ttl::before {
        font-size: 15px;
    }

    .hojin_parent {
        padding: 20px;
    }

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

    #service .r_btn {
        margin-top: 10px !important;
    }

    #promises h3 {
        padding-bottom: 10px;
        margin-top: 5px !important;
    }
}

@media screen and (max-width: 360px) {
    .service_w-ttl {
        font-size: 1.3rem !important;
    }

    .am_ttl2::before {
        right: -155px !important;
    }

    .am_ttl::before {
        right: -143px;
    }

    .fv_txt-group {
        left: 5%;
    }

    #catch h2 {
        font-size: 1.3rem !important;
    }
}

@media screen and (max-width: 350px) {
    .contact_tel a span {
        font-size: 2rem !important;
    }

    .contact_tel a span svg {
        font-size: 1.4rem !important;
    }
}