@charset "UTF-8";

/*
Theme Name: child
Theme URI:
Description:
Template: twentytwentyone
Author: makesview
Author URI: https://makes-view.co.jp/
Version: 1.0.0
*/

:root {
    --main-color: #0D79E6;
    --sub-color: #FCDF02;
}

.main-color {
    color: var(--main-color);
}

.sub-color {
    color: var(--sub-color);
}

.color-red {
    color: #EA1F1F;
}

.color-orange {
    color: #F58E03;
}

.color-pink {
    color: #FFA3CE;
}

.color-purple {
    color: #7C47F5;
}

.color-green {
    color: #26CB01;
}

.color-blue2 {
    color: #00B7C2;
}

.bg-blue {
    background-color: var(--main-color);
}

.bg-red {
    background-color: #EA1F1F;
}

.bg-orange {
    background-color: #F58E03;
}

.bg-pink {
    background-color: #FFA3CE;
}

.bg-purple {
    background-color: #7C47F5;
}

.bg-green {
    background-color: #26CB01;
}

.fill-pink path {
    fill: #FFA3CE;
}

.fill-red path {
    fill: #EA1F1F;
}

.fill-yellow path {
    fill: var(--sub-color);
}

.fill-skyblue path {
    fill: #9ED8F6;
}

html,
button,
input,
select,
textarea {
    font-family: "Noto Sans JP", sans-serif;
}

/* 追加webフォント */
.f-en {
    font-family: "arial", sans-serif;
}

.f-din {
    font-family: "din-2014", sans-serif;
}

body {
    color: #222;
    font-size: 14px;
    line-height: 1.64;
    min-width: 1440px;
}

.wrap {
    width: 1140px;
    margin: 0 auto;
}

.wrap.mid {
    width: 1240px;
}

.wrap.lr {
    width: 1340px;
}

/* PC固定ページ 共通設定 */
.common_page_main {
    background: #F5F5F5;
    padding-block: 140px;
    margin-block: 0 1em;
}

.common_page_main .title_box {
    text-align: center;
}

.common_page_main .title_box .title {
    font-size: 40px;
    letter-spacing: .08em;
    font-weight: 700;
    line-height: 1.5;
}

.common_page_wrap {
    padding: 100px 0;
}

.not_found .text {
    text-align: center;
}

.reserve_text {
    text-align: center;
    font-size: 30px;
}

/* パンくず */
.breadcrumb {
    font-size: 10px;
    color: #222;
    letter-spacing: .049em;
    font-weight: 500;
    margin-top: -52px;
    position: relative;
}

.breadcrumb a {
    text-decoration: none;
    color: #3E3E3E;
}

/* PC固定ページ お問い合わせ */
.contact_form_disc {
    color: #3E3E3E;
    letter-spacing: .08em;
    font-weight: 400;
    text-align: center;
    margin-block: 0 3.8em;
}

.contact_form_disc .text {
    font-size: 16px;
    margin-block: 0 1em;
}

.contact_form_disc .caution {
    font-size: 14px;
}

.common_contact_form .form_box {
    margin-block: 0 50px;
}

.common_contact_form .form_box dl {
    display: grid;
    grid-template-columns: 26.5% 1fr;
    align-items: center;
    gap: 80px;
}

.common_contact_form .form_box dl.start {
    align-items: flex-start;
}

.common_contact_form .form_box dl+dl {
    margin-block: 1.6em 0;
}

.common_contact_form .form_box dl dt {
    display: flex;
    align-items: center;
    gap: 1.3em;
    font-size: 16px;
    letter-spacing: .08em;
    font-weight: 700;
    padding-inline: 0 0.5em;
    position: relative;
}

.common_contact_form .form_box dl dt .label {
    flex-shrink: 0;
    color: #3E3E3E;
    font-size: 12px;
    letter-spacing: .2em;
    font-weight: 700;
    border-radius: 100vmax;
    padding: 0.2em 0.9em;
}

.common_contact_form .form_box dl dt .label.hissu {
    background: #C70000;
    color: #fff;
}

.common_contact_form .form_box dl dt .label.ninni {
    background: #E0E0E0;
}

.common_contact_form .form_box dl dt::after {
    content: "";
    width: 1px;
    height: 30px;
    background: #AAA;
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
}

.common_contact_form input[type="text"],
.common_contact_form input[type="email"],
.common_contact_form #zip {
    width: 100%;
    background: #F8F8F8;
    border: 1px solid #E6E6E6;
    border-radius: 4px;
    font-size: 14px;
    letter-spacing: .08em;
    font-weight: 400;
    padding: 0.8em 1em;
}

.common_contact_form textarea {
    width: 100%;
    height: 180px;
    background: #F8F8F8;
    border: 1px solid #E6E6E6;
    border-radius: 4px;
    padding: 1em;
    font-size: 14px;
    letter-spacing: .08em;
    font-weight: 400;
}

.common_contact_form input::placeholder,
.common_contact_form textarea::placeholder {
    color: #C7C4C4;
}

.common_contact_form select {
    width: 47.5%;
    background: #F8F8F8;
    border: 1px solid #E6E6E6;
    border-radius: 4px;
    font-size: 14px;
    letter-spacing: .08em;
    padding: 1.1em 1em;
}

.common_contact_form select.empty {
    color: #C7C4C4;
}

.page_contact #btn_wrap {
    justify-content: center;
    text-align: right;
    width: 74%;
    margin: auto;
}

.page_contact #btn_wrap button {
    background-color: var(--main-color);
    border: none;
    cursor: pointer;
    outline: none;
    padding: 0;
    appearance: none;
    color: #fff;
    display: block;
    width: 310px;
    line-height: 60px;
    font-size: 18px;
    font-weight: 900;
    transition: .3s;
    text-align: center;
    letter-spacing: .08em;
    margin: auto;
}

.page_contact #btn_wrap button[name="submitBack"] {
    background: #333;
    margin-top: 20px;
}

.page_contact #btn_wrap button:hover {
    opacity: .8;
}

.privacy_term_outer .privacy_term_inner {
    height: 138px;
    margin: auto;
    overflow: auto;
}

.privacy_term_outer .privacy_term_inner .privacy_index {
    font-size: 14px;
}

.privacy_term_outer .privacy_term_inner .main_text {
    font-size: 13px;
    margin-bottom: 25px;
}

.privacy_term_outer .privacy_term_inner dl dt {
    font-size: 13px;
    border-left: solid 3px #ccc;
    padding-left: 1em;
    margin-bottom: 5px;
}

.privacy_term_outer .privacy_term_inner dl dd {
    font-size: 13px;
}

.privacy_term_outer .privacy_term_inner dl+dl {
    margin-top: 30px;
}

.privacy_term_outer .privacy_term_inner::-webkit-scrollbar {
    width: 8px;
}

.privacy_term_outer .privacy_term_inner::-webkit-scrollbar-track {
    background: transparent;
}

.privacy_term_outer .privacy_term_inner::-webkit-scrollbar-thumb {
    background-color: #333;
    border-radius: 10px;
}

.privacy_term_outer {
    border-top: solid 1px #e3e3e3;
    padding: 30px 0;
    border-bottom: solid 1px #e3e3e3;
    width: 60%;
    margin: 0 auto 50px;
}

.privacy_check_list .mwform-checkbox-field-text {
    padding-right: 0;
}

.privacy_check_list .error {
    font-size: 12px;
}

.privacy_term_detail {
    text-align: center;
    font-size: 13px;
    margin: 20px 0;
    position: relative;
    font-weight: 600;
}

.privacy_term_detail::after {
    content: "";
    margin: 5px auto 0;
    border: solid #333;
    border-width: 2px 2px 0 0;
    width: 10px;
    aspect-ratio: 1 / 1;
    min-width: 0;
    rotate: 135deg;
    display: block;
}

.mw_wp_form_confirm .privacy_check_list,
.mw_wp_form_confirm .privacy_term_detail {
    display: none;
}

/* ラジオボタン デザイン */
.radio_btns,
.checkboxes {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5em 1.5em;
    padding: .5em 0;
}

/* ラジオボタンを隠す */
.radio_btns input[type=radio].radio_btns__item {
    display: none;
}

.radio_btns label {
    display: inline-block;
    cursor: pointer;
}

/* spanの左側にボタンを配置するスペースを作る */
.radio_btns .radio_btns__item+span {
    color: #3E3E3E;
    font-size: 15px;
    letter-spacing: .08em;
    font-weight: 600;
    padding-left: 2em;
    display: inline-block;
    position: relative;
}

/* 各パーツを作成 */
.radio_btns .radio_btns__item+span::before,
.radio_btns .radio_btns__item+span::after {
    content: '';
    display: block;
    position: absolute;
    border: 1px solid #E6E6E6;
    background: #F8F8F8;
    border-radius: 50%;
    width: 20px;
    aspect-ratio: 1;
    min-width: 0;
    top: 0;
    left: 0;
    bottom: 0;
    margin: auto;
}

/* after上書き */
.radio_btns .radio_btns__item+span::after {
    width: 10px;
    aspect-ratio: 1;
    min-width: 0;
    top: 0px;
    left: 5px;
    border: none;
    background: #5A5A5A;
    -webkit-transform: scale(0);
    -ms-transform: scale(0);
    transform: scale(0);
    transition: all .3s;
}

/*
  checked状態
  文字のcolorとボタンのopacityを変更
*/
.radio_btns .radio_btns__item:checked+span::after {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
}

/* チェックボックス デザイン */
.page_contact input[type="checkbox"] {
    /* デフォルトcheckボックス非表示*/
    display: none;
}

.mwform-checkbox-field label {
    cursor: pointer;
}

.mwform-checkbox-field-text {
    color: #3E3E3E;
    font-size: 15px;
    letter-spacing: .08em;
    font-weight: 600;
    display: inline-block;
    position: relative;
    padding: 0 0 0 30px;
}

.mwform-checkbox-field-text::before,
.mwform-checkbox-field-text::after {
    content: "";
    position: absolute;
    display: block;
}

.mwform-checkbox-field-text::before {
    background: #F8F8F8;
    border: 1px solid #E6E6E6;
    border-radius: 2px;
    width: 20px;
    aspect-ratio: 1 / 1;
    min-width: 0;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
}

.mwform-checkbox-field-text::after {
    border-width: 3px;
    border-color: transparent transparent #333 #333;
    border-style: solid;
    width: 20px;
    aspect-ratio: 2/1;
    min-width: 0;
    margin-top: -0.2em;
    top: 50%;
    left: 0;
    transform: translateY(-50%) rotate(-45deg);
    opacity: 0;
}

input[type="checkbox"]:checked+.mwform-checkbox-field-text::after {
    opacity: 1;
}

.mw_wp_form .horizontal-item {
    display: inline-block;
}

.mw_wp_form .horizontal-item+.horizontal-item {
    margin-left: 0 !important;
}

/* サンクスページ */

.page_contact .thanks_textArea .name {
    font-size: 16px;
    line-height: 2;
    text-align: center;
    margin-bottom: 20px;
}

.page_contact .thanks_textArea .contact_text {
    margin: 0 auto 50px;
    width: 62%;
}

.page_contact .thanks_textArea .ichiran_link {
    background-color: var(--main-color);
    border: none;
    cursor: pointer;
    outline: none;
    padding: 0;
    appearance: none;
    color: #fff;
    display: block;
    width: 300px;
    line-height: 50px;
    border-radius: 4px;
    font-size: 16px;
    transition: .3s;
    margin: 0 auto;
    text-decoration: none;
    font-weight: 600;
    letter-spacing: .08em;
    text-align: center;
}

.page_contact .thanks_textArea .ichiran_link:hover {
    opacity: .8;
}

.page_contact .thanks_textArea .contact_text .space {
    display: block;
}

.page_contact .thanks_textArea .contact_text .space {
    display: block;
    margin-top: 10px;
}

/* ステップバー デザイン */
.page_contact .progressbar {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5.6em;
    margin-block: 0 3em;
}

.page_contact .progressbar .item {
    color: #3E3E3E;
    font-size: 14px;
    letter-spacing: .08em;
    font-weight: 400;
    text-align: center;
    line-height: 1.5;
    position: relative;
}

.page_contact .progressbar .item+.item::before {
    content: "";
    width: 50px;
    height: 1px;
    background: #E6E6E6;
    position: absolute;
    top: 64%;
    left: -5em;
}

.page_contact .progressbar .item .mark {
    width: 36px;
    aspect-ratio: 1;
    background: #fff;
    border: 1px solid #AFAFAF;
    border-radius: 50%;
    display: block;
    margin: 0 auto 0.5em;
    position: relative;
}

.page_contact .progressbar .item .mark::before {
    content: "";
    width: 41%;
    aspect-ratio: 1;
    background: #5A5A5A;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    left: 50%;
    translate: -50% -50%;
    opacity: 0;
}

.page_contact .progressbar .item.active .mark::before {
    opacity: 1;
}

.page_contact .progressbar .item .en {
    display: block;
    color: #A7A7A7;
    letter-spacing: 0;
    font-family: 'Helvetica', 'Arial', sans-serif;
}

.privacy_check_list {
    justify-content: center;
    align-items: center;
    margin-bottom: 25px;
}

.privacy_check_list .hissu {
    background: #c70200;
    color: #fff;
    padding: 2px 15px;
    font-size: 10px;
    letter-spacing: .08em;
    border-radius: 30px;
    font-weight: 600;
}

.mw_wp_form .privacy_check_list .horizontal-item {
    margin: 0;
}

/* PC固定ページ 404ページ */
#page_404 {
    text-align: center;
}

#page_404 .num {
    font-size: 100px;
    font-family: 'Montserrat', 'Noto Sans JP', sans-serif;
    -webkit-text-size-adjust: 100%;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

#page_404 .text {
    margin-bottom: 1em;
    font-size: 16px;
}

/* PC固定ページ アーカイブページ */
/* 投稿リスト表示 */
.archive_page_list>article {
    padding-bottom: 15px;
    padding-top: 15px;
    border-bottom: 1px dashed #eee;
    padding-right: 30px;
}

.archive_page_list>article:after {
    content: "";
    position: absolute;
    width: 10px;
    height: 10px;
    top: 0;
    right: 5px;
    bottom: 0;
    margin: auto;
    border: solid #ccc;
    border-width: 2px 2px 0 0;
    transform: rotate(45deg);
}

.archive_page_list>article .date {
    font-weight: bold;
    font-size: 80%;
    width: 100px;
}

.archive_page_list>article .content_area {
    width: calc(100% - 100px);
}

.archive_page_list>article .content_area .ttl {
    font-weight: bold;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
}

.archive_page_list>article .content_area .content {
    font-size: 80%;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

/* wp-pagenavi base */
.wp-pagenavi {
    text-align: center;
    margin-top: 50px;
}

.wp-pagenavi a,
.wp-pagenavi span {
    display: inline-block;
    color: #999;
    background-color: #FFF;
    border: solid 1px #e0e0d2;
    padding: 8px 15px;
    margin: 0 2px;
    -moz-border-radius: 3px;
    -webkit-border-radius: 3px;
    border-radius: 3px;
    -webkit-transition: 0.2s ease-in-out;
    -moz-transition: 0.2s ease-in-out;
    -o-transition: 0.2s ease-in-out;
    transition: 0.2s ease-in-out;
    text-align: center;
    text-decoration: none;
}

.wp-pagenavi a:hover {
    color: #FFF;
    background-color: var(--main-color);
    border-color: var(--main-color);
}

.wp-pagenavi .current {
    color: #FFF;
    background-color: var(--main-color);
    border-color: var(--main-color);
    font-weight: bold;
}

/* ヘッダー */
.site-header {
    padding-inline: 50px;
    position: fixed;
    top: 20px;
    left: 0;
    width: 100%;
    z-index: 100;
    min-width: 1440px;
}

.site-header__inner {
    display: flex;
    align-items: center;
    background-color: #FFF;
    width: 100%;
    padding-inline: 50px 0;
    border-radius: 100vmax;
    justify-content: space-between;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.16);
    gap: 0 50px;
}

.site-header__content {
    display: flex;
    gap: 0 41px;
}


.site-header__menu-flex {
    display: flex;
    gap: 0 60px;
}

.site-header__menu-parent {
    position: relative;
}

.site-header__menu-child {
    position: absolute;
    display: none;
    background-color: #FFF;
    border-radius: 20px;
    padding: 35px 32px;
    left: 50%;
    translate: -50% 0;
    width: max-content;
    top: 55px;
    box-shadow: 0 2px 4px;
}

.site-header__logo {
    width: 377px;
    flex-shrink: 0;
}

.site-header__logo a {
    display: block;
}

.site-header__menu-item a {
    display: block;
    color: #222;
    letter-spacing: .03em;
    font-weight: 700;
    transition: .3s;
    line-height: 1.42;
}

.site-header__menu-parent a::after {
    content: "";
    width: 12px;
    aspect-ratio: 2/1;
    min-width: 0;
    display: block;
    clip-path: polygon(50% 100%, 0 0, 100% 0);
    background-color: #0D79E6;
    margin: 9px auto 0;
}

.site-header__entry a {
    display: block;
    height: 100%;
    background-color: var(--sub-color);
    color: var(--main-color);
    padding: 33px 45px 33px 40px;
    font-size: 16px;
    font-weight: 900;
    letter-spacing: .03em;
    line-height: 1.5;
    border-radius: 0 100vmax 100vmax 0;
    transition: .3s;
}

.site-header__entry a:hover {
    color: var(--sub-color);
    background-color: var(--main-color);
}

.site-header__menu {
    padding-block: 18px 14px;
}

.site-header__menu-item a:hover {
    color: var(--main-color);
}

.site-header__menu-item .site-header__menu-child a {
    font-weight: 600;
    letter-spacing: .07em;
    line-height: 1.64;
    display: flex;
    align-items: center;
    gap: 0 14px;
}

.site-header__menu-child li+li {
    margin-top: 20px;
}

.site-header__menu-item .site-header__menu-child a::before {
    content: "";
    width: 8px;
    aspect-ratio: 1/1;
    min-width: 0;
    background-color: var(--main-color);
    border-radius: 50%;
}

.site-header__menu-item {
    position: relative;
    padding-block: 10px;
}

.site-header-sp__menu-content {
    display: none;
}

/* TOP MV */
.top-fv__bg {
    width: 100%;
}

.top-fv__bg img {
    width: 100%;
    aspect-ratio: 288/155;
    object-fit: cover;
}

.top-fv__band {
    position: absolute;
    top: calc(373/775*100%);
    left: 50%;
    translate: -50% 0;
    rotate: -5deg;
    width: 106.9%;
}

.top-fv__marquee {
    position: absolute;
    top: calc(-6/181*100%);
    left: 0;
}

.top-fv__ttl {
    position: absolute;
    width: 38.33%;
    right: calc(160/1540*100%);
    bottom: calc(-50/181*100%);
}

.top-fv__ttl-text img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 4px;
}

.top-fv__inner {
    position: relative;
    overflow: hidden;
}

.top-fv__marquee-text {
    font-weight: 900;
    color: var(--main-color);
    line-height: 1.36;
    font-size: clamp(120px, 8.33vw, 9999px);
    margin-right: clamp(82px, 5.69vw, 9999px);
    flex: 0 0 auto;
}

.top-fv__copy {
    position: absolute;
    top: calc(149/775*100%);
    right: calc(193/1440*100%);
    color: #FFF;
    rotate: -5deg;
}

.top-fv__band-image {
    width: 100%;
    aspect-ratio: 1540 / 181;
    object-fit: cover;
}

.top-fv__marquee-track {
    display: inline-flex;
    flex-wrap: nowrap;
    will-change: transform;
    animation: fv-marquee 180s linear infinite;
    width: max-content;
}

@keyframes fv-marquee {
    0% {
        transform: translateX(0);
    }

    100% {
        transform: translateX(-50%);
    }
}

.top-fv__copy-text {
    font-size: clamp(19px, 1.319vw, 9999px);
    letter-spacing: .02em;
    line-height: 1.31;
    font-weight: 700;
}

.top-fv__copy-text+.top-fv__copy-text {
    margin-top: 1em;
}

.fv__marquee-group {
    display: inline-flex;
    flex: 0 0 auto;
}

/* TOP Vision */
.common-sec-vision {
    padding-block: 173px 183px;
}

.common-sec-vision__inner {
    display: flex;
    align-items: center;
    gap: 0 100px;
}

.common-sec-vision__logo {
    width: 452px;
    flex-shrink: 0;
}

.common-sec-vision__logo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.common-sec-vision__catch {
    width: 100%;
}

.common-sec-vision__catch-en {
    font-size: 20px;
    font-weight: 700;
    color: var(--main-color);
    line-height: 1;
    margin-bottom: 13px;
}

.common-sec-vision__catch-text {
    font-size: 39px;
    font-weight: 700;
    letter-spacing: .025em;
    line-height: 1.36;
}

/* TOP 会社を知る */
.common-sec-ttl__text {
    font-size: 44px;
    font-weight: 800;
    letter-spacing: .049em;
    line-height: 1;
}

.common-sec-ttl {
    width: fit-content;
    margin: 0 auto;
    position: relative;
}

.common-sec-ttl__treat {
    position: absolute;
    top: -27px;
    right: -39px;
}

.common-sec-ttl__border {
    position: absolute;
    bottom: -29px;
    left: -28px;
}

.top-company__inner {
    background-color: #E5F6FF;
    border-radius: 10px;
    padding: 59px 50px 50px;
    position: relative;
}

.top-company__inbox {
    background-color: #FFF;
    border-radius: 10px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, .16);
}

.top-company__inbox.number {
    padding: 55px 40px 55px 53px;
    display: flex;
    align-items: center;
    gap: 0 50px;
    margin-block: 66px 20px;
    justify-content: space-between;
    position: relative;
}

.top-company__number-box-image {
    width: 750px;
    flex-shrink: 0;
}

.top-company__number-box-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.common-inbox__ttl-text {
    font-size: 26px;
    letter-spacing: .049em;
    font-weight: 800;
    line-height: 1.5;
}

.common-inbox__ttl-text .inbox__text-color {
    font-size: 32px;
    color: var(--main-color);
    line-height: 1;
}

.common-more-btn a {
    display: flex;
    align-items: center;
    justify-content: center;
    min-block-size: 58px;
    min-width: 100%;
    background-color: var(--main-color);
    gap: 0 19px;
    clip-path: polygon(5.4% 0%, 94.6% 0%, 100% 22.4%, 100% 77.6%, 94.6% 100%, 0 100%, 0 100%, 0% 22.4%);
    transition: .3s;
}

.common-more-btn a .common-more-btn__text {
    font-size: 16px;
    font-weight: 800;
    letter-spacing: .049em;
    color: var(--sub-color);
    transition: .3s;
}

.common-more-btn__icon {
    line-height: 1;
}

.top-company__inbox-text-box {
    margin-bottom: 31.5px;
    display: flex;
    align-items: center;
    gap: 0 12.8px;
}

.top-company__inbox-icon {
    width: 41.84px;
    flex-shrink: 0;
}

.top-company__inbox-icon img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.common-more-btn {
    width: 240px;
}

.top-company__inbox.number .inner .common-more-btn {
    margin-left: auto;
}

.common-more-btn a:hover {
    background-color: var(--sub-color);
}

.common-more-btn a:hover .common-more-btn__text {
    color: var(--main-color);
}

.common-more-btn a .common-more-btn__icon path {
    transition: .3s;
}

.common-more-btn a:hover .common-more-btn__icon path {
    fill: var(--main-color);
}

.top-company__inbox-outer {
    display: grid;
    grid-template-columns: 360px 760px;
    gap: 0 20px;
    margin-bottom: 20px;
    position: relative;
    z-index: 0;
}

.top-company__inbox.culture {
    padding: 36px 20px 36px 41px;
}

.inbox-culture__list {
    margin-top: 34px;
}

.inbox-culture__list li {
    display: flex;
    align-items: flex-start;
    gap: 0 18px;
}

.inbox-culture__list li+li {
    margin-top: 28px;
}

.top-company__inbox.culture .common-more-btn {
    margin: 46px auto 0;
}

.inbox-culture__item-icon {
    flex-shrink: 0;
    width: 28.66px;
}

.inbox-culture__item-icon img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.inbox-culture__item-text {
    font-size: 18px;
    letter-spacing: .03em;
    font-weight: 700;
    line-height: 1.44;
}

.inbox-culture__item-text .color {
    color: #0D79E6;
}

.top-company__inbox.vision {
    padding: 39px 40px 30px 30px;
}

.inbox-vision__box {
    display: flex;
    gap: 0 32px;
}

.inbox-vision__box.philosophy {
    gap: 0 99px;
}

.inbox-vision__box.philosophy .inbox-vision__theme {
    margin-left: -16px;
}

.inbox-vision__theme {
    font-size: 26px;
    font-weight: 700;
    letter-spacing: .025em;
    line-height: 1.19;
    margin-bottom: 18px;
}

.inbox-vision__text {
    font-weight: 500;
    letter-spacing: .01em;
}

.inbox-vision__box+.inbox-vision__box {
    margin-top: 25px;
}

.top-company__vision-border-doted {
    line-height: 1;
    margin: 15px auto 27px;
    width: 679px;
}

.inbox-vision__text-box.other .inbox-vision__theme {
    margin-bottom: 6px;
}

.inbox-vision__text-box.other .inbox-vision__text {
    font-size: 17px;
    letter-spacing: .025em;
    line-height: 1.82;
}

.top-company__inbox.vision .common-more-btn {
    margin: 35px auto 0;
}

.top-company__inbox.message {
    display: flex;
    position: relative;
    overflow: hidden;
    gap: 0 54px;
    margin-bottom: 50px;
    position: relative;
}

.top-company__inbox.message .common-more-btn {
    position: absolute;
    bottom: 75px;
    left: 60px;
}

.inbox-message__band {
    position: absolute;
    bottom: -49px;
    right: -277px;
    rotate: -8deg;
    width: 1303px;
}

.inbox-message__image {
    flex-shrink: 0;
    width: 397px;
}

.inbox-message__image img {
    width: 100%;
    aspect-ratio: 397/460;
    object-fit: cover;
}

.message-text-box__inner {
    height: 284px;
    overflow-y: scroll;
    padding-right: 23px;
}

.common-more-btn.long {
    width: 410px;
    margin: 0 auto;
    position: relative;
}

.common-more-btn.long a {
    clip-path: polygon(3.1% 0%, 96.9% 0%, 100% 22.4%, 100% 77.6%, 96.9% 100%, 0 100%, 0 100%, 0% 22.4%);
}

.message-text-box__text {
    font-size: 16px;
    font-weight: 500;
    letter-spacing: .01em;
    line-height: 1.45;
}

.inbox-message__text-box {
    width: 100%;
    padding: 41px 67px 0 0;
}

.inbox-message__text-box .common-inbox__ttl {
    margin-bottom: 21px;
}

.message-text-box__inner::-webkit-scrollbar {
    width: 5px;
}


.message-text-box__inner::-webkit-scrollbar-thumb {
    background: var(--sub-color);
}

.message-text-box__inner::-webkit-scrollbar-track {
    background: #E6E6E6;
    border: 1.5px solid transparent;
    background-clip: content-box;
}

.top-company__inner::before {
    content: "";
    width: 224px;
    aspect-ratio: 1 / 1;
    min-width: 0;
    background-image: url(image/top_work_sec_treat3.svg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: 28.5%;
    left: -174px;
    z-index: -1;
}

.top-company__inner::after {
    content: "";
    width: 163px;
    aspect-ratio: 1/1;
    min-width: 0;
    background-image: url(image/top_work_sec_treat2.svg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: 6%;
    right: -73px;
    z-index: -1;
}

.top-company__inbox.number::before {
    content: "";
    position: absolute;
    top: -117px;
    left: 0;
    width: 78px;
    aspect-ratio: 78.04/58.5;
    min-width: 0;
    background-image: url(image/top_work_sec_treat1.svg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    rotate: -5deg;
}

.top-company__inbox.number::after {
    content: "";
    position: absolute;
    bottom: -37px;
    left: 30%;
    width: 58.7px;
    aspect-ratio: 58.7/54.39;
    min-width: 0;
    background-image: url(image/top_work_sec_treat4.svg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    rotate: -5deg;
    z-index: 1;
}

.top-company__inbox-outer::after {
    content: "";
    position: absolute;
    top: 50%;
    right: -100px;
    translate: 0 -50%;
    width: 130px;
    aspect-ratio: 130/78;
    min-width: 0;
    background-image: url(image/top_work_sec_treat5.svg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    z-index: -1;
}

.top-company__inbox-outer::before {
    content: "";
    position: absolute;
    bottom: -80px;
    left: -70px;
    width: 58.7px;
    aspect-ratio: 58.7/54.39;
    min-width: 0;
    background-image: url(image/top_work_sec_treat6.svg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.top-company__inner .common-more-btn.long::after {
    content: "";
    position: absolute;
    bottom: -64px;
    right: -269px;
    width: 55.5px;
    aspect-ratio: 55.5/57.05;
    min-width: 0;
    background-image: url(image/top_work_sec_treat7.svg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

/* TOP 環境を知る */
.top-environment {
    padding-block: 122px 160px;
}

.top-environment__inner {
    display: flex;
    align-items: center;
    gap: 0 97.5px;
    padding-left: 50px;
    justify-content: space-between;
    position: relative;
}

.top-environment__image-area {
    width: 767.5px;
    position: relative;
    flex-shrink: 0;
}

.top-environment__image-area img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.top-environment__image-area .common-more-btn {
    position: absolute;
}

.top-environment__image-area .common-more-btn.system {
    top: 52%;
    left: 0;
}

.top-environment__image-area .common-more-btn.gallery {
    right: 0;
    top: 41.4%;
}

.top-environment__image-area .common-more-btn.benefits {
    bottom: -2%;
    left: 50%;
    translate: -50% 0;
}

.top-environment__text-area .common-sec-ttl {
    margin: 0 0 73px 28.5px;
}

.top-environment__main-text {
    letter-spacing: .01em;
    font-weight: 500;
    margin-bottom: 53px;
}

.top-environment__text-area .common-more-btn {
    margin-left: 15px;
}

.top-environment__text-area .common-sec-ttl__treat path {
    fill: #FFA3CE;
}

.top-environment__inner::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: -50px;
    width: 78px;
    aspect-ratio: 1/1;
    min-width: 0;
    background-image: url(image/top_environment_treat1.svg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.top-environment__image-area::before {
    content: "";
    width: 79px;
    aspect-ratio: 79/60;
    min-width: 0;
    background-image: url(image/top_environment_img_treat1.svg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    top: 0.5%;
    right: 39.5%;
    animation: fuwafuwa 3s ease-in-out infinite alternate;
    transform-origin: center;
    position: absolute;
    rotate: -5deg;
}

.top-environment__image-area::after {
    content: "";
    width: 139px;
    aspect-ratio: 139/85;
    min-width: 0;
    background-image: url(image/top_environment_img_treat2.svg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    bottom: 10%;
    right: 0;
    animation: fuwafuwa 3s ease-in-out infinite alternate;
    transform-origin: center;
    position: absolute;
}

.top-environment__image-area .common-more-btn a:hover {
    background-color: #FFA3CE;
}

.top-environment__image-area .common-more-btn a {
    border: solid 4px var(--main-color);
    position: relative;
}



.top-environment__image-area .common-more-btn a:hover .common-more-btn__text {
    color: #FFF;
}

.top-environment__image-area .common-more-btn a:hover .common-more-btn__icon path {
    fill: #FFF;
}

.top-environment__image-area .common-more-btn a::before,
.top-environment__image-area .common-more-btn a::after {
    content: "";
    position: absolute;
    width: 20px;
    height: 4px;
    background-color: var(--main-color);
    z-index: 1;
}

.top-environment__image-area .common-more-btn a::before {
    top: 3px;
    left: -7px;
    rotate: -45deg;
}

.top-environment__image-area .common-more-btn a::after {
    bottom: 3px;
    right: -7px;
    rotate: -45deg;
}

.top-environment__image-area .common-more-btn .common-more-btn__text::after {
    content: "";
    position: absolute;
    width: 20px;
    height: 4px;
    background-color: var(--main-color);
    z-index: 1;
    top: 3px;
    right: -7px;
    rotate: 45deg;
}

@keyframes fuwafuwa {
    0% {
        transform: translate(0, 0) rotate(-7deg);
    }

    50% {
        transform: translate(0, -7px) rotate(0deg);
    }

    100% {
        transform: translate(0, 0) rotate(7deg);
    }
}

/* TOP 仲間を知る */
.top-fellow__slide {
    width: 234px;
    margin-right: 23px;
}

.top-fellow {
    background-image: url(image/top_fellow_bg.webp);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    padding-block: 98px 75px;
    position: relative;
    overflow: hidden;
    z-index: 0;
}

.top-fellow__inner .common-sec-ttl {
    margin-bottom: 70px;
}

.top-fellow__inner .common-more-btn {
    margin: 50px auto 0;
    width: 300px;
}

.top-fellow__inner .common-more-btn a {
    clip-path: polygon(4.3% 0%, 95.7% 0%, 100% 22.4%, 100% 77.6%, 95.7% 100%, 0 100%, 0 100%, 0% 22.4%);
}

.top-fellow__inner .common-sec-ttl__treat path {
    fill: #EA1F1F;
}

.top-fellow::before {
    content: "";
    position: absolute;
    bottom: 72px;
    left: -142px;
    width: 292px;
    aspect-ratio: 1/1;
    min-width: 0;
    background-image: url(image/top_fellow_treat2.svg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.top-fellow::after {
    content: "";
    position: absolute;
    top: 106px;
    right: -41px;
    width: 240px;
    aspect-ratio: 240/196;
    min-width: 0;
    background-image: url(image/top_fellow_treat1.svg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    z-index: -1;
}

.top-fellow__slide-user {
    position: absolute;
    z-index: -1;
    min-width: 0;
}

.top-fellow__slide a {
    display: block;
    position: relative;
}

.top-fellow__slide-name {
    position: absolute;
    font-size: 20px;
    line-height: 1;
    letter-spacing: .08em;
    font-weight: 900;
    color: #FFF;
    left: 50%;
    translate: -50% 0;
}

.top-fellow__slide1 .top-fellow__slide-user {
    rotate: 5deg;
    width: 217px;
    aspect-ratio: 217/204;
    border-radius: 10px;
    top: 30.8%;
    left: 4%;
}

.top-fellow__slide1 .top-fellow__slide-name {
    bottom: 5%;
}

.top-fellow__slide2 .top-fellow__slide-user {
    clip-path: polygon(23% 0%,
            77% 0%,
            100% 23%,
            100% 77%,
            77% 100%,
            23% 100%,
            0% 100%,
            0% 23%);
    width: 205px;
    top: 12%;
    left: 6%;
    aspect-ratio: 205 / 212;
}

.top-fellow__slide2 .top-fellow__slide-name {
    bottom: 22.5%;
    left: 48%;
}

.top-fellow__slide3 .top-fellow__slide-user {
    width: 231px;
    aspect-ratio: 1/1;
    border-radius: 50%;
    top: 13%;
    left: 1%;
}

.top-fellow__slide3 .top-fellow__slide-name {
    bottom: 17%;
    left: 51%;
}

.top-fellow__slide4 .top-fellow__slide-user {
    clip-path: polygon(23% 0%,
            77% 0%,
            100% 23%,
            100% 77%,
            77% 100%,
            23% 100%,
            0% 100%,
            0% 23%);
    width: 205px;
    top: 2%;
    left: 6%;
    aspect-ratio: 205 / 212;
}

.top-fellow__slide4 .top-fellow__slide-name {
    bottom: 32%;
    left: 51%;
}

.top-fellow__slide5 .top-fellow__slide-user {
    rotate: 5deg;
    width: 217px;
    aspect-ratio: 217/204;
    border-radius: 10px;
    top: 15.8%;
    left: 4%;
}

.top-fellow__slide5 .top-fellow__slide-name {
    bottom: 19.5%;
    left: 52%;
}

.top-fellow__slide6 .top-fellow__slide-user {
    clip-path: polygon(23% 0%,
            77% 0%,
            100% 23%,
            100% 77%,
            77% 100%,
            23% 100%,
            0% 100%,
            0% 23%);
    width: 205px;
    top: 24.5%;
    left: 5.6%;
    aspect-ratio: 205 / 212;
}

.top-fellow__slide6 .top-fellow__slide-name {
    bottom: 9.5%;
}

.top-fellow__slide7 .top-fellow__slide-user {
    width: 231px;
    aspect-ratio: 1 / 1;
    border-radius: 50%;
    top: 0.3%;
    left: 1%;
    z-index: -1;
}

.top-fellow__slide7 .top-fellow__slide-name {
    bottom: 29%;
    left: 51%;
}

/* TOP 仕事を知る */
.top-work {
    padding-block: 160px 170px;
    overflow: hidden;
}

.top-work__inner {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.top-work__bg-band {
    position: absolute;
    rotate: -5deg;
    bottom: -8%;
    left: 48.2%;
    translate: -50% -50%;
    z-index: -1;
}

.top-work__text-area .common-sec-ttl {
    margin: 0 0 106px 28.5px;
}

.top-work__text-area .common-sec-ttl__treat path {
    fill: var(--sub-color);
}

.top-work__text-area .common-more-btn {
    margin-left: 15px;
}

.top-work__item {
    width: 736px;
}

.top-work__item a {
    display: flex;
    background-color: #FFFBE5;
    border-radius: 10px;
    justify-content: space-between;
    overflow: hidden;
    align-items: stretch;
}

.top-work__item-text-area {
    padding: 18px 50px;
    width: 100%;
    min-height: 130px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.top-work__item-ttl {
    font-size: 30px;
    letter-spacing: .049em;
    color: var(--main-color);
    font-weight: 800;
    line-height: 1.26;
    margin-bottom: 12px;
}

.top-work__item-text {
    font-weight: 500;
    color: #222;
    letter-spacing: .01em;
    line-height: 1.57;
}

li.top-work__item+.top-work__item {
    margin-top: 15px;
}

.top-work__text-area {
    flex-shrink: 0;
}

.top-work__item-icon {
    background-color: var(--main-color);
    width: 50px;
    display: grid;
    place-content: center;
    flex-shrink: 0;
    transition: .3s;
    min-height: 100%;
}

.top-work__item a:hover .top-work__item-icon {
    background-color: var(--sub-color);
}

.top-work__item a:hover .top-work__item-icon path {
    fill: var(--main-color);
}

.top-work__item-icon path {
    transition: .3s;
}

.top-work__inner::before {
    content: "";
    position: absolute;
    top: 0;
    left: -174px;
    width: 157.1px;
    aspect-ratio: 157.1/193.13;
    min-width: 0;
    background-image: url(image/top_work_treat1.svg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.top-work__inner::after {
    content: "";
    position: absolute;
    bottom: -43px;
    right: -101px;
    width: 138.7px;
    aspect-ratio: 138.7/107.02;
    min-width: 0;
    background-image: url(image/top_work_treat2.svg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    z-index: -1;
}

/* TOP 募集について */
.top-recruit {
    width: 1240px;
    margin: 0 auto;
    background-color: #E5F6FF;
    border-radius: 10px;
    padding: 70px 50px;
}

.top-recruit__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.top-recruit__inner .common-sec-ttl {
    margin: 0 0 0 28.5px;
}

.top-recruit__btn-area {
    display: flex;
    gap: 0 30px;
}

.top-recruit__btn a {
    display: flex;
    align-items: center;
    min-block-size: 100px;
    width: 330px;
    background-color: var(--sub-color);
    justify-content: center;
    gap: 0 15px;
    border-radius: 10px;
    box-shadow: 0 2px 3px rgba(0, 0, 0, .16);
    transition: .3s;
    padding: 20px;
}

.top-recruit__inner .common-sec-ttl__treat path {
    fill: #9ED8F6;
}

.top-recruit-btn__text {
    font-size: 20px;
    letter-spacing: .06em;
    font-weight: 800;
    color: var(--main-color);
    line-height: 1;
    transition: .3s;
}

.top-recruit-btn__icon path {
    transition: .3s;
    fill: var(--main-color);
}

.top-recruit-btn__icon {
    line-height: 1;
}

.top-recruit__btn a:hover .top-recruit-btn__icon path {
    fill: var(--sub-color);
}

.top-recruit__btn a:hover {
    background-color: var(--main-color);
}

.top-recruit__btn a:hover .top-recruit-btn__text {
    color: var(--sub-color);
}

/* TOP よくある質問 */
.top-faq {
    padding-block: 70px 148px;
}

.top-faq__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.top-faq-ttl__en-text {
    font-size: 26px;
    color: var(--main-color);
    font-weight: 900;
    line-height: 1;
    margin-bottom: 8px;
}

.top-faq-ttl__text {
    font-size: 32px;
    font-weight: 700;
    letter-spacing: .1em;
    line-height: 1;
}

.top-faq-ttl {
    margin-bottom: 47px;
}

.top-faq__text-area {
    flex-shrink: 0;
    text-align: center;
}

.top-faq__item-area {
    width: 810px;
}

.top-faq__item {
    border-radius: 10px;
    box-shadow: 0 2px 3px rgba(0, 0, 0, .16);
    padding: 15px 25px;
}

.top-faq__item+.top-faq__item {
    margin-top: 10px;
}

.top-faq__item-answer {
    border-top: solid 1px #CBE7F5;
}

.top-faq__item-question,
.top-faq__item-answer {
    display: flex;
    gap: 0 10px;
    padding-inline: 8px;
}

.top-faq__item-question .top-faq__item-text {
    font-size: 16px;
    font-weight: 700;
    line-height: 1.37;
}

.top-faq__item-en {
    font-weight: 900;
    font-size: 22px;
    line-height: 1;
}

.top-faq__item-question .top-faq__item-en {
    color: var(--main-color);
}

.top-faq__item-answer .top-faq__item-en {
    color: var(--sub-color);
}

.top-faq__item-text {
    letter-spacing: .01em;
    font-weight: 500;
    line-height: 1.57;
}

.top-faq__item-answer {
    margin-top: 10px;
    padding-top: 10px;
}

/* フッター */
.site-footer {
    position: relative;
    background-color: var(--main-color);
    overflow: hidden;
    padding-block: 202px 30px;
}

.site-footer__bottom-menu ul {
    display: flex;
    align-items: center;
    gap: 0 30px;
}

.site-footer__bottom-menu {
    margin-bottom: clamp(170px, 11.8vw, 9999px);
}

.site-footer__bottom-copyright {
    text-align: right;
}

.top-fv__band.ft {
    top: auto;
    bottom: clamp(29px, 2.1vw, 9999px);
    max-width: calc(100% + 100px);
}

.site-footer__menu {
    display: flex;
    justify-content: space-between;
    margin-bottom: 47px;
}

.site-footer__menu-label a {
    color: #FFF;
    font-size: 20px;
    letter-spacing: .07em;
    font-weight: 700;
    line-height: 1.15;
    transition: .3s;
    display: block;
}

.site-footer__menu-inner {
    padding-left: 19px;
    border-left: solid 2px #FFF;
}

.site-footer__menu-subitem a {
    color: #FFF;
    letter-spacing: .07em;
    font-weight: 400;
    transition: .3s;
    display: block;
}

.site-footer__menu-subitem a:hover {
    color: var(--sub-color);
}

.site-footer__menu-label a:hover {
    color: var(--sub-color);
}

.site-footer__btn a {
    display: grid;
    place-content: center;
    color: #FFF;
    width: 300px;
    border: solid 3px #FFF;
    border-radius: 10px;
    min-block-size: 70px;
    font-size: 18px;
    font-weight: 900;
    letter-spacing: .07em;
    background-color: var(--main-color);
    transition: .3s;
    box-shadow: 0 2px 3px rgba(0, 0, 0, .16);
}

.site-footer__btn a:hover {
    background-color: var(--sub-color);
    color: var(--main-color);
}

.site-footer__bottom-menu li a {
    color: #FFF;
    font-size: 12px;
    letter-spacing: .07em;
    font-weight: 400;
    display: block;
}

.site-footer__inner {
    padding-left: 100px;
    position: relative;
}

.site-footer__menu-label {
    margin-bottom: 24px;
}

.site-footer__menu-subitem+.site-footer__menu-subitem {
    margin-top: 14px;
}

.site-footer__btn {
    margin-bottom: 18px;
}

.site-footer__bottom-copyright small {
    font-size: 12px;
    letter-spacing: .07em;
    line-height: 1;
    font-weight: 400;
    color: #FFF;
}

.site-footer__main {
    width: 1140px;
}

.top-fv__band.ft .top-fv__ttl {
    right: 132px;
    bottom: calc(166/181*100%);
}

.site-footer .top-fv__marquee {
    top: 0;
}

.site-footer__bottom-menu li a:hover {
    color: var(--sub-color);
}

.site-footer__treat1 {
    position: absolute;
    top: -22%;
    left: 27.4%;
}

.site-footer__treat1.color3 {
    bottom: -1.6%;
    right: 25.4%;
    top: auto;
    left: auto;
}

.site-footer__treat1.color1 path {
    fill: #9ED8F6;
}

.site-footer__treat1.color2 path {
    fill: #26CB01;
}

.site-footer__treat1.color3 path {
    fill: #0DE6DE;
}

.site-footer__treat2 {
    position: absolute;
    top: -20.4%;
    right: -4.4%;
}

.site-footer__bottom {
    position: relative;
}

.site-footer__treat1.color1 {
    top: 10%;
    left: -10%;
    right: auto;
}

.site-footer__treat1.color2 {
    top: 11.5%;
    left: 31.4%;
    right: auto;
}

/* 理念・ビジョン */
.page-common-fv__title {
    min-block-size: 106px;
    display: grid;
    place-content: center;
    width: fit-content;
    clip-path: polygon(4.8% 0%, 95.2% 0%, 100% 22.6%, 100% 77.4%, 95.2% 100%, 0 100%, 0 100%, 0% 22.6%);
    padding: 15px 86px;
    min-width: 495px;
}

.page-common-fv__title-text {
    font-size: 44px;
    letter-spacing: .049em;
    line-height: 1;
    font-weight: 800;
    color: #FFF;
}

.page-common-fv img {
    position: absolute;
    inset: 0;
    z-index: -1;
}

.page-common-fv {
    position: relative;
    padding-block: calc(114.5/594*100%) calc(86.9/594*100%);
}

.breadcrumb-inner {
    width: fit-content;
    margin-left: auto;
    margin-right: -.3em;
}

.common-page-wrap {
    padding-block: 96px 140px;
    margin-top: 36px;
}

.vision-philosophy-sec .vision-philosophy-inner {
    display: flex;
    gap: 0 60px;
    align-items: center;
    margin-inline: 10px;
}

.vision-philosophy-sec__img-area {
    width: 500px;
    flex-shrink: 0;
}

.vision-philosophy-sec__img-area img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.vision-philosophy-sec__text-area {
    width: 100%;
    position: relative;
}

.vision-philosophy-sec .common-page-treat__group {
    position: absolute;
    top: -60px;
    right: -110px;
}

.vision-philosophy-sec {
    margin-bottom: 139px;
}

.vision-philosophy-text__ttl-vertical {
    font-size: 44px;
    font-weight: 800;
    letter-spacing: .049em;
    writing-mode: vertical-rl;
    line-height: 1;
    translate: 0 -0.2em;
}

.vision-philosophy-text__ttl-box {
    display: flex;
    align-items: center;
    gap: 0 13px;
    margin-bottom: 50px;
}

.vision-philosophy-text__ttl-box .inner {
    position: relative;
}

.vision-philosophy-text__ttl-sub {
    font-size: 14px;
    letter-spacing: .37em;
    font-weight: 800;
    position: absolute;
    top: -15px;
    left: 50%;
    translate: -50% 0;
}

.vision-philosophy-text__ttl-text {
    font-size: 38px;
    font-weight: 800;
    letter-spacing: .049em;
}

.vision-philosophy-text__ttl-text .key {
    display: inline-block;
}

.vision-philosophy-text__ttl-text .key.left {
    translate: 0 -0.7em;
    margin-right: 0.3em;
}

.vision-philosophy-text__ttl-text .key.right {
    translate: 0 0.3em;
    margin-left: 0.4em;
}

.vision-philosophy-text__sub-text {
    font-size: 17px;
    font-weight: 600;
    letter-spacing: .08em;
}

.vision-philosophy-text__sub-text .indent {
    display: inline-block;
    margin-left: 5em;
}

.vision-philosophy-text__sub-box {
    margin-bottom: 30px;
}

.vision-philosophy-text__main-text {
    letter-spacing: .08em;
    font-weight: 500;
    line-height: 2;
}

.common-page-treat__group {
    width: 152px;
    aspect-ratio: 152/122;
    min-width: 0;
    position: relative;
}

.common-page-treat {
    width: 58.7px;
    position: absolute;
    bottom: 0;
    left: 0;
}

.common-page-treat svg {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.common-page-treat.yellow {
    bottom: auto;
    left: auto;
    top: 0;
    right: 0;
}

.common-page-treat.yellow path {
    fill: var(--sub-color);
}

.vision-vision-sec .inner {
    display: flex;
    align-items: center;
    gap: 0 93px;
}

.vision-vision-sec__en-box {
    flex-shrink: 0;
    position: relative;
    translate: 0 -28px;
}

.vision-vision-sec__en-text {
    font-size: 140px;
    color: #CFE4FA;
    font-weight: 700;
    line-height: 1;
}

.vision-vision-sec__text-area {
    width: 100%;
}

.vision-vision-text__ttl {
    font-size: 44px;
    font-weight: 800;
    letter-spacing: .049em;
}

.vision-vision-text__theme {
    font-size: 41px;
    font-weight: 700;
    letter-spacing: .025em;
    line-height: 1.36;
}

.vision-vision-text__theme-sub {
    font-size: 23px;
    font-weight: 600;
    letter-spacing: .09em;
}

.vision-vision-text__theme-box {
    margin-bottom: 30px;
}

.vision-vision-text__main-text {
    font-size: 17px;
    letter-spacing: .09em;
    line-height: 1.52;
    font-weight: 600;
    text-indent: -1em;
    padding-left: 1em;
}

.vision-vision-sec__en-box::before {
    content: "";
    width: 106px;
    aspect-ratio: 53/42;
    min-width: 0;
    background-image: url(image/page_vision_treat.svg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    top: 50%;
    left: -156px;
    position: absolute;
    translate: 0 -50%;
}

.vision-vision-sec {
    margin-bottom: 140px;
}

.vision-origin-sec .inner {
    background-color: #F3FAFF;
    border-radius: 10px;
    padding: 0 110px 56px;
}

.vision-origin-sec__img-area {
    background-color: #FFF;
    border-radius: 0 0 20px 20px;
    display: grid;
    place-content: center;
    padding-block: 25px 42px;
    margin: 0 auto 23px;
    width: 580px;
}

.vision-origin-sec__img-area img {
    width: 325px;
}

.vision-origin-ttl__text {
    font-size: 44px;
    font-weight: 800;
    letter-spacing: .049em;
}

.vision-origin-sec__ttl-box {
    text-align: center;
    margin-bottom: 38px;
}

.vision-origin-sec__text-area {
    position: relative;
    display: flex;
    gap: 0 65px;
}

.vision-origin-sec__text-area .common-page-treat__group {
    position: absolute;
    bottom: -127px;
    right: -54px;
}

.vision-origin-text__item-en {
    font-size: 90px;
    font-weight: 700;
    color: #9ED8F6;
}

.vision-origin-text__item-main {
    border-top: solid 3px #9ED8F6;
    padding-top: 32px;
}

.vision-origin-text__item-text {
    font-size: 17px;
    letter-spacing: .09em;
    line-height: 1.52;
    font-weight: 500;
}

.vision-origin-text__item {
    width: 410px;
}

.vision-origin-text__item:nth-child(2) {
    width: 545px;
}

.common-page-treat.pink path {
    fill: #FFA3CE;
}

.vision-guide-sec {
    padding-block: 140px 0;
}

.vision-guide-ttl {
    text-align: center;
    margin-bottom: 30px;
}

.vision-guide-ttl__text {
    font-size: 44px;
    font-weight: 800;
    letter-spacing: .049em;
}

.vision-guide-list {
    display: flex;
    position: relative;
}

.vision-guide-list__item {
    clip-path: polygon(3.5% 0%, 96.5% 0%, 100% 21.1%, 100% 78.9%, 96.5% 100%, 0 100%, 0 100%, 0% 21.1%);
    width: 530px;
    padding: 10px 19px;
    min-block-size: 90px;
    color: #FFF;
    display: grid;
    align-items: center;
}

.vision-guide-list__item+.vision-guide-list__item {
    margin-top: 18px;
}

.vision-guide-list__group {
    width: 580px;
    flex-shrink: 0;
}

.vision-guide-list__group+.vision-guide-list__group {
    margin-left: -20px;
}

.vision-guide-list__item:nth-child(2) {
    margin-left: 25px;
}

.vision-guide-list__item:nth-child(3) {
    margin-left: 50px;
}

.vision-guide-list__item-ttl {
    display: flex;
    gap: 0 8px;
    align-items: center;
}

.vision-guide-list__item-text {
    font-size: 20px;
    letter-spacing: .04em;
    font-weight: 800;
    line-height: 1.3;
}

.vision-guide-list__item-num {
    font-size: 30px;
    font-weight: 700;
    line-height: 1;
}

.vision-guide-list__main {
    font-weight: 500;
    letter-spacing: .09em;
    line-height: 1.85;
    width: fit-content;
    margin-left: 3.7em;
}

.vision-guide-list::before {
    content: "";
    width: 355px;
    aspect-ratio: 1/1;
    min-width: 0;
    background-image: url(image/page_guidelines_treat.svg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    top: -131px;
    left: -242px;
    position: absolute;
}

.breadcrumb-inner .home a {
    line-height: 1;
}

.breadcrumb-inner span {
    display: inline-block;
    margin-inline: .3em;
}

.breadcrumb-inner .home {
    margin-left: 0;
}

/* 会社を知る */
.common-link__list ul {
    display: flex;
    gap: 0 30px;
    align-items: center;
    flex-wrap: wrap;
    justify-content: center;
}

.common-link__list li a {
    display: grid;
    place-content: center;
    aspect-ratio: 1/1;
    min-width: 0;
    position: relative;
    border-radius: 10px;
    transition: .3s;
}

.common-link__list li {
    width: 260px;
}

.common-link__list li a img {
    width: 93%;
    aspect-ratio: 1/1;
    min-width: 0;
    object-fit: cover;
    margin: 0 auto;
    border-radius: 5px;
}

.common-clip-box {
    clip-path: polygon(5.4% 0%, 94.6% 0%, 100% 22.4%, 100% 77.6%, 94.6% 100%, 0 100%, 0 100%, 0% 22.4%);
    min-block-size: 50px;
    padding: 10px 15px;
    white-space: nowrap;
    display: grid;
    place-content: center;
    min-width: 170px;
    width: fit-content;
}

.common-link__list li a .common-clip-box {
    position: absolute;
    bottom: 20px;
    left: 50%;
    translate: -50% 0;
}

.common-link__list li a::before {
    content: "";
    position: absolute;
    width: 93%;
    aspect-ratio: 1/1;
    min-width: 0;
    top: 3.5%;
    left: 3.5%;
    background-color: rgba(0, 0, 0, .16);
    border-radius: 5px;
}

.common-clip-box__text {
    color: #FFF;
    font-size: 16px;
    font-weight: 700;
    letter-spacing: .01em;
}

.common-link__list li a::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 10px;
    z-index: -1;
    transition: .3s;
    opacity: 0.7;
}

.common-link__list li a:hover {
    rotate: -10deg;
}

.common-link__list li a:hover::after {
    rotate: 10deg;
}

.common-link__list li a.bg-blue::after {
    background-color: var(--main-color);
}

.common-link__list li a.bg-red::after {
    background-color: #EA1F1F;
}

.common-link__list li a.bg-orange::after {
    background-color: #F58E03;
}

.common-link__list li a.bg-pink::after {
    background-color: #FFA3CE;
}

.common-link__list {
    padding-block: 50px;
}

/* よくあるご質問 */
.page-faq__item .top-faq__item-area {
    width: 100%;
    margin-bottom: 0;
}

.common-page__sub-ttl-text {
    font-size: 26px;
    font-weight: 700;
    letter-spacing: .1em;
}

.page-faq__item+.page-faq__item {
    margin-top: 100px;
}

.common-page__sub-ttl {
    margin-bottom: 10px;
    position: relative;
    width: fit-content;
}

.common-sec-ttl__treat svg {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.common-page__sub-ttl .common-sec-ttl__treat {
    width: 20px;
    top: -16px;
    right: -21px;
}

.page-faq .top-faq__item {
    padding: 25px 35px;
}

.page-faq .top-faq__item-question,
.page-faq .top-faq__item-answer {
    padding-inline: 15px;
}

.page-faq .top-faq__item-en {
    font-size: 28px;
}

.page-faq .top-faq__item-question .top-faq__item-text {
    font-size: 22px;
}

.page-faq .common-page__sub-ttl-text {
    font-size: 32px;
}

.page-faq .top-faq__item-answer {
    margin-top: 15px;
    padding-top: 15px;
}

.page-faq .top-faq__item-text {
    font-size: 16px;
}

.page-faq .top-faq__item+.top-faq__item {
    margin-top: 20px;
}

/* 募集要項 */
.page-positions__item-table dl {
    display: grid;
    grid-template-columns: 34% 66%;
    border-bottom: solid 1px #dcdcdc;
    justify-content: flex-end;
}

.page-positions__item-table dt {
    background-color: #E5F6FF;
    font-size: 16px;
    letter-spacing: .1em;
    font-weight: 700;
    display: grid;
    place-content: center;
    border-top: solid 1px #dcdcdc;
}

.page-positions__item-table dd {
    border-top: solid 1px #dcdcdc;
    padding: 15px 30px;
    background-color: #FFF;
}

.page-positions__table-text {
    font-size: 16px;
    line-height: 2;
    letter-spacing: .04em;
}

.page-positions-sec .common-more-btn {
    margin: 80px auto 0;
}

.page-positions__item+.page-positions__item {
    margin-top: 80px;
}

.page-positions-tag-list ul {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 0 30px;
}

.page-positions-tag-list {
    margin-bottom: 120px;
}

.page-positions-tag-list li a {
    display: grid;
    place-content: center;
    border: solid 2px var(--main-color);
    text-align: center;
    padding: 0.5em;
    background-color: #FFF;
    color: var(--main-color);
    font-weight: 700;
    letter-spacing: .04em;
    transition: .3s;
    font-size: 16px;
    background-color: #FFF;
}

.page-positions-tag-list li a:hover {
    background-color: var(--main-color);
    color: #FFF;
}

/* 賃貸事業部 */
.common-work-catch-sec .wrap {
    width: 1040px;
}

.common-work-catch__ttl-text {
    font-size: 26px;
    line-height: 1.53;
    font-weight: 700;
    color: var(--main-color);
}

.common-work-catch__ttl-box {
    margin-bottom: 30px;
    text-align: center;
}

.common-work-catch__main-text {
    font-size: 16px;
    line-height: 2.25;
    letter-spacing: .04em;
    font-weight: 500;
    text-align: center;
}

.common-work-catch-sec {
    margin-bottom: 100px;
}

.common-work-main-sec .inner {
    border: solid 3px var(--main-color);
    padding: 0 60px 30px;
    border-radius: 10px;
}

.common-work-main-sec .common-clip-box {
    margin: -25px auto 25px;
    clip-path: polygon(13px 0,
            calc(100% - 13px) 0,
            100% 13px,
            100% calc(100% - 13px),
            calc(100% - 13px) 100%,
            0px 100%,
            0 calc(100% - 13px),
            0 13px);
}

.common-work-main-sec .wrap {
    width: 940px;
}

.common-work-main__main-text {
    font-size: 16px;
    line-height: 2;
    letter-spacing: .04em;
    font-weight: 500;
}

.common-work-img__item {
    width: 1040px;
    margin: 0 auto;
    box-shadow: 15px 15px 0 rgba(245, 142, 3, 0.4);
    border-radius: 10px;
    border: solid 20px #F58E03;
    overflow: hidden;
}

.common-work-img__item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.common-work-main-sec {
    margin-bottom: 60px;
}

.common-work-item+.common-work-item {
    margin-top: 140px;
}

.common-work-main-sec .common-clip-box__text {
    font-size: 20px;
}

/* 管理事業部 */
.common-work-img__item.bd-none {
    border: none;
    box-shadow: none;
}

/* 福利厚生 */
.benefits-list-sec__list-box ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 90px 30px;
}

.benefits-list__icon img {
    width: 100%;
    aspect-ratio: 1/1;
    min-width: 0;
    object-fit: contain;
}

.benefits-list__icon {
    width: 180px;
    flex-shrink: 0;
    border: solid 3px rgba(13, 121, 230, 0.7);
    border-radius: 50%;
}

.benefits-list-sec__list-box li {
    display: flex;
    gap: 0 20px;
    align-items: flex-start;
}

.benefits-list__item-text-area {
    width: 100%;
}

.benefits-list__item-text-area .common-page__sub-ttl-text {
    color: var(--main-color);
}

.benefits-list__item-text {
    line-height: 2;
    letter-spacing: .04em;
    font-weight: 500;
}

/* 数字で見るライブデザイン */
/* 円グラフ START */
.common-donut {
    --size: 150px;
    --thickness: 46px;
    --gap: 1.2%;
    width: var(--size);
    aspect-ratio: 1;
    border-radius: 50%;
    position: relative;

    background:
        conic-gradient(#000 0 0);
    flex-shrink: 0;
}

.common-donut::after {
    content: "";
    position: absolute;
    inset: var(--thickness);
    background: #fff;
    border-radius: 50%;
}

.donut--2-1 {
    --p1: 60;
    --p2: calc(100 - var(--p1));
    --c1: var(--p1);
    --g2: calc(var(--gap) / 2);
    --col1: #0D79E6;
    --col2: #FCDF02;
    background: conic-gradient(var(--col1) 0 calc(var(--c1) * 1% - var(--g2)),
            #fff calc(var(--c1) * 0% - var(--g2)) calc(var(--c1) * 0% + var(--g2)),

            var(--col2) calc(var(--c1) * 0% + var(--g2)) 100%);
}

.donut--2-2 {
    --p1: 70;
    --p2: calc(100 - var(--p1));
    --c1: var(--p1);
    --g2: calc(var(--gap) / 2);
    --col1: #0D79E6;
    --col2: #FCDF02;
    background: conic-gradient(var(--col1) 0 calc(var(--c1) * 1% - var(--g2)),
            #fff calc(var(--c1) * 0% - var(--g2)) calc(var(--c1) * 0% + var(--g2)),

            var(--col2) calc(var(--c1) * 0% + var(--g2)) 100%);
}

.donut--2-3 {
    --p1: 60;
    --p2: calc(100 - var(--p1));
    --c1: var(--p1);
    --g2: calc(var(--gap) / 2);
    --col1: #0D79E6;
    --col2: #FCDF02;
    background: conic-gradient(var(--col1) 0 calc(var(--c1) * 1% - var(--g2)),
            #fff calc(var(--c1) * 0% - var(--g2)) calc(var(--c1) * 0% + var(--g2)),

            var(--col2) calc(var(--c1) * 0% + var(--g2)) 100%);
}

.donut--5-1 {
    --p1: 35;
    --p2: 30;
    --p3: 15;
    --p4: 10;
    --p5: 10;
    --c1: var(--p1);
    --c2: calc(var(--p1) + var(--p2));
    --c3: calc(var(--p1) + var(--p2) + var(--p3));
    --c4: calc(var(--p1) + var(--p2) + var(--p3) + var(--p4));
    --g2: calc(var(--gap) / 2);
    --col1: #0D79E6;
    --col2: #00B7C2;
    --col3: #26CB01;
    --col4: #F58E03;
    --col5: #7C47F5;
    background: conic-gradient(var(--col1) 0 calc(var(--c1) * 1% - var(--g2)),
            #fff calc(var(--c1) * 0% - var(--g2)) calc(var(--c1) * 0% + var(--g2)),

            var(--col2) calc(var(--c1) * 0% + var(--g2)) calc(var(--c2) * 1% - var(--g2)),
            #fff calc(var(--c2) * 0% - var(--g2)) calc(var(--c2) * 0% + var(--g2)),

            var(--col3) calc(var(--c2) * 0% + var(--g2)) calc(var(--c3) * 1% - var(--g2)),
            #fff calc(var(--c3) * 0% - var(--g2)) calc(var(--c3) * 0% + var(--g2)),

            var(--col4) calc(var(--c3) * 0% + var(--g2)) calc(var(--c4) * 1% - var(--g2)),
            #fff calc(var(--c4) * 0% - var(--g2)) calc(var(--c4) * 0% + var(--g2)),

            var(--col5) calc(var(--c4) * 0% + var(--g2)) 100%);
}

.common-donut.donut--5-1 {
    --size: 280px;
    --thickness: 76px;
}

/* 円グラフ END */

.number-common__inner {
    padding: 60px 50px 50px;
    border-radius: 10px;
    background-color: #E5F6FF;
}

.number-common__grid-list ul {
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
}

.number-common__grid-list li {
    background-color: #FFF;
    clip-path: polygon(40px 0, calc(100% - 40px) 0, 100% 40px, 100% calc(100% - 40px), calc(100% - 40px) 100%, 0px 100%, 0 calc(100% - 40px), 0 40px);
    padding: 20px;
    min-block-size: 190px;
    display: grid;
    place-content: center;
    text-align: center;
    width: 560px;
}

.number-common__grid-list.first li:first-child {
    width: 720px;
}

.number-common__grid-list.first li:nth-child(2) {
    width: 190px;
}

.number-common__inner-item .common-page__sub-ttl-text {
    font-size: 32px;
}

.number-common__grid-list .common-inbox__ttl-text {
    font-size: 26px;
    letter-spacing: .04em;
}

.number-common__list-text {
    font-size: 20px;
    letter-spacing: .04em;
    font-weight: 700;
}

.number-common__list-text .num {
    font-size: 300%;
    display: inline-block;
    line-height: 1;
}

.number-common__grid-list.first li:nth-child(3) {
    width: 190px;
}

.number-common__grid-list.first li:nth-child(4) {
    width: 870px;
}

.number-common__list-flex-box {
    display: flex;
    align-items: center;
    gap: 0 30px;
    justify-content: center;
}

.number-common__grid-list li .common-inbox__ttl {
    margin-bottom: 20px;
}

.number-common__grid-list.first li:nth-child(4) .number-common__list-text {
    font-size: 30px;
}

.number-common__grid-list.first li:nth-child(5) {
    width: 250px;
}

.number-common__grid-list.first li:nth-child(6) {
    width: 700px;
}

.number-common__grid-list.first li:nth-child(6) .number-common__list-text-group {
    text-align: left;
}

.number-common__grid-list.first li:nth-child(6) .number-common__list-text {
    font-size: 15px;
}

.number-common__grid-list.first li:nth-child(6) .num {
    font-size: 250%;
}

.number-common__grid-list.first li:nth-child(6) .number-common__list-text+.number-common__list-text {
    margin-top: 0.5em;
}

.number-common__grid-list.first li:nth-child(7) {
    width: 420px;
}

.number-common__grid-list.first li:nth-child(7) .number-common__list-text {
    font-size: 18px;
}

.number-common__inner-item+.number-common__inner-item {
    margin-top: 70px;
}

.number-common__grid-list.second li:nth-child(2) {
    width: 810px;
}

.number-common__grid-list.second li:first-child {
    width: 310px;
}

.number-common-sec+.number-common-sec {
    margin-top: 80px;
}

.number-common-sec.questionary .number-common__inner {
    background-color: #FFFBE5;
}

.number-common__inner-item-catch {
    text-align: center;
    margin-bottom: 40px;
}

.number-common__item-catch-text {
    font-size: 22px;
    letter-spacing: .1em;
    font-weight: 500;
}

.number-common-sec.questionary .common-page__sub-ttl {
    margin: 0 auto 30px;
}

.number-common__item-catch-text .strong {
    display: inline-block;
    font-weight: 700;
    font-size: 140%;
    line-height: 1;
}

.number-common__item-catch-text+.number-common__item-catch-text {
    margin-top: 0.5em;
}

.number-common-sec.questionary .number-common__grid-list .common-inbox__ttl-text {
    font-size: 22px;
}

.number-common__list-note {
    font-size: 16px;
    font-weight: 600;
    margin-top: 0.8em;
    letter-spacing: .04em;
    color: #F58E03;
}

.number-common__grid-list li.number-common__grid-last-message {
    width: 100%;
    min-block-size: 290px;
}

.number-common-sec.questionary .number-common__grid-last-message .common-inbox__ttl-text {
    font-size: 26px;
    color: var(--main-color);
}

.number-common__grid-last-message .number-common__list-text {
    font-size: 20px;
    font-weight: 700;
    letter-spacing: .1em;
    line-height: 2;
}

/* 社風/文化 */
.culture-committee__list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0 10px;
}

.culture-committee__catch {
    margin-bottom: 50px;
}

.culture-committee-sec .common-page__sub-ttl {
    margin-bottom: 30px;
}

.culture-committee__catch-text {
    font-size: 16px;
    letter-spacing: .04em;
    line-height: 1.9;
    font-weight: 500;
}

.page-culture .common-page__sub-ttl-text {
    font-size: 32px;
}

.culture-committee__group-tag {
    background-color: var(--main-color);
    color: #FFF;
    text-align: center;
    padding: 15px;
    margin-bottom: 10px;
    clip-path: polygon(13px 0, calc(100% - 13px) 0, 100% 13px, 100% calc(100% - 13px), calc(100% - 13px) 100%, 0px 100%, 0 calc(100% - 13px), 0 13px);
}

.culture-committee__item-tag-name {
    font-size: 16px;
    font-weight: 700;
    letter-spacing: .04em;
}

.culture-committee__item {
    padding: 15px;
    border: solid 3px #9ED8F6;
    border-radius: 10px;
    display: flex;
    flex-direction: column;
}

.culture-committee__item+.culture-committee__item {
    margin-top: 10px;
}

.culture-committee__item .common-inbox__ttl {
    margin-bottom: 20px;
    text-align: center;
}

.culture-committee__item-list li::before {
    content: "";
    width: 10px;
    aspect-ratio: 1/1;
    min-width: 0;
    background-color: #F58E03;
    flex-shrink: 0;
}

.culture-committee__item-list li {
    display: flex;
    align-items: baseline;
    gap: 0 0.5em;
    font-size: 15px;
    letter-spacing: .04em;
    font-weight: 500;
}

.culture-committee__item-list {
    margin-bottom: 20px;
}

.culture-committee__item-message-text {
    letter-spacing: .04em;
    line-height: 1.9;
}

.culture-committee__item-group {
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 3;
}

.culture-committee__item-message {
    padding: 15px;
    background-color: rgba(158, 216, 246, .1);
    border-radius: 10px;
    height: 100%;
}

.culture-committee__item-list li+li {
    margin-top: 0.4em;
}

.culture-committee__item .common-inbox__ttl-text {
    font-size: 22px;
}

.culture-activity-list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0 20px;
}

.culture-activity-list__item-img img {
    width: 100%;
    aspect-ratio: 3/2;
    min-width: 0;
    object-fit: cover;
}

.culture-activity-list__item-img {
    border: solid 5px #FFA3CE;
    border-radius: 12px;
    overflow: hidden;
    margin-bottom: 10px;
}

.culture-activity-list__item-text-box {
    text-align: center;
}

.culture-activity-list__item-ttl {
    font-size: 16px;
    letter-spacing: .04em;
    font-weight: 700;
}

.culture-activity-sec .common-page__sub-ttl {
    margin-bottom: 20px;
}

.culture-activity-sec {
    margin-top: 120px;
}

.culture-event-sec {
    margin-top: 120px;
}

.culture-event-cont__img-list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
}

.culture-event-cont {
    padding: 30px;
    background-color: #fff6f4;
    border-radius: 10px;
}

.culture-event-cont__flow {
    margin-bottom: 30px;
}

.culture-event-sec .common-page__sub-ttl {
    margin-bottom: 15px;
}

.culture-event-cont__flow img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.culture-event-cont__img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* 代表メッセージ */
.message-common-sec__inner {
    display: flex;
    gap: 0 40px;
}

.message-common__image {
    width: 580px;
    flex-shrink: 0;
}

.message-common__image img {
    width: 100%;
    aspect-ratio: 4/3;
    object-fit: cover;
}

.message-common-sec__main-text {
    border-top: solid 2px var(--main-color);
    padding: 20px 0 0 15px;
    font-size: 15px;
    letter-spacing: .1em;
    line-height: 1.6;
    font-weight: 500;
}

.message-common-sec__text-area {
    width: 100%;
}

.message-common-sec__text-area .common-page__sub-ttl {
    margin-bottom: 5px;
    padding-left: 1em;
}

.message-common-sec+.message-common-sec {
    margin-top: 60px;
}

.message-common-sec:nth-child(2) .message-common__image img {
    aspect-ratio: 4/5;
}

.message-common-sec.first .message-common__image img {
    aspect-ratio: 1/1;
}

/* 選考プロセス */
.process-flow__item {
    display: grid;
    grid-template-columns: 10% 90%;
    background-color: #FFF;
    box-shadow: 0 2px 4px rgba(0, 0, 0, .16);
    clip-path: polygon(30px 0, calc(100% - 30px) 0, 100% 30px, 100% calc(100% - 30px), calc(100% - 30px) 100%, 0px 100%, 0 calc(100% - 30px), 0 30px);
}

.process-flow__item-num-box {
    background-color: var(--main-color);
    display: grid;
    place-content: center;
    text-align: center;
    color: #FFF;
}

.process-flow__num-en {
    font-size: 20px;
    line-height: 1;
    margin-bottom: 0.2em;
}

.process-flow__num {
    font-size: 40px;
    line-height: 1;
}

.process-flow__item-cont {
    padding: 40px 70px;
}

.process-flow__item-ttl-box {
    margin-bottom: 10px;
}

.process-flow__item-ttl {
    font-size: 26px;
    letter-spacing: 0.08em;
    font-weight: 700;
    color: var(--main-color);
}

.process-flow__list {
    background-color: #E5F6FF;
    border-radius: 20px;
    padding: 50px;
}

.process-flow__item-cont .common-more-btn {
    margin-top: 25px;
}

.process-flow__item-text {
    font-size: 16px;
    letter-spacing: .04em;
    font-weight: 500;
    line-height: 2;
}

.process-flow__arrow {
    content: "";
    display: block;
    width: 70px;
    aspect-ratio: 2/1;
    min-width: 0;
    clip-path: polygon(50% 100%, 0 0, 100% 0);
    background-color: var(--main-color);
    margin: 20px auto;
}

/* 教育体制 */
.training-system__list {
    border-radius: 20px;
    padding: 30px;
    background-color: #E5F6FF;
}

.training-system__item {
    display: flex;
    align-items: center;
    gap: 0 80px;
    padding: 40px 20px;
}

.training-system__item-icon {
    flex-shrink: 0;
    width: 80px;
}

.training-system__item-icon img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.training-system__list-inner {
    background-color: #FFF;
    border-radius: 15px;
    padding: 20px 60px;
}

.training-system__item+.training-system__item {
    border-top: dotted 2px var(--main-color);
}

.training-system__item-text-area {
    width: 100%;
}

.training-system__item-ttl {
    font-size: 24px;
    font-weight: 700;
    letter-spacing: .08em;
    color: var(--main-color);
}

.training-system-sec .common-page__sub-ttl-text {
    font-size: 32px;
}

.training-system__item-ttl-box {
    margin-bottom: 15px;
}

.training-system__item-text {
    line-height: 1.7;
    letter-spacing: .04em;
    font-size: 16px;
}

.training-system__item-icon.small img {
    width: 59px;
}

/* ギャラリー */
.gallery-common-sec__image-list ul {
    display: grid;
    gap: 20px 10px;
    grid-template-columns: repeat(3, 1fr);
}

.gallery-common-sec__image-list li {
    overflow: hidden;
    cursor: pointer;
}

.gallery-common-sec__image-list li img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: .3s;
}

.gallery-common-sec+.gallery-common-sec {
    margin-top: 200px;
}

.gallery-common-sec__image-list li:hover img {
    scale: 1.2;
}

.gallery-common-sec__image-list {
    position: relative;
}

.gallery-common-sec__image-list::before {
    content: "";
    width: 650px;
    aspect-ratio: 100/99;
    min-width: 0;
    background-image: url(image/gallery_common_bg.webp);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: 50%;
    left: -100px;
    z-index: -1;
    opacity: 0.7;
    translate: 0-50%;
}

.gallery-common-sec:nth-child(even) .gallery-common-sec__image-list::before {
    left: auto;
    right: -100px;
    scale: -1 1;
}

.gallery-modal {
    position: fixed;
    inset: 0;
    z-index: 9999;
}

.gallery-modal__bg {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, .7);
}

.gallery-modal__inner {
    position: relative;
    top: 50%;
    left: 50%;
    translate: -50% -50%;
    width: min(90vw, 1000px);
    height: min(90vh, 700px);
    display: grid;
    place-items: center;
    z-index: 1;
}

.gallery-modal__inner img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

.gallery-modal__close {
    position: absolute;
    top: -30px;
    right: -30px;
    font-size: 28px;
    background: none;
    border: 0;
    color: #fff;
    cursor: pointer;
}

.gallery-common-sec__image-list img {
    cursor: zoom-in;
}

/* 仲間を知る 詳細 */
.staff-about__image {
    position: absolute;
    bottom: 50px;
    right: 0;
    top: 140px;
    left: calc(50vw - 20px);
    border-radius: 20px 0 0 20px;
    overflow: hidden;
    z-index: -1;
}

.staff-about__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.staff__about {
    position: relative;
    margin-bottom: 20px;
    padding-block: 170px 100px;
    background-color: #E5F6FF;
    z-index: 0;
}

.staff-about__catch-text {
    font-size: 48px;
    font-weight: 900;
    letter-spacing: 0.06em;
    line-height: 1;
    color: #fff;
}

.staff-about__name {
    font-size: 43px;
    font-weight: 900;
    letter-spacing: 0.06em;
    line-height: 1.8;
    color: var(--main-color);
    padding-left: 1em;
    line-height: 1;
}

.staff-about__text-box {
    padding-right: 620px;
    padding-block: 80px;
}

.staff-content__item {
    display: flex;
    align-items: center;
    gap: 0 70px;
}

.staff-content__item-image {
    width: 550px;
    flex-shrink: 0;
}

.staff-content__item-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 20px;
}

.staff-content__item-title-num {
    font-size: 170%;
    color: var(--main-color);
    letter-spacing: 0;
    line-height: 1;
    translate: 0 0.1em;
    flex-shrink: 0;
}

.staff-content__item-title {
    font-size: 25px;
    letter-spacing: .1em;
    font-weight: 700;
    line-height: 1.5;
    margin-bottom: 0.8em;
    display: flex;
    align-items: baseline;
    gap: 0 0.3em;
}

.staff-content__item-text-box {
    width: 100%;
}

.staff-content__item+.staff-content__item {
    margin-top: 100px;
}

.staff-content__item:nth-child(even) {
    flex-direction: row-reverse;
}

.staff-content__item-text {
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 0.08em;
    line-height: 1.9;
}

.staff-about__catch {
    margin-bottom: 30px;
}

.staff-about__en-name {
    font-size: 26px;
    font-weight: 700;
    color: var(--main-color);
    line-height: 1;
}

.staff-about__catch-line {
    background-color: var(--main-color);
    padding: 0.2em 0.3em 0.3em;
    display: block;
    width: fit-content;
    white-space: nowrap;
}

.staff-about__catch-line+.staff-about__catch-line {
    margin-top: 0.2em;
}

.page-staff .common-page-wrap {
    padding-block: 0 140px;
    margin: 0;
}

.page-staff .breadcrumb {
    margin-bottom: 70px;
    margin-top: 0;
}

/* 仲間を知る 一覧 */
.interview-cont__list ul {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px 20px;
}

.interview-cont__list li a {
    display: block;
}

.interview-cont__img {
    position: relative;
    transition: .3s;
}

.interview-cont__img img {
    width: 100%;
    aspect-ratio: 35/50;
    object-fit: cover;
    min-width: 0;
}

.interview-cont__text_box {
    width: 220px;
    background-color: var(--main-color);
    color: #FFF;
    text-align: center;
    padding: 15px;
    margin-bottom: 10px;
    clip-path: polygon(13px 0, calc(100% - 13px) 0, 100% 13px, 100% calc(100% - 13px), calc(100% - 13px) 100%, 0px 100%, 0 calc(100% - 13px), 0 13px);
    margin: -30px auto 0;
}

.interview-cont__text_box .name {
    font-size: 22px;
    font-weight: 700;
    letter-spacing: .04em;
    line-height: 1;
}

.interview-cont__img::before {
    content: "";
    width: 100%;
    height: 100%;
    background-color: var(--main-color);
    top: 10px;
    left: 10px;
    position: absolute;
    z-index: -1;
    transition: .3s;
}

.interview-cont__list li a:hover .interview-cont__img {
    translate: 10px 10px;
}

.interview-cont__list li a:hover .interview-cont__img::before {
    top: 0;
    left: 0;
}

.interview__innovation-banner a {
    display: block;
    height: 100%;
}

.interview__innovation-banner .interview-cont__img img {
    width: 100%;
    aspect-ratio: 4/1.7;
    min-width: 0;
    object-fit: cover;
}

.interview-cont__list {
    margin-bottom: 100px;
}

.interview__innovation-banner a:hover .interview-cont__img {
    translate: 10px 10px;
}

.interview__innovation-banner a:hover .interview-cont__img::before {
    top: 0;
    left: 0;
}

.interview__innovation-banner .interview-cont__text_box {
    width: 420px;
    padding: 20px;
}

.interview-cont__text_box .name {
    font-size: 24px;
}

.interview-color-1 .interview-cont__img::before {
    background-color: #7C47F5;
}

.interview-color-1 .interview-cont__text_box {
    background-color: #7C47F5;
}

.interview-color-2 .interview-cont__img::before {
    background-color: var(--main-color);
}

.interview-color-2 .interview-cont__text_box {
    background-color: var(--main-color);
}

.interview-color-3 .interview-cont__img::before {
    background-color: #F58E03;
}

.interview-color-3 .interview-cont__text_box {
    background-color: #F58E03;
}

.interview-color-4 .interview-cont__img::before {
    background-color: #EA1F1F;
}

.interview-color-4 .interview-cont__text_box {
    background-color: #EA1F1F;
}

.interview-color-5 .interview-cont__img::before {
    background-color: #0DE6DE;
}

.interview-color-5 .interview-cont__text_box {
    background-color: #0DE6DE;
}

.interview-color-6 .interview-cont__img::before {
    background-color: #FFA3CE;
}

.interview-color-6 .interview-cont__text_box {
    background-color: #FFA3CE;
}

.interview-color-7 .interview-cont__img::before {
    background-color: #26CB01;
}

.interview-color-7 .interview-cont__text_box {
    background-color: #26CB01;
}

/* イノベーション委員会 */
.innovation-member__list ul {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 0 30px;
}

.innovation-member__icon {
    width: 70px;
    flex-shrink: 0;
}

.innovation-member__list li {
    display: flex;
    align-items: center;
    gap: 1em;
}

.innovation-member__name-box {
    width: 100%;
}

.innovation-member__name-text {
    font-size: 32px;
    font-weight: 700;
    color: var(--main-color);
}

.page-innovation .common-page__sub-ttl-text {
    font-size: 32px;
}

.innovation-member__list {
    margin-bottom: 80px;
    padding: 30px;
    background-color: #E5F6FF;
    border-radius: 20px;
}

.innovation-common-sec__inner {
    display: flex;
    gap: 0 60px;
}

.innovation-common-sec:nth-child(even) .innovation-common-sec__inner {
    flex-direction: row-reverse;
}

.innovation-common__talk-item {
    display: flex;
    align-items: flex-start;
    gap: 30px;
}

.innovation-common__talk-icon {
    width: 50px;
}

.innovation-common__talk-icon img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.innovation-common__talk-user {
    text-align: center;
}

.innovation-member__talk-name-text {
    font-size: 14px;
    font-weight: 500;
}

.innovation-common__talk-text {
    font-size: 16px;
    line-height: 2;
    letter-spacing: .04em;
}

.innovation-common__talk-item+.innovation-common__talk-item {
    margin-top: 40px;
}

.innovation-member__icon img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.page-innovation .common-page__sub-ttl {
    margin-bottom: 30px;
}

.innovation-common__image {
    width: 600px;
    flex-shrink: 0;
}

.innovation-common-sec+.innovation-common-sec {
    margin-top: 100px;
}

.innovation-common__image img {
    width: 100%;
    aspect-ratio: 15/18;
    object-fit: cover;
}

.innovation-common__ttl-box {
    background-color: var(--main-color);
    color: #FFF;
    text-align: center;
    padding: 15px;
    margin-bottom: 30px;
    clip-path: polygon(13px 0, calc(100% - 13px) 0, 100% 13px, 100% calc(100% - 13px), calc(100% - 13px) 100%, 0px 100%, 0 calc(100% - 13px), 0 13px);
}

.innovation-common__ttl {
    font-size: 16px;
    font-weight: 700;
    letter-spacing: .04em;
}

.innovation-common-sec__text-area {
    padding-top: 50px;
}

.interview-cont .common-more-btn {
    margin: 50px auto 0;
    width: 350px;
}

@media (max-width: 750px) {
    .wrap {
        max-width: 90%;
    }

    a[href $='.pdf']::before {
        width: 7vw;
        height: 8vw;
        margin-right: 2.5vw;
    }

    a[href $='.pdf']:hover {
        text-decoration: underline;
    }

    body {
        font-size: 3.6vw;
        min-width: auto;
        overflow: hidden;
    }

    /* SPヘッダー */
    #sp_header {
        position: fixed;
        left: 0;
        top: 0;
        width: 100%;
        background: #fff;
        box-shadow: 1px 1px #ccc;
        z-index: 999;
        height: 55px;
    }

    #sp_header .logo {
        position: absolute;
        left: 10px;
        top: 10px;
        line-height: 0;
    }

    #sp_header .logo img {
        height: 40px;
    }

    #sp_header .icon {
        color: #000;
        position: absolute;
    }

    #sp_header .mail {
        right: 70px;
        top: 13px;
        font-size: 25px;
    }

    #sp_header .tel {
        right: 110px;
        top: 15px;
        font-size: 20px;
    }

    /* SP固定ページ 共通設定 */
    .common_page_main {
        padding-block: 20vw;
    }

    .common_page_main .title_box .title {
        font-size: 5.6vw;
    }

    .common_page_wrap {
        padding: 20vw 0;
    }

    .reserve_text {
        font-size: 6vw;
    }

    /* パンくず */
    .breadcrumb {
        font-size: 2.56vw;
        margin-top: -4vw;
    }

    /* SP固定ページ お問い合わせ */
    .contact_form_disc {
        margin-block: 0 2em;
    }

    .contact_form_disc .text {
        font-size: 3.6vw;
        margin-block: 0 0.8em;
    }

    .contact_form_disc .caution {
        font-size: 3.1vw;
        letter-spacing: .06em;
    }

    .common_contact_form .form_box {
        margin-block: 0 10vw;
    }

    .common_contact_form .form_box dl {
        grid-template-columns: 1fr;
        gap: 0.6em;
    }

    .common_contact_form .form_box dl+dl {
        margin-block: 1.3em 0;
    }

    .common_contact_form .form_box dl dt {
        flex-direction: row-reverse;
        justify-content: space-between;
        font-size: 4.1vw;
        padding-inline: 0;
    }

    .common_contact_form .form_box dl dt .label {
        font-size: 3.1vw;
    }

    .common_contact_form .form_box dl dt::after {
        content: none;
    }

    .common_contact_form input[type="text"],
    .common_contact_form input[type="email"],
    .common_contact_form #zip {
        font-size: 3.6vw;
    }

    .common_contact_form select {
        width: 100%;
        font-size: 3.6vw;
    }

    .common_contact_form textarea {
        height: 33vw;
        font-size: 3.6vw;
    }

    .radio_btns,
    .checkboxes {
        gap: 0.5em 2.5em;
    }

    .page_contact #btn_wrap button {
        width: 83%;
        line-height: 15.5vw;
        font-size: 4.6vw;
    }

    .page_contact #btn_wrap button[name="submitBack"] {
        margin-top: 4vw;
    }

    .mwform-checkbox-field.horizontal-item {
        display: block;
    }

    .page_contact #btn_wrap {
        width: 100%;
        text-align: center;
    }

    .privacy_check_list .mwform-checkbox-field-text {
        font-size: 3.8vw;
        padding-left: 11vw;
    }

    .mw_wp_form .privacy_check_list .horizontal-item {
        margin-right: 4vw;
    }

    .privacy_check_list .hissu {
        padding: 0.3vw 4vw;
    }

    .privacy_check_list {
        margin-bottom: 6vw;
    }

    .privacy_term_detail {
        font-size: 3.4vw;
        margin: 5vw 0;
    }

    .privacy_term_outer {
        width: 96%;
        padding: 5vw 0;
    }

    .privacy_term_outer .privacy_term_inner .main_text {
        font-size: 3.4vw;
        line-height: 1.6;
        margin-bottom: 5vw;
    }

    .privacy_term_outer .privacy_term_inner dl dt {
        font-size: 3.5vw;
        margin-bottom: 1.5vw;
    }

    .privacy_term_outer .privacy_term_inner dl dd {
        font-size: 3.5vw;
        line-height: 1.6;
    }

    .privacy_term_outer .privacy_term_inner dl+dl {
        margin-top: 7vw;
    }

    .privacy_term_detail::after {
        width: 2.5vw;
        margin: 1.5vw auto 0;
    }

    /* サンクスページ */
    .page_contact .thanks_textArea .name {
        font-size: 4vw;
        margin-bottom: 3vw;
    }

    .page_contact .thanks_textArea .contact_text {
        font-size: 3.5vw;
        margin-bottom: 2em;
        width: 100%;
    }

    .page_contact .thanks_textArea .ichiran_link {
        width: 80%;
        line-height: 12vw;
        font-size: 4vw;
    }

    /* ステップバー デザイン */
    .page_contact .progressbar {
        gap: 4.5em;
        margin-block: 0 2.5em;
    }

    .page_contact .progressbar .item {
        font-size: 3.1vw;
    }

    .page_contact .progressbar .item+.item::before {
        width: 5.7vw;
        top: 63%;
        left: -3.3em;
    }

    .page_contact .progressbar .item .mark {
        width: 7.7vw;
        margin: 0 auto 0.4em;
    }

    /* SP固定ページ 404ページ */
    #page_404 .num {
        font-size: 20vw;
        line-height: 1.5;
    }

    #page_404 .text {
        font-size: 3.5vw;
    }

    /* SP投稿ページ アーカイブページ */
    .archive_page_list>article {
        padding-right: 20px;
    }

    .archive_page_list>article .date {
        width: 80px;
    }

    .archive_page_list>article .content_area {
        width: calc(100% - 80px);
    }

    .archive_page_list>article:after {
        width: 7px;
        height: 7px;
    }

    /* SP固定ページ サイトマップ */
    ul#sitemap_list li {
        margin: 0;
    }

    body #sitemap_list li a {
        font-size: 4vw;
        padding: 1vw 2vw;
        line-height: 9vw;
        margin-bottom: 1vw;
    }

    body #sitemap_list li.home-item {
        margin-bottom: 4vw;
    }

    body #sitemap_list {
        padding: 0;
    }

    /* ヘッダー */
    .site-header-sp__menu-content {
        display: block;
        position: fixed;
        top: 0;
        left: 100%;
        width: 100%;
        height: 100%;
        z-index: 999;
        background-color: var(--main-color);
        padding: calc(10.2vw + 80px) 0 0;
        transition: .2s;
        overflow: scroll;
    }

    .site-header-sp__menu-content.opend {
        left: 0;
    }

    .site-header-sp__menu-btn.opend span:nth-child(1) {
        top: 11px;
        transform: rotate(-45deg);
        width: 34px;
    }

    .site-header-sp__menu-btn.opend span:nth-child(2) {
        opacity: 0;
    }

    .site-header-sp__menu-btn.opend span:nth-child(3) {
        top: 11px;
        transform: rotate(45deg);
        width: 34px;
    }

    .site-header-sp {
        position: fixed;
        z-index: 1000;
        top: 0;
        left: 0;
        width: 100%;
        height: 80px;
        background: #fff;
        box-shadow: 0 2px 4px rgba(0, 0, 0, .16);
        border-radius: 0 0 30px 30px;
    }

    .site-header-sp__inner {
        display: flex;
        justify-content: space-between;
        height: 100%;
        align-items: center;
        padding: 0 5vw;
        gap: 0 10vw;
    }

    .site-header-sp__logo {
        width: 208px;
    }

    .site-header-sp__logo a {
        display: block;
    }

    .site-header-sp__logo a img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .site-header-sp__menu-btn {
        width: 29px;
        height: 25px;
        position: relative;
    }

    .site-header-sp__menu-btn span {
        width: 24px;
        height: 3px;
        position: absolute;
        right: 0;
        margin: auto;
        transition: .2s;
        clip-path: polygon(5.4% 0%, 94.6% 0%, 100% 22.4%, 100% 77.6%, 94.6% 100%, 0 100%, 0 100%, 0% 22.4%);
    }

    .site-header-sp__menu-btn span:first-child {
        width: 28px;
        background-color: var(--main-color);
        top: 0;
    }

    .site-header-sp__menu-btn span:nth-child(2) {
        width: 18px;
        background-color: var(--sub-color);
        top: 11px;
    }

    .site-header-sp__menu-btn span:nth-child(3) {
        width: 29px;
        background-color: #EA1F1F;
        top: 22px;
    }

    .site-header-sp__menu-inner .site-footer__btn a {
        background-color: var(--sub-color);
        color: var(--main-color);
    }

    .site-header-sp__menu-inner {
        margin: 0 auto;
        height: 100%;
        overflow: hidden;
        padding-bottom: 9vw;
    }

    .site-header-sp__menu-item:nth-child(even) {
        margin-left: auto;
    }

    .site-header-sp__menu-item {
        margin-top: 11.8vw;
        width: fit-content;
        margin-left: 26px;
        position: relative;
    }

    .site-header-sp__menu-parent a {
        font-size: 5.1vw;
        color: #FFF;
        letter-spacing: .07em;
        font-weight: 700;
        line-height: 1.15;
    }

    .site-header-sp__menu-child li a {
        color: #FFF;
        letter-spacing: .07em;
        font-weight: 500;
        padding-block: 3.8vw;
        display: block;
        padding-inline: 2.5vw 7.69vw;
        min-width: 44.8vw;
    }

    .site-header-sp__menu-parent {
        padding-bottom: 3.8vw;
        border-bottom: solid 1.5px #FFF;
    }

    .site-header-sp__menu-child li {
        border-bottom: solid 1.5px #FFF;
    }

    .site-header-sp__menu-content .top-fv__band.ft {
        position: relative;
        bottom: 0;
    }

    .site-header-sp__menu-list {
        margin: 0 auto 16.4vw;
        max-width: 90%;
        width: 90%;
    }

    .site-header-sp__menu-inner .site-footer__btn.top {
        margin-bottom: 14.8vw;
    }

    .site-header-sp__menu-inner .site-footer__btn.bottom {
        margin-bottom: 30vw;
    }

    .site-header-sp__menu-item::before {
        content: "";
        position: absolute;
    }

    .site-header-sp__menu-item:first-child::before {
        width: 32.8vw;
        aspect-ratio: 64/99;
        min-width: 0;
        background-image: url(image/hb_content_treat1.svg);
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
        top: 10%;
        right: -42vw;
    }

    .site-header-sp__menu-item:nth-child(2)::before {
        width: 31.2vw;
        aspect-ratio: 122/147;
        min-width: 0;
        background-image: url(image/hb_content_treat2.svg);
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
        top: 5%;
        left: -40vw;
        animation: fuwafuwa 3s ease-in-out infinite alternate;
        transform-origin: center;
    }

    .site-header-sp__menu-item:nth-child(3)::before {
        width: 15.3vw;
        aspect-ratio: 1/1;
        min-width: 0;
        background-image: url(image/hb_content_treat3.svg);
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
        top: 0;
        right: -38.5vw;
        animation: fuwafuwa 3s ease-in-out infinite alternate;
        transform-origin: center;

    }

    .site-header-sp__menu-item:nth-child(4)::before {
        width: 30.25vw;
        aspect-ratio: 118/133;
        min-width: 0;
        background-image: url(image/hb_content_treat4.svg);
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
        top: 16%;
        left: -43vw;
        animation: fuwafuwa 3s ease-in-out infinite alternate;
        transform-origin: center;
    }

    @keyframes fuwafuwa {
        0% {
            transform: translate(0, 0) rotate(-7deg);
        }

        50% {
            transform: translate(0, -7px) rotate(0deg);
        }

        100% {
            transform: translate(0, 0) rotate(7deg);
        }
    }

    .site-header-sp__menu-item:nth-child(5)::before {
        width: 43.84vw;
        aspect-ratio: 57/61;
        min-width: 0;
        background-image: url(image/hb_content_treat5.svg);
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
        bottom: -2%;
        right: -53vw;
    }

    .site-header-sp__menu-item:nth-child(5)::after {
        content: "";
        position: absolute;
        width: 24.87vw;
        aspect-ratio: 1/1;
        min-width: 0;
        background-image: url(image/hb_content_treat6.svg);
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
        bottom: -119%;
        left: -25vw;
    }

    .site-header-sp__right {
        flex-shrink: 0;
    }

    /* TOP MV */
    .top-fv__bg img.sp {
        aspect-ratio: 390/857;
    }

    .top-fv__band-image.sp {
        aspect-ratio: 462/158;
    }

    .top-fv__band {
        rotate: -8deg;
        top: calc(385 / 857 * 100%);
        width: 118.46%;
    }

    .top-fv__ttl {
        rotate: 5deg;
        width: 51.5%;
        right: calc(54 / 462 * 100%);
        bottom: calc(-50 / 158 * 100%);
    }

    .top-fv__ttl-text img.sp {
        border-radius: 0;
    }

    .top-fv__copy {
        top: auto;
        bottom: calc(120 / 857 * 100%);
        right: auto;
        left: calc(42/390*100%);
        rotate: -8deg;
    }

    .top-fv__copy-text {
        font-size: 3.8vw;
    }

    .top-fv__copy-text+.top-fv__copy-text {
        margin-top: 1.8em;
    }

    .top-fv__marquee-text {
        font-size: 12.82vw;
        position: relative;
        line-height: 1.2;
        margin-right: 14.8vw;
    }

    .top-fv__marquee-text::after {
        content: "";
        position: absolute;
        top: 10%;
        bottom: 2%;
        background-color: var(--main-color);
        width: 3px;
        border-radius: 100vmax;
        right: -7.6vw;
    }

    .top-fv__marquee {
        top: calc(12/158*100%);
    }

    /* TOP Vision */
    .common-sec-vision {
        padding-block: 18.8vw 17.5vw;
    }

    .common-sec-vision__inner {
        flex-direction: column;
        gap: 12.3vw 0;
    }

    .common-sec-vision__logo {
        width: 50.36vw;
    }

    .common-sec-vision__catch {
        text-align: center;
    }

    .common-sec-vision__catch-en {
        font-size: 4.6vw;
        margin-bottom: 1.5vw;
    }

    .common-sec-vision__catch-text {
        font-size: 6.4vw;
        letter-spacing: .04em;
        line-height: 1.52;
    }

    /* TOP 会社を知る */
    .wrap.mid {
        max-width: 95%;
    }

    .top-company__inner {
        padding: 9.5vw 3.8vw 10.7vw;
        z-index: 0;
    }

    .common-more-btn {
        width: 61.5vw;
    }

    .common-more-btn a .common-more-btn__text {
        font-size: 4.1vw;
    }

    .common-more-btn a {
        min-block-size: 14.87vw;
    }

    .common-more-btn__icon svg {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .common-more-btn__icon {
        width: 4.1vw;
    }

    .common-sec-ttl__text {
        font-size: 6.66vw;
    }

    .common-sec-ttl__border {
        width: 38.76vw;
        bottom: -4.6vw;
        left: -4.6vw;
    }

    .common-sec-ttl__border svg {
        width: 100%;
        height: 100%;
        object-fit: contain;
    }

    .common-sec-ttl__treat svg {
        width: 100%;
        height: 100%;
        object-fit: contain;
    }

    .common-sec-ttl__treat {
        width: 4.1vw;
        top: -6.5vw;
        right: -4.3vw;
    }

    .top-company__inbox.number::before {
        width: 13.27vw;
        rotate: -10deg;
        top: -19.6vw;
        left: 2vw;
    }

    .top-company__inbox.number {
        padding: 7.15vw 2.5vw 8.4vw;
        flex-direction: column;
        gap: 0;
        margin: 10.4vw auto 5.1vw;
        width: 87.17vw;
    }

    .top-company__number-box-image {
        width: 100%;
        margin-bottom: 7.17vw;
    }

    .common-inbox__ttl-text {
        font-size: 4.6vw;
    }

    .common-inbox__ttl-text .inbox__text-color {
        font-size: 5.6vw;
    }

    .top-company__inbox-icon {
        width: 6.79vw;
    }

    .top-company__inbox-text-box {
        gap: 0 1.28vw;
        margin-bottom: 5.35vw;
    }

    .top-company__inbox-outer {
        grid-template-columns: 100%;
        gap: 0;
        margin-bottom: 5.1vw;
    }

    .top-company__inbox.culture {
        margin-bottom: 5.1vw;
        padding: 6.4vw 9.87vw 7.69vw 10.76vw;
    }

    .top-company__inbox.culture .common-inbox__ttl {
        text-align: center;
    }

    .inbox-culture__list {
        margin-top: 6.74vw;
    }

    .inbox-culture__item-text {
        font-size: 4.1vw;
    }

    .inbox-culture__item-icon {
        width: 5vw;
    }

    .inbox-culture__list li {
        gap: 0 4.3vw;
    }

    .inbox-culture__list li+li {
        margin-top: 3.8vw;
    }

    .top-company__inbox.culture .common-more-btn {
        margin: 6.3vw auto 0;
    }

    .top-company__inbox.vision {
        padding: 6.4vw 5.1vw 9.7vw;
    }

    .inbox-vision__box {
        flex-direction: column;
        gap: 0;
    }

    .inbox-vision__box.philosophy {
        gap: 0;
    }

    .inbox-vision__box .common-inbox__ttl {
        text-align: center;
        margin-bottom: 5.1vw;
    }

    .inbox-vision__theme {
        text-align: center;
        font-size: 4.6vw;
        margin-bottom: 4.35vw;
    }

    .inbox-vision__box.philosophy .inbox-vision__theme {
        margin-left: 0;
    }

    .inbox-vision__text-box.other .inbox-vision__theme {
        margin-bottom: 1.35vw;
    }

    .top-company__vision-border-doted {
        margin: 3.6vw auto 6.4vw;
        width: 75.5vw;
    }

    .inbox-vision__text-box.other .inbox-vision__text {
        font-size: 3.6vw;
        text-align: center;
    }

    .top-company__inbox.vision .common-more-btn {
        margin: 7.69vw auto 0;
    }

    .top-company__inbox.message {
        flex-direction: column;
        gap: 0;
        margin-bottom: 10.25vw;
        padding-bottom: 6.66vw;
        position: relative;
    }

    .inbox-message__image {
        width: 100%;
    }

    .inbox-message__image img {
        aspect-ratio: 340/190;
    }

    .inbox-message__text-box {
        padding: 0 2.5vw 0 4.6vw;
    }

    .message-text-box__inner {
        height: 46.15vw;
        padding-right: 3.2vw;
    }

    .top-company__inbox.message .common-more-btn {
        position: unset;
        margin: 7.60vw auto 0;
    }

    .message-text-box__text {
        font-size: 3.6vw;
        letter-spacing: .03em;
    }

    .inbox-message__text-box .common-inbox__ttl {
        width: 51.79vw;
        margin: -10.3vw auto 5.89vw;
        background-color: #FFF;
        border-radius: 10px;
        text-align: center;
        min-block-size: 13.58vw;
        display: grid;
        place-content: center;
    }

    .common-more-btn.long {
        width: 74.35vw;
    }

    .common-more-btn.long a {
        clip-path: polygon(4.48% 0%, 95.52% 0%, 100% 22.4%, 100% 77.6%, 95.52% 100%, 0 100%, 0 100%, 0% 22.4%);
    }

    .top-company__inner::after {
        width: 24.87vw;
        top: 12%;
        right: -17vw;
    }

    .top-company__inbox.number::after {
        width: 12.78vw;
        rotate: 0deg;
        bottom: -7%;
        left: 82%;
    }

    .top-company__inner::before {
        width: 35.38vw;
        top: 30%;
        left: -27.6vw;
    }

    .top-company__inbox-outer::after {
        width: 25.12vw;
        right: -15vw;
        top: 38.7%;
    }

    .top-company__inbox-outer::before {
        width: 12.78vw;
        bottom: -3.4%;
        left: -10.7%;
        z-index: -1;
    }

    .top-company__inner .common-more-btn.long::after {
        width: 11.53vw;
        right: -9%;
        bottom: -127%;
    }

    /* TOP 環境を知る */
    .top-environment {
        padding-block: 24.25vw 17.94vw;
    }

    .top-environment__inner {
        flex-direction: column;
        padding-left: 0;
        gap: 0;
    }

    .top-environment__image-area {
        width: 100%;
        margin-bottom: 12.2vw;
    }

    .top-environment__inner::before {
        content: none;
    }

    .top-environment__text-area .common-sec-ttl {
        margin: 0 auto 9.17vw;
    }

    .top-environment__main-text {
        margin-bottom: 9.12vw;
    }

    .top-environment__image-area .common-more-btn.system {
        width: 36.92vw;
        top: -7.3%;
    }

    .top-environment__image-area .common-more-btn.gallery {
        width: 36.92vw;
    }

    .top-environment__image-area .common-more-btn.benefits {
        width: 34.3vw;
        bottom: -7%;
    }

    .top-environment__image-area .common-more-btn a {
        background-color: transparent;
        min-block-size: auto;
        gap: 0;
        clip-path: none;
    }

    .top-environment__image-area::before,
    .top-environment__image-area::after {
        content: none;
    }

    .top-environment__image-area .common-more-btn a {
        border: none;
    }

    .top-environment__image-area .common-more-btn a::before,
    .top-environment__image-area .common-more-btn a::after {
        content: none;
    }

    .top-environment__image-area .common-more-btn a:hover {
        background-color: transparent;
    }

    /* TOP 仲間を知る */
    .top-company__inbox.message::after {
        content: "";
        width: 59vw;
        height: 7.7vw;
        position: absolute;
        background-color: var(--sub-color);
        bottom: -3%;
        right: -6%;
        rotate: -8deg;
    }

    .top-fellow {
        padding-block: 13.89vw 12.56vw;
    }

    .top-fellow::before {
        width: 45.8vw;
        bottom: 16%;
        left: -29%;
    }

    .top-fellow::after {
        width: 40vw;
        right: 0;
        top: 16%;
        translate: 50% 0;
    }

    .top-fellow__inner .common-sec-ttl {
        margin-bottom: 15vw;
    }

    .top-fellow__group {
        display: grid !important;
        grid-template-columns: repeat(2, 1fr);
        gap: 4.7vw 0;
    }

    .top-fellow__slide {
        width: 42vw;
    }

    .top-fellow__inner .common-more-btn {
        width: 76.9vw;
        margin: 10vw auto 0;
    }

    .top-fellow__slide-name {
        font-size: 3.6vw;
        letter-spacing: .04em;
    }

    .top-fellow__slide1 .top-fellow__slide-user {
        width: 38vw;
        clip-path: polygon(23% 0%, 77% 0%, 100% 23%, 100% 77%, 77% 100%, 23% 100%, 0% 100%, 0% 23%);
        width: 205px;
        top: 24.5%;
        left: 5.6%;
        aspect-ratio: 205 / 212;
    }

    .top-fellow__slide2 .top-fellow__slide-user {
        width: 43.7vw;
        aspect-ratio: 217 / 204;
        border-radius: 10px;
        rotate: 5deg;
    }

    .top-fellow__slide3 .top-fellow__slide-user {
        width: 49vw;
    }

    .top-fellow__slide4 .top-fellow__slide-user {
        width: 43.7vw;
        aspect-ratio: 1 / 1;
        border-radius: 50%;
    }

    .top-fellow__slide5 .top-fellow__slide-user {
        width: 38vw;
    }

    .top-fellow__slide6 .top-fellow__slide-user {
        width: 43.7vw;
    }

    .top-fellow__slide7 .top-fellow__slide-user {
        width: 41vw;
    }

    .top-fellow__slide1 .top-fellow__slide-user {
        top: 30.8%;
        left: 4%;
    }

    .top-fellow__slide1 .top-fellow__slide-name {
        bottom: 9%;
    }

    .top-fellow__slide2 .top-fellow__slide-user {
        top: 12%;
        left: 6%;
        rotate: 5deg;
        aspect-ratio: 217 / 204;
        border-radius: 10px;
    }

    .top-fellow__slide2 .top-fellow__slide-name {
        bottom: 17%;
        left: 48%;
    }

    .top-fellow__slide3 .top-fellow__slide-user {
        top: 13%;
        left: 1%;
        clip-path: polygon(23% 0%, 77% 0%, 100% 23%, 100% 77%, 77% 100%, 23% 100%, 0% 100%, 0% 23%);
        border-radius: 0%;
    }

    .top-fellow__slide3 .top-fellow__slide-name {
        bottom: 9%;
        left: 51%;
    }

    .top-fellow__slide4 .top-fellow__slide-user {
        top: 0;
        left: 6%;
    }

    .top-fellow__slide4 .top-fellow__slide-name {
        bottom: 12%;
        left: 50%;
    }

    .top-fellow__slide5 .top-fellow__slide-user {
        top: 15.8%;
        left: 4%;
    }

    .top-fellow__slide5 .top-fellow__slide-name {
        bottom: 18.5%;
        left: 50%;
    }

    .top-fellow__slide6 .top-fellow__slide-user {
        top: 24.5%;
        left: 5.6%;
    }

    .top-fellow__slide6 .top-fellow__slide-name {
        bottom: 8.5%;
    }

    .top-fellow__slide7 .top-fellow__slide-user {
        top: 0.3%;
        left: 1%;
    }

    .top-fellow__slide7 .top-fellow__slide-name {
        bottom: 13%;
        left: 51%;
    }

    .top-fellow__slide1 .top-fellow__slide-user {
        top: 0;
        clip-path: polygon(23% 0%, 77% 0%, 100% 23%, 100% 77%, 77% 100%, 23% 100%, 0% 100%, 0% 23%);
        rotate: 0deg;
        left: 0;
    }

    .top-fellow__slide2 .top-fellow__slide-user {
        width: 38vw;
        top: 4%;
        rotate: 5deg;
        aspect-ratio: 217 / 204;
        border-radius: 10px;
        clip-path: none;
    }

    .top-fellow__slide3 .top-fellow__slide-user {
        width: 42vw;
        top: 2px;
    }

    .top-fellow__slide4 .top-fellow__slide-user {
        width: 49.7vw;
        left: 0;
    }

    .top-fellow__slide5 .top-fellow__slide-user {
        width: 38vw;
        top: 3%;
    }

    .top-fellow__slide6 .top-fellow__slide-user {
        width: 41.5vw;
        left: 0;
        top: 1%;
    }

    .post-slider-sp-inner .slick-slide {
        width: 100% !important;
    }

    .post-slider-sp .slide-group {
        width: 100%;
    }

    .post-slider-sp-inner .slick-track {
        display: flex;
    }

    .post-slider-sp-inner .slick-slide:focus {
        outline: none;
    }

    /* TOP 仕事を知る */
    .top-work {
        padding-block: 18.5vw 24.82vw;
    }

    .top-work__inner {
        flex-direction: column;
        justify-content: unset;
    }

    .top-work__item {
        width: 100%;
    }

    .top-work__text-area .common-sec-ttl {
        margin: 0 auto 12.25vw;
    }

    .top-work__item-ttl {
        font-size: 5.1vw;
        margin-bottom: 2.6vw;
    }

    .top-work__item-text-area {
        padding: 5.12vw;
    }

    .top-work__item-icon {
        width: 7.69vw;
    }

    li.top-work__item+.top-work__item {
        margin-top: 2.5vw;
    }

    .top-work__list-area {
        margin-bottom: 10.33vw;
    }

    .top-work__bg-band svg {
        width: 100%;
        height: 100%;
        object-fit: contain;
    }

    .top-work__bg-band {
        width: 660.2vw;
        bottom: 3.7%;
        left: 108.4%;
    }

    .top-work__inner::after {
        width: 24.8vw;
        bottom: 34.4%;
        right: -4.8%;
    }

    .top-work .wrap {
        max-width: 95%;
    }

    .top-work__item-icon svg {
        width: 4.6vw;
        object-fit: cover;
    }

    /* TOP 募集について */
    .top-recruit {
        width: 90%;
        padding: 14.15vw 6.41vw 11.35vw;
    }

    .top-recruit .wrap {
        max-width: 100%;
    }

    .top-recruit__inner {
        flex-direction: column;
    }

    .top-recruit__btn-area {
        flex-direction: column;
        gap: 3.8vw;
    }

    .top-recruit__btn a {
        width: 76.92vw;
        min-block-size: 20.5vw;
        gap: 0 4.1vw;
        padding: 3.6vw 6vw 3.6vw 8.4vw;
    }

    .top-recruit-btn__text {
        font-size: 4.6vw;
    }

    .top-recruit__inner .common-sec-ttl {
        margin: 0 auto 12.4vw;
    }

    .common-sec-ttl__border.long {
        width: 46.2vw;
    }

    .top-recruit-btn__icon {
        width: 4.1vw;
    }

    .top-recruit-btn__icon svg {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    /* TOP よくある質問 */
    .top-faq {
        padding-block: 10.48vw 17.94vw;
    }

    .top-faq__inner {
        flex-direction: column;
        justify-content: unset;
    }

    .top-faq__item-area {
        width: 100%;
        margin-bottom: 7.69vw;
    }

    .top-faq-ttl {
        margin-bottom: 6.38vw;
    }

    p.top-faq-ttl__en-text {
        font-size: 4.6vw;
        margin-bottom: 2vw;
    }

    .top-faq-ttl__text {
        font-size: 5.1vw;
    }

    .top-faq__item {
        padding: 3.9vw 3.2vw;
    }

    .top-faq__item+.top-faq__item {
        margin-top: 3.33vw;
    }

    .top-faq__item-question,
    .top-faq__item-answer {
        padding-inline: 2vw;
        gap: 0 2.5vw;
    }

    .top-faq__item-en {
        font-size: 5.64vw;
    }

    .top-faq__item-question .top-faq__item-text {
        font-size: 4.1vw;
    }

    .top-faq__item-answer {
        margin-top: 3.4vw;
        padding-top: 3vw;
    }

    /* フッター */
    .site-footer__menu {
        flex-direction: column;
        width: fit-content;
        margin: 0 auto;
    }

    .site-footer {
        padding-block: 38.9vw 7vw;
    }

    .site-footer__inner {
        padding-left: 0;
    }

    .site-footer__main {
        width: 100%;
        margin-bottom: 74.9vw;
    }

    .site-footer__menu-label {
        margin-bottom: 6.1vw;
    }

    .site-footer__menu-label a {
        display: flex;
        align-items: center;
        font-size: 4.6vw;
        gap: 0 4.6vw;
    }

    .site-footer__btn.sp {
        margin-bottom: 9.4vw;
        position: relative;
    }

    .site-footer__btn a {
        margin: 0 auto;
        width: 76.9vw;
        min-block-size: 17.94vw;
        font-size: 4.6vw;
        position: relative;
        z-index: 1;
    }

    .site-footer__bottom-menu {
        margin-bottom: 2vw;
        rotate: -8deg;
    }

    .top-fv__band.ft {
        bottom: 30vw;
    }

    .site-footer__bottom-copyright {
        rotate: -8deg;
    }

    .site-footer__bottom-menu ul {
        justify-content: flex-end;
        gap: 0 8.5vw;
    }

    .top-fv__band.ft .top-fv__ttl {
        right: calc(46.6 / 462 * 100%);
        bottom: calc(138 / 158 * 100%);
    }

    .site-footer .top-fv__marquee {
        top: calc(21 / 158 * 100%);
    }

    .site-footer__menu-label a::before {
        content: "";
        width: 3.92vw;
        aspect-ratio: 15/16;
        min-width: 0;
        background-image: url(image/ft_text_treat.svg);
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
    }

    .site-footer__treat1 {
        top: -5.5%;
        left: auto;
        right: 0%;
        z-index: 0;
    }

    .site-footer__treat2 {
        top: 32%;
        right: -10%;
    }

    .site-footer__treat1.color2 {
        top: -1460%;
        left: 2.5%;
    }

    .site-footer__treat1.color1 {
        top: -560%;
        left: -2.5%;
    }

    .site-footer__treat1.color3 {
        right: auto;
        left: 11.5%;
    }

    .site-footer__bottom-copyright small {
        font-size: 3vw;
    }

    .site-footer__bottom-menu li a {
        font-size: 3vw;
    }

    /* ホバー */
    .site-header__entry a:hover {
        background-color: var(--sub-color);
        color: var(--main-color);
    }

    .site-header__menu-item a:hover {
        color: #222;
    }

    .common-more-btn a:hover {
        background-color: var(--main-color);
    }

    .common-more-btn a:hover .common-more-btn__text {
        color: var(--sub-color);
    }

    .common-more-btn a:hover .common-more-btn__icon path {
        fill: var(--sub-color);
    }

    .top-work__item a:hover .top-work__item-icon {
        background-color: var(--main-color);
    }

    .top-work__item a:hover .top-work__item-icon path {
        fill: var(--sub-color);
    }

    .top-recruit__btn a:hover .top-recruit-btn__icon path {
        fill: var(--main-color);
    }

    .top-recruit__btn a:hover {
        background-color: var(--sub-color);
    }

    .top-recruit__btn a:hover .top-recruit-btn__text {
        color: var(--main-color);
    }

    .site-footer__menu-subitem a:hover {
        color: var(--sub-color);
    }

    .site-footer__menu-label a:hover {
        color: #FFF;
    }

    .site-footer__btn a:hover {
        background-color: var(--main-color);
        color: #FFF;
    }

    .site-footer__bottom-menu li a:hover {
        color: #FFF;
    }

    .common-link__list li a:hover {
        rotate: 0deg;
    }

    .common-link__list li a:hover::after {
        rotate: -10deg;
    }

    /* 理念・ビジョン */
    .page-common-fv__title {
        min-block-size: 14.1vw;
        padding: 0 8.2vw 0 5.1vw;
        clip-path: polygon(5.9% 0%, 94.1% 0%, 100% 23.6%, 100% 76.4%, 95.9% 100%, 0 100%, 0 100%, 0% 23.6%);
        min-width: 56.4vw;
    }

    .page-common-fv__title-text {
        font-size: 5.89vw;
    }

    .page-common-fv {
        padding-block: calc(177.5 / 364 * 100%) calc(111 / 364 * 100%);
    }

    .common-page-wrap {
        margin-top: 0;
        padding-block: 25vw 17vw;
    }

    .vision-philosophy-sec {
        margin-bottom: 17vw;
    }

    .vision-philosophy-sec .vision-philosophy-inner {
        margin-inline: 0;
        gap: 0 4.1vw;
        align-items: flex-start;
        margin-bottom: 5vw;
    }

    .vision-philosophy-sec__img-area {
        width: 42vw;
        margin-left: -12.8vw;
    }

    .vision-philosophy-text__ttl-vertical {
        font-size: 6.4vw;
        translate: 0 -0.3em;
    }

    .vision-philosophy-text__ttl-text {
        font-size: 7.6vw;
        margin-left: -0.1em;
    }

    .vision-philosophy-text__ttl-sub {
        font-size: 3.07vw;
        top: -1em;
    }

    .vision-philosophy-text__sub-text {
        font-size: 3.58vw;
    }

    .vision-philosophy-text__ttl-box {
        gap: 0;
        margin-bottom: 2vw;
        white-space: nowrap;
    }

    .vision-philosophy-text__ttl-text .key.left {
        margin-right: 0.2em;
        translate: 0 -0.6em;
    }

    .vision-philosophy-text__ttl-text .key.right {
        margin-left: 0.2em;
    }

    .common-page-treat__group {
        width: 23.44vw;
        aspect-ratio: 91/59;
    }

    .common-page-treat {
        width: 9.08vw;
    }

    .vision-philosophy-sec .common-page-treat__group {
        top: -24vw;
        right: -8.97vw;
    }

    .vision-philosophy-text__sub-box {
        margin-bottom: 5vw;
    }

    .vision-philosophy-text__sub-text .indent {
        margin-left: 0;
        display: inline;
    }

    .vision-philosophy-text__main-text {
        line-height: 1.8;
        font-size: 3.3vw;
    }

    .vision-philosophy-text__main-box {
        padding-inline: 2vw;
    }

    .vision-vision-sec {
        margin-bottom: 17vw;
    }

    .vision-vision-sec .inner {
        flex-direction: column;
        gap: 0;
    }

    .vision-vision-sec__en-text {
        font-size: 17.9vw;
    }

    .vision-vision-sec__en-box::before {
        width: 13.58vw;
        left: -24vw;
    }

    .vision-vision-sec__en-box {
        translate: 0;
    }

    .vision-vision-text__ttl {
        font-size: 6.4vw;
        text-align: center;
    }

    .vision-vision-text__theme {
        font-size: 5.89vw;
        margin-bottom: 0.2em;
    }

    .vision-vision-text__theme-box {
        text-align: center;
        margin-bottom: 6vw;
    }

    .vision-vision-text__theme-sub {
        font-size: 3.8vw;
    }

    .vision-vision-sec__text-area {
        margin-top: -2vw;
    }

    .vision-vision-text__ttl-box {
        margin-bottom: 2.5vw;
    }

    .vision-vision-text__main-text {
        font-size: 3.6vw;
        line-height: 1.7;
    }

    .vision-origin-sec .inner {
        padding: 0 5vw 8vw;
    }

    .vision-origin-sec__img-area {
        padding-block: 2vw 4vw;
        margin: 0 auto 5vw;
        width: 60vw;
    }

    .vision-origin-sec__img-area img {
        width: 40vw;
    }

    .vision-origin-sec__ttl-box {
        margin-bottom: 1vw;
    }

    .vision-origin-ttl__text {
        font-size: 6.4vw;
    }

    .vision-origin-sec__text-area {
        flex-direction: column;
        gap: 5vw 0;
    }

    .vision-origin-text__item {
        width: 100%;
    }

    .vision-origin-text__item:nth-child(2) {
        width: 100%;
    }

    .vision-origin-text__item-en {
        font-size: 8vw;
    }

    .vision-origin-text__item-main {
        border-top: solid 2px #9ED8F6;
        padding-top: 2.5vw;
    }

    .vision-origin-text__item-text {
        font-size: 3.6vw;
    }

    .vision-guide-sec {
        padding-block: 17vw 0;
    }

    .vision-guide-ttl__text {
        font-size: 6.4vw;
    }

    .vision-guide-list__group {
        width: 100%;
    }

    .vision-guide-list {
        flex-direction: column;
        gap: 3vw 0;
    }

    .vision-guide-list__group+.vision-guide-list__group {
        margin-left: 0;
    }

    .vision-guide-list__item {
        width: 100%;
        padding: 2.5vw 5vw;
        min-block-size: 16vw;
        clip-path: polygon(3.5% 0%, 96.5% 0%, 100% 19%, 100% 81%, 96.5% 100%, 0 100%, 0 100%, 0% 19%);
        gap: 1.5vw 0;
    }

    .vision-guide-list__item+.vision-guide-list__item {
        margin-top: 3vw;
    }

    .vision-guide-list__item:nth-child(2) {
        margin-left: 0;
    }

    .vision-guide-list__item:nth-child(3) {
        margin-left: 0;
    }

    .vision-guide-list__item-text {
        font-size: 4vw;
    }

    .vision-guide-list__item-num {
        font-size: 5vw;
    }

    .vision-guide-list__item-ttl {
        gap: 0 1.5vw;
        align-items: flex-start;
    }

    .vision-guide-list__main {
        font-size: 3.2vw;
        margin-left: 2.5em;
        line-height: 1.5;
    }


    .vision-guide-list::before {
        width: 70vw;
        top: -20vw;
        left: -42vw;
    }

    .vision-origin-sec__text-area .common-page-treat__group {
        bottom: -17vw;
        right: -11.5vw;
    }

    /* 会社を知る */
    .common-link__list {
        padding-block: 0 10vw;
    }

    .common-link__list ul {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 8vw 5vw;
    }

    .common-link__list li {
        width: 100%;
    }

    .common-clip-box {
        min-width: 35vw;
        min-block-size: 10vw;
        padding: 2vw 1vw;
    }

    .common-clip-box__text {
        font-size: 3vw;
        letter-spacing: .03em;
    }

    .common-link__list li a .common-clip-box {
        bottom: 2.5vw;
    }

    .common-link__list li a::after {
        rotate: -10deg;
    }

    /* よくあるご質問 */
    .page-faq-sec .wrap {
        width: 100%;
    }

    .common-page__sub-ttl {
        margin-bottom: 2.5vw;
    }

    .common-page__sub-ttl-text {
        font-size: 5.1vw;
    }

    .common-page__sub-ttl .common-sec-ttl__treat {
        width: 4.1vw;
        top: -4vw;
        right: -4vw;
    }

    .page-faq__item+.page-faq__item {
        margin-top: 15vw;
    }

    .page-faq .top-faq__item {
        padding: 3.9vw 3.2vw;
    }

    .page-faq .top-faq__item-question,
    .page-faq .top-faq__item-answer {
        padding-inline: 2vw;
    }

    .page-faq .top-faq__item-en {
        font-size: 5.64vw;
    }

    .page-faq .top-faq__item-question .top-faq__item-text {
        font-size: 4.1vw;
    }

    .page-faq .common-page__sub-ttl-text {
        font-size: 5.1vw;
    }

    .page-faq .top-faq__item-text {
        font-size: 3.6vw;
    }

    .page-faq .top-faq__item+.top-faq__item {
        margin-top: 3.33vw;
    }

    .page-faq .top-faq__item-answer {
        margin-top: 3.4vw;
        padding-top: 3vw;
    }

    /* 募集要項 */
    .page-positions__item-table dl {
        grid-template-columns: 1fr;
    }

    .page-positions__item-table dt {
        padding: 3vw;
        font-size: 4.1vw;
    }

    .page-positions__table-text {
        font-size: 3.6vw;
    }

    .page-positions__item-table dd {
        padding: 3vw;
    }

    .page-positions__item+.page-positions__item {
        margin-top: 15vw;
    }

    .page-positions-tag-list ul {
        grid-template-columns: repeat(2, 1fr);
        gap: 2vw;
    }

    .page-positions-tag-list li a {
        font-size: 3.6vw;
    }

    .page-positions-tag-list {
        margin-bottom: 17vw;
    }

    .page-positions-tag-list li a:hover {
        background-color: #FFF;
        color: var(--main-color);
    }

    /* 賃貸事業部 */
    .common-work-catch__ttl-text {
        font-size: 5vw;
    }

    .common-work-catch__main-text {
        font-size: 3.6vw;
        text-align: left;
    }

    .common-work-catch__ttl-box {
        margin-bottom: 5vw;
    }

    .common-work-catch-sec {
        margin-bottom: 15vw;
    }

    .common-work-main-sec .common-clip-box {
        margin: -5vw auto 5vw;
        padding: 2vw 3vw;
        clip-path: polygon(2.5vw 0, calc(100% - 2.5vw) 0, 100% 2.5vw, 100% calc(100% - 2.5vw), calc(100% - 2.5vw) 100%, 0px 100%, 0 calc(100% - 2.5vw), 0 2.5vw);
    }

    .common-work-main-sec .common-clip-box__text {
        font-size: 4.2vw;
        white-space: wrap;
        text-align: center;
    }

    .common-work-main-sec .inner {
        padding: 0 5vw 5vw;
    }

    .common-work-main__main-text {
        font-size: 3.6vw;
    }

    .common-work-main-sec {
        margin-bottom: 5vw;
    }

    .common-work-img__item {
        width: 100%;
        border: solid 5px #F58E03;
        box-shadow: 5px 5px 0 rgba(245, 142, 3, 0.4);
    }

    .common-work-item+.common-work-item {
        margin-top: 20vw;
    }

    .common-work-main-sec .wrap {
        width: 100%;
    }

    .common-work-catch-sec .wrap {
        width: 100%;
    }

    /* 法人事業部 */
    .common-work-main-sec+.common-work-main-sec {
        margin-top: 10vw;
    }

    /* 福利厚生 */
    .benefits-list-sec__list-box ul {
        grid-template-columns: 1fr;
        gap: 10vw;
    }

    .benefits-list-sec__list-box li {
        gap: 0 3vw;
    }

    .benefits-list__icon {
        width: 22vw;
        border-width: 2px;
    }

    .benefits-list__item-text {
        font-size: 3.4vw;
    }

    /* 数字で見るライブデザイン */
    /* 円グラフ START */
    .common-donut {
        --size: 22vw;
        --thickness: 6vw;
    }

    .common-donut.donut--5-1 {
        --size: 37vw;
        --thickness: 10vw;
    }

    /* 円グラフ END */

    .number-common__inner {
        padding: 9.5vw 3.8vw 7.5vw;
    }

    .number-common__grid-list ul {
        gap: 3vw;
    }

    .number-common__grid-list li {
        clip-path: polygon(7vw 0, calc(100% - 7vw) 0, 100% 7vw, 100% calc(100% - 7vw), calc(100% - 7vw) 100%, 0px 100%, 0 calc(100% - 7vw), 0 7vw);
        padding: 4vw 5vw;
        min-block-size: 40vw;
        width: 100%;
    }

    .number-common__grid-list.first li:first-child {
        width: 100%;
    }

    .number-common__grid-list.first li:nth-child(2) {
        width: calc(50% - 1.5vw);
    }

    .number-common__inner-item .common-page__sub-ttl-text {
        font-size: 6.6vw;
    }

    .number-common__grid-list .common-inbox__ttl-text {
        font-size: 4.8vw;
    }

    .number-common__list-text {
        font-size: 4.6vw;
    }

    .number-common__grid-list.first li:nth-child(3) {
        width: calc(50% - 1.5vw);
    }

    .number-common__grid-list.first li:nth-child(4) {
        width: 100%;
    }

    .number-common__list-flex-box {
        gap: 0 2vw;
    }

    .number-common__grid-list li .common-inbox__ttl {
        margin-bottom: 3vw;
    }

    .number-common__grid-list.first li:nth-child(4) .number-common__list-text {
        font-size: 4.6vw;
    }

    .number-common__grid-list.first li:nth-child(5) {
        width: 100%;
    }

    .number-common__grid-list.first li:nth-child(6) {
        width: 100%;
    }

    .number-common__grid-list.first li:nth-child(7) {
        width: 100%;
    }

    .number-common__grid-list.first li:nth-child(7) .number-common__list-text {
        font-size: 4.6vw;
    }

    .number-common__inner-item+.number-common__inner-item {
        margin-top: 12vw;
    }

    .number-common__grid-list.second li:nth-child(2) {
        width: 100%;
    }

    .number-common__grid-list.second li:first-child {
        width: 100%;
    }

    .number-common-sec+.number-common-sec {
        margin-top: 8vw;
    }

    .number-common__inner-item-catch {
        margin-bottom: 5vw;
    }

    .number-common__item-catch-text {
        font-size: 4.6vw;
    }

    .number-common-sec.questionary .common-page__sub-ttl {
        margin: 0 auto 5vw;
        text-align: center;
    }

    .number-common-sec.questionary .number-common__grid-list .common-inbox__ttl-text {
        font-size: 4.8vw;
    }

    .number-common__list-note {
        font-size: 3.6vw;
        text-align: left;
    }

    .number-common__grid-list li.number-common__grid-last-message {
        width: 100%;
        min-block-size: 10vw;
    }

    .number-common-sec.questionary .number-common__grid-last-message .common-inbox__ttl-text {
        font-size: 5.6vw;
    }

    .number-common__grid-last-message .number-common__list-text {
        font-size: 3.8vw;
        text-align: left;
        letter-spacing: .04em;
    }

    .number-common__list-text .num {
        font-size: 230%;
    }

    .number-common__grid-list.first li:nth-child(6) .number-common__list-text {
        font-size: 3.4vw;
    }

    .number-common__grid-list.first li:nth-child(6) .number-common__list-flex-box {
        flex-direction: column;
        gap: 5vw;
    }

    .number-common__grid-list.first li:nth-child(6) .number-common__list-text-group {
        display: flex;
        flex-wrap: wrap;
        gap: 0.7em;
    }

    .number-common__grid-list.first li:nth-child(6) .number-common__list-text+.number-common__list-text {
        margin-top: 0;
    }

    .number-common__item-catch-text .strong {
        font-size: 120%;
    }

    /* 社風/文化 */
    .culture-committee__list {
        grid-template-columns: 1fr;
        gap: 7vw;
    }

    .culture-committee__catch {
        margin-bottom: 8vw;
    }

    .culture-committee-sec .common-page__sub-ttl {
        margin: 0 auto 3vw;
    }

    .culture-committee__catch-text {
        font-size: 3.6vw;
    }

    .page-culture .common-page__sub-ttl-text {
        font-size: 6.6vw;
    }

    .culture-committee__group-tag {
        padding: 2.5vw 3vw;
        margin-bottom: 2vw;
        clip-path: polygon(3vw 0, calc(100% - 3vw) 0, 100% 3vw, 100% calc(100% - 3vw), calc(100% - 3vw) 100%, 0px 100%, 0 calc(100% - 3vw), 0 3vw);
    }

    .culture-committee__item-tag-name {
        font-size: 3.8vw;
    }

    .culture-committee__item {
        padding: 3vw;
        border: solid 2px #9ED8F6;
    }

    .culture-committee__item+.culture-committee__item {
        margin-top: 3vw;
    }

    .culture-committee__item .common-inbox__ttl {
        margin-bottom: 4vw;
    }

    .culture-committee__item-list li::before {
        width: 1.5vw;
    }

    .culture-committee__item-list li {
        font-size: 3.4vw;
    }

    .culture-committee__item-list {
        margin-bottom: 5vw;
    }

    .culture-committee__item-group {
        display: block;
        grid-row: unset;
    }

    .culture-committee__item-message {
        padding: 3vw;
    }

    .culture-committee__item .common-inbox__ttl-text {
        font-size: 5.1vw;
    }

    .culture-activity-list {
        grid-template-columns: 1fr;
        gap: 6vw;
    }

    .culture-activity-list__item-img {
        border: solid 3px #FFA3CE;
        margin-bottom: 2vw;
    }

    .culture-activity-list__item-ttl {
        font-size: 3.8vw;
    }

    .culture-activity-sec .common-page__sub-ttl {
        margin: 0 auto 3vw;
    }

    .culture-activity-sec {
        margin-top: 15vw;
    }

    .culture-event-sec {
        margin-top: 15vw;
    }

    .culture-event-cont__img-list {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 3vw;
    }

    .culture-event-cont {
        padding: 3vw;
    }

    .culture-event-cont__flow {
        margin-bottom: 5vw;
        overflow-x: scroll;
        width: 100%;
    }

    .culture-event-sec .common-page__sub-ttl {
        margin: 0 auto 3vw;
    }

    .culture-committee__item-message-text {
        font-size: 3.4vw;
    }

    .culture-event-cont__flow img {
        width: 200%;
        max-width: unset;
    }

    /* 代表メッセージ */
    .message-common__image {
        width: 100%;
    }

    .message-common-sec__inner {
        flex-direction: column;
        gap: 6vw;
    }

    .message-common-sec__text-area .common-page__sub-ttl {
        margin: 0 auto 1.5vw;
        padding-left: 0;
    }

    .message-common-sec__main-text {
        padding: 5vw 3vw 0;
        font-size: 3.6vw;
        line-height: 1.7;
    }

    .message-common-sec+.message-common-sec {
        margin-top: 10vw;
    }

    .message-common-sec:nth-child(even) .message-common-sec__inner {
        flex-direction: column;
    }

    .message-common-sec:nth-child(2) .message-common__image img {
        aspect-ratio: 3/2;
    }

    .message-common-sec:nth-child(2) .message-common-sec__text-area {
        margin-top: 0;
    }

    .message-common-sec__text-area .common-page__sub-ttl-text.main-color {
        font-size: 4.7vw;
    }

    /* 選考プロセス */
    .process-flow__list {
        padding: 5vw 3vw;
        border-radius: 10px;
    }

    .process-flow__item {
        clip-path: polygon(3vw 0, calc(100% - 3vw) 0, 100% 3vw, 100% calc(100% - 3vw), calc(100% - 3vw) 100%, 0px 100%, 0 calc(100% - 3vw), 0 3vw);
        grid-template-columns: 14% 86%;
    }

    .process-flow__item-cont {
        padding: 4vw 3vw;
    }

    .process-flow__num-en {
        font-size: 3vw;
    }

    .process-flow__num {
        font-size: 6.8vw;
    }

    .process-flow__item-ttl-box {
        margin-bottom: 3vw;
    }

    .process-flow__item-ttl {
        font-size: 5.1vw;
    }

    .process-flow__item-text {
        font-size: 3.4vw;
        line-height: 1.7;
    }

    .process-flow__item-cont .common-more-btn {
        margin-top: 4vw;
        width: 100%;
    }

    .process-flow__item-cont .common-more-btn a {
        min-block-size: 13vw;
    }

    .process-flow__arrow {
        width: 8vw;
        margin: 3vw auto;
    }

    /* 教育体制 */
    .training-system__list {
        border-radius: 15px;
        padding: 3vw;
    }

    .training-system__item {
        flex-direction: column;
        gap: 3vw;
        padding: 7vw 1.5vw;
    }

    .training-system__item-icon {
        width: 20vw;
    }

    .training-system__list-inner {
        border-radius: 10px;
        padding: 1vw 3vw;
    }

    .training-system__item-ttl {
        font-size: 5.1vw;
        text-align: center;
    }

    .training-system-sec .common-page__sub-ttl-text {
        font-size: 6.6vw;
    }

    .training-system__item-ttl-box {
        margin-bottom: 2vw;
    }

    .training-system__item-text {
        font-size: 3.6vw;
        line-height: 1.9;
    }

    .training-system__item-icon.small img {
        width: 100%;
    }

    /* ギャラリー */
    .gallery-common-sec__image-list::before {
        width: 70vw;
        left: -15vw;
        top: 16vw;
    }

    .gallery-common-sec__image-list ul {
        grid-template-columns: repeat(2, 1fr);
        gap: 2vw;
    }

    .gallery-common-sec+.gallery-common-sec {
        margin-top: 30vw;
    }

    .gallery-common-sec:nth-child(even) .gallery-common-sec__image-list::before {
        right: -15vw;
    }

    .gallery-modal__inner {
        width: fit-content;
        height: fit-content;
        max-width: 90vw;
    }

    .gallery-modal__close {
        top: -9vw;
        right: -1vw;
        font-size: 6vw;
    }

    /* 仲間を知る 詳細 */
    .staff__about {
        padding-block: 22vw 6vw;
        margin-bottom: 2vw;
    }

    .page-staff .common-page-wrap {
        padding-block: 0 17vw;
    }

    .staff-about__image {
        bottom: 22vw;
        top: 26vw;
        left: 5vw;
    }

    .staff-about__text-box {
        padding-right: 0;
        padding-block: 50vw 0;
    }

    .staff-about__catch {
        margin-bottom: 6vw;
    }

    .staff-about__catch-text {
        font-size: 6.6vw;
    }

    .staff-about__catch-line+.staff-about__catch-line {
        margin-top: 1vw;
    }

    .staff-about__en-name {
        font-size: 5.1vw;
    }

    .staff-about__name {
        font-size: 7.5vw;
    }

    .page-staff .breadcrumb {
        margin-bottom: 15vw;
    }

    .staff-content__item {
        flex-direction: column;
    }

    .staff-content__item-title-num {
        display: block;
        margin-bottom: 0.2em;
    }

    .staff-content__item-title {
        font-size: 5.1vw;
        display: block;
    }

    .staff-content__item:nth-child(even) {
        flex-direction: column;
    }

    .staff-content__item-image {
        width: 100%;
        margin-bottom: 4vw;
    }

    .staff-content__item-image img {
        border-radius: 10px;
    }

    .staff-content__item-text {
        font-size: 3.6vw;
    }

    .staff-content__item+.staff-content__item {
        margin-top: 15vw;
    }

    /* 仲間を知る 一覧 */
    .interview-cont__list li a:hover .interview-cont__img {
        translate: 0;
    }

    .interview-cont__list li a:hover .interview-cont__img::before {
        top: 1.5vw;
        left: 1.5vw;
    }

    .interview-cont__list ul {
        grid-template-columns: repeat(2, 1fr);
        gap: 3vw 4vw;
    }

    .interview-cont__text_box {
        width: 90%;
        padding: 2.5vw 3vw;
        clip-path: polygon(2vw 0, calc(100% - 2vw) 0, 100% 2vw, 100% calc(100% - 2vw), calc(100% - 2vw) 100%, 0px 100%, 0 calc(100% - 2vw), 0 2vw);
        margin: -4vw auto 0;
    }

    .interview-cont__text_box .name {
        font-size: 4.3vw;
    }

    .interview-cont__img::before {
        top: 1.5vw;
        left: 1.5vw;
    }

    .interview-cont__list {
        margin-bottom: 12vw;
    }

    .interview__innovation-banner .interview-cont__text_box {
        width: 90%;
        padding: 4vw;
    }

    .interview__innovation-banner .interview-cont__img img {
        aspect-ratio: 2/1;
    }

    .interview__innovation-banner a:hover .interview-cont__img::before {
        top: 1.5vw;
        left: 1.5vw;
    }

    .interview__innovation-banner a:hover .interview-cont__img {
        translate: 0;
    }

    /* イノベーション委員会 */
    .page-innovation .common-page__sub-ttl {
        margin-bottom: 2.5vw;
    }

    .page-innovation .common-page__sub-ttl-text {
        font-size: 6.6vw;
    }

    .innovation-member__list {
        padding: 5vw;
        margin-bottom: 12vw;
    }

    .innovation-member__list ul {
        grid-template-columns: repeat(2, 1fr);
        gap: 5vw 3vw;
    }

    .innovation-member__icon {
        width: 13vw;
    }

    .innovation-member__name-text {
        font-size: 6.1vw;
    }

    .innovation-common-sec:nth-child(even) .innovation-common-sec__inner {
        flex-direction: column-reverse;
    }

    .innovation-common-sec__inner {
        gap: 6vw;
        flex-direction: column-reverse;
    }

    .innovation-common__image {
        width: 100%;
    }

    .innovation-common__image img {
        aspect-ratio: 2/1;
    }

    .innovation-common-sec__text-area {
        padding-top: 0;
    }

    .innovation-common__ttl {
        font-size: 4.2vw;
    }

    .innovation-common__ttl-box {
        padding: 2.5vw 3vw;
        margin-bottom: 5vw;
        clip-path: polygon(3vw 0, calc(100% - 3vw) 0, 100% 3vw, 100% calc(100% - 3vw), calc(100% - 3vw) 100%, 0px 100%, 0 calc(100% - 3vw), 0 3vw);
    }

    .innovation-common__talk-item {
        gap: 3vw;
    }

    .innovation-common__talk-item+.innovation-common__talk-item {
        margin-top: 5vw;
    }

    .innovation-common__talk-icon {
        width: 12vw;
    }

    .innovation-member__talk-name-text {
        font-size: 3.2vw;
    }

    .innovation-common__talk-text {
        font-size: 3.6vw;
    }

    .innovation-common-sec+.innovation-common-sec {
        margin-top: 15vw;
    }

    .interview-cont .common-more-btn {
        margin: 15vw auto 0;
        width: 100%;
    }

}