/*
Theme Name:hachinohe_painclinic
Theme URI:
Description:
Template:businesspress
Author:
Author URI:
Version:0.0.0
*/

/* デフォルト */
body:lang(ja) {
	font-family: "Noto Sans JP", sans-serif;
	/* font-family: "Shippori Mincho B1", serif; */
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
	letter-spacing: 0.05em;
	color: #454547;
	font-size: 15px;
	/* background-color: #D5E9F6; */
	overflow-x: hidden;
	/* line-height: 1.5; */
}

/*----------------------------------------
    Common(共通)
----------------------------------------*/
.site-content {
    max-width: 1080px;
}
h1, h2, h3, h4, h5, h6, .site-title {
    color: #454547;
}



.mplusrounded1c {
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-style: normal;
}

/*========= 改行用クラス =============*/
/* 改行スマホのみ */
.br-sp {
    display: block;
}

/* 改行PCのみ */
.br-pc {
    display: none;
}

@media screen and (min-width:641px), print {

    /* 改行スマホのみ */
    .br-sp {
        display: none;
    }

    /* 改行PCのみ */
    .br-pc {
        display: block;
    }
}

/* トップへ戻る */
.back-to-top:before {
    display: inline-block;
    vertical-align: middle;
    line-height: 1;
    width: 9px;
    height: 9px;
    border: 0.1em solid currentColor;
    border-left: 0;
    border-bottom: 0;
    box-sizing: border-box;
    transform: translateY(-50%) rotate(-45deg);
    content: '';
    position: absolute;
    top: 55%;
    bottom: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
}


/* ヘッダー */
.site-header {
    border-bottom: none;
}
.main-header-clone {
    display: none;
}
.menu a[href*="instagram.com"]:before {
    content: none;
}

@media screen and (min-width: 980px) {
    /* ロゴ */
    .main-header-content{
        align-items: flex-start;
    }
    .home .main-header .site-logo {
        position: relative;
        z-index: 1;
    }
    .home .main-header .site-logo a {
        position: absolute;
        display: block;
        width: 307px;
        height: auto;
        z-index: 1;
    }
    .main-header .site-logo::after {
        content: '';
        display: block;
        width: 928.62px;
        height: 386.94px;
        background-image: url(./assets/img/common/logo_bg4.svg);
        background-size: contain;
        background-repeat: no-repeat;
        position: absolute;
        z-index: 0;
        top: -67px;
        left: -462.64px;
    }
    /* 採用ページ ロゴ背景非表示 */
    .page-id-112 .main-header .site-logo::after {
        content: none;
    }

    /* メニュー */
    .main-navigation {
        font-size: 100%;
        line-height: 1;
        z-index: 1;
        position: relative;
        top: 47px;
    }
    .main-navigation a {
        padding-left: 0;
        padding-right: 0;
    }
    .main-navigation ul {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: flex-start;
        gap: 18px;
    }
    .main-navigation ul li a {
        display: flex;
        justify-content: center;
        align-items: center;
        font-weight: 500;
        text-align: center;
        font-size: 0.8em;
        line-height: 1.5;
        position: relative;
    }
    .main-navigation ul li:nth-of-type(1) a,
    .main-navigation ul li:nth-of-type(2) a,
    .main-navigation ul li:nth-of-type(3) a {
        color: #fff;
        width: 66px;
        height: 66px;
        position: relative;
        z-index: 0;
    }
    .main-navigation ul li:nth-of-type(1) a::after,
    .main-navigation ul li:nth-of-type(2) a::after,
    .main-navigation ul li:nth-of-type(3) a::after {
        content: '';
        width: 66px;
        height: 66px;
        background-color: #a1a7e6;
        border-radius: 100px;
        position: absolute;
        left: 0;
        right: 0;
        z-index: -1;
    }
    .main-navigation ul li:nth-of-type(4) a {
        color: #6a74d7;
        width: 66px;
        height: 66px;
        position: relative;
        z-index: 0;
        flex-direction: column-reverse;
        gap: 8px;
    }
    .main-navigation ul li:nth-of-type(4) a::after {
        content: '';
        width: 25.62px;
        height: 26.05px;
        background-image: url(./assets/img/common/icon_instagram_header.svg);
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        display: inline-block;
    }
    .main-navigation ul li:nth-of-type(5) a {
        /* color: #6a74d7; */
        width: 148px;
        height: 148px;
        position: relative;
        z-index: 0;
        flex-direction: column-reverse;
        gap: 0;
        font-size: 15px;
        font-weight: 500;
        padding-bottom: 16px;
        margin-top: -9px;
    }
    .main-navigation ul li:nth-of-type(5) a > span {
        color: #6a74d7;
        font-size: 24px;
        font-weight: 500;
        line-height: 1;
        padding-top: 6px;
        transform: rotate(0.05deg);
    }
    .main-navigation ul li:nth-of-type(5) a::before {
        content: '';
        width: 148px;
        height: 148px;
        background-color: #ffff5f;
        border-radius: 100px;
        position: absolute;
        left: 0;
        right: 0;
        z-index: -1;
    }
    .main-navigation ul li:nth-of-type(5) a::after {
        content: '';
        width: 51.12px;
        height: 52.93px;
        background-image: url(./assets/img/common/icon_recruit_new.svg);
        background-repeat: no-repeat;
        background-size: contain;
        display: inline-block;
    }
    .main-navigation ul li:nth-of-type(1) a::after,
    .main-navigation ul li:nth-of-type(2) a::after,
    .main-navigation ul li:nth-of-type(3) a::after,
    .main-navigation ul li:nth-of-type(5) a::before {
        transition: all .15s ease-in-out;
    }
    .main-navigation ul li:nth-of-type(1) a:hover::after,
    .main-navigation ul li:nth-of-type(2) a:hover::after,
    .main-navigation ul li:nth-of-type(3) a:hover::after,
    .main-navigation ul li:nth-of-type(5) a:hover::before {
        opacity: 0.7;
    }
    .main-header .sp_instagram {
        display: none;
    }
    .main-header .sp_recruit {
        display: none;
    }
}
@media screen and (min-width: 782px) {
    .home .main-header {
        position: absolute;
        width: 100%;
        padding-top: 0;
        margin-top: 67px;
        z-index: 1;
    }
    .home .main-header::before {
        content: '';
        width: 100vw;
        height: 84px;
        margin-left: calc(50% - 50vw);
        position: absolute;
        top: 38px;
        z-index: 0;
        background-color: #fff;
    }

    .home .main-header-content {
        max-width: 1170px;
    }
}
@media screen and (max-width: 979px) {
    .home .main-header {
        margin-top: 0;
        position: relative;
        padding-top: 30px;
        padding-bottom: 0;
    }
    .home .site-logo img {
        transform: scale(1, 1);
        width: 130.48px;
        height: auto;
        object-fit: cover;
    }
    .home .main-header-content {
        background-color: #fff;
    }
    .main-header .sp_instagram {
        color: #6a74d7;
        width: 46px;
        height: 44px;
        position: relative;
        z-index: 0;
        flex-direction: column-reverse;
        align-items: center;
        gap: 2px;
        display: flex;
        text-decoration: none;
        font-size: 8px;
        font-weight: 500;
        margin-left: auto;
        margin-right: 10px;
        margin-bottom: auto;
    }
    .main-header .sp_instagram::after {
        content: '';
        width: 19.82px;
        height: 20.15px;
        background-image: url(./assets/img/common/icon_instagram_header.svg);
        background-repeat: no-repeat;
        background-size: contain;
        display: inline-block;
    }
    .main-header .sp_recruit {
        color: inherit;
        width: 82px;
        height: 82px;
        position: relative;
        z-index: 0;
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column-reverse;
        gap: 0;
        font-size: 10px;
        font-weight: 500;
        text-align: center;
        line-height: 1.5;
        padding-bottom: 16px;
        margin-top: 0;
        text-decoration: none;
    }
    .main-header .sp_recruit::before {
        content: '';
        width: 82px;
        height: 82px;
        background-color: #ffff5f;
        border-radius: 100px;
        position: absolute;
        left: 0;
        right: 0;
        z-index: -1;
    }
    .main-header .sp_recruit::after {
        content: '';
        width: 51.12px;
        height: 52.93px;
        background-image: url(./assets/img/common/icon_recruit_new.svg);
        background-repeat: no-repeat;
        background-size: contain;
        background-position: center;
        display: inline-block;
    }
    .main-header .sp_recruit > span {
        color: #6a74d7;
        font-size: 13px;
        font-weight: 700;
        line-height: 1;
        padding-top: 6px;
        transform: rotate(0.05deg);
        letter-spacing: 0;
    }
    .drawer-navigation ul li br {
        display: none;
    }
    .home .drawer-hamburger {
        margin-bottom: auto;
    }
    body:not(.home) .site-header {
        margin-bottom: 2rem;
    }
    body:not(.home) .main-header .sp_recruit {
        display: none;
    }
    .main-navigation .menu-item-192 span {
        display: none;
    }
}
@media screen and (max-width: 640px) {
    .main-header .sp_instagram {
        width: 46px;
        height: 44px;
        gap: 2px;
        font-size: 8px;
    }
    .main-header .sp_instagram::after {
        width: 19.82px;
        height: 20.15px;
    }
}




/*----------------------------------------
    トップページ
----------------------------------------*/
/* メインビジュアル */
.mainvisual {
    background-image: url(./assets/img/mainvisual-bg.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-color:rgba(255,255,255,0.35);
    background-blend-mode:lighten;
    background-position: center;
}
.mainvisual-container {
    max-width: 1000px;
    margin: 0 auto;
    padding: 172px 0;
}
.mainvisual-content {
    position: relative;
}
.mainvisual__text {
    font-size: 20px;
    font-weight: 500;
    letter-spacing: 0.25em;
    transform: rotate(0.05deg);
    position: absolute;
    top: 65px;
    left: 324px;
    color: #3fab58;
    z-index: 1;
}
.mainvisual__text--orange {
    color: #ffac80;
}
.mainvisual__opening {
    position: absolute;
    left: -60px;
    bottom: -67px;
}
@media screen and (min-width: 1170px) {
    .mainvisual__opening {
        position: absolute;
        left: -140px;
        bottom: -67px;
    }
}
@media screen and (min-width: 980px) and (max-width: 1180px) {
    .mainvisual__text {
        top: 72px;
        left: calc(324px + 8.6vw) !important;
    }
}
@media screen and (max-width: 979px) {
    /* .mainvisual {
        mask-image: url(./assets/img/mask_top.png);
        mask-repeat: no-repeat;
        mask-size: 100%;
    } */
    .mainvisual {
        position: relative;
    }
    .mainvisual::before {
        content:"";
        position:absolute;
        left:0; right:0; top:0;
        height:44px;
        pointer-events:none;
        /* マスク（PNG） */
        -webkit-mask-image: url(./assets/img/mask_top.png);
                mask-image: url(./assets/img/mask_top.png);
        -webkit-mask-repeat: no-repeat;
                mask-repeat: no-repeat;
        -webkit-mask-size: 100% 100%;
                mask-size: 100% 100%;
        -webkit-mask-position: center;
                mask-position: center;
        -webkit-mask-composite: destination-out;
          mask-composite: exclude;
        background: #fff;
    }
    .mainvisual::after {
        content:"";
        position:absolute;
        left:0; right:0; bottom:0;
        height:8.2vw;
        pointer-events:none;
        /* マスク（PNG） */
        -webkit-mask-image: url(./assets/img/mask_bottom.png);
                mask-image: url(./assets/img/mask_bottom.png);
        -webkit-mask-repeat: no-repeat;
                mask-repeat: no-repeat;
        -webkit-mask-size: 100% 100%;
                mask-size: 100% 100%;
        -webkit-mask-position: center;
                mask-position: center;
        -webkit-mask-composite: destination-out;
          mask-composite: exclude;
        background: #fff;
    }
    .mainvisual-container {
        padding: 64px 0 200px;
    }
    .mainvisual__text {
        top: 10%;
        left: auto;
        right: 20px;
        z-index: 0;
        line-height: 1.4;
    }
    .mainvisual__opening {
        width: 65.4749744637385vw;
        left: -20px;
        bottom: -14%;
    }
}
@media screen and (max-width: 640px) {
    .mainvisual-container {
        padding-bottom: 35.2vw;
    }
    .mainvisual__text {
        right: 0;
        font-size: 16px;
        /* letter-spacing: 0.15em; */
    }
    .mainvisual__opening {
        width: 100vw;
        left: auto;
        bottom: -23.2vw;
    }
}



.home .site-header {
    margin-bottom: 0;
}

/* ペインクリニッククリニックってどんなところ？ */
.toppage_whats {
    padding-top: 200px;
    margin-bottom: 100px;
    position: relative;
}
.toppage_whats::before {
    content: '';
    background-image: url(./assets/img/top/toppage_whats_top2.svg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    display: block;
    width: 100vw;
    height: 17.916666666666668vw;
    margin-left: calc(50% - 50vw);
    position: absolute;
    top: 0;
}
.toppage_whats::after {
    content: '';
    background-image: url(./assets/img/top/toppage_whats_bottom2.svg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    display: block;
    width: 100vw;
    height: 29.895833333333332vw;
    margin-left: calc(50% - 50vw);
    position: absolute;
    bottom: 0;
    z-index: -1;
}
@media screen and (max-width: 979px) {
    .toppage_whats::before {
        content: none;
    }
}
.toppage_whats-container {
    position: relative;
}
.toppage_whats-title {
    font-size: 37px;
    font-weight: 400;
    color: #3fab58;
    margin: 0 auto;
    text-align: center;
}
@media screen and (min-width: 980px) {
    .toppage_whats-title br {
        display: none;
    }
}
.toppage_whats_feature_item-title {
    font-size: 24px;
    font-weight: 400;
    color: #3fab58;
    margin: 0;
    position: relative;
}
.toppage_whats_feature_item .toppage_whats_feature_item-title::after {
    content: '';
    background-size: cover;
    background-repeat: no-repeat;
    display: block;
    position: absolute;
    bottom: 0;
    z-index: -1;
}
.toppage_whats_feature_item.feature_item1 .toppage_whats_feature_item-title::after {
    background-image: url(./assets/img/top/feature_item1.svg);
    width: 26.41px;
    height: 94.14px;
    top: -162%;
    left: -5.6%;
}
.toppage_whats_feature_item.feature_item2 .toppage_whats_feature_item-title::after {
    background-image: url(./assets/img/top/feature_item2.svg);
    width: 49.37px;
    height: 94.14px;
    top: -142.8%;
    left: -16%;
}
.toppage_whats_feature_item.feature_item3 .toppage_whats_feature_item-title::after {
    background-image: url(./assets/img/top/feature_item3.svg);
    width: 43.4px;
    height: 95.42px;
    top: -207%;
    left: -11.6%;
}
.toppage_whats_feature_item.feature_item4 .toppage_whats_feature_item-title::after {
    background-image: url(./assets/img/top/feature_item4.svg);
    width: 58.67px;
    height: 94.14px;
    top: -122%;
    left: -13.6%;
}
.toppage_whats_feature_item.feature_item5 .toppage_whats_feature_item-title::after {
    background-image: url(./assets/img/top/feature_item5.svg);
    width: 44.77px;
    height: 97.71px;
    top: -218%;
    left: -8.4%;
}
.toppage_whats_feature_item.feature_item6 .toppage_whats_feature_item-title::after {
    background-image: url(./assets/img/top/feature_item6.svg);
    width: 47.07px;
    height: 94.14px;
    top: -190.6%;
    left: -11.2%;
}
.toppage_whats_feature_list {
    /* display: grid; */
    grid-auto-flow: row;
    column-gap: 20px;
    row-gap: 20px;
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    height: 800px;
    z-index: 11;
}
@media screen and (min-width: 782px) {
    .toppage_whats_feature_list {
        grid-auto-flow: column;
        grid-template-rows: repeat(3, auto);
    }
}

.toppage_whats_feature_item {
    position: absolute;
}
.toppage_whats_feature_item.feature_item1 {
    left: 19%;
    top: 9%;
}
.toppage_whats_feature_item.feature_item1::before {
    content: '';
    background-image: url(./assets/img/top/toppage_whats_img1.svg);
    background-size: cover;
    background-repeat: no-repeat;
    display: block;
    width: 262.21px;
    height: 264.37px;
    position: absolute;
    top: -59%;
    left: -99%;
    bottom: 0;
    z-index: -1;
}
.toppage_whats_feature_item.feature_item2 {
    left: 25%;
    top: 34%;
}
.toppage_whats_feature_item.feature_item3 {
    left: 7%;
    top: 56%;
}
.toppage_whats_feature_item.feature_item4 {
    right: -8%;
    top: 9%;
}
.toppage_whats_feature_item.feature_item4::before {
    content: '';
    background-image: url(./assets/img/top/toppage_whats_img2.svg);
    background-size: cover;
    background-repeat: no-repeat;
    display: block;
    width: 259.64px;
    height: 210.92px;
    position: absolute;
    top: 85%;
    right: -0.6%;
    z-index: -1;
}
.toppage_whats_feature_item.feature_item5 {
    right: 1%;
    top: 49%;
}
.toppage_whats_feature_item.feature_item6 {
    right: -5%;
    top: 72%;
}
.toppage_whats_feature_item-text {
    line-height: 1.62;
}

@media screen and (max-width: 979px) {
    .toppage_whats {
        padding-top: 60px;
    }
    .toppage_whats-title {
        font-size: 32px;
        margin-bottom: 80px;
    }
    .toppage_whats_feature_list {
        height: auto;
        padding-bottom: 80px;
    }
    .toppage_whats_feature_item {
        position: relative;
        width: 478px;
        margin: 0 auto 60px;
        padding-left: 80px;
    }
    .toppage_whats_feature_item-title {
        font-size: 22px;
    }
    .toppage_whats_feature_item.feature_item1 {
        left: 0;
        top: 0;
    }
    .toppage_whats_feature_item.feature_item1::before {
        background-size: contain;
        width: 149px;
        height: 150px;
        position: absolute;
        top: -59%;
        left: -29%;
        bottom: 0;
        z-index: -1;
    }
    .toppage_whats_feature_item.feature_item2 {
        left: 0;
        top: 0;
    }
    .toppage_whats_feature_item.feature_item3 {
        left: 0;
        top: 0;
    }
    .toppage_whats_feature_item.feature_item4 {
        right: 0;
        top: 0;
    }
    .toppage_whats_feature_item.feature_item4::before {
        background-size: contain;
        width: 185px;
        height: 150px;
        position: absolute;
        top: 5%;
        right: -29%;
    }
    .toppage_whats_feature_item.feature_item5 {
        right: 0;
        top: 0;
    }
    .toppage_whats_feature_item.feature_item6 {
        right: 0;
        top: 0;
    }
    .toppage_whats_feature_item .toppage_whats_feature_item-title::after {
        background-size: contain;
        background-position: center;
        top: 0 !important;
        left: -50px !important;
        width: 40px !important;
    }
    .toppage_whats_feature_item.feature_item1 .toppage_whats_feature_item-title::after {
        background-image: url(./assets/img/top/feature_item1.svg);
        width: 26.41px;
        height: 60.14px;
        top: -162%;
        left: -5.6%;
    }
    .toppage_whats_feature_item.feature_item2 .toppage_whats_feature_item-title::after {
        background-image: url(./assets/img/top/feature_item2.svg);
        width: 49.37px;
        height: 60.14px;
        top: -142.8%;
        left: -16%;
    }
    .toppage_whats_feature_item.feature_item3 .toppage_whats_feature_item-title::after {
        background-image: url(./assets/img/top/feature_item3.svg);
        width: 43.4px;
        height: 60.42px;
        top: -207%;
        left: -11.6%;
    }
    .toppage_whats_feature_item.feature_item4 .toppage_whats_feature_item-title::after {
        background-image: url(./assets/img/top/feature_item4.svg);
        width: 58.67px;
        height: 60.14px;
        top: -122%;
        left: -13.6%;
    }
    .toppage_whats_feature_item.feature_item5 .toppage_whats_feature_item-title::after {
        background-image: url(./assets/img/top/feature_item5.svg);
        width: 44.77px;
        height: 60.71px;
        top: -218%;
        left: -8.4%;
    }
    .toppage_whats_feature_item.feature_item6 .toppage_whats_feature_item-title::after {
        background-image: url(./assets/img/top/feature_item6.svg);
        width: 47.07px;
        height: 60.14px;
        top: -190.6%;
        left: -11.2%;
    }
}
@media screen and (max-width: 540px) {
    .toppage_whats-title {
        font-size: 28px;
    }
    .toppage_whats_feature_item {
        width: 85.33333333333334vw; /* ベース375px 320pxの場合 */
        padding-left: 40px;
    }
    .toppage_whats_feature_item.feature_item1::before {
        opacity: 0.65;
        width: 100px;
        top: 70%;
        left: auto;
        right: -5%;
    }
    .toppage_whats_feature_item.feature_item4::before {
        opacity: 0.65;
        width: 120px;
        top: 50%;
        right: -20px;
    }
}



/* こんな症状、ありませんか？ */
.toppage_symptom {
    margin-bottom: 160px;
}
.toppage_symptom-title {
    font-size: 33px;
    font-weight: 400;
    color: #3fab58;
    margin: 0 auto;
}
@media screen and (min-width: 980px) {
    .toppage_symptom-title br {
        display: none;
    }
}
.toppage_symptom_item-title {
    font-size: 21px;
    font-weight: 400;
    color: #7b7e88;
    margin: 0;
}
.toppage_symptom_item-text {
    line-height: 1.62;
    margin-bottom: 0;
}

.toppage_symptom_container {
    position: relative;
}
.toppage_symptom_image {
    position: relative;
}
.toppage_symptom_image-img {
    width: 256.17px;
    height: 533.88px;
    margin: 0 auto;
    display: block;
}
.toppage_symptom_list {
    /* display: grid; */
    grid-auto-flow: row;
    column-gap: 20px;
    row-gap: 20px;
}
@media screen and (min-width: 980px) {
    .toppage_symptom_list {
        grid-auto-flow: column;
        grid-template-rows: repeat(3, auto);
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: 11;
    }
    .toppage_symptom_list .toppage_symptom_item {
        position: absolute;
    }
    .toppage_symptom_list .toppage_symptom_item.symptom_item1 {
        top: 14.6%;
        left: 8.5%;
    }
    .toppage_symptom_list .toppage_symptom_item.symptom_item1 .toppage_symptom_item-text {
        position: absolute;
        top: 116%;
        left: 37%;
    }
    .toppage_symptom_list .toppage_symptom_item.symptom_item2 {
        top: 57.4%;
        left: 14.2%;
    }
    .toppage_symptom_list .toppage_symptom_item.symptom_item3{
        top: 86.8%;
        left: 2.5%;
    }
    .toppage_symptom_list .toppage_symptom_item.symptom_item4 {
        top: 6.8%;
        right: -0.2%;
    }
    .toppage_symptom_list .toppage_symptom_item.symptom_item4 .toppage_symptom_item-text {
        position: absolute;
        top: 136.8%;
        left: 11.2%;
    }
    .toppage_symptom_list .toppage_symptom_item.symptom_item5 {
        top: 53.4%;
        right: 14%;
    }
    .toppage_symptom_list .toppage_symptom_item.symptom_item5 .toppage_symptom_item-text {
        position: absolute;
        top: 56.8%;
        right: -36%;
    }
    .toppage_symptom_list .toppage_symptom_item.symptom_item6 {
        top: 85.8%;
        right: -1.2%;
    }
    .toppage_symptom_list .toppage_symptom_item.symptom_item6 .toppage_symptom_item-text {
        position: absolute;
        top: 12.8%;
        left: -65%;
    }
}

.toppage_symptom_list .toppage_symptom_item-title {
    position: relative;
    z-index: 1;
    width: 220.74px;
    height: 95.93px;
    display: flex;
    align-items: center;
    justify-content: center;
}
/* .toppage_symptom_list .symptom_item1 .toppage_symptom_item-title {
    position: relative;
    z-index: 1;
    width: 220.74px;
    height: 95.93px;
    display: flex;
    align-items: center;
    justify-content: center;
} */
  .toppage_symptom_list .toppage_symptom_item-title::before {
    content: '';
    display: block;
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 1;
}
.toppage_symptom_list .symptom_item1 .toppage_symptom_item-title::before {
    background-image: url(./assets/img/top/symptom_item_illust1.svg);
    width: 107.18px;
    height: 151.35px;
    top: 53%;
    left: -21%;
}
.toppage_symptom_list .symptom_item4 .toppage_symptom_item-title::before {
    background-image: url(./assets/img/top/symptom_item_illust2.svg);
    width: 124.28px;
    height: 189.15px;
    top: -33.4%;
    left: -39.8%;
}
.toppage_symptom_list .symptom_item4::before {
    content: '';
    background-image: url(./assets/img/top/symptom_item_illust3.svg);
    width: 99.66px;
    height: 166.91px;
    position: absolute;
    top: 101%;
    right: -7.8%;
}
.toppage_symptom_list .toppage_symptom_item-title::after {
    content: '';
    display: block;
    width: 220.74px;
    height: 95.93px;
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: -1;
}
.toppage_symptom_list .symptom_item1 .toppage_symptom_item-title::after {
    background-image: url(./assets/img/top/symptom_item1.svg);
}
.toppage_symptom_list .symptom_item2 .toppage_symptom_item-title::after {
    background-image: url(./assets/img/top/symptom_item2.svg);
}
.toppage_symptom_list .symptom_item3 .toppage_symptom_item-title::after {
    background-image: url(./assets/img/top/symptom_item3.svg);
}
.toppage_symptom_list .symptom_item4 .toppage_symptom_item-title::after {
    background-image: url(./assets/img/top/symptom_item4.svg);
}
.toppage_symptom_list .symptom_item5 .toppage_symptom_item-title::after {
    background-image: url(./assets/img/top/symptom_item5.svg);
}
.toppage_symptom_list .symptom_item6 .toppage_symptom_item-title::after {
    background-image: url(./assets/img/top/symptom_item6.svg);
}

@media screen and (max-width: 979px) {
    .toppage_symptom-title {
        font-size: 32px;
    }
    .toppage_symptom_image-img {
        width: 308.17px;
        padding-right: 52px;
        margin-bottom: 40px;
    }
    .toppage_symptom_list {
        display: grid;
        grid-auto-flow: row;
        column-gap: 20px;
        row-gap: 20px;
        grid-template-columns: repeat(2, 1fr);
        place-items: center;
        align-items: baseline;
    }
    .toppage_symptom_item-text {
        padding-left: 64px;
        margin-top: 8px;
    }
    .toppage_symptom_list > .toppage_symptom_item:last-of-type .toppage_symptom_item-text {
        padding-left: 40px;
    }
    .toppage_symptom_item.symptom_item4 {
        position: relative;
    }
    .toppage_symptom_list .symptom_item4::before {
        top: 35%;
        right: -21.8%;
    }
    .toppage_symptom_list .symptom_item1 .toppage_symptom_item-title::before {
        background-size: contain;
        width: 84.8px;
        height: 120px;
        top: 53%;
        left: -21%;
    }
    .toppage_symptom_list .symptom_item4 .toppage_symptom_item-title::before {
        background-size: contain;
        width: 89.1px;
        height: 135px;
        top: 1.6%;
        left: -19.8%;
    }
    .toppage_symptom_list .symptom_item4::before {
        background-size: contain;
        width: 81px;
        height: 135px;
    }
}
@media screen and (max-width: 640px) {
    .toppage_symptom_list {
        grid-template-columns: 1fr; /* ← 常に1カラム */
        row-gap: 40px;
    }
}
@media screen and (max-width: 540px) {
    .toppage_symptom-title {
        font-size: 28px;
    }
}




/* 当院のビジョン */
.toppage_vision {
    margin: 240px 0 120px;
}
.toppage_vision-title {
    font-size: 41px;
    font-weight: 400;
    color: #3fab58;
    margin: 0 auto 50px;
    text-align: center;
    position: relative;
}
.toppage_vision-title::before {
    content: '';
    display: inline-block;
    width: 66px;
    height: 125px;
    background-color: #d4f2d2;
    position: absolute;
    bottom: -20px;
    left: 0;
    right: 0;
    margin: 0 auto;
    z-index: -1;
}
.toppage_vision_list {
    display: grid;
    gap: 20px;
    width: 100%;
}
@media screen and (min-width: 782px) {
    .toppage_vision_list {
        grid-template-columns: 0.42fr 0.58fr;
        width: 840px;
        align-items: start;
        margin: 0 auto;
        gap: 50px;
    }
    .toppage_vision_col{
        display: flex;
        flex-direction: column;
        gap: 20px;
    }
}
.toppage_vision_item {
    position: relative;
}
.toppage_vision_item::before {
    content: '';
    display: block;
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: -1;
}
.toppage_vision_item.symptom_item1::before {
    width: 298.24px;
    height: 216.85px;
    background-image: url(./assets/img/top/vision_item1.svg);
    top: -34%;
    left: -63%;
}
.toppage_vision_item.symptom_item2::before {
    width: 216.85px;
    height: 232.47px;
    background-image: url(./assets/img/top/vision_item2.svg);
    top: -83%;
    left: -59%;
}
.toppage_vision_item.symptom_item4::before {
    width: 271.86px;
    height: 321.9px;
    background-image: url(./assets/img/top/vision_item3.svg);
    top: -40%;
    left: -61%;
}
.toppage_vision_item.symptom_item5::before {
    width: 272.7px;
    height: 218.86px;
    background-image: url(./assets/img/top/vision_item4.svg);
    top: 12%;
    left: auto;
    right: -22%;
}
.toppage_vision_item.symptom_item6::before {
    width: 228.41px;
    height: 269.97px;
    background-image: url(./assets/img/top/vision_item5.svg);
    left: auto;
    right: -30%;
}

.toppage_vision_item-title {
    font-size: 1.3em;
    font-weight: 500;
    color: #3fab58;
    line-height: 1.3;
    letter-spacing: 0;
    /* font-feature-settings: "palt"; */
    -webkit-font-feature-settings: "palt";
    -moz-font-feature-settings: "palt";
    font-feature-settings: "palt";
    border-left: 5px solid #ffc936;
    padding-left: 16px;
    margin: 0;
    transform: rotate(0.05deg);
}
.toppage_vision_item-text {
    padding-left: 21px;
    margin: 1em 0;
    text-align: justify;
    font-feature-settings: "palt";
}
.toppage_vision_item-subtitle {
    display: inline-block;
    font-size: 16px;
    font-weight: 500;
    color: #3fab58;
    transform: rotate(0.05deg);
}

@media screen and (max-width: 979px) {
    .toppage_vision {
        margin: 160px 0 0;
    }
    .toppage_vision-title {
        font-size: 32px;
    }
    .toppage_vision_list {
        grid-template-columns: 1fr;
        width: auto;
    }
    .toppage_vision_item {
        margin-bottom: 100px;
    }
    .toppage_vision_list.toppage_vision_col--right .toppage_vision_item:last-child {
        margin-bottom: 0px;
    }
    .toppage_vision_item.symptom_item1::before {
        --symptom_item1-img-w: 170.84px;
        --symptom_item1-img-h: 170.84px;
        width: var(--symptom_item1-img-w);
        height: var(--symptom_item1-img-h);
        background-image: url(./assets/img/top/vision_item1_sp.svg);
        background-size: contain;
        top: calc(var(--symptom_item1-img-h) * -0.2);
        left: auto;
        right: -13px;
        bottom: auto;
        opacity: 0.65;
    }
    .toppage_vision_item.symptom_item2::before {
        --symptom_item2-img-w: 170.84px;
        --symptom_item2-img-h: 199.44px;
        width: var(--symptom_item2-img-w);
        height: var(--symptom_item2-img-h);
        background-image: url(./assets/img/top/vision_item2_sp.svg);
        background-size: contain;
        top: calc(var(--symptom_item2-img-h) * -0.474);
        left: auto;
        right: -14px;
        bottom: auto;
        opacity: 0.65;
    }
    .toppage_vision_item.symptom_item4::before {
        --symptom_item4-img-w: 170.84px;
        --symptom_item4-img-h: 220.4px;
        width: var(--symptom_item4-img-w);
        height: var(--symptom_item4-img-h);
        background-image: url(./assets/img/top/vision_item3_sp.svg);
        background-size: contain;
        top: calc(var(--symptom_item4-img-h) * -0.474);
        left: auto;
        right: -14px;
        bottom: auto;
        opacity: 0.65;
    }
    .toppage_vision_item.symptom_item5::before {
        --symptom_item5-img-w: 171.2px;
        --symptom_item5-img-h: 170.84px;
        width: var(--symptom_item5-img-w);
        height: var(--symptom_item5-img-h);
        background-image: url(./assets/img/top/vision_item4_sp.svg);
        background-size: contain;
        top: calc(var(--symptom_item5-img-h) * -0.564);
        left: auto;
        right: -15px;
        bottom: auto;
        opacity: 0.65;
    }
    .toppage_vision_item.symptom_item6::before {
        --symptom_item6-img-w: 170.84px;
        --symptom_item6-img-h: 248.9px;
        width: var(--symptom_item6-img-w);
        height: var(--symptom_item6-img-h);
        background-image: url(./assets/img/top/vision_item5_sp.svg);
        background-size: contain;
        top: calc(var(--symptom_item6-img-h) * -0.518);
        left: auto;
        right: -29px;
        bottom: auto;
        opacity: 0.65;
    }
    .toppage_vision_item.symptom_item5 .toppage_vision_item-text br:nth-child(1),
    .toppage_vision_item.symptom_item5 .toppage_vision_item-text br:nth-child(3) {
        display: none;
    }



}
@media screen and (max-width: 540px) {
    .toppage_vision-title {
        font-size: 28px;
    }
    .toppage_vision_item.symptom_item1::before {
        --symptom_item1-img-w: 114px;
        --symptom_item1-img-h: 114px;
    }
    .toppage_vision_item.symptom_item2::before {
        --symptom_item2-img-w: 116px;
        --symptom_item2-img-h: 136px;
    }
    .toppage_vision_item.symptom_item4::before {
        --symptom_item4-img-w: 114px;
        --symptom_item4-img-h: 148px;
    }
    .toppage_vision_item.symptom_item5::before {
        --symptom_item5-img-w: 115px;
        --symptom_item5-img-h: 115px;
    }
    .toppage_vision_item.symptom_item6::before {
        --symptom_item6-img-w: 130px;
        --symptom_item6-img-h: 168px;
    }
}



/* ごあいさつ */
.toppage_greeting {
    position: relative;
    width: 100vw;
    margin-left: calc(50% - 50vw);
}
.toppage_greeting::before {
    content: '';
    background-image: url(./assets/img/top/toppage_greeting_bg1_2.png);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    display: block;
    width: 685px;
    height: 636px;
    /* margin-left: calc(50% - 50vw); */
    position: absolute;
    top: -161px;
    left: 0;
    z-index: -1;
}
.toppage_greeting::after {
    content: '';
    background-image: url(./assets/img/top/toppage_greeting_bg2_2.png);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    display: block;
    width: 548px;
    height: 427px;
    /* margin-left: calc(50% - 50vw); */
    position: absolute;
    bottom: 0;
    right: -58px;
    z-index: -1;
}



.toppage_greeting_container {
    display: flex;
    flex-wrap: wrap;
    gap: 36px;
    justify-content: center;
    max-width: 1046px;
    padding: 180px 20px 190px;
    margin: 0 auto;
}
@media screen and (min-width: 980px) {
    .toppage_greeting_container {
        flex-wrap: nowrap;
    }
}
@media screen and (max-width: 979px) {
    .toppage_greeting_container {
        padding: 180px 20px 80px;
    }
}
.toppage_greeting_col--left {
    position: relative;
}
.toppage_greeting_col--left::before {
    content: '';
    width: 233.08px;
    height: 68.74px;
    background-image: url(./assets/img/top/toppage_greeting_img1.svg);
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    top: -6.6%;
    right: -55%;
}
.toppage_greeting-title {
    position: relative;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    width: 100%;
    height: 20.58px;
    background-image: url(./assets/img/top/toppage_greeting_img2.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}
/* .toppage_greeting-title::before {
    content: '';
    width: 109.96px;
    height: 20.58px;
    background-image: url(./assets/img/top/toppage_greeting_img2.svg);
    background-size: contain;
    background-repeat: no-repeat;
} */
@media screen and (min-width: 782px) {
    .toppage_greeting_col--left {
        flex-basis: 250px;
    }
    .toppage_greeting_col--right {
        flex-basis: 760px;
        column-count: 2;
        column-gap: 36px;
    }
    .toppage_greeting-title {
        column-span: all;
        width: 50%;
        text-align: center;
    }
    .toppage_greeting_col--right > .toppage_greeting-text {
        letter-spacing: 0.01em;
        text-align: justify;
        margin: 0 0 1.6em;
    }
}

/* safari調整 */
@supports (hanging-punctuation: first) and (font: -apple-system-body) {
  @media screen and (min-width: 782px) {
    .toppage_greeting_col--right > .toppage_greeting-text {
        letter-spacing: 0.11em;
        font-weight: 400;
        font-style: normal;
        -webkit-font-feature-settings: "palt";
        -moz-font-feature-settings: "palt";
        font-feature-settings: "palt";
    }
  }
}

/* firefox調整 */
@-moz-document url-prefix(){
    @media screen and (min-width: 782px) {
        .toppage_greeting_col--right > .toppage_greeting-text {
            letter-spacing: 0.11em;
            font-weight: 400;
            font-style: normal;
            -webkit-font-feature-settings: "palt";
            -moz-font-feature-settings: "palt";
            font-feature-settings: "palt";
        }
    }
}

.toppage_greeting-career > p {
    margin-bottom: 0;
}
.toppage_greeting-date {
    font-size: 13px;
    line-height: 1;
}
.toppage_greeting-name {
    font-size: 13px;
    margin-bottom: 1em;
}
.toppage_greeting-name > span:nth-child(2) {
    font-size: 18px;
}
.toppage_greeting-career .toppage_greeting-text {
    font-size: 13px;
    letter-spacing: 0.025em;
}
@media screen and (max-width: 979px) {
    .toppage_greeting::before {
        background-size: contain;
        width: 69.96935648621042vw;
    }
    .toppage_greeting::after {
        background-size: contain;
        width: 55.975485188968335vw;
        height: 200px;
        background-position: right center;
        /* right: -24px !important; */
    }
    .toppage_greeting_col--left::before {
        position: relative;
        top: auto;
        right: auto;
        display: block;
        margin: 0 auto 24px;
    }
}
@media screen and (max-width: 580px) {
    /* .toppage_greeting_col--left::before {
        right: -20%;
    } */
    .toppage_greeting-career .toppage_greeting-text {
        letter-spacing: 0;
    }
}


/*----------------------------------------
    採用情報
----------------------------------------*/
/*  */
@media screen and (min-width: 980px) {
    .page-id-112 .main-header-content .main-navigation {
        display: none;
    }
}

/* 私たちが目指すクリニックとは */
.recruit_about-title {
    letter-spacing: 0.34em;
    font-style: italic;
    font-weight: 400;
    text-align: center;
    position: relative;
}
.recruit_about-title::before {
    content: '';
    width: 500px;
    height: 12px;
    background-image: linear-gradient(90deg, #f9e862 11%, #ffffff 50%, #958eff 92%);
    position: absolute;
    left: 0;
    right: 0;
    bottom: -2px;
    margin: 0 auto;
    z-index: -1;
}
.recruit_about-slogan {
    font-size: 35px;
    text-align: center;
    color: #6a82d7;
    font-weight: 400;
    transform: rotate(0.05deg);
}
.recruit_about-slogan_text {
    font-size: 20px;
    text-align: center;
    transform: rotate(0.05deg);
}
.recruit_about-slogan_detail {
    width: 528px;
    margin: 0 auto 1.8em;
    letter-spacing: 0.005em;
}
.recruit_about .accordion-wrapper summary {
    list-style: none !important;
    text-align: center;
    width: 100px;
    margin: 0 auto;
    cursor: pointer;
    border-bottom: 2px solid #6a74d7;
}
.recruit_about .accordion-wrapper summary::-webkit-details-marker { display: none; }
.recruit_about .accordion-wrapper summary::marker { content: ''; }
.recruit_about .accordion-wrapper .recruit_about-slogan_detail {
    margin-top: 36px;
}


@media screen and (min-width: 641px) {
    .recruit_about-slogan br {
        display: none;
    }
}
@media screen and (max-width: 979px) {
    .recruit_about-slogan {
        font-size: 24px;
        letter-spacing: 0;
    }
}

@media screen and (max-width: 560px) {
    .recruit_about-title {
        letter-spacing: 0.14em;
    }
    .recruit_about-title::before {
        width: 100%;
    }
    .recruit_about-slogan_detail {
        width: 100%;
    }
}

/* 当院のビジョン */
.recruit_vision-title {
    letter-spacing: 0.34em;
    font-style: italic;
    font-weight: 400;
    text-align: center;
    position: relative;
}
.recruit_vision-title::before {
    content: '';
    width: 500px;
    height: 12px;
    background-image: linear-gradient(90deg, #f9e862 11%, #ffffff 50%, #958eff 92%);
    position: absolute;
    left: 0;
    right: 0;
    bottom: -2px;
    margin: 0 auto;
    z-index: -1;
}
@media screen and (max-width: 560px) {
    .recruit_vision-title {
        letter-spacing: 0.14em;
    }
    .recruit_vision-title::before {
        width: 100%;
    }
}

/* 当院の理念 */
.recruit_vision_core_values_title__container {
    width: 356px;
    height: 100px;
    margin: 0 auto 32px;
    border-left: 5px solid #6a74d7;
    border-bottom: 5px solid #8b8b8b;
    text-align: right;
}
.recruit_vision_core_values_title {
    font-size: 25px;
    font-weight: 500;
    color: #6a82d7;
    margin-left: 24px;
    margin-bottom: 6px;
    text-align: left;
    line-height: 1;
}
.recruit_vision_core_values_title_img {
    width: 256.99px;
    height: 44.65px;
    object-fit: contain;
}
.recruit_vision_core_values_slogan {
    font-size: 35px;
    text-align: center;
    color: #6a82d7;
    font-weight: 400;
    transform: rotate(0.05deg);
    margin-bottom: 20px;
}
.recruit_vision_core_values_slogan_text {
    width: 554px;
    margin: 0 auto 1.8em;
    letter-spacing: 0.005em;
}
@media screen and (min-width: 641px) {
    .recruit_vision_core_values_slogan br {
        display: none;
    }
}
@media screen and (max-width: 979px) {
    .recruit_vision_core_values_slogan {
        font-size: 24px;
    }
}
@media screen and (max-width: 600px) {
    .recruit_vision_core_values_slogan_text {
        width: 100%;
    }
}
@media screen and (max-width: 560px) {
    .recruit_vision_core_values_title__container {
        width: 100%;
    }
}



/* 当院の存在意義 */
.recruit_vision_purpose_title__container {
    width: 356px;
    height: 100px;
    margin: 0 auto 32px;
    border-left: 5px solid #6a74d7;
    border-bottom: 5px solid #8b8b8b;
    text-align: right;
}
.recruit_vision_purpose_title {
    font-size: 25px;
    font-weight: 500;
    color: #6a82d7;
    margin-left: 24px;
    margin-bottom: 22px;
    text-align: left;
    line-height: 1;
}
.recruit_vision_purpose_img {
    width: 191.29px;
    height: 42.9px;
    object-fit: contain;
    margin-right: 16px;
}
.recruit_vision_purpose_slogan {
    font-size: 35px;
    text-align: center;
    color: #6a82d7;
    font-weight: 400;
    transform: rotate(0.05deg);
    margin-bottom: 20px;
}
.recruit_vision_purpose_slogan_text {
    width: 648px;
    margin: 0 auto 1.8em;
    letter-spacing: 0.005em;
}
.recruit_vision_purpose_slogan_text > span {
    color: #6a82d7;
    font-weight: 700;
    font-family: "Noto Serif JP", serif;
}
@media screen and (min-width: 641px) {
    .recruit_vision_purpose_slogan br {
        display: none;
    }
}
@media screen and (max-width: 979px) {
    .recruit_vision_purpose_slogan {
        font-size: 24px;
    }
}
@media screen and (max-width: 680px) {
    .recruit_vision_purpose_slogan_text {
        width: 100%;
    }
}
@media screen and (max-width: 560px) {
    .recruit_vision_purpose_title__container {
        width: 100%;
    }
}

/* 目指す姿 */
.recruit_vision_mission_title__container {
    width: 356px;
    height: 100px;
    margin: 0 auto 32px;
    border-left: 5px solid #6a74d7;
    border-bottom: 5px solid #8b8b8b;
    text-align: right;
}
.recruit_vision_mission_title {
    font-size: 25px;
    font-weight: 500;
    color: #6a82d7;
    margin-left: 24px;
    margin-bottom: 10px;
    text-align: left;
    line-height: 1;
}
.recruit_vision_mission_title_img {
    width: 178.24px;
    height: 41.71px;
    object-fit: contain;
    margin-right: 24px;
}
.recruit_vision_mission_slogan {
    font-size: 35px;
    text-align: center;
    color: #6a82d7;
    font-weight: 400;
    transform: rotate(0.05deg);
    margin-bottom: 20px;
}
@media screen and (min-width: 641px) {
    .recruit_vision_mission_slogan br {
        display: none;
    }
}
@media screen and (max-width: 979px) {
    .recruit_vision_mission_slogan {
        font-size: 24px;
    }
}
@media screen and (max-width: 979px) {
    .recruit_vision_mission_slogan {
        font-size: 24px;
        letter-spacing: 0;
    }
}
/* @media screen and (max-width: 680px) {
    .recruit_vision_purpose_slogan_text {
        width: 100%;
    }
} */
@media screen and (max-width: 560px) {
    .recruit_vision_mission_title__container {
        width: 100%;
    }
}



/* 当院のミッション */
.recruit_mission_title {
    letter-spacing: 0.34em;
    font-style: italic;
    font-weight: 400;
    text-align: center;
    position: relative;
}
.recruit_mission_title::before {
    content: '';
    width: 500px;
    height: 12px;
    background-image: linear-gradient(90deg, #f9e862 11%, #ffffff 50%, #958eff 92%);
    position: absolute;
    left: 0;
    right: 0;
    bottom: -2px;
    margin: 0 auto;
    z-index: -1;
}
.recruit_mission_text {
    text-align: center;
}

.recruit_mission_list_title {
    font-size: 21px;
    color: #7b7e88;
    border: 3px solid #ffe05f;
    border-radius: 100px;
    padding: 12px 40px;
    text-align: center;
    width: 716px;
    margin-left: auto;
    margin-right: auto;
    font-weight: 500;
    letter-spacing: 0.14em;
    position: relative;
}

.recruit_mission_item.symptom_item1 .recruit_mission_list_title::before {
    content: '';
    width: 14.07px;
    height: 31.73px;
    background-image: url(./assets/img/recruit/symptom_item1.svg);
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    top: 10px;
    left: 60px;
}
.recruit_mission_item.symptom_item2 .recruit_mission_list_title::before {
    content: '';
    width: 20.76px;
    height: 31.73px;
    background-image: url(./assets/img/recruit/symptom_item2.svg);
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    top: 12px;
    left: 60px;
}
.recruit_mission_item.symptom_item3 .recruit_mission_list_title::before {
    content: '';
    width: 18.13px;
    height: 32.16px;
    background-image: url(./assets/img/recruit/symptom_item3.svg);
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    top: 12px;
    left: 60px;
}


.recruit_mission_list_slogan {
    font-size: 19px;
    text-align: center;
    color: #6a82d7;
    font-weight: 400;
    transform: rotate(0.05deg);
}
@media screen and (min-width: 641px) {
    .recruit_mission_list_slogan br {
        display: none;
    }
}
.recruit_mission_list_text {
    width: 716px;
    margin-left: auto;
    margin-right: auto;
}

.recruit_mission_list_detail {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    width: 540px;
    margin: 0 auto;
}
.recruit_mission_list_detail > .recruit_mission_list_detail_title {
    color: #f5b400;
    font-weight: 700;
    flex-basis: 200px;
}
.recruit_mission_list_detail > .recruit_mission_list_detail_title::after {
    content: "";
    height: 1px;
    width: 58px;
    margin-left: 8px;
    background: #6a74d7;
    display: inline-block;
    vertical-align: middle;
}
.recruit_mission_list_detail > ul {
    list-style: none;
    margin-left: 0;
    flex-basis: 340px;
}
.recruit_mission_list_detail.list_detail3 > .recruit_mission_list_detail_title {
    flex-basis: 100%;
}
.recruit_mission_list_detail.list_detail3 > p {
    margin: 0 auto 1.8em;
}
.recruit_mission_list_detail.list_detail3 > p strong {
    font-size: 19px;
    text-align: center;
    color: #6a82d7;
    font-weight: 500;
    transform: rotate(0.05deg);
}

@media screen and (min-width: 641px) {
    .recruit_mission_list_detail.list_detail3 > p br {
        display: none;
    }
}
@media screen and (min-width: 881px) {
    .recruit_mission_list_title br {
        display: none;
    }
}
@media screen and (max-width: 880px) {
    .recruit_mission_list_title {
        width: 100%;
        padding-left: 60px;
    }
    .recruit_mission_item.symptom_item1 .recruit_mission_list_title::before {
        left: 32px;
        top: 50%;
        transform: translateY(-50%);
    }
    .recruit_mission_item.symptom_item2 .recruit_mission_list_title::before {
        left: 32px;
        top: 50%;
        transform: translateY(-50%);
    }
    .recruit_mission_item.symptom_item3 .recruit_mission_list_title::before {
        left: 32px;
        top: 50%;
        transform: translateY(-50%);
    }
}
@media screen and (max-width: 760px) {
    .recruit_mission_list_text {
        width: 100%;
    }
}
@media screen and (max-width: 560px) {
    .recruit_mission_title {
        letter-spacing: 0.14em;
    }
    .recruit_mission_title::before {
        width: 100%;
    }
    .recruit_mission_list_detail {
        width: 100%;
        justify-content: flex-start;
    }
    .recruit_mission_list_detail > .recruit_mission_list_detail_title {
        margin-bottom: 0.5em;
    }
}



/* 当院で期待する人材 */
.recruit_expected-personnel_title {
    letter-spacing: 0.34em;
    font-style: italic;
    font-weight: 400;
    text-align: center;
    position: relative;
}
.recruit_expected-personnel_title::before {
    content: '';
    width: 500px;
    height: 12px;
    background-image: linear-gradient(90deg, #f9e862 11%, #ffffff 50%, #958eff 92%);
    position: absolute;
    left: 0;
    right: 0;
    bottom: -2px;
    margin: 0 auto;
    z-index: -1;
}
.recruit_expected-personnel_slogan {
    font-size: 35px;
    text-align: center;
    color: #6a82d7;
    font-weight: 400;
    transform: rotate(0.05deg);
    margin-bottom: 24px;
}
.recruit_mission_list_detail ul li strong {
    color: #6a82d7;
}
.recruit_mission_list_detail.list_detail1 ul li::first-letter {
    color: #ffc936;
}
.recruit_mission_list_detail.list_detail2 ul li::first-letter {
    color: #ffc936;
}

@media screen and (min-width: 641px) {
    .recruit_expected-personnel_slogan br {
        display: none;
    }
}
@media screen and (max-width: 979px) {
    .recruit_expected-personnel_slogan {
        font-size: 24px;
    }
}
@media screen and (max-width: 560px) {
    .recruit_expected-personnel_title {
        letter-spacing: 0.14em;
    }
    .recruit_expected-personnel_title::before {
        width: 100%;
    }
}



/* 当院で期待する人材 */
.recruit_expected-personnel_works {
    display: flex;
    gap: 57px;
}
.recruit_expected-personnel_works_list {
    flex-basis: 100%;
    cursor: pointer;
}
@media screen and (min-width: 980px) {
    .recruit_expected-personnel_works_list {
        flex-basis: 33.333%;
    }
}

.recruit_expected-personnel_works_head {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    gap: 12px;
    margin-bottom: 45px;
}
.recruit_expected-personnel_works_head h3 {
    color: #fff;
    background-color: #6a74d7;
    font-size: 28px;
    font-weight: 400;
    margin: 0 -12px;
    padding: 8px;
    width: 320px;
    text-align: center;
}
/* @media screen and (min-width: 980px) {
    .recruit_expected-personnel_works_head {
        margin-left: -32px;
    }
} */
@media screen and (max-width: 979px) {
    .recruit_expected-personnel_works_head h3 {
        font-size: 18px;
    }
    .recruit_expected-personnel_works_head img {
        width: 13.48314606741573vw;
    }
}


.recruit_expected-personnel_works_header {
    display: flex;
    flex-wrap: nowrap;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    border: 3px solid #6a74d7;
    border-radius: 24px;
    padding: 20px;
}
@media screen and (min-width: 980px) {
    .recruit_expected-personnel_works_header {
        height: 216px;
    }
}
.recruit_expected-personnel_works_title {
    font-size: 27px;
    font-weight: 400;
    color: #6a74d7;
    margin: 0;
}
.recruit_expected-personnel_works_detail {
    margin-top: 1em;
    margin-bottom: 0;
}
.recruit_expected-personnel_works_list > p strong {
    color: #6a82d7;
}
.recruit_expected-personnel_works_list > ul li::marker {
    color: #3fab58;
}
.recruit_expected-personnel_text {
    font-size: 28px;
    font-weight: 500;
    font-style: italic;
    text-align: center;
}
.recruit_expected-personnel_text {
    background-image: radial-gradient(closest-side, #fffa91 39%, transparent);
    padding: 2em 0;
    margin-top: 80px;
    margin-bottom: 0;
    font-family: "Noto Serif JP", serif;
    font-weight: 500;
}
.recruit_expected-personnel_works_list summary {
    list-style: none !important;
}
.recruit_expected-personnel_works_list summary::-webkit-details-marker { display: none; }
.recruit_expected-personnel_works_list summary::marker { content: ''; }
.recruit_expected-personnel_works_list .icon {
    display: block;
    position: relative;
    width: 42px;
    height: 1px;
    margin: 35px auto 14px;
    flex-shrink: 0;
    transform-origin: center 43%;
    /* transition: transform 0.4s; */
}
.recruit_expected-personnel_works_list .icon::before,
.recruit_expected-personnel_works_list .icon::after {
    content: "";
    position: absolute;
    display: block;
    width: 26px;
    height: 3px;
    background-color: #ffc939;
}
.recruit_expected-personnel_works_list .icon::before {
    left: 0;
    transform: rotate(45deg);
}
.recruit_expected-personnel_works_list .icon::after {
    right: 0;
    transform: rotate(-45deg);
}
.recruit_expected-personnel_works_list[open] .icon {
    transform: rotate(180deg);
}
.recruit_expected-personnel_works_list .viewmore {
    text-align: center;
}
.recruit_expected-personnel_works_list[open] summary {
    margin-bottom: 32px;
}

@media screen and (min-width: 581px) {
    .recruit_expected-personnel_text br:nth-child(1),
    .recruit_expected-personnel_text br:nth-child(3),
    .recruit_expected-personnel_text br:nth-child(5) {
        display: none;
    }
}
@media screen and (max-width: 979px) {
    .recruit_expected-personnel_text {
        font-size: 24px;
    }
    .recruit_expected-personnel_works {
        flex-wrap: wrap;
        gap: 57px;
    }
}
/* @media screen and (max-width: 580px) {
    .recruit_expected-personnel_text br {
        display: none;
    }
} */



/* 当院で期待する人材 */
.recruit_ideal-candidate-profile_title {
    letter-spacing: 0.34em;
    font-style: italic;
    font-weight: 400;
    text-align: center;
    position: relative;
}
.recruit_ideal-candidate-profile_title::before {
    content: '';
    width: 500px;
    height: 12px;
    background-image: linear-gradient(90deg, #f9e862 11%, #ffffff 50%, #958eff 92%);
    position: absolute;
    left: 0;
    right: 0;
    bottom: -2px;
    margin: 0 auto;
    z-index: -1;
}
.recruit_ideal-candidate-profile_text {
    max-width: 426px;
    margin: 0 auto 82px;
}
.recruit_ideal-candidate-profile_text > ul li::marker {
    color: #6a82d7;
}
.recruit_ideal-candidate-profile_text > ul li strong {
    color: #6a82d7;
}
.recruit_ideal-candidate-profile_period_title {
    font-size: 27px;
    font-weight: 500;
    color: #6a74d7;
    margin: 0;
    text-align: center;
}
.recruit_ideal-candidate-profile_period_text {
    text-align: center;
}
@media screen and (max-width: 560px) {
    .recruit_ideal-candidate-profile_title {
        letter-spacing: 0.14em;
    }
    .recruit_ideal-candidate-profile_title::before {
        width: 100%;
    }

}
.recruit_ideal-candidate-profile_job-description_title {
    font-size: 27px;
    font-weight: 500;
    color: #6a74d7;
    color: #ff9f12;
    margin: 82px 0 0;
    text-align: center;
}
/* @media screen and (max-width: 560px) {
    .recruit_ideal-candidate-profile_job-description_title {
        letter-spacing: 0.14em;
    }

} */

.recruit_ideal-candidate-profile_job-description_button {
    text-align: center;
    letter-spacing: 0.05em;
    /* transition: all .15s ease-in-out; */
}
.recruit_ideal-candidate-profile_job-description_button a {
    color: #fff !important;
    background-color: #6a74d7;
    background-color: #ff9f12;
    text-decoration: none;
    padding: 16px 48px;
    border-radius: 8px;
    display: inline-block;   
    font-size: 18px; 
}
.recruit_ideal-candidate-profile_job-description_button a:hover {
    opacity: 0.7;
}
@media screen and (min-width: 561px) {
    .recruit_ideal-candidate-profile_job-description_button a br {
        display: none;
    }
}
.recruit_ideal-candidate-profile_job-description_detail {
    font-feature-settings: "palt";
    text-align: center;
}
.recruit_ideal-candidate-profile_job-description_detail::before {
    content: "\25BC";
    color: #ff9f12;
    display: inline-block;
    margin-right: 8px;
}
.recruit_ideal-candidate-profile_job-description_detail::after {
    content: "\25BC";
    color: #ff9f12;
    display: inline-block;
    margin-left: 8px;
}
/* @media screen and (max-width: 560px) {
    .recruit_ideal-candidate-profile_job-description_detail {
        letter-spacing: 0;
    }
} */


/*----------------------------------------
    フッター
----------------------------------------*/
.site-footer {
    background-image: url(./assets/img/mainvisual-bg.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-color: rgba(255, 255, 255, 0.35);
    background-blend-mode: lighten;
    background-position: center;
}
.site-bottom {
    background: transparent !important;
    border-top: none;
    color: inherit;
    padding-top: 64px;
    padding-bottom: 64px;
}
.site-bottom-content {
    background-color: #fff;
    padding-top: 80px;
    padding-bottom: 24px;
}
.common_map {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: flex-end;
    gap: 36px;
    margin-bottom: 104px;
}
.common_map_table {
    margin-bottom: 0;
}
.common_map_table td {
    padding: 0.25em;
    border: none;
    text-align: left;
}
.common_map_table tr:nth-of-type(1) td:first-child::before {
    content: '';
    width: 19.6px;
    height: 12.85px;
    background-image: url(./assets/img/common/icon_location.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    display: inline-block;
    vertical-align: middle;
    margin-right: 4px;
}
.common_map_table tr:nth-of-type(2) td:first-child::before {
    content: '';
    width: 19.6px;
    height: 24.83px;
    background-image: url(./assets/img/common/icon_bus-stop.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    display: inline-block;
    vertical-align: middle;
    margin-right: 4px;
}
.common_map_table tr:nth-of-type(4) td:first-child::before {
    content: '';
    width: 19.6px;
    height: 16.6px;
    background-image: url(./assets/img/common/icon_car.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    display: inline-block;
    vertical-align: middle;
    margin-right: 4px;
}


.common_map_googlemap {
    text-align: left;
    margin-bottom: 28px;
}
.common_map_googlemap a {
    display: inline-block;
    color: #7b7e88;
    background-color: #d1eee4;
    padding: 4px 40px 8px 24px;
    border-radius: 8px;
    position: relative;
    line-height: 1;
}
.common_map_googlemap a::after {
    content: '';
    width: 18px;
    height: 29px;
    background-image: url(./assets/img/common/icon_pin.svg);
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    top: -8px;
    right: 16px;
}
.site-info {
    clear: none;
    float: none;
    text-align: center;
}
.site-info .site-logo img {
    width: 160px;
    height: auto;
    transform-origin: center;
}
.site-copyright {
    margin-top: 24px;
    margin-bottom: 0;
}
.footer-navigation {
    float: none;
}
.footer-navigation li {
    margin-right: 0;
}
/* @media screen and (min-width: 980px) { */
    /* メニュー */
    .footer-menu_container {
        display: flex;
        flex-wrap: wrap;
        align-items: flex-end;
        justify-content: space-between;
    }
    .menu-footer_menu-container {
        font-size: 100%;
        line-height: 1;
    }
    .menu-footer_menu-container a {
        padding-left: 0;
        padding-right: 0;
    }
    .menu-footer_menu-container ul {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: flex-end;
        gap: 18px;
        margin-bottom: 0;
    }
    .menu-footer_menu-container ul li a {
        display: flex;
        justify-content: center;
        align-items: center;
        font-weight: 500;
        text-align: center;
        font-size: 12px;
        line-height: 1.5;
        position: relative;
        letter-spacing: 0;
    }
    .menu-footer_menu-container ul li:nth-of-type(1) a,
    .menu-footer_menu-container ul li:nth-of-type(2) a {
        color: #3fab58;
        width: 66px;
        height: 66px;
        position: relative;
        z-index: 0;
        flex-direction: column-reverse;
        gap: 8px;
        top: 3px;
    }
    .menu-footer_menu-container ul li:nth-of-type(1) a::after {
        content: '';
        width: 30.06px;
        height: 26.58px;
        background-image: url(./assets/img/common/icon_home.svg);
        background-repeat: no-repeat;
        background-size: contain;
        background-position: center;
        display: inline-block;
    }
    .menu-footer_menu-container ul li:nth-of-type(2) a::after {
        content: '';
        width: 25.62px;
        height: 26.05px;
        background-image: url(./assets/img/common/icon_instagram_footer.svg);
        background-repeat: no-repeat;
        background-size: contain;
        background-position: center;
        display: inline-block;
    }
    .menu-footer_menu-container ul li:nth-of-type(4) a,
    .menu-footer_menu-container ul li:nth-of-type(5) a,
    .menu-footer_menu-container ul li:nth-of-type(6) a {
        color: #fff;
        width: 66px;
        height: 66px;
        position: relative;
        z-index: 0;
    }
    .menu-footer_menu-container ul li:nth-of-type(4) a::after,
    .menu-footer_menu-container ul li:nth-of-type(5) a::after,
    .menu-footer_menu-container ul li:nth-of-type(6) a::after {
        content: '';
        width: 66px;
        height: 66px;
        background-color: #a1a7e6;
        border-radius: 100px;
        position: absolute;
        left: 0;
        right: 0;
        z-index: -1;
    }
    .menu-footer_menu-container ul li:nth-of-type(7) a {
        color: #6a74d7;
        width: 114px;
        height: 114px;
        position: relative;
        z-index: 0;
        flex-direction: column-reverse;
        gap: 12px;
        font-size: 18px;
        font-weight: 500;
        padding-bottom: 24px;
    }
    .menu-footer_menu-container ul li:nth-of-type(7) a::before {
        content: '';
        width: 114px;
        height: 114px;
        background-color: #ffff5f;
        border-radius: 100px;
        position: absolute;
        left: 0;
        right: 0;
        z-index: -1;
    }
    .menu-footer_menu-container ul li:nth-of-type(7) a::after {
        content: '';
        width: 19.9945px;
        height: 25.4433px;
        background-image: url(./assets/img/common/icon_recruit.svg);
        background-repeat: no-repeat;
        background-size: contain;
        background-position: center;
        display: inline-block;
    }

    .menu-footer_menu-container ul li:nth-of-type(4) a::after,
    .menu-footer_menu-container ul li:nth-of-type(5) a::after,
    .menu-footer_menu-container ul li:nth-of-type(6) a::after,
    .menu-footer_menu-container ul li:nth-of-type(7) a::before {
        transition: all .15s ease-in-out;
    }
    .menu-footer_menu-container ul li:nth-of-type(4) a:hover::after,
    .menu-footer_menu-container ul li:nth-of-type(5) a:hover::after,
    .menu-footer_menu-container ul li:nth-of-type(6) a:hover::after,
    .menu-footer_menu-container ul li:nth-of-type(7) a:hover::before {
        opacity: 0.7;
    }

    
/* } */

@media screen and (min-width: 782px) {
    .menu-footer_menu-container ul li:nth-of-type(3) {
        display: none;
    }
}
@media screen and (max-width: 781px) {
    .footer-menu_container {
        justify-content: center;
    }
    .menu-footer_menu-container ul {
        margin: 24px;
    }
    .menu-footer_menu-container ul li:nth-of-type(1),
    .menu-footer_menu-container ul li:nth-of-type(2) {
        margin-top: 2em;
        margin-bottom: -2em;
    }
    .menu-footer_menu-container ul li:nth-of-type(3) {
        width: 100%;

    }
    .menu-footer_menu-container ul li:nth-of-type(3) a {
        display: none;
    }
}



/*----------------------------------------
    アニメーション
----------------------------------------*/
/* トップページ */
/* 背景をふわっと見せるための幕 */
/* .home .mainvisual{
  position: relative;
  overflow: hidden;
  --mv-overlay: rgba(255,255,255,0.85);
} */

/* .home .mainvisual::before{
  content:"";
  position:absolute;
  inset:0;
  background: var(--mv-overlay);
  pointer-events:none;
  z-index:1;
} */

/* 既存要素を幕より前へ */
.home .mainvisual-content{
  position: relative;
}

/* 初期状態（GSAPで出す前提） */
.home .site-logo,
.home .mainvisual__hero,
.home .mainvisual__text,
.home .mainvisual__opening{
  opacity: 0;
  will-change: transform, opacity, filter;
}
.home .mainvisual__text{
    opacity: 1;
}


.toppage_greeting {
  --p-opacity: 0;
  --p-x: -40px;
  --after-opacity: 0;
  --after-right: -98px;
  position: relative;
}

.toppage_greeting::before{
  content:"";
  position:absolute;
  inset:0;
  opacity: var(--p-opacity);
  transform: translateX(var(--p-x)) translateY(-161px);
  transition: none; /* 任意 */
}
.toppage_greeting::after{
  /* --base-transform: translate(0,0); */
  content:"";
  position:absolute;
  /* inset:0; */
  opacity: var(--after-opacity);
  /* transform: translateX(var(--after-x)) translateY(100%); */
  transform: translateX(var(--after-right), 40px);
  transition: none; /* 任意 */
  right: var(--after-right);
  opacity: var(--after-opacity);
}


.toppage_greeting_col--left {
  --p-opacity: 0;
  --p-x: -40px;
  position: relative;
}

.toppage_greeting_col--left::before{
  content:"";
  position:absolute;
  inset:0;
  opacity: var(--p-opacity);
  --base-transform: translate(calc(55% - 118px), -62.6%);
  transform: var(--base-transform) translateX(var(--p-x));
  transition: none; /* 任意 */
  z-index: 1;
}
@media screen and (max-width: 979px) {
    .toppage_greeting_col--left::before {
        position: relative;
        top: auto;
        right: auto;
        display: block;
        margin: 0 auto 24px;
    }
    .toppage_greeting_col--left::before{
      content:"";
      /* position:absolute; */
      inset:0;
      opacity: var(--p-opacity);
      --base-transform: translate(-55%, 0);
      /* transform: var(--base-transform) translateX(40px);
      --base-transform: translate(calc(55% - 118px), -62.6%); */
      transform: var(--base-transform) translateX(var(--p-x));
      /* transition: none; */
      z-index: 1;
    }
}

.toppage_greeting_col--right {
    opacity: 0;
    --p-y: -40px;
  will-change: transform, opacity, filter;
}

.js-fadeup{
    opacity: 0;
    transform: translateY(30px);
}
.js-after-mv{
    opacity: 0;
    transform: translateY(30px);
}




/*
採用情報
*/
.recruit_mainvisual {
	position: relative;
	padding: 31px 0;
	aspect-ratio: 997 / 486;
}
.recruit_mainvisual .mainvisual_bg {
	position: relative;
	left: 7.3%;
	right: 0;
	margin: 0 auto;
}
.recruit_mainvisual .mainvisual_img1 {
	position: absolute;
	top: 8.6%;
	left: -0.1%;
}
.recruit_mainvisual .mainvisual_img2 {
	position: absolute;
	bottom: -0.8%;
	right: 0%;
}
.recruit_mainvisual .mainvisual_copy1 {
	position: absolute;
	top: -32.4%;
	left: 6.6%;
	right: 0;
	bottom: 0;
	margin: auto;
}
.recruit_mainvisual .mainvisual_copy2 {
	position: absolute;
	top: 0;
	left: 0;
	right: -2.6%;
	bottom: -4%;
	margin: auto;
}
.recruit_mainvisual .mainvisual_copy3 {
	position: absolute;
	top: 0;
	left: 1.2%;
	right: 0;
	bottom: -40.4%;
	margin: auto;
}
.recruit_mainvisual .mainvisual_head {
	position: absolute;
	top: 0;
	left: 18.8%;
}

/* 初期表示対応 */
.js .recruit_mainvisual { visibility: hidden; }
.js .recruit_mainvisual.is-ready { visibility: visible; }

/* JSが準備できるまで一旦隠す（ここが効くので“チラ見え”が止まる） */
.recruit_mainvisual {
  visibility: hidden;
}

/* JS準備完了で表示 */
.recruit_mainvisual.is-ready {
  visibility: visible;
}
/* recruit MV の画像は最初非表示 */
.recruit_mainvisual img{
  opacity: 0;
  will-change: transform, opacity;
}

/* 縦フェード対象（下→上） */
.recruit_mainvisual .mainvisual_bg,
.recruit_mainvisual .mainvisual_img1,
.recruit_mainvisual .mainvisual_img2,
.recruit_mainvisual .mainvisual_head{
  transform: translateY(16px);
}

/* 左から流れる対象（左→右） */
.recruit_mainvisual .mainvisual_copy1,
.recruit_mainvisual .mainvisual_copy2,
.recruit_mainvisual .mainvisual_copy3{
  transform: translateX(-40px);
}
@media (min-width: 641px){ .recruit_mainvisual .mv--sp{ display:none; opacity: 0; } }
@media (max-width: 640px){ .recruit_mainvisual .mv--pc{ display:none; opacity: 0; } }
@media screen and (max-width: 1100px) {
	.recruit_mainvisual .mainvisual_bg {
		width: 82.36363636363636vw;
	}
	.recruit_mainvisual .mainvisual_img1 {
		width: 25.818181818181817vw;
	}
	.recruit_mainvisual .mainvisual_img2 {
		width: 26.36363636363636vw;
	}
	.recruit_mainvisual .mainvisual_copy1 {
		width: 50.54545454545455vw;
	}
	.recruit_mainvisual .mainvisual_copy2 {
		width: 20.545454545454543vw;
	}
	.recruit_mainvisual .mainvisual_copy3 {
		width: 52vw;
		left: 1.4%;
		bottom: -38.8%;
	}
	.recruit_mainvisual .mainvisual_head {
		width: 24.363636363636363vw;
		/* left: 1.4%; */
		bottom: -38.8%;
	}
}
@media screen and (max-width: 1000px) {
	.recruit_mainvisual .mainvisual_bg {
		width: 81.963636vw;
		top: -0.6%;
		left: 7.4%;
	}
	.recruit_mainvisual .mainvisual_img1 {
		width: 25.818181818181817vw;
	}
	.recruit_mainvisual .mainvisual_img2 {
		width: 26.063636vw;
		bottom: 0.3%;
		right: 0%;
	}
	.recruit_mainvisual .mainvisual_copy1 {
		width: 50.54545454545455vw;
		top: -32.8%;
		left: 7%;
	}
	.recruit_mainvisual .mainvisual_copy2 {
		width: 20.445455vw;
		right: -2.9%;
		bottom: -3.2%;
	}
	.recruit_mainvisual .mainvisual_copy3 {
		width: 52vw;
	}
	.recruit_mainvisual .mainvisual_head {
		width: 24.363636363636363vw;
		left: 19%;
	}
}
@media screen and (max-width: 640px) {
	.page-id-112 .site-header {
		margin-bottom: 0 !important;
	}
	.recruit_mainvisual .mainvisual_bg {
		width: 100vw;
		left: -0.4%;
		/* transform: translateX(-50%) !important; */
	}
	.recruit_mainvisual .mainvisual_head {
		width: 51.45vw;
		left: 38.6%;
		top: 4.4%;
		bottom: auto;
	}
	.recruit_mainvisual .mainvisual_img1 {
		width: 49.0625vw;
		top: 5.2%;
		left: -0.2%;
	}
	.recruit_mainvisual .mainvisual_img2 {
		width: 50.6875vw;
		right: -3%;
		bottom: 1.8%;
	}
	.recruit_mainvisual .mainvisual_copy1 {
		width: 55.6875vw;
		top: -33%;
		left: 6.2%;
	}
	.recruit_mainvisual .mainvisual_copy2 {
		width: 95vw;
		height: auto;
		bottom: 12.8%;
		left: -2.4%;
		right: auto;
		/* transform: translateX(-50%) !important; */
		max-width: none;
	}
	.recruit_mainvisual .mainvisual_copy3 {
		width: 68.25vw;
		left: 0%;
		bottom: -10.4%;
	}
	.recruit_mainvisual .mainvisual_copy4 {
		width: 58.1875vw;
		left: 19%;
		bottom: 29.5%;
		position: absolute;
	}
}

/*
エントリーフォーム
*/
.snow-monkey-form .smf-form .smf-text-control__control {
    margin-top: 0;
    width: 100%;
    border-color: #8b8b8b;
}
.smf-form .smf-select-control__control {
    border-color: #8b8b8b;
}
.smf-form .smf-textarea-control__control {
    border-color: #8b8b8b;
}
.smf-form .smf-file-control__label {
    border-color: #8b8b8b;
}
.smf-form .smf-checkbox-control__control {
    border-color: #8b8b8b;
}
.smf-action .smf-button-control__control {
    border-color: #8b8b8b;
    padding: calc(calc(calc(1 + 0.3*2)/3*1)*1rem) calc(calc(calc(1 + 0.3*2)/3*2)*1rem);
    line-height: 1.6;
}
.smf-control-description {
    color: inherit;
    font-size: 12px;
}
.smf-form--simple-table .smf-item {
    gap: 20px;
}
.smf-form--simple-table .smf-item__col--label {
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #6a74d7;
    padding: 0.5em 1em;
    line-height: 1.4;
    border-radius: 3px;
}
@media screen and (max-width: 639px) {
    .smf-form--simple-table .smf-item__col--label {
        padding: 0.25em 1em;
        margin-bottom: 4px;
    }
}
.smf-item__label__text {
    color: #fff;
}


.recruit_entry_form {
    margin-top: 80px;
}
.snow-monkey-forms-turnstile>div {
    justify-content: center;
}
.wp-block-snow-monkey-forms-item.smf-item.hidden{
    display: none;
}
.recruit_entry_form_title {
    font-size: 40px;
    font-weight: 500;
    color: #ffff5f;
    margin: 0 0 32px;
    text-align: center;
    position: absolute;
    top: 43%;
    left: 18%;
}
.recruit_entry_form_title::before {
    content: '';
    width: 450px;
    height: 12px;
    background-image: linear-gradient(90deg, #f9e862 11%, #ffffff 50%, #958eff 92%);
    position: absolute;
    left: -14%;
    right: 0;
    bottom: 0;
    margin: 0 auto;
    /* z-index: -1; */
}
.smf-item__controls .wp-block-heading {
    margin-top: 1.5em;
}
.popmake-222,
.popmake-237 {
    color: #6a74d7;
    text-decoration: underline;
    cursor: pointer;
    display: inline-block;
    /* text-align: center; */
    font-size: 16px;
    margin: 0.5em 0 0;
}
@media screen and (max-width: 639px) {
    .popmake-222,
    .popmake-237 {
        display: block;
        text-align: center;
        margin: 0.75em 0 0.5em;
    }
}
.pum-content.popmake-content ol li:not(:last-child) {
    margin-bottom: 24px;
}
.pum-content.popmake-content ol ul li {
    margin-bottom: 0 !important;
}
.pum-theme-213 .pum-content, .pum-theme-default-theme .pum-content {
    color: inherit !important;
}
.pum-theme-213, .pum-theme-default-theme {
    background-color: rgba(0, 0, 0, 0.7) !important;
}
.pum-theme-213 .pum-content + .pum-close, .pum-theme-default-theme .pum-content + .pum-close {
    background-color: #6a74d7 !important;
}

/* .snow-monkey-form[data-screen="invalid"] .smf-control-description {
    display: none;
} */

.recruit_entry_form_header {
    position: relative;
    text-align: center;
    margin-bottom: 80px;
}
.recruit_entry_form_header::before {
    content: '';
    width: 100vw;
    height: 100%;
    background-image: linear-gradient(90deg, #fffa91 50%, #6a74d7 50%);
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    margin: 0 calc(50% - 50vw);
    z-index: -1;
}
.recruit_entry_form_header_img {
    position: absolute;
    top: 21.2%;
    right: 29.6%;
}
@media screen and (min-width: 980px) {
    .recruit_ideal-candidate-profile_period_text br {
        display: none;
    }
}
@media screen and (max-width: 1090px) {
    .recruit_entry_form_header_img {
        width: 19.908256880733948vw;
        height: auto;
    }
    .recruit_entry_form_title {
        font-size: 3.67vw;
        z-index: 1;
    }
    .recruit_entry_form_title::before {
        width: 41.284403669724774vw;
        height: 0.8vw;
        z-index: -1;
    }
}
@media screen and (max-width: 640px) {
    .recruit_entry_form_header_img {
        width: 24.908256880733948vw;
        right: 25.4%;
    }
    .recruit_entry_form_title {
        font-size: 5.07vw;
        top: 58%;
        left: 4%;
    }
    .recruit_entry_form_title::before {
        width: 50.284404vw;
        left: -4%;
    }
}
