@charset "utf-8";

body {
    background-color: #ffffff;
    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 {
    color: #333333;
    font-weight: 400;
}

p {
    margin-top: 0 !important;
}

a {
    text-decoration: none !important;
}

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

.m_0 {
    margin: 0 !important;
}

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

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

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


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

.mb_0 {
    margin-bottom: 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;
}

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

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

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

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

.inline_b {
    display: inline-block;
}

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

.smb-box__background {
    border: none;
}

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

#page-top svg.svg-inline--fa {
    margin-right: 0;
}

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

/*======================= ボタン =======================*/
a.smb-btn {
    position: relative;
    width: 280px !important;
    padding: 13px 20px;
    border: solid 2px var(--wp--preset--color--sm-accent);
    border-radius: 50px;
    font-weight: 600;
}

a.smb-btn:hover {
    border: solid 2px var(--wp--preset--color--sm-accent);
    background-color: transparent;
    color: var(--wp--preset--color--sm-accent);
    filter: brightness(100%);
}

/* a.smb-btn svg {
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
    width: 15px;
    height: 15px;
    margin-right: 0 !important;
    padding: 7px;
    border-radius: 50%;
    background-color: #ffffff;
    color: var(--wp--preset--color--sm-accent);
} */
.icon-wrap {
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
    width: 30px;
    height: 30px;
    background: #fff;
    border-radius: 50%;
}

.icon-wrap svg {
    color: var(--accent-color);
    margin-right: 0 !important;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

a.smb-btn:hover .icon-wrap {
    background-color: var(--wp--preset--color--sm-accent);
}

a.smb-btn:hover .icon-wrap svg {
    color: #ffffff;
}

a.smb-btn svg.fa-envelope {
    font-size: 13px !important;
}

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

/*======================= ヘッダー =======================*/
/* 下層ページヘッダー */
.l-header {
    margin: 45px 35px 0 !important;
}

.l-header .c-row__col.c-row__col--fit.u-invisible-md-down {
    border-radius: 50px;
    box-shadow: 0 6px 16px 0 rgb(228 228 228 / 26%);
    background-color: #ffffffa8;
    color: #333333;
}

.header_cta.contact a {
    padding-right: 0 !important;
}

.header_cta.contact span {
    padding: 7px 20px;
    border-radius: 50px;
    background-color: var(--wp--preset--color--sm-accent);
    color: #ffffff;
    font-weight: 600 !important;
    border: solid 2px var(--wp--preset--color--sm-accent);
}

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

.p-global-nav .c-navbar__item>a {
    padding: 15px;
    font-weight: 500 !important;
}

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

.c-page-header {
    margin: 25px;
    padding: 170px 0 80px;
    border-radius: 50px;
    background-color: #feefec;
}

.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__title {
    position: relative;
    padding-left: 30px;
}

.c-page-header__title::before {
    position: absolute;
    top: 54%;
    left: 0;
    transform: translateY(-50%);
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background-color: rgb(255 159 140);
    content: "";
}

.p-breadcrumbs-wrapper {
    width: fit-content;
    margin-left: 0;
    border-radius: 1000px;
    background-color: #ffffff;

    translate: 0 -120%;
    padding-inline: 20px;
}

.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__bar {
    background-color: var(--wp--preset--color--sm-accent);
}

.c-hamburger-btn__label {
    color: var(--wp--preset--color--sm-accent);
    font-size: 9px;
    font-weight: 600;
    letter-spacing: .05em;
}

.c-drawer {
    margin: 10px;
    border-radius: 20px;
    background-color: #eb362dee;
}

.c-drawer a {
    color: #ffffff;
    font-weight: 600;
}

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

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

.c-hamburger-btn__bar {
    height: 2px;
    border-radius: 50px;
}

.sp_cta {
    margin-top: 20px !important;
    border: solid 1px #ffffff;
    border-radius: 30px;
    background-color: #ffffff2b;
}

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

/*======================= フッター =======================*/
.l-footer {
    background-color: #ffefec;
}

.l-footer--footer-2 .l-footer__footer {
    padding-top: 0;
    background-color: #ffefec;
}

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

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

.footer_logo {
    width: 300px;
    margin-bottom: 20px;
}

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

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

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

/*======================= トップページ =======================*/
h2 {
    z-index: 0;
    margin-top: 0 !important;
    margin-bottom: 30px !important;
    font-size: 2.25rem;
    /* line-height: 1; */
}

h2.h2-d,
span.h2-d {
    position: relative;
}

h2.h2-d::before,
span.h2-d::before {
    position: absolute;
    top: 50%;
    left: -50px;
    z-index: -1;
    transform: translateY(-50%);
    width: 130px;
    height: 130px;
    border-radius: 50%;
    background-color: #ea33411f;
    filter: blur(20px);
    content: "";
}

.sub_ttl {
    color: rgb(255 159 140);
    font-weight: 600;
    text-transform: uppercase;
}

#reasons .sub_ttl {
    color: rgb(255, 183, 28) !important;
    font-weight: 600;
}

h3 {
    margin-top: 0 !important;
}

/* FV */
#fv {
    padding: 0 !important;
}

.fv_group {
    width: calc(100% - 50px) !important;
    margin: 25px auto 0 !important;
}

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

#fv h2 {
    color: #ffffff;
    font-size: 4.3rem;
    font-weight: 900;
    line-height: 1.2;
    letter-spacing: .1em;
}

#fv h2 span.fv_sub-ttl {
    font-size: 1.25rem;
    font-weight: 600;
    letter-spacing: .07em;
}

.fv_tate {
    position: absolute;
    right: 10%;
    bottom: 20%;
    z-index: 10;
    color: #ffffff;
    font-size: 1.8rem;
    font-weight: 700;
    letter-spacing: .3em;

    writing-mode: vertical-rl;
}

#fv span.fv_tate-2 {
    padding-top: 80px;
}

.fv_slider img {
    border-radius: 50px;

    aspect-ratio: 2/1;
    object-fit: cover;
}

.fv_slider {
    position: relative;
}

.fv_slider::before {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    width: 100%;
    height: 100%;
    border-radius: 50px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(3, 3, 3, .251) 100%);
    content: "";

    pointer-events: none;
}

.fv_tag-group {
    gap: 15px;
    margin-top: 30px !important;
}

.fv_tag {
    padding: 0 .8em;
    border: solid 1px;
    border-radius: 50px;
    color: #ffffff;
    font-size: 15px;
    font-weight: 500;
}

/* 文字スライド */
#loop_txt {
    padding: 0;
}

.slide_box {
    height: 160px;
    margin-top: 80px;
}

.slide_box .smb-box__background {
    border: none;
}

.slide_box::before {
    display: block;
    opacity: .5;
    position: absolute;
    height: 100%;
    padding-right: 1px !important;
    padding-right: 30px !important;
    background: linear-gradient(90deg, rgb(255 226 233) 0%, rgb(230 211 108 / 24%) 40%, rgb(243 143 40 / 27%) 100%);
    content: "";
    animation: txt_slide 40s linear infinite;

    -webkit-mask-size: auto 100%;
    mask-size: auto 100%;
    will-change: mask-position;
    inset: 0;
    -webkit-mask-repeat: repeat-x;
    mask-repeat: repeat-x;
    -webkit-mask-position: left center;
    mask-position: left center;
    -webkit-mask-image: url(/wp-content/uploads/2025/06/loop_txt-img-scaled.png);
    mask-image: url(/wp-content/uploads/2025/06/loop_txt-img-scaled.png);
    -webkit-animation: txt_slide 40s linear infinite;
}

@keyframes txt_slide {
    0% {
        -webkit-mask-position: 0 center;
        mask-position: 0 center;
    }

    100% {
        -webkit-mask-position: 100% center;
        mask-position: 100% center;
    }
}

/* 募集情報 */
#rec-section {
    margin: 25px 0 !important;
    padding: 100px 0 80px;
    border-radius: 50px;
}

#rec-section h2 {
    position: relative;
    width: fit-content;
    margin-bottom: 0 !important;
    margin-left: 0 !important;
    padding: 0 .7em;
    border-radius: 50px;
    background-color: var(--wp--preset--color--sm-accent);
    color: #ffffff;
    font-size: 15px !important;
    font-weight: 500;
    line-height: 1.6 !important;
}

#rec-section h3 {
    margin-top: 0 !important;
    margin-bottom: 15px;
    font-size: 2.25rem !important;
}

#rec-section a.smb-btn {
    border: solid 2px #ffffff;
    background: linear-gradient(58deg, rgb(255 139 18) 0%, rgb(237 114 153) 97%);
}

#rec-section a.smb-btn:hover {
    border: solid 2px;
    background: transparent;
}

.rec_img1 {
    position: relative;
}

.rec_parent {
    gap: 60px !important;
    z-index: 1;
}

.work_time {
    margin-bottom: 15px;
    padding: 0 .7em;
    border: solid 1px;
    border-radius: 50px;
    font-size: 14px;
}

.salary_flex {
    gap: 0;
}

.salary {
    font-family: "Ubuntu", sans-serif;
    font-size: 2.2rem;
    font-weight: 500;
    line-height: 1;
}

.yen {
    padding-left: 3px;
    font-family: "Zen Kaku Gothic New", serif;
    font-size: 15px;
}

.salary_1 {
    display: flex;
    flex-direction: column;
    align-content: center;
    align-items: center;
    position: relative;
    padding-right: 35px;
}

.salary_2 {
    display: flex;
    flex-direction: column;
    align-content: center;
    align-items: center;
    padding-left: 35px;
}

.salary_1::before {
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    width: 1px;
    height: 80%;
    background-color: #333333;
    content: "";
}


/* メモ */
.rec_con-ttl {
    margin-bottom: 10px !important;
    border-bottom: dotted 2px;
    font-size: 15px;
    font-weight: 500;
}

#rec-section .smb-panels>.c-row>.c-row__col {
    width: calc((100% - 30px) / 4);
    margin: 0;
    padding: 0;
}

#rec-section .c-row.c-row--fill.c-row--margin {
    gap: 10px;
}

#rec-section .rec_con-icon {
    width: 100px !important;
    height: 100px;

    object-fit: contain;
}

#rec-section .c-row {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

#rec-section .c-row__col.rec_con-panel {
    flex: 1 0 calc((100% - 30px) / 4);
    box-sizing: border-box;

    aspect-ratio: 1 / 1;
}

#rec-section .smb-panels__item {
    height: 100%;
    border-radius: 20px;
    box-shadow: none;
    background-color: #ffffff96 !important;
}

#rec-section .smb-panels__item__body {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 100%;
    padding: 20px;
}

/* 事業内容 */
#business {
    padding-bottom: 0 !important;
}

#business h2 {
    position: relative;
}

.busi_parent {
    gap: 80px !important;
}

.busi_img img {
    border-radius: 20px;
}

/* loop */
.loop_box .loop_img_02 {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 350px;
    background-image: url(/wp-content/uploads/2025/06/loop_t-1.png);
    background-position: center bottom;
    background-size: contain;
    background-repeat: repeat-x;
    animation: loop_img 90s linear infinite;
}

.loop_box {
    position: relative;
    width: 100%;
    margin: 0 !important;
}

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

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

.sp325.top-l {
    height: 300px !important;
}

/* 実績紹介 */
#works {
    margin-top: 50px !important;
    padding: 120px 0;
    border-radius: 50px 50px 0 0;
    background-color: #ffefec;
}

#works .c-entry-summary__header {
    position: relative;
}

#works .c-entry-summary__header::before {
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translateY(-50%);
    width: 16px;
    height: 16px;
    background-image: url(/wp-content/uploads/2025/07/arrow_1.png);
    background-size: contain;
    background-repeat: no-repeat;
    content: "";
}

#works .c-entry-summary__figure {
    margin-bottom: 20px;
    border-radius: 15px;
}

#works .c-entry-summary {
    max-width: 100%;
    padding: 20px;
    border-radius: 20px;
    background-color: #ffffff;
}

#works .c-entry-summary__header {
    margin-bottom: 0 !important;
}

#works .c-entry-summary__header h3 {
    padding-left: 10px;
    font-weight: 500 !important;
}

#works .spider__dots {
    margin-top: 15px;
}

#works .spider__dots:not([data-thumbnails=true]) .spider__dot {
    width: 8px;
    height: 8px;
}

#works .light_1 {
    position: absolute;
    top: -20px;
    right: 30px;
    transform: rotate(10deg);
    width: 8%;
}

/* 選ばれる理由 */
#reasons {
    margin-top: -50px !important;
    padding: 120px 0;
    overflow: visible;
    border-radius: 50px 50px 0 0;
    background-color: #fffbf7;
}

#reasons h2.h2-d::before {
    background-color: #ff890029;
}

#reasons h3 {
    margin-top: 0 !important;
    margin-bottom: 10px !important;
    padding-bottom: 5px;
    border-bottom: dotted 2px #efbd8b;
}


.reasons_column {
    position: relative;
    padding: 30px;
    border: dotted 2px #efbd8b;
    border-radius: 30px;
    background-color: #fff6ee;
}

.reasons_num {
    color: rgb(255, 183, 28) !important;
    font-size: 1rem;
    font-weight: 500;
    text-transform: uppercase;
}

.reasons_img img {
    border-radius: 10px;
}

.reasons_img1 {
    position: absolute;
    bottom: -120px;
    left: 5%;
    width: 8%;
}

/* 代表挨拶 */
#greeting {
    padding: 120px 0 !important;
}

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

.greeting_parent {
    gap: 80px !important;
}

.greeting_img img {
    position: relative;
    z-index: 2;
    border-radius: 20px;
}

.greeting_img::before {
    position: absolute;
    right: -30px;
    bottom: -30px;
    z-index: 1;
    width: 100%;
    height: 100%;
    border-radius: 20px;
    background-image: radial-gradient(#ea987e 20%, rgba(0 0 0 / 0) 21%);
    background-position: right bottom;
    background-size: 10px 10px;
    content: "";
}

.corn_2-img {
    position: absolute;
    right: 5%;
    bottom: -145px;
    width: 8%;
}

#greeting a.smb-btn {
    margin-top: 40px !important;
}

/* tiktok */
.sb-feed-header-profile {
    flex-direction: row !important;
}

#sb-tiktok-feeds-container-1 .sb-feed-header {
    margin-bottom: 20px !important;
}

/* TRUECTA */
#cta {
    margin-top: -150px !important;
    padding: 50px;
    border-radius: 50px;
    box-shadow: 0 6px 16px 0 rgba(255, 212, 212, .26);
    background-color: #ffefec;
}

#cta .icon-wrap,
#cta_footer .icon-wrap,
#flow .icon-wrap {
    right: 13px;
}

.cta_h3 {
    margin-top: 10px !important;
    font-size: 1.2rem;
}

.cta_h3-s {
    position: relative;
    padding-left: 23px;
}

.cta_h3-s::before {
    position: absolute;
    top: 54%;
    left: 0;
    transform: translateY(-50%);
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background-color: rgb(255 159 140);
    content: "";
}

.cta_column {
    padding: 30px;
    border-radius: 20px;
    background-color: #ffffff;
}

.cta_btn {
    margin: 25px auto;
}

.sns_btn-group {
    display: flex;
    width: 60%;
    margin: 25px auto;
}

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

.sns_btn a {
    width: fit-content !important;
    padding: 0;
    border-radius: 0 !important;
}

.sns_btn a svg {
    position: static;
    transform: none;
    width: 40px;
    height: 40px;
    padding: 0;
    border-radius: 0 !important;
    background-color: transparent;
    color: #333333;
    font-size: 1rem;
}

.sns_btn a svg:hover {
    background-color: transparent;
    color: var(--wp--preset--color--sm-accent);
}

.hel_1 {
    position: absolute;
    top: 0;
    right: 4%;
    transform: rotate(10deg);
    width: 10%;
}

#cta_footer {
    padding-bottom: 0;
    border-radius: 50px 50px 0 0;
    background-color: #ffefec;
}


/*======================= 事業内容 =======================*/
/* 警備内容 */
#b_top {
    padding: 120px 0;
    overflow: visible;
}

.busi_logo {
    opacity: .13;
    position: absolute;
    top: -120px;
    right: -15%;
    z-index: -1;
    width: 75%;
    filter: blur(18px);
}

#b_k {
    padding-top: 30px;
}

#b_k h2 {
    margin-bottom: 50px !important;
}

#b_k h3 {
    margin-bottom: 15px !important;
    padding-bottom: 10px;
    border-bottom: dotted 2px;
}

.menu_btn-group {
    gap: 20px !important;
}

.menu_btn {
    width: calc((80% - 20px*2)/3);
}

.menu_btn a {
    width: 100% !important;
    padding: 5px;
    border: solid 1px;
    background-color: #ffffff;
    color: #333333 !important;
}

.menu_btn a:hover {
    border: solid 1px #333333;
}

.b_parent {
    padding: 20px;
    border: solid 1px;
    border-radius: 30px;
    box-shadow: 0 6px 16px 0 rgba(255, 212, 212, .26);
    background-color: #ffffff;
}

.b_img img {
    border-radius: 20px;
}

.b_txt-column {
    padding: 20px;
}

/* 対応地域 */
#area {
    padding: 120px 0;
}

.area_map {
    width: 50%;
}

.area_name {
    margin-top: 20px !important;
    padding: 15px 20px;
    border: solid 1px;
    border-radius: 15px;
}

.taio_area {
    padding-bottom: 3px;
    font-weight: 600;
}

/*======================= 実績紹介 =======================*/
.post-type-archive-works .c-entry-summary__figure {
    margin-bottom: 10px;
    border-radius: 20px;
}

.c-prev-next-nav__item {
    border-radius: 20px;
}

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

.post-type-archive-works .cta_footer {
    margin: 0 calc(50% - 50vw) !important;
}

.spider__dot img {
    border-radius: 15px;

    aspect-ratio: 1 / 1;
    object-fit: cover;
}

.c-entry-summary__figure {
    margin-bottom: 5px;
    border-radius: 20px;
}

.spider__figure {
    border-radius: 20px;
}

/*======================= 会社概要 =======================*/
/* 会社概要 */
.wp-block-table tr {
    border-bottom: dotted 2px #fcd8d1 !important;
}

.wp-block-table td,
.wp-block-table th {
    padding: 20px !important;
    border: none !important;
}

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

/* 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: 30%;
        padding-right: 0 !important;
        padding-left: 0 !important;
        font-size: 1rem !important;
    }

    figure.wp-block-table tr td:last-child,
    figure.wp-block-table tr td:last-child {
        padding-right: 0 !important;
    }
}

/*======================= 採用情報 =======================*/
#rec_p h3 {
    margin-bottom: 20px;
    line-height: 1.5;
}

.r_column {
    gap: 80px !important;
}

.r_btn-group {
    gap: 15px;
}

.r_btn {
    width: calc((100% - 15px * 2) / 3) !important;
}

.r_btn a {
    width: 100% !important;
    padding: 7px !important;
    border: solid 2px #ffffff;
    background: linear-gradient(58deg, rgb(255 139 18) 0%, rgb(237 114 153) 97%);
    color: #ffffff !important;
}

.r_btn a:hover {
    background: transparent;
    background-color: transparent;
    color: var(--wp--preset--color--sm-accent) !important;
}

.r_btn a:hover svg {
    background-color: transparent;
    color: var(--wp--preset--color--sm-accent) !important;
}

.r_btn a svg {
    background-color: transparent;
    color: #ffffff !important;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 5%;
}

/* 募集要項 */
#j_d,
#staff {
    padding: 120px 0 !important;
}

.j_logo {
    opacity: .15;
    position: absolute;
    right: -10%;
    bottom: -100px;
    z-index: -1;
    width: 60%;
    overflow: visible;
    background-color: transparent;
    filter: blur(15px);

    will-change: transform;
}

.j_logo img {
    background-color: transparent;
}

/* 働く魅力 */
#m_work {
    border-radius: 50px;
}

.m_column {
    position: relative;
    padding: 15px;
}

.m_column-img {
    position: relative;
    margin: 15px 0;
    padding: 40px;
    border-radius: 50%;
    background-color: #ffffff93;
}

.m_column-img::before {
    position: absolute;
    bottom: 0;
    left: 50%;
    z-index: 2;
    transform: translateX(-50%);
    padding: .2em .9em;
    border-radius: 50px;
    background-color: #f7e0da;
    font-weight: 600;
    white-space: nowrap;
    content: "週1日〜OK";

    transform-origin: top;
}

.m_column-img2::before {
    content: "日給全額保証";
}

.m_column-img3::before {
    content: "安心の研修制度";
}

.m_column-img4::before {
    content: "ネイル・髪型自由";
}

/* スタッフ紹介 */
.staff_column {
    gap: 50px;
    padding: 30px;
    border: solid 1px #f69785;
    border-radius: 25px;
    background-color: #ffffff !important;
}

#staff h3 {
    margin-bottom: 15px;
    padding-bottom: 8px;
    border-bottom: dotted 2px #f69785;
    font-size: 1.5rem;
}

.staff_img img {
    border-radius: 20px;
}

.staff_sub-ttl {
    margin: 20px 0 7px !important;
    font-size: 1.1rem;
    font-weight: 500;
}

/* 応募の流れ */
#flow {
    padding: 120px 0;
    border-radius: 50px;
    background-color: #fffbf7;
}

.smb-step__body:before {
    border-left: dotted 2px #fcd8d1 !important;
}

.smb-step__item__number {
    background-color: rgb(255 159 140);
    font-size: 1.1rem;
    font-weight: 600;
}

.smb-step__item__title span {
    font-size: 1.3rem;
}

.flow_column {
    gap: 10px;
}

/*======================= お問い合わせ =======================*/
/* placeholder */
.smf-text-control__control::placeholder {
    color: #cccccc !important;
}

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

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

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

.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;
    line-height: 1.4;
}

/* ボックス */
.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: none;
    border-radius: 0;
    background-color: #f8f7f7;
}

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

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

/* 項目の幅 */
.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: 100%;
    max-width: 400px;
    margin-top: 20px;
    padding-top: 1rem;
    padding-bottom: 1rem;
    border: solid 2px var(--wp--preset--color--sm-accent) !important;
    border-radius: 50px;
    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-top: 30px !important;
    margin-bottom: 5px !important;
    padding-left: 10px;
    border-left: solid 3px var(--wp--preset--color--sm-accent);
    font-weight: 700;
}

#privacy .wp-block-list {
    margin-top: 5px;
}

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

.c-page-header__meta {
    display: none;
}

.blog .cta_footer {
    margin: 0 calc(50% - 50vw) !important;
}

.c-entries--simple {
    border-top: none;
}

.c-entries--simple .c-entries__item {
    border-bottom: none;
}

.c-entry-summary__figure .c-entry-summary__term {
    position: absolute;
    top: 9px;
    right: 9px;
    z-index: 1;
    padding: 0 .5em;
    border-radius: 50px;
}

/* 投稿(シンプル)の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: 1350px) {
    .fv_tate {
        bottom: 15%;
        font-size: 1.5rem;
    }
}

@media screen and (max-width: 1180px) {
    .fv_slider img {
        aspect-ratio: 13 / 9;
    }

    .fv_txt-group {
        bottom: 8%;
    }

    #rec-section {
        padding: 45px;
    }

    #rec-section .c-container {
        padding: 0;
    }

    .rec_container {
        padding: 0 !important;
    }
}

@media screen and (max-width: 1160px) {
    .rec_parent {
        gap: 40px !important;
    }
}

@media screen and (max-width: 1150px) {
    .rec_parent {
        display: block !important;
    }

    #rec-section .rec_con-icon {
        width: 140px !important;
        height: 140px;
    }

    #rec-section .c-row {
        margin-bottom: 30px;
    }
}

@media screen and (max-width: 1120px) {
    .rec_parent {
        flex-direction: column;
    }
}

@media screen and (max-width: 1045px) {
    .r_btn {
        width: calc((100% - 15px * 1) / 2) !important;
    }

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

@media screen and (max-width:980px) {
    #rec-section .rec_con-icon {
        width: 120px !important;
        height: 120px;
    }
}

@media screen and (max-width:950px) {
    #cta {
        margin-right: -10px !important;
        margin-left: -10px !important;
        padding: 40px;
    }

    #cta .c-container {
        padding: 0;
    }
}

@media screen and (max-width:900px) {
    .m_column-img {
        padding: 30px;
    }

    .busi_logo {
        right: -10%;
        width: 100%;
        filter: blur(10px);
    }

    .fv_tate {
        right: 7%;
        font-size: 1.3rem;
    }

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

    #fv h2 span.fv_sub-ttl {
        font-size: 1rem;
    }
}

@media screen and (max-width:880px) {
    #rec-section .smb-panels>.c-row>.c-row__col {
        flex: 1 0 calc((100% - 10px) / 2);
        max-width: calc((100% - 10px) / 2);
    }

    #rec-section .rec_con-icon {
        width: 200px !important;
        height: 200px;
        margin-top: 20px;
    }

    .sns_btn-group {
        width: 90%;
    }

    #works .c-entries-carousel .spider__slide {
        max-width: calc(50% - var(--entries--carousel--gap) / 1.5);
    }
}

@media screen and (max-width: 781px) {
    .l-header {
        margin: 33px 20px 0 !important;
    }

    .fv_slider img {
        border-radius: 30px;

        aspect-ratio: 3 / 3;
    }

    .fv_group {
        width: 100% !important;
        margin: 15px 0 0 !important;
    }

    #fv .c-container {
        padding: 0 15px !important;
    }

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

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

    .fv_tate {
        bottom: 30%;
    }

    .fv_tag {
        font-size: 14px;
    }

    .fv_slider::before {
        border-radius: 30px;
    }

    #greeting,
    #b_top,
    #reasons,
    #flow,
    #j_d,
    #staff,
    #rec_p {
        padding: 80px 0 !important;
    }
	#works{
		  padding: 80px 0 130px !important;
}
    .reasons_img1 {
        bottom: -80px;
    }

    .greeting_parent {
        gap: 50px !important;
    }

    #greeting .greeting_img img {
        aspect-ratio: 16/12 !important;
    }

    .j_logo {
        bottom: -60px;
        width: 90%;
    }

    .b_parent {
        padding: 25px;
    }

    .b_txt-column {
        padding: 0;
    }

    .menu_btn-group {
        gap: 15px !important;
    }

    .menu_btn {
        width: calc((100% - 15px * 2) / 3);
    }

    .reasons_img1 {
        width: 15%;
    }

    #rec-section {
        margin: 25px -15px !important;
        border-radius: 30px;
    }

    #works,
    #cta_footer {
        border-radius: 30px 30px 0 0;
    }

    #cta,
    #m_work,
    #flow {
        border-radius: 30px;
    }

    .staff_2,
    .reasons_column2 {
        flex-direction: column-reverse;
    }

    #works .light_1 {
        top: -42px;
        width: 12%;
    }

    .spider__dot img {
        border-radius: 10px;
    }
}

@media screen and (max-width: 750px) {
    #rec-section .rec_con-icon {
        width: 150px !important;
        height: 150px;
    }
}

@media screen and (max-width: 650px) {
    h2 {
        margin-bottom: 20px !important;
        font-size: 2rem;
    }

    #greeting h3 {
        margin-bottom: 10px !important;
    }

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

    .c-page-header {
        margin: 15px;
        border-radius: 20px;
    }

    .p-breadcrumbs-wrapper {
        translate: 0 -80%;
    }

    .l-header {
        margin: 25px 5px 0 !important;
    }

    .fv_slider img {
        aspect-ratio: 4/5;
    }

    #rec-section .rec_con-icon {
        width: 110px !important;
        height: 110px;
        margin-top: 10px;
    }
}

@media screen and (max-width: 600px) {
    .j_logo {
        filter: blur(10px);
    }

    .busi_logo {
        top: -20px;
    }

    #works .c-entries-carousel .spider__slide {
        max-width: calc(100% - var(--entries--carousel--gap) / 1.5);
    }
}

@media screen and (max-width: 550px) {
    #contact-form h2 {
        font-size: 1.9rem;
    }

    .hel_1 {
        top: 0;
        width: 15%;
        margin-top: 0;
    }

    #flow .wp-block-snow-monkey-blocks-box.smb-box {
        padding: 0 !important;
    }

    #flow .cta_column {
        padding: 15px;
    }

    .fe_column {
        display: block !important;
    }

    .menu_btn {
        width: calc((100% - 15px * 1) / 2);
    }

    .reasons_img1 {
        width: 22%;
    }
}

@media screen and (max-width: 500px) {
    .fv_slider img {
        aspect-ratio: 4 / 7;
    }

    #fv h2 {
        font-size: 2.5rem;
        letter-spacing: .07em;
    }

    .fv_txt-group {
        bottom: 6%;
        left: 8%;
    }

    .busi_logo {
        top: 80px;
    }

    #rec-section {
        padding: 35px;
    }

    #rec-section .rec_con-icon {
        width: 90px !important;
        height: 90px;
    }

    .salary_1,
    .salary_2 {
        width: 100% !important;
    }

    .work_time {
        width: 100%;
        text-align: center;
    }

    .salary_1 {
        margin-bottom: 30px !important;
        padding-right: 0;
    }

    .salary_1::before {
        display: none;
    }

    .salary_2 {
        padding-left: 0;
    }

    .salary_flex {
        flex-direction: column;
    }

    #cta {
        padding: 35px 25px;
    }
}

@media screen and (max-width: 460px) {
    .r_btn {
        width: 100% !important;
    }
}

@media screen and (max-width: 435px) {
    .l-header {
        margin: 20px 0 !important;
    }

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

    h2 {
        font-size: 1.8rem;
    }

    h3 {
        font-size: 1.1rem;
    }

    #contact-form h2 {
        font-size: 1.6rem;
    }

    .sub_ttl {
        font-size: 15px;
    }

    .sp_none {
        display: none;
    }

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

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

    .cta_column {
        padding: 20px;
    }

    .cta_btn a.smb-btn svg {
        right: 12px;
    }

    #rec_p h3 {
        line-height: 1.6;
    }

    #flow .cta_column {
        padding: 0;
        border-radius: 0;
        background: transparent;
    }

    .flow_column {
        gap: 50px !important;
    }

    #flow .smb-step__item {
        margin-left: 60px;
    }

    #flow .smb-step__body:before {
        left: 3%;
    }

    .j_logo {
        width: 100%;
    }

    .menu_btn {
        width: 100%;
    }

    .loop_box .loop_img_02 {
        height: 200px;
    }

    .sp325.top-l {
        height: 120px !important;
    }

    .fv_txt-group {
        bottom: 1%;
        left: 0;
        width: 100%;
        padding: 30px;
    }

    .fv_tag-group {
        gap: 10px;
    }

    .fv_tag {
        text-align: center;
    }

    .fv_tate {
        bottom: 35%;
        font-size: 1.1rem;
    }

    #rec-section {
        padding: 30px;
    }

    #rec-section .smb-panels>.c-row>.c-row__col {
        flex: 100%;
        max-width: 100%;
    }

    #rec-section .smb-panels__item__body {
        flex-direction: row-reverse;
    }

    #rec-section .c-row__col.rec_con-panel {
        aspect-ratio: 8/2;
    }

    #rec-section .rec_con-icon {
        width: 60px !important;
        height: 60px;
    }

    .rec_con-ttl {
        margin-bottom: 0 !important;
        font-size: 1rem;
    }

    #rec-section h3 {
        margin-top: 5px !important;
        font-size: 1.8rem !important;
    }

    #cta {
        margin-right: -6% !important;
        margin-left: -6% !important;
        padding: 35px 20px;
    }

    #loop_txt {
        margin-top: 50px !important;
    }

    .slide_box {
        height: 80px;
    }

    .busi_logo {
        top: 150px;
    }

    .staff_column {
        padding: 25px;
    }

    .m_column {
        padding: 35px;
        padding-bottom: 0 !important;
    }

    #works .light_1 {
        width: 15%;
    }
}

@media screen and (max-width: 400px) {
    .fv_txt-group {
        padding: 25px;
    }

    .fv_tag-group {
        flex-direction: column;
        align-items: flex-start;
    }

    .reasons_column {
        padding: 25px;
    }
}

@media screen and (max-width: 360px) {
    .fv_txt-group {
        padding: 15px;
    }

    .cta_btn a.smb-btn {
        width: 260px !important;
    }

    .cta_btn a.smb-btn span {
        font-size: 15px;
    }

    #cta {
        padding: 35px 18px;
    }
}