/* よくあるご質問 - 全幅で共通（500px以下でも色・タイポが効く） */
.pageSearchFeature .pageFaq__content {
    width: 100%;
    display: block;
    clear: both;
}
.pageFaq .mainTitleBackLine {
    font-size: 21px;
    padding-right: 16px;
    color: #7d101e;
    border-bottom: 2px solid #7d101e;
}
.pageFaq__tabsBlock {
    background-color: #f8f7f7f5;
    overflow: hidden;
}
.pageFaq__tabs {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    margin: 0;
}
.pageFaq__tab {
    background-color: #cbc8c8ae;
    color: #4a4a4a;
    border: none;
    cursor: pointer;
    border-radius: 9999px;
}
.pageFaq__tab:hover {
    background-color: #bf7f12;
    color: #fff;
}
.pageFaq__tab.isActive {
    background-color: #7d101e;
    color: #fff;
}
.pageFaq__linkList {
    display: none;
    background: #fff;
    margin-top: 16px;
    margin-bottom: 32px;
    padding: 20px 24px;
}
.pageFaq__linkList.isActive {
    display: block;
}
.pageFaq__linkListInner {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    gap: 8px 24px;
}
.pageFaq__linkItem a {
    color: #333;
    text-decoration: none;
    font-size: 14px;
}
.pageFaq__linkItem a:hover {
    color: #7d101e;
    text-decoration: underline;
}
.pageFaq__sectionTitle {
    font-size: 18px;
    font-weight: bold;
    margin: 0 0 16px;
    padding-bottom: 8px;
    color: #7d101e;
    border-bottom: 2px solid #7d101e;
}
.faqAccordion__item {
    border: 2px solid #e0e0e0;
    border-radius: 8px;
    margin-bottom: 12px;
    overflow: hidden;
    scroll-margin-top: 120px;
}
.faqAccordion__item:last-child {
    margin-bottom: 0;
}
.faqAccordion__toggle {
    display: flex;
    align-items: center;
    width: 100%;
    padding: 20px 16px;
    background: #fff;
    border: none;
    cursor: pointer;
    text-align: left;
    gap: 12px;
    color: #333;
}
.faqAccordion__q {
    flex-shrink: 0;
    width: 36px;
    height: 36px;
    line-height: 34px;
    padding-top: 2px;
    box-sizing: border-box;
    text-align: center;
    background: #7d101e;
    border-radius: 50%;
    font-family: Arial, "Helvetica Neue", Helvetica, "ヒラギノ角ゴ ProN W3", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 300;
    color: #fff;
}
.faqAccordion__questionText {
    flex: 1;
    font-weight: bold;
    color: #7d101e;
}
.faqAccordion__icon {
    flex-shrink: 0;
    width: 28px;
    height: 28px;
    line-height: 26px;
    text-align: center;
    font-weight: bold;
    background: #fff;
    color: #7d101e;
    border-radius: 50%;
}
.faqAccordion__body {
    display: none;
    position: relative;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 12px;
    padding: 20px 16px 24px;
    background: #fff;
}
.faqAccordion__body::before {
    content: '';
    position: absolute;
    top: 0;
    left: 16px;
    right: 16px;
    height: 2px;
    background: #e0e0e0;
}
.faqAccordion__item.isActive .faqAccordion__body {
    display: flex;
}
.faqAccordion__a {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    padding-top: 2px;
    box-sizing: border-box;
    text-align: center;
    background: #bf7f12;
    border-radius: 50%;
    font-family: Arial, "Helvetica Neue", Helvetica, "ヒラギノ角ゴ ProN W3", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 300;
    color: #fff;
}
.faqAccordion__bodyContent {
    flex: 1;
    min-width: 0;
}
.faqAccordion__lead {
    margin: 0 0 12px;
    font-size: 14px;
    font-weight: bold;
    color: #bf7f12;
}
.faqAccordion__text {
    margin: 0;
    font-size: 14px;
    line-height: 1.7;
    color: #333;
}

@media screen and (min-width: 501px) {

    html {
        min-width: 1466px;
    }

    /* inner */

    .header__inner,
    .topicpath__list,
    .topSearch__inner,
    .topFeature__title,
    .topFeature__inner,
    .topRecruit__title,
    .topRecruit__inner,
    .topAbout__title,
    .topAbout__inner,
    .topNews__title,
    .topNews__inner,
    .pageSearch__title,
    .pageSearch__inner,
    .pageSearchList__inner,
    .pageSearchDetail__inner,
    .pageSearchFeature__inner,
    .pageFeature__inner,
    .pageFeatureDetail__inner,
    .pageOccupation__inner,
    .pageOccupationDetail__inner,
    .pageAbout__inner,
    .pageMaterial__inner,
    .pageContact__title,
    .pageSignup__title,
    .pageHotel__inner,
    .pageCompany__inner,
    .pagePrivacy__inner,
    .pageMypage__title,
    .pageMypageInfo__title,
    .pageMypageInfoUpdate__title,
    .pageMypageHistory__title,
    .pageMypageHistoryDetail__title,
    .pageMypageCondition__title,
    .pageMypageFavorite__inner {
        max-width: 1366px;
    }

    /* common space */

    .pageSearchList,
    .pageSearchDetail,
    .pageSearchFeature,
    .pageFeatureDetail,
    .pageOccupationDetail,
    .pageMaterial,
    .pageMypageInfo,
    .pageMypageInfoUpdate,
    .pageMypageHistory,
    .pageMypageHistoryDetail,
    .pageMypageCondition,
    .pageMypageFavorite {
        padding-top: 40px;
    }

    .pageSearch,
    .pageFeature,
    .pageOccupation,
    .pageAbout,
    .pageContact,
    .pageHotel,
    .pageCompany,
    .pagePrivacy,
    .pageMypage {
        padding-top: 74px;
    }

    /* header */

    .header {
        padding-top: 10px;
    }

    .header__block {
        align-items: center;
    }

    .header__inner {
        align-items: center;
    }

    .header__logo {
        width: 210px;
        min-width: 210px;
    }

    .header__navi {
        width: auto;
        padding-left: 40px;
    }

    .headerNavi__item {
        text-align: center;
    }

    .headerNavi__item:not(:first-child) {
        padding-left: 32px;
    }

    .headerPrefecture__item:not(:first-child) {
        padding-left: 16px;
    }

    .headerPrefecture__link {
        font-size: 11px;
    }

    .headerLogo {
        height: auto;
    }

    /* footer */

    .footer__logo {
        width: 240px;
    }

    .footer__up {
        padding: 80px 0;
    }

    .footer__list:not(:first-child) {
        padding-top: 48px;
    }

    /* side menu */

    .sideMenuArea__term {
        padding: 12px 0 10px 10px;
    }

    .sideMenuRegion__link,
    .sideMenuListDetail__link {
        font-size: 13px;
        padding-top: 12px;
        line-height: 1.2;
    }

    /* title */

    .titleLeftLine {
        font-size: 21px;
    }

    .titleLeftLine strong {
        font-size: 28px !important;
        margin-right: 8px;
    }

    .mainTitleBackLine__span {
        font-size: 21px;
        padding-right: 16px;
    }

    /* button */

    .pageFeatureDetailListButton,
    .pageOccupationListButton {
        min-width: 320px;
    }

    /* ホーム */

    .keyvisual {
        padding-bottom: 280px;
    }

    .keyvisual__lead {
        width: 55.5%;
    }

     #jsTopSearchWrap {
    min-height: 620px;
    }

    .topSearch__area {
        background: #fff;
        padding: 0;
    }

    .topSearch__inner {
        padding-top: 80px;
    }

    .topSearch__section--map {
        width: 55%;
    }

    .topSearch__block {
        padding: 32px 0;
    }

    .topSearch__block__map {
        margin-top: 0;
    }

    .topSearchMapTitle,
    .home_titleLeftLine {
        padding: 0 0 8px;
    }

    .topSearch__listBlock:not(:first-child) {
        padding-top: 32px;
    }

    .titleLine_freeword {
        font-size: 21px;
        padding: 0;
    }

    .topSearch__occupation {
        padding: 0;
    }

    .topTerm {
        padding-top: 24px;
    }

    .topFeature__main,
    .topFeature__list {
        width: 48.5%;
    }

    .topRecruit {
        padding-top: 102px;
    }

    /* こだわり検索 */

    .titleLine_map {
        padding: 0 0 8px;
    }

    .serach_nav_pc {
        padding: 32px 0;
    }

    .pageSearch__head {
        background: #fff;
        width: auto;
        margin: 0;
        padding: 0;
    }

    .pageSearch__head > * {
        width: 32%;
    }

    .pageSearchResult__emphasis__number {
        padding-left: 8px;
    }

    .serach_nav_table_pc tr td {
        width: 32%;
        padding: 0;
    }

    .serach_nav_table_pc tr td:nth-child(1) {
        padding-right: 1%;
    }

    .serach_nav_table_pc tr td:nth-child(2) {
        padding-left: 1%;
        padding-right: 1%;
    }

    .serach_nav_table_pc tr td:nth-child(3) {
        padding-left: 1%;
    }

    .serach_nav_table_pc tr td div {
        height: 56px;
    }

    .arrange__jsSearchToggle {
        align-items: center;
    }

    .pageSearch__section {
        padding: 48px;
    }

    .pageSearch__section--map {
        width: 60%;
        padding-right: 0;
    }

    .search_section {
        margin-top: 64px;
        padding: 0;
    }

    .pageSearch__block {
        padding-top: 32px;
    }

    .pageSearch__listBlock:not(:first-child) {
        padding-top: 40px;
    }

    .jsSearchToggle {
        padding: 0 0 8px;
    }

    /* 都道府県特集 */

    .pageSearchFeatureText__term__label {
        font-size: 16px;
    }

    .pageSearchFeatureText__term__text {
        font-family: "ヒラギノ明朝 ProN W6", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
        /* font-size: 46px; */
        font-size: 41px;
        font-weight: normal;
        padding-top: 8px;
        line-height: 1.2;
        letter-spacing: 4px;
    }

    .pageSearchFeatureText__description {
        padding-top: 1.5em;
    }

    .pageSearchFeature__wrap:not(:first-child) {
        padding-top: 80px;
    }

    .pageSearchFeature__content {
        padding-top: 40px;
    }

    .pageSearchFeature__imageBlock,
    .pageSearchFeature__text {
        width: 48.5%;
    }

    .pageSearchFeatureList__figcaption {
        font-size: 16px;
        padding-top: 8px;
    }

    .pageSearchFeatureList__item:not(:nth-child(3n+1)) {
        margin-left: 2%;
    }

    .pageSearchFeatureList__item:not(:nth-child(3n+1)) {
        margin-left: 0;
    }

    .pageSearchFeatureList__item:not(:nth-child(4n+1)) {
        margin-left: 2%;
    }

    .pageSearchFeatureList__item {
        width: 23.5%;
    }

    .pageSearchFeatureList__item:nth-child(n+4) {
        margin-top: 0;
    }

    .pageSearchFeatureList__item:nth-child(n+5) {
        margin-top: 2%;
    }

    /* 求人一覧 */

    .recruitList--3 > * {
        width: 32% !important;
    }

    .recruitList--3>*:not(:nth-child(3n+1)) {
        margin-left: 2% !important;
    }

    .recruitList--3>*:nth-child(n+4) {
        margin-top: 3% !important;
    }

    .recruitList__list {
        padding-top: 24px;
    }

    .recruitListHead__filter__item {
        font-size: 16px;
        font-weight: bold;
        line-height: 1.4;
    }

    .recruitListHead__function > * {
        width: 32%;
    }

    .recruitListCount {
        font-size: 14px;
    }

    /* 求人詳細 */

    .pageSearchDetail__title {
        padding-top: 32px;
        line-height: 1.3;
    }

    .pageSearchDetail__basic__term {
        padding-top: 44px;
        padding-bottom: 44.5px;
    }

    .pageSearchDetail__basic__description {
        padding-top: 0;
        padding-bottom: 0;
    }

    .pageSearchDetail__basic__gallery {
        padding-bottom: 0;
    }

    .pageSearchDetail__textBlock {
        padding-top: 32px;
    }

    .pageSearchDetail__list + .pageSearchDetail__textBlock {
        padding-top: 16px;
    }

    .pageSearchDetail__definition {
        padding-top: 32px;
    }

    .pageSearchDetail__figcaption {
        padding-top: 16px;
        line-height: 1.4;
    }

    .admin_dd {
        padding: 32px;
    }

    .admin_contents_dd {
        padding-left: 32px;
    }

    .pageSearchDetailDefinitionList {
        /* align-items: flex-start; */
    }

    .admin_detail {
        font-size: 13px;
        margin-top: 16px;
    }

    .admin_p {
        padding: 5px 16px 3px;
    }

    .koe {
        padding-bottom: 16px;
        line-height: 1.4;
    }

    .pageSearchDetail__buttonArea {
        padding-top: 80px;
    }

    /* 特集一覧 */

    .featureListImage {
        width: 30%;
    }

    .featureListDefinition__term__text {
        line-height: 1.2;
    }

    /* 特集詳細 */

    .pageFeatureDetail__imageBlock,
    .pageFeatureDetail__text {
        width: 48.5%;
    }

    .pageFeatureDetailAreaListText__term__label {
        padding-bottom: 6px;
    }

    .pageFeatureDetail__block {
        padding-top: 40px;
    }

    .pageFeatureDetail__block:first-child {
        padding-top: 0;
    }

    /* 職種一覧 */

    .pageOccupationList__textBlock {
        width: 60%;
    }

    .pageOccupationWork__description {
        padding-top: 16px;
    }

    .pageOccupationListText__description__text,
    .pageOccupationWork__description__text {
        line-height: 1.8;
    }

    .pageOccupationListText__term__label {
        line-height: 1.2;
    }

    .pageOccupationListText__term__text {
        font-size: 28px;
        line-height: 1.2;
        padding-top: 8px;
    }

    .pageOccupationListText__description {
        padding-top: 16px;
    }

    /* 職種詳細 */

    .pageOccupationDetail__block--schedule {
        overflow: hidden;
    }

    .pageOccupationDetail__imageBlock,
    .pageOccupationDetail__text {
        width: 48.5%;
    }

    .pageOccupationDetailText__term__label {
        font-size: 16px;
        line-height: 1.2;
    }

    .pageOccupationDetailText__term__text {
        line-height: 1.2;
    }

    .pageOccupationDetailText__description__block {
        padding-top: 32px !important;
    }

    .pageOccupationDetailSchedule__definition {
        width: 100%;
    }

    .pageOccupationDetailSchedule__item {
        left: 312px;
    }

    .pageOccupationDetailSchedule__item:nth-child(2n) {
        right: 311px;
    }

    .pageOccupationDetailSchedule__work {
        width: 356px;
        padding: 16px 16px 16px 20px;
    }

    .pageOccupationDetailSchedule__definition {
        padding-left: 16px;
    }

    /* 初めての方へ */

    .pageAboutIntrot {
        align-items: center;
    }

    .about_main_image {
        width: 40%;
    }

    .pageAbout__block {
        padding-top: 48px;
    }

    .pageAboutIntrot__block {
        width: 57%;
    }

    .pageAboutIntroColumn__text {
        width: 72%;
    }

    .pageAboutIntrot__block>*:not(:first-child) {
        margin-top: 32px;
    }

    .pageAboutIntroColumnText__term__text,
    .flowList__term {
        font-size: 23px;
        line-height: 1.4;
    }

    .pageAboutIntroColumnText__description,
    .flowList__description {
        padding-top: 1em;
    }

    .pageAboutIntroColumnText__description__text,
    .flowList__description__text {
        font-size: 15px;
    }

    .flowList__image {
        object-fit: cover;
    }

    .flowList__image,
    .flowList__definition {
        width: 48.5%;
    }

    .flowList__definition {
        padding: 8px 0 0;
    }

    .pageMaterial__data__term {
        font-size: 24px;
    }

    .pageMaterial__data__definition:not(:first-child) {
        padding-top: 48px;
    }

    /* ホテル・旅館様へ */

    .pageHotel__subTitle {
        font-size: 21px;
    }

    .pageHotelFlowList__head {
        font-size: 18px;
    }

    /* 会社概要 */

    .pageCompany__figure,
    .pageCompany__block {
        width: 48.5%;
    }

    /* プライバシーポリシー */

    .pagePrivacy__section:not(:first-child) {
        padding-top: 80px;
    }

    .pagePrivacy__text--contact {
        padding-top: 48px;
    }

    /* よくあるご質問*/

    .pageFaq .mainTitleBackLine {
        font-size: 21px;
        padding-right: 16px;
        color: #7d101e;
        border-bottom: 2px solid #7d101e;
    }

    .pageFaq .pageFeature__content {
        padding-top: 24px;
    }

    .pageFaq__tabsBlock {
        margin-top: 32px;
        background-color: #f8f7f7f5;
        padding: 16px 32px 0;
        overflow: hidden;
    }

    .pageFaq__tabs {
        display: flex;
        gap: 20px;
        margin-bottom: 0;
        flex-wrap: wrap;
    }

    .pageFaq__tab {
        background-color: #cbc8c8ae;
        color: #4a4a4a;
        border: none;
        padding: 10px 36px;
        font-size: 14px;
        cursor: pointer;
        border-radius: 9999px;
    }

    .pageFaq__tab:hover {
        background-color: #bf7f12;
        color: #fff;
    }

    .pageFaq__tab.isActive {
        background-color: #7d101e;
        color: #fff;
    }

    .pageFaq__linkList {
        display: none;
        background: #fff;
        padding: 20px 24px;
        margin-top: 16px;
        margin-bottom: 32px;
        border: none;
    }

    .pageFaq__linkList.isActive {
        display: block;
    }

    .pageFaq__linkListInner {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 8px 24px;
        list-style: none;
        margin: 0;
        padding: 0;
    }

    .pageFaq__linkItem a {
        color: #333;
        text-decoration: none;
        font-size: 14px;
    }

    .pageFaq__linkItem a:hover {
        color: #7d101e;
        text-decoration: underline;
    }

    .pageFaq__section {
        margin-top: 48px;
    }

    .pageFaq__sectionTitle {
        font-size: 18px;
        font-weight: bold;
        margin: 0 0 16px;
        padding-bottom: 8px;
        color: #7d101e;
        border-bottom: 2px solid #7d101e;
    }

    .faqAccordion__item {
        border: 2px solid #e0e0e0;
        border-radius: 8px;
        margin-bottom: 12px;
        overflow: hidden;
    }

    .faqAccordion__item:last-child {
        margin-bottom: 0;
        border-radius: 8px;
    }

    .faqAccordion__item:only-child {
        border-radius: 8px;
        margin-bottom: 0;
    }

    .faqAccordion__toggle {
        display: flex;
        align-items: center;
        width: 100%;
        padding: 20px 16px;
        background: #fff;
        border: none;
        cursor: pointer;
        text-align: left;
        font-size: 15px;
        gap: 12px;
        color: #333;
    }

    .faqAccordion__q {
        flex-shrink: 0;
        width: 36px;
        height: 36px;
        line-height: 34px;
        padding-top: 2px;
        text-align: center;
        background: #7d101e;
        border-radius: 50%;
        font-family: Arial, "Helvetica Neue", Helvetica, "ヒラギノ角ゴ ProN W3", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
        font-weight: 300;
        font-size: 16px;
        color: #fff;
    }

    .faqAccordion__questionText {
        flex: 1;
        font-weight: bold;
        color: #7d101e;
    }

    .faqAccordion__icon {
        flex-shrink: 0;
        width: 28px;
        height: 28px;
        line-height: 26px;
        text-align: center;
        font-size: 18px;
        font-weight: bold;
        background: #fff;
        color: #7d101e;
        border-radius: 50%;
    }

    .faqAccordion__body {
        display: none;
        position: relative;
        flex-wrap: wrap;
        align-items: flex-start;
        gap: 12px;
        padding: 20px 16px 24px;
        background: #fff;
    }

    .faqAccordion__body::before {
        content: '';
        position: absolute;
        top: 0;
        left: 16px;
        right: 16px;
        height: 1px;
        background: #e0e0e0;
    }

    .faqAccordion__item.isActive .faqAccordion__body {
        display: flex;
    }

    .faqAccordion__a {
        flex-shrink: 0;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 36px;
        height: 36px;
        text-align: center;
        background: #bf7f12;
        border-radius: 50%;
        font-family: Arial, "Helvetica Neue", Helvetica, "ヒラギノ角ゴ ProN W3", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
        font-weight: 300;
        font-size: 16px;
        color: #fff;
    }

    .faqAccordion__bodyContent {
        flex: 1;
        min-width: 0;
    }

    .faqAccordion__lead {
        margin: 0 0 12px;
        font-size: 14px;
        font-weight: bold;
        color: #bf7f12;
    }

    .faqAccordion__text {
        margin: 0;
        font-size: 14px;
        line-height: 1.7;
        color: #333;
    }

}

@media screen and (min-width: 500px) {
    .headerNavi__link {
        font-size: 11px;
    }
}

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

    input[type="radio"]:checked+label::after {
        left: 4.5px;
    }

    .p_omotena {
        font-size: 1.2em;
    }

    /* footer */

    .footer__down {
        padding-bottom: 120px;
    }

    .footerList {
        display: block;
        text-align: left;
    }

    .footerList__item:not(:first-child) {
        padding: 0;
    }

    .footer__copyright {
        font-size: 12px;
        padding-top: 56px;
        text-align: left;
    }

    /* title */

    .titleLeftLine {
        padding-top: 8px !important;
    }

    .titleLeftLine strong {
        font-size: 21px !important;
        margin-right: 8px;
    }

    .mainTitleBackLine__span {
        padding-right: 16px;
    }

    /* ホーム */

    .keyvisual {
        padding: 56px 16px 144px;
    }

    .keyvisual__title {
        font-size: 24px;
        padding-left: 4px;
    }

    .keyvisual__lead {
        padding-left: 4px;
        padding-right: 4px;
        text-shadow: 1px 1px 2px #333;
    }

    .snsList__item:not(:first-child) {
        margin-left: 8px;
    }

     #jsTopSearchWrap {
        min-height: 520px;
    }

    .topSearch__area {
        padding: 0;
    }

    .topSearch__inner {
        padding-bottom: 88px;
    }

    .topSearch__content {
        padding: 0;
    }

    .topSearch__block {
        padding: 0;
    }

    .topSearch__occupation {
        padding-top: 24px;
    }

    .topTerm {
        padding-top: 8px;
    }

    .topSearch__section {
        padding-top: 48px;
    }

    .titleLine_freeword {
        padding: 0;
    }

    .topSearch__input {
        padding-top: 12px;
    }

    .topOccupation__term,
    .topTerm__term {
        padding-top: 10px;
    }

    .topOccupation__term::before,
    .topTerm__term::before {
        width: 22px;
        height: 22px;
    }

    .modal {
        padding: 0;
    }

    .pageSearch__section {
        padding: 32px 16px;
    }

    .titleLeftLineModal {
        font-size: 16px;
        padding: 0 0 8px;
    }

    /* こだわり検索 */

    .mobile_map .pageSearchClearButton::after,
    .modal .pageSearch__functionHead .pageSearchClearButton::after {
        top: 50%;
    }

    .arrange__jsSearchToggle .sideMenuList__head__image {
        display: none;
    }

    .titleLine_map {
        padding: 0;
    }

    .pageSearch__section--map {
        padding: 0;
    }

    .pageSearch__block--map {
        padding: 8px;
    }

    .search_section {
        margin-top: 16px;
        padding: 0;
    }

    .pageSearch__functionHead>.jsSearchToggle {
        padding-top: 10px;
    }

    .pageSearch__functionHead>.jsSearchToggle::before {
        width: 22px;
        height: 22px;
    }

    .serach_nav_table tr td {
        height: 48px;
    }

    /* 都道府県特集 */

    .pageSearchFeatureText__term__text {
        font-size: 24px;
        padding-top: 8px;
        line-height: 1.2;
        letter-spacing: 3px;
    }

    .pageSearchFeature__wrap:not(:first-child) {
        padding-top: 80px;
    }

    .pageSearchFeatureList__figcaption {
        font-size: 18px;
        padding-top: 8px;
        letter-spacing: 2px;
    }

    .pageSearchFeatureList__item:not(:first-child) {
        padding-top: 32px;
    }

    /* 求人一覧 */

    .recruitList__item:not(:first-child) {
        margin-top: 24px !important;
    }

    /* 求人詳細 */

    .pageSearchDetail__textBlock {
        padding-top: 12px;
    }

    .admin_p {
        font-size: 12px;
    }

    .admin_dd {
        padding: 24px;
    }

    /* 職種一覧 */

    .pageOccupationListText__term__text {
        font-size: 21px;
        padding-top: 8px;
        line-height: 1.2;
        letter-spacing: 1px;
    }

    .pageOccupationListText__description__block {
        padding-top: 24px !important;
    }

    /* 職種詳細 */

    .pageOccupationDetailText__term__text {
        font-size: 18px;
        padding-top: 8px;
        line-height: 1.2;
    }

    .pageOccupationDetail__section {
        padding-top: 80px;
    }

    .pageOccupationDetailSchedule__image {
        width: 32.174vw;
    }

    .pageOccupationDetailSchedule__definition {
        padding-top: 12px;
    }

    /* 初めての方へ */

    .flowList__definition {
        padding: 14px 0 0;
    }

    .pageAbout__lead {
        padding-top: 16px;
    }

    .pageAbout__section:not(:first-of-type) {
        padding-top: 80px;
    }

    .pageMaterial__text {
        padding-top: 16px;
    }

    /* お問い合わせ */

    .pageContact__inner {
        margin-top: 24px;
    }

    .pageContact__block {
        padding-left: 32px;
        padding-right: 32px;
    }

    .terms-of-service-item {
        font-size: 16px !important;
    }

    /* ホテル・旅館様へ */

    .pageHotelFlowList__item:nth-child(2n),
    .pageHotelFlowList__item:nth-child(2n) {
        margin-left: 16px;
    }

    .pageHotelFlowList__item:nth-child(n+3) {
        margin-top: 24px;
    }

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

    .pageHotelFlowList__head {
        font-size: 14px;
    }

    /* 会社概要 */

    .pageCompany__section {
        padding: 24px !important;
    }

    .pageCompany__description {
        padding-right: 16px;
    }

    .pageCompany__address__description {
        flex: 1;
    }

    .pageCompany__map {
        margin-top: 30px;
    }

    /* プライバシーポリシー */

    .pagePrivacy__section:not(:first-child) {
        padding-top: 40px;
    }

    .pagePrivacy__text--contact {
        padding-top: 40px;
    }

    /* よくあるご質問（SP）モバイルレイアウト・配色統一 */

    .pageFaq .sideMenu {
        display: none;
    }

    .pageFaq .pageFeature__inner {
        padding: 0 16px;
        flex-direction: column;
    }

    .pageFaq .pageFeature__content {
        padding-top: 16px;
        width: 100%;
    }

    .pageFaq__tabsBlock {
        margin-top: 24px;
        padding: 12px 12px 0;
    }

    .pageFaq__tabs {
        margin-top: 0;
        gap: 6px;
    }

    .pageFaq__tab {
        padding: 10px 16px;
        font-size: 13px;
        border-radius: 9999px;
    }

    .pageFaq__linkList {
        margin-top: 12px;
        margin-bottom: 24px;
        padding: 16px;
    }

    .pageFaq__linkListInner {
        grid-template-columns: 1fr;
        gap: 6px 0;
    }

    .pageFaq__linkItem a {
        font-size: 13px;
    }

    .pageFaq__section {
        margin-top: 32px;
    }

    .pageFaq__sectionTitle {
        font-size: 16px;
        margin-bottom: 12px;
    }

    .faqAccordion__toggle {
        padding: 16px 12px;
        font-size: 14px;
        gap: 10px;
    }

    .faqAccordion__q {
        width: 32px;
        height: 32px;
        line-height: 30px;
        font-size: 13px;
    }

    .faqAccordion__a {
        width: 32px;
        height: 32px;
        font-size: 13px;
    }

    .faqAccordion__icon {
        width: 24px;
        height: 24px;
        line-height: 22px;
        font-size: 16px;
    }

    .faqAccordion__body {
        padding: 16px 12px 20px 12px;
    }

    .faqAccordion__lead,
    .faqAccordion__text {
        font-size: 13px;
    }

    /* マイページ */

    .pageMypageInfoUpdate__block:not(:first-child) {
        margin-top: 0;
    }

}

/* title */

.titleLeftLine {
    border-left: 8px #7D101E solid;
    background: #f9f9f9;
    margin-bottom: .5em;
    padding: 12px 8px 8px 16px;
}

/* ホーム */

.topFeatureCard {
    border: none;
}

.topFeatureCard__text {
    border: 1px solid #bdbdbd;
    border-radius: 0 0 10px 10px;
}

/* こだわり検索 */

.pageSearchClearButton::after {
    top: 50%;
    left: 4.5px;
    font-size: 9px;
    margin-top: -4px;
    line-height: 1;
}

/* 求人一覧 */

.recruitList__item > div:first-child {
    overflow: hidden;
}

.recruitList__button {
    width: 100%;
}

.recruitListHead__result__emphasis__number {
    padding-left: 8px;
}

.recruitListCount {
    font-weight: bold;
    letter-spacing: 3px;
}

/* 求人詳細 */

.pageSearchDetail__head__area {
    letter-spacing: 2px;
}

.image_title {
    font-size: 11px;
    padding-top: 8px;
}

.pageSearchDetailDefinitionList__description.map {
    display: block;
    width:100%;
    padding: 16px !important;
    line-height: 0;
}

.admin_p {
    display: inline-block;
    font-size: 14px;
    width: auto;
    padding: 5px 16px 3px;
}

/* 特集一覧 */

.featureList__item {
    border: none;
}

.featureListImage {
    min-height: 184px;
}

.featureListDefinition {
    flex: 1;
    border: 1px solid #bdbdbd;
    border-left: none;
    border-radius: 0 10px 10px 0;
}

/* 特集詳細 */

.pageFeatureDetail__column:not(:first-child) {
    padding-top: 80px !important;
}

.pageFeatureDetail__section:not(:first-child) {
    padding-top: 80px !important;
}

/* 初めての方へ */

.about_main_image,
.about_sub_image,
.about_phone_image {
    box-shadow: none;
}

.flowList__item {
    justify-content: space-between;
    border: 1px #ddd solid;
    border-radius: 0;
    padding: 16px;
    box-shadow: none;
}

.flowList__label {
    top: 0;
    left: 0;
}

.arrow_img {
    height: 40px;
}

/* お問い合わせ */

.terms-of-service {
    padding: 0 !important;
}

.terms-of-service-scroll {
    padding: 26px !important;
}

.terms-of-service-title {
    font-size: 1.3rem !important;
}

/* 会社概要 */

.pageCompany__table,
.pageCompany__section {
    box-shadow: none;
}

.pageCompany__section {
    border: 1px solid #bdbdbd;
    border-radius: 0;
    padding: 48px;
}

.pageCompany__figure--wide {
    width: 31.5%;
}

.pageCompany__subTitle {
    border-bottom: none;
}

.pageCompany__address__term,
.pageCompany__address__description {
    border-bottom: 1px solid #999;
    padding-bottom: 8px;
}

.pageCompany__address__term {
    width: 16%;
}

/* ------スマホ版下部固定バナー------- */
.floating__bar__sp {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  display: flex;
  background-color: #f2f2f2;
  border-top: 1px solid #ccc;
  z-index: 999;
}

.floating__bar__sp__btn {
  flex: 1;
  text-align: center;
  text-decoration: none;
  color: #333;
  font-size: 13px;
  background: none;
  border: none;
  padding: 10px 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.floating__bar__sp__btn + .floating__bar__sp__btn {
  border-left: 1px solid #ccc; /* ← 縦の境界線を追加 */
}

.floating__bar__sp__btn img,
.floating__bar__sp__btn i {
  width: 28px;
  height: 28px;
  display: block;
  margin-bottom: 4px;
}

.floating__bar__sp__btn i {
  font-size: 28px;
  line-height: 28px;
}

.floating__bar__sp__btn span {
  line-height: 1.2;
  display: inline-block;
  height: 1.2em;
  vertical-align: middle;
}

.floating__bar__sp__single {
    position: fixed;
    padding: 16px 10px;
    left: 0;
    bottom: 0;
    width: 100%;
    text-align: center;
    background-color: #fff;
    border-top: 1px solid #ccc;
    z-index: 999;
    pointer-events: none; /* 外側はクリック無効（ボタンだけ有効） */
}

.floating__bar__sp__single-btn {
  pointer-events: auto;
  background-color: #bf7f12;
  color: #fff;
  border: none;
  border-radius: 999em;
  padding: 16px;
  width: 100%;
  /* box-shadow: 0 4px 8px rgba(0,0,0,0.15); */
  cursor: pointer;
}

.floating__bar__sp__single-btn:active {
  opacity: 0.8;
}
