#main.freshers {
    background-color: transparent;
}
#main.freshers .cPageMv__title {
    font-size: clamp( 135px, calc(192 / 1400 * 100vw), 192px);
}
#main.freshers .cPagetitle__catchcopy {
    width: 391px;
}
#main.freshers .fNews {
    padding-top: 72px;
}
#main.freshers .fNews__inner {
    max-width: 1280px;
    width: 90%;
    margin-inline: auto;
}
#main.freshers .fNews__top-content .cSection02__title .ja {
    width: 217px;
}
#main.freshers .fNews__top-content .cSection02__title .ja img {
    aspect-ratio: 217/67;
    object-fit: contain;
}
#main.freshers .fNews__list {
    flex: 1;
}
#main.freshers .fNews__link {
    position: relative;
    display: block;
    padding: 24px 58px 24px 0;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}
/* 内部リンク（右矢印） */
#main.freshers .fNews__link.fNews__link--internal::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 16px;
    transform: translateY(-50%);
    border-radius: 50%;
    width: 32px;
    height: 32px;
    background: #F3F3F3 url("/recruit/common/images/rn02/icon_arrow-red.svg") no-repeat center / 10px 10px;
}
/* 外部リンク（ウィンドウアイコン） */
#main.freshers .fNews__link.fNews__link--external::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 16px;
    transform: translateY(-50%);
    border-radius: 50%;
    width: 32px;
    height: 32px;
    background: #F3F3F3 url("/recruit/common/images/rn02/icon_window_red.svg") no-repeat center / 11px 9px;
}
#main.freshers .fNews__head {
    display: flex;
    align-items: center;
    column-gap: 8px;
}
#main.freshers .fNews__content {
    display: flex;
    align-items: start;
    column-gap: 44px;
}
#main.freshers .fNews__heading {
    flex: 0 1 400px;
}
#main.freshers .fNews__heading .ja {
    width: 217px;
}
#main.freshers .fNews__date {
    font-size: 100%;
    font-weight: 500;
    letter-spacing: 0.03em;
    font-feature-settings: 'palt' on;
    color: #252527;
    font-family: 'Inter Tight', sans-serif;
}
#main.freshers .fNews__categories {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
}
#main.freshers .fNews__category {
    font-size: 86%;
    font-weight: 500;
    letter-spacing: 0.03em;
    font-feature-settings: 'palt' on;
    color: #FA0046;
    padding: 4px 16px;
    line-height: 1;
    border-radius: 100px;
    border: 1px solid #FA0046;
}
#main.freshers .fNews__title {
    font-size: 128%;
    font-weight: 500;
    letter-spacing: 0.03em;
    font-feature-settings: 'palt' on;
    margin-top: 16px;
}
#main.freshers .fNews__link.fNews__link--internal .fNews__title,
#main.freshers .fNews__link.fNews__link--external .fNews__title {
    text-decoration: underline;
}
#main.freshers .fNews__more-link {
    margin-top: 32px;
}
/*
#main.freshers .fNews__more-link-wrap {
    display: flex;
    align-items: center;
}
#main.freshers .fNews__more-link-icon {
    display: inline-block;
    width: 32px;
    background-color: #F3F3F3;
    border-radius: 50%;
    height: 32px;
    background-image: url(/recruit/common/images/rn02/icon_arrow-red.svg);
    background-size: 10px 10px;
    background-position: 50% 50%;
    background-repeat: no-repeat;
    margin: 0;
}
#main.freshers .fNews__more-link-text {
    display: inline-block;
    font-size: 16px;
    letter-spacing: 0.03em;
    font-feature-settings: 'palt' on;
    line-height: 140%;
    font-weight: 600;
    margin-left: 10px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.3);
}
#main.freshers .fNews__more-link-window {
    width: 11px;
    height: 9px;
    margin-left: 4px;
}
#main.freshers .fNews__more-link-window path,
#main.freshers .fNews__more-link-window rect {
    fill: #FA0046;
}
#main.freshers .fNews__links-wrap {
    background-color: #fff;
}
*/
#main.freshers .fNews__links {
    padding: 128px 0 0 0;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    column-gap: 40px;
}
#main.freshers .fNews__links-block {
    display: flex;
    flex-direction: column;
    row-gap: 12px;
}
#main.freshers .fNews__links-item a {
    display: flex;
    flex-direction: column;
    row-gap: 12px;
}
#main.freshers .fNews__links-img {
    border-radius: 4px;
}
.dark-image {
  filter: brightness(50%);
}

#main.freshers .fNews__links-title {
    display: flex;
    align-items: center;
    column-gap: 4px;
}
#main.freshers .fNews__links-title span {
    display: inline-block;
    font-weight: 700;
    letter-spacing: 0.03em;
    font-feature-settings: 'palt' on;
    line-height: 140%;
    font-size: 122%;
}
#main.freshers .fNews__links-title path,
#main.freshers .fNews__links-title rect {
    fill: #FA0046;
}
#main.freshers .fNews__links-caption {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    margin-top: 20px;
    column-gap: 8px;
}

#main.freshers .fNews__links-text {
    font-weight: 400;
    font-size: 100%;
    letter-spacing: 0.03em;
    font-feature-settings: 'palt' on;
    color: #1C1C1C;
}
#main.freshers .fNews__links-caption path,
#main.freshers .fNews__links-caption rect {
    fill: #FA0046;
}
#main.freshers .fAbout {
    padding: 144px 0;
    border-bottom: 1px solid rgba( 0, 0, 0, .1);
}
#main.freshers .fAbout__inner {
    width: 90%;
    margin-inline: auto;
    max-width: 1280px;
}
#main.freshers .fAbout__contents {
    display: flex;
    align-items: center;
    column-gap: 7%;
}
#main.freshers .fAbout__img {
    flex: 0 1 57%;
}
#main.freshers .fAbout__img img {
    aspect-ratio: 730/420;
    object-fit: cover;
}
#main.freshers .fAbout__content {
    flex: 0 1 36%;
}
.fAbout__heading {
    background-color: transparent;
}
.fAbout__heading .en {
    display: block;
    font-family: 'Inter Tight', sans-serif;
    font-weight: 900;
    color: #FA0046;
    font-size: 125%;
    line-height: 150%;
}
.fAbout__heading .ja {
    margin-top: 48px;
    width: 441px;
}
.fAbout__heading .ja img {
    aspect-ratio: 441/134;
    object-fit: contain;
}
#main.freshers .fAbout__btn {
    width: 100%;
    max-width: 320px;
    margin: 48px 0 0 !important;
}
#main.freshers .fAbout__btn .cLinkBtn_text{
    font-size: clamp(16px, 15.296px + 0.188vw, 18px);
    padding-right: 45px;
}
/*
#main.freshers .fAbout__btn {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background-color: #000;
    color: #fff;
    padding: 0 32px;
    width: 100%;
    max-width: 320px;
    height: 81px;
    text-decoration: none;
    transition: padding 0.3s ease-out;
    margin-top: 48px;
}
#main.freshers .fAbout__btn-text {
    font-size: 150%;
    font-weight: 700;
    letter-spacing: 0.03em;
    font-feature-settings: 'palt' on;
}
#main.freshers .fAbout__btn:hover {
    padding: 0 22px 0 32px;
}
#main.freshers .fAbout__btn-icon {
    stroke: #fff;
    width: 10px;
    height: 10px;
}
*/
/* ============================================
採用情報
============================================ */
#main.freshers .fInfo {
    padding: 144px 0;
}
#main.freshers .fInfo__inner {
    width: 90%;
    margin-inline: auto;
    max-width: 1280px;
}
#main.freshers .fInfo__title {
    background-color: transparent;
    list-style: none;
    width: 640px;
    margin-inline: auto;
}
#main.freshers .fInfo__title picture {
    display: block;
}
#main.freshers .fInfo__anchor-list {
    margin-top: 64px;
    padding-bottom: 40px;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
}
#main.freshers .fInfo__anchor-item {
    border-left: 1px solid rgba( 0, 0, 0, .3);
}
#main.freshers .fInfo__anchor-item:last-child {
    border-right: 1px solid rgba( 0, 0, 0, .3);
}
#main.freshers .fInfo__anchor-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 26px 32px;
}
#main.freshers .fInfo__anchor-text {
    font-size: 143%;
    font-weight: 700;
    letter-spacing: 0.03em;
    font-feature-settings: 'palt' on;
}
#main.freshers .fInfo__anchor-btn {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: #000 url(/recruit/common/images/rn02/icon_arrow.svg) no-repeat center / 10px 10px;
    transform: rotate(90deg);
}
#main.freshers .fInfo__requirements {
    padding-top: 80px;
    padding-bottom: 144px;
    border-top: 1px solid rgba( 0, 0, 0, .1);
}
#main.freshers .fInfo__blocks {
    margin-top: 80px;
}
#main.freshers .fInfo__block {
    display: flex;
    align-items: start;
}
#main.freshers .fInfo__block + .fInfo__block {
    margin-top: 80px;
}
#main.freshers .fInfo__label {
    flex: 0 1 34%;
    font-weight: 700;
    font-size: clamp(22px, 21.296px + 0.188vw, 24px);
    line-height: 140%;
    letter-spacing: 0.03em;
    font-feature-settings: 'palt' on;
    padding: 10px 0 10px 48px;
    background: url(/recruit/common/images/rn02/icon_arrow-right.svg) left center / auto 100% no-repeat;;
    position: sticky;
    top: 50px;
}
#main.freshers .fInfo__content {
    flex: 66%;
}
#main.freshers .fInfo__list .dot {
    font-weight: 700;
    font-size: 143%;
    letter-spacing: 0.03em;
    font-feature-settings: 'palt' on;
    padding-left: 14px;
    position: relative;
    line-height: 140%;
    display: inline-block;
}
#main.freshers .fInfo__list .dot::before {
    content:"";
    position: absolute;
    top: 13.5px;
    left: 0;
    width: 6px;
    height: 6px;
    background-color: #FA0046;
    border-radius: 50%;
}
#main.freshers .fInfo__list.fInfo__list--flex {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    border-bottom: 1px solid rgba( 0, 0, 0, .1);
    padding-top: 12px;
    padding-bottom: 12px;
}
#main.freshers .fInfo__list.fInfo__list--margin {
    margin-top: 16px;
}
#main.freshers .fInfo__list .desc {
    font-weight: 500;
    font-size: 100%;
    letter-spacing: 0.03em;
    font-feature-settings: 'palt' on;
}
#main.freshers .fInfo__caption {
    font-weight: 500;
    font-size: 117%;
    letter-spacing: 0.03em;
    font-feature-settings: 'palt' on;
    margin-top: 16px;
}
#main.freshers .fInfo__text {
    font-weight: 700;
    font-size: 167%;
    letter-spacing: 0.03em;
    font-feature-settings: 'palt' on;
    list-style: none;
}
#main.freshers .fInfo__table {
    width: 100%;
    border-collapse: collapse;
}
#main.freshers .fInfo__table-header,
#main.freshers .fInfo__table-data {
    padding: 14px 13.5px;
    font-size: 133%;
    text-align: center;
    vertical-align: middle;
    border: 1px solid rgba( 0, 0, 0, .1);
}
#main.freshers .fInfo__table-header {
    background-color: #c8161d;
    color: #fff;
    font-weight: 700;
}
#main.freshers .fInfo__table-data {
    font-weight: 500;
}
#main.freshers .fInfo__table-data:first-child {
    background-color: #f5f5f5;
    font-weight: 700;
}
#main.freshers .fInfo__title {
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.4;
}
#main.freshers .fInfo__flow-items {
    position: relative;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: auto auto auto 1fr;
    column-gap: 20px;
    margin-top: 68px;
}
#main.freshers .fInfo__flow-items::before {
    content:"";
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    top: -25px;
    background-color: rgba( 0, 0, 0, .1);
    width: 80%;
    height: 1px;
}
#main.freshers .fInfo__flow-item {
    position: relative;
}
#main.freshers .fInfo__flow-item.fInfo__flow-item--caption .fInfo__flow-text {
    position: relative;
}
#main.freshers .fInfo__flow-item.fInfo__flow-item--caption .fInfo__flow-text::before {
    content:"※製図試験は意匠設計職のみ";
    position: absolute;
    top: calc(100% + 8px);
    left: 0;
    font-size: 76%;
    text-align: left;
    width: 100%;
    font-weight: 400;
}
#main.freshers .fInfo__flow-item::before {
    content:"";
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    top: -36px;
    background-color: #F3F3F3;
    width: 24px;
    height: 24px;
    border-radius: 50%;
}
#main.freshers .fInfo__flow-item::after {
    content:"";
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    top: -28px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background-color: #FA0046;
}
#main.freshers .fInfo__flow-box {
    width: 100%;
    padding: 16px 0;
    font-size: 117%;
    font-weight: 900;
    text-align: center;
    text-transform: uppercase;
    font-family: 'Inter Tight', sans-serif;
    color: #fff;
    background-color: #c8161d;
}
#main.freshers .fInfo__flow-box span {
    font-size: 143%;
}
#main.freshers .fInfo__flow-box--result {
    height: 100%;
    font-size: 167%;
    display: flex;
    align-items: center;
    justify-content: center;
}
#main.freshers .fInfo__flow-text {
    padding: 32px 1px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    font-size: 133%;
    font-weight: 700;
    line-height: 140%;
    background-color: #F3F3F3;
}
#main.freshers .fInfo__benefits {
    padding-top: 80px;
    padding-bottom: 144px;
    border-top: 1px solid rgba( 0, 0, 0, .1);
}
#main.freshers .fInfo__benefits .cSection02__title .ja {
    width: 112px;
}
#main.freshers .fInfo__caption.position-right {
    text-align: right;
}
#main.freshers .fInfo__flow-content .fInfo__caption {
    margin-top: 54px;
}
#main.freshers .fInfo__caption--margin-left {
    margin-left: 14px;
}
#main.freshers .fInfo__faq {
    padding-top: 80px;
    padding-bottom: 144px;
    border-top: 1px solid rgba(0, 0, 0, .1);
}
#main.freshers .fInfo__faq .cSection02__title .ja {
    width: 133px;
}
#main.freshers .fInfo__faq-item {
    padding: 0 48px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    border-radius: 4px;
    transition: border-bottom 0.5s ease-out, background-color 0.5s ease-out, padding 0.5s ease-out, margin 0.5s ease-out;
}
#main.freshers .fInfo__faq-q {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 32px 0;
    column-gap: 45px;
}
#main.freshers .fInfo__faq-q-text {
    font-weight: 700;
    font-size: 143%;
    display: flex;
    align-items: baseline;
    flex: 1;
}
#main.freshers .fInfo__faq-q-text .icon {
    display: inline-block;
    font-family: 'Inter Tight', sans-serif;
    font-weight: 900;
    color: #FA0046;
    font-size: 160%;
    line-height: 150%;
    margin-right: 16px;
    flex-shrink: 0;
}
#main.freshers .fInfo__faq-q-text .text {
    text-align: left;
}
#main.freshers .fInfo__faq-icon {
    position: relative;
    background-color: #000;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    transition: background-color 0.3s ease-out;
    flex: 0 1 32px;
}
#main.freshers .fInfo__faq-icon::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    background-color: #fff;
    transform: translate(-50%, -50%);
    height: 1px;
    width: 13px;
}
#main.freshers .fInfo__faq-icon::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    background-color: #fff;
    transition: transform 0.3s ease-out;
    transform: translate(-50%, -50%);
    height: 13px;
    width: 1px;
}
#main.freshers .fInfo__faq-item.is-open .fInfo__faq-icon {
    background-color: #FA0046;
}
#main.freshers .fInfo__faq-item.is-open .fInfo__faq-icon::after {
    transform: translate(-50%, -50%) rotate(90deg);
}
#main.freshers .fInfo__faq-a {
    max-height: 0;
    opacity: 0;
    overflow: hidden;
    transition: max-height 0.5s ease-out, opacity 0.5s ease-out, padding 0.5s ease-out;
    display: flex;
    border-top: 1px solid rgba( 0, 0, 0, .1);
}
#main.freshers .fInfo__faq-item.is-open .fInfo__faq-a {
    padding-top: 32px;
}
#main.freshers .fInfo__faq-item.is-open {
    background-color: #F3F3F3;
    border-bottom: none;
    padding: 0 48px 32px 48px;
}
#main.freshers .fInfo__faq-item.is-open .fInfo__faq-a {
    max-height: 9999px;
    opacity: 1;
}
#main.freshers .fInfo__faq-a-icon {
    display: inline-block;
    font-family: 'Inter Tight', sans-serif;
    font-weight: 900;
    color: #FA0046;
    font-size: 228%;
    line-height: 1;
    margin-right: 16px;
}
#main.freshers .fInfo__faq-a-text {
    font-weight: 500;
    font-size: 114%;
    letter-spacing: 0.03em;
    font-feature-settings: 'palt' on;
    line-height: 180%;
}
#main.freshers .fInfo__link {
    display: flex;
    align-items: center;
    margin: 16px 0 0;
}


#main.freshers .fInfo__faq-main-text {
    flex: 1;
}
#main.freshers .fInfo__faq-main-text + .cMenu02__link-icon {
    flex: 0 1 24px;
    margin-left: 8px;
}
#main.freshers .fInfo__faq-sub-list {
    margin-bottom: 16px;
}
#main.freshers .fInfo__faq-sub-item {
    margin-top: 16px;
}
#main.freshers .fInfo__faq-sub-item a {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 116%;
    color: #000;
    text-decoration: none;
    font-weight: 500;
    letter-spacing: 0.03em;
    font-feature-settings: 'palt' on;
}
#main.freshers .fInfo__faq-sub-icon {
    stroke: #FA0046;
    flex: 0 1 10px;
}
#main.freshers .fInfo__faq-sub-item a p {
    flex: 1;
}
#main.freshers .fInfo__faq-sub-item span {
    position: relative;
}
#main.freshers .fInfo__faq-sub-item span::after {
    content: "";
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 0;
    height: 1px;
    background: #FA0046;
    transition: width 0.3s ease-out;
}
#main.freshers .fInfo__faq-sub-item a:hover span::after {
    width: 100%;
}
/* ============================================
business
============================================ */
.fBusiness__inner {
    max-width: 1280px;
    width: 90%;
    margin-inline: auto;
}
.fBusiness .cSection02__title .ja {
    width: 224px;
}
.fJobs .cSection02__head,
.fBusiness .cSection02__head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
}
#main .cSection02__link {
    display: flex;
    align-items: center;
}
#main .cSection02__link{
    white-space: nowrap;
}
#main.freshers .fJobs .cSection02__link-icon,
#main.freshers .fBusiness .cSection02__link-icon {
    display: inline-block;
    width: 32px;
    border-radius: 50%;
    height: 32px;
    background-image: url(/recruit/common/images/rn02/icon_arrow-red.svg);
    background-size: 10px 10px;
    background-position: 50% 50%;
    background-repeat: no-repeat;
    margin: 0;
}
#main .cSection02__link-icon.cSection02__link-icon--white {
    background-color: #fff;
}
#main .cSection02__link-text{
    display: inline-block;
    font-size: 16px;
    letter-spacing: 0.03em;
    font-feature-settings: 'palt' on;
    line-height: 140%;
    font-weight: 600;
    margin-left: 10px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.3);
}
span.icon.link-window{
    display: inline-block;
}
#main .cSection02__link-window {
    width: 11px;
    height: 9px;
    margin-left: 4px;
}
span.icon.link-window svg path,
span.icon.link-window svg rect,
#main .cSection02__link-window path,
#main .cSection02__link-window rect {
    fill: #FA0046;
}
#main .fBusinessWrap{
    margin: clamp(24px, 15.549px + 2.254vw, 48px) auto 0;
    display: flex;
    flex-wrap: wrap;
    gap: 40px;
}
#main .fBusinessItem{
    width: calc(50% - 20px);
}
#main .fBusinessItemImg{
    display: block;
    width: 100%;
    overflow: hidden;
    border-radius: 4px;
    aspect-ratio: 1.7765;
}
#main .fBusinessItemImg img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}
#main .fBusinessItemTitle{
    display: block;
    width: 100%;
    position: relative;
    font-weight: 700;
    font-size: clamp(22px, 18.479px + 0.939vw, 32px);
    line-height: 135%;
    letter-spacing: 0.03em;
    font-feature-settings: 'palt' on;
    padding: clamp(12px, 7.775px + 1.127vw, 24px) 0;
}
#main .fBusinessItemTitle:after{
    content: "";
    display: block;
    width: 24px;
    height: 34px;
    background: url(/recruit/common/images/rn02/icon_arrow-right.svg) center / contain no-repeat;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translate(0%, -50%);
    transition: right 0.3s ease-out;
}
#main .fBusinessItemImg:hover + .fBusinessItemTitle:after,
#main .fBusinessItemTitle:hover:after{
    right: -10px;
}
#main .fBusinessItemText{
    font-weight: 500;
    font-size: 16px;
    line-height: 180%;
    letter-spacing: 0.03em;
    font-feature-settings: 'palt' on;
    text-align: justify;
}
#main .fBusinessTech{
    margin: clamp(40px, 25.915px + 3.756vw, 80px) auto 0;
    padding: clamp(40px, 25.915px + 3.756vw, 80px) 0 0;
    border-top: 1px solid rgba(0, 0, 0, 0.1);
    width: 90%;
    max-width: 1280px;
}
#main .fBusinessTechWrap{
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 40px;
}
#main .fBusinessTechItems {
    margin-top: 48px;
}
#main .fBusinessTechLeft .cSection02__lead{
    width: 88.25%;
    min-width: 300px;
}
#main .fBusinessTechItem{
    display: flex;
    align-items: center;
    position: relative;
    padding: 0 clamp(32px, 20.732px + 3.005vw, 64px) 0 0;
    gap: 24px;
}
#main .fBusinessTechArrow{
    display: block;
    width: 24px;
    height: 34px;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translate(0%, -50%);
}
#main .fJobsItemArrow svg,
#main .fBusinessTechArrow svg{
    width: 100%;
    height: 100%;
}
#main .fBusinessTechItem + .fBusinessTechItem{
    margin: clamp(20px, 12.958px + 1.878vw, 40px) 0 0;
    padding-top: clamp(20px, 12.958px + 1.878vw, 40px);
    border-top: 1px solid rgba(0, 0, 0, 0.1);
}
#main .fBusinessTechImg{
    width: 180px;
    flex: 0 1 180px;
    aspect-ratio: 1;
    border-radius: 4px;
    overflow: hidden;
}
#main .fBusinessTechImg img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}
#main .fBusinessTechText{
    flex: 1;
}
#main .fBusinessTechText h3{
    font-size: clamp(18px, 17.296px + 0.188vw, 20px);
}
#main .fBusinessTechText p{
    font-size: clamp(14px, 13.296px + 0.188vw, 16px);
    font-weight: 500;
    margin: 12px 0 0;
    letter-spacing: 0.03em;
    font-feature-settings: 'palt' on;
}
#main.freshers .fJobs {
    padding-top: 144px;
}
#main .fJobs .cSection02__title span.ja{
    background: url(/recruit/freshers/images/rn02/freshers_jobstitle.svg) left top / contain no-repeat;
    width: 227px;
    aspect-ratio: 3.01492;
    text-indent: -9999px;
}
#main .fJobs{
    padding: clamp(50px, 32.394px + 4.695vw, 100px) 0;
    margin: 0;
}
#main .fJobs__inner {
    max-width: 1280px;
    width: 90%;
    margin-inline: auto;
}
#main .fJobsWrap{
    margin: clamp(24px, 15.549px + 2.254vw, 48px) auto 0;
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
}
#main .fJobsItem{
    width: calc(50% - 12px);
    position: relative;
    aspect-ratio: 1.5023;
    overflow: hidden;
    border-radius: 4px;
}
#main .fJobsItem::before {
    content:"";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.3));
    border-radius: 4px;
    z-index: 2;
}
#main .fJobs .fJobsItem::before {
    content:unset;
}
#main .fJobsItemImg{
    position: absolute;
    z-index: 1;
    width: 100%;
    height: 100%;
}
#main .fJobsItemImg img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}
#main .fJobsItemText{
    position: absolute;
    left: clamp(20px, 15.775px + 1.127vw, 32px);
    bottom: clamp(20px, 15.775px + 1.127vw, 32px);
    z-index: 2;
}
#main .fJobsItemText p{
    font-weight: 700;
    font-size: clamp(24px, 21.183px + 0.751vw, 32px);
    line-height: 135%;
    color: #fff;
}
#main .fJobsItemText span{
    display: block;
    font-size: clamp(14px, 12.592px + 0.376vw, 18px);
    line-height: 145%;
}
#main .fJobsItemArrow{
    position: absolute;
    z-index: 2;
    bottom: clamp(16px, 10.366px + 1.502vw, 32px);
    right: clamp(16px, 10.366px + 1.502vw, 32px);
    width: clamp(24px, 15.549px + 2.254vw, 48px);
    height: clamp(33px, 21.028px + 3.192vw, 67px);
}
#main .fJobsItem:hover .fJobsItemArrow{
}
#main.freshers .fVoices {
    padding-top: 144px;
    padding-bottom: 114px;
}
#main.freshers .fVoices__inner {
    max-width: 1280px;
    width: 90%;
    margin-inline: auto;
}
#main.freshers .fVoices__header {
    display: flex;
    flex-direction: column;
    align-items: center;
    background-color: transparent;
}
#main.freshers .fVoices__label {
    display: block;
    font-size: 150%;
    font-weight: 900;
    color: #FA0046;
    font-family: 'Inter Tight', sans-serif;
}
#main.freshers .fVoices__title {
    width: 538px;
    margin-top: 48px;
}
#main.freshers .fVoices__title img {
    aspect-ratio: 538/67;
    object-fit: contain;
}
#main.freshers .fVoices__lead {
    font-size: 133%;
    letter-spacing: 0.03em;
    font-feature-settings: 'palt' on;
    font-weight: 700;
    line-height: 180%;
    text-align: center;
    margin-top: 32px;
}
#main.freshers .fVoices__wrapper {
    margin-top: 48px;
    position: relative;
    height: 480px;
    height: calc(480/1440*100vw);
    max-height: 480px;
}
#main.freshers .fVoices__items {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    height: 100%;
}
#main.freshers .fVoices__item {
    height: 100%;
    position: relative;
}
/* #main.freshers .fVoices__item::before {
    position: absolute;
    content:"";
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.4);
} */
#main.freshers .fVoices__item01 {
    grid-area: 1 / 1 / 2 / 2;
}
#main.freshers .fVoices__item02 {
    grid-area: 1 / 2 / 2 / 3;
}
#main.freshers .fVoices__item03 {
    grid-area: 1 / 3 / 2 / 4;
}
#main.freshers .fVoices__item04 {
    grid-area: 1 / 4 / 2 / 5;
}
#main.freshers .fVoices__item img {
    height: 100%;
    object-fit: cover;
    aspect-ratio: 320/480;
}
#main.freshers .fVoices__content {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate( -50%, -50%);
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    z-index: 1;
}
#main.freshers .fVoices__text {
    font-size: 200%;
    letter-spacing: 0.03em;
    font-feature-settings: 'palt' on;
    font-weight: 700;
    line-height: 135%;
    color: #fff;
    text-align: center;
}
#main.freshers .fVoices__link {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0;
    margin-top: 23px;
    max-width: 320px;
    width: 100%;
}
#main.freshers .fVoices__link-text-wrap {
    flex: 1;
}
#main.freshers .fVoices__link-text {
    display: block;
    font-size: clamp(16px, 15.296px + 0.188vw, 18px);
    letter-spacing: 0.03em;
    font-feature-settings: 'palt' on;
    font-weight: 700;
    line-height: 135%;
}
#main.freshers .fVoices__link-caption {
    display: block;
    font-size: clamp(10px, 9.648px + 0.094vw, 11px);
    letter-spacing: 0.03em;
    font-feature-settings: 'palt' on;
    font-weight: 400;
    line-height: 140%;
    margin-top: 4px;
}
#main.freshers .fVoices__link-icon {
    display: block;
    width: 10px;
    height: 10px;
    stroke: #fff;
    margin-left: 10px;
    flex: 0 1 10px;
    margin-top: 5px;
}
#main.freshers .fVoices__link:hover {
}
#main.freshers .rEntry {
    margin-top: 50px;
}
#main.freshers .rEntry__inner {
    width: 98%;
    margin-inline: auto;
    max-width: 1400px;
    background-color: #FA0046;
    padding: 93px 0;
    display: flex;
    flex-direction: column;
    align-items: center;
}
#main.freshers .rEntry__heading {
    font-family: 'Inter Tight', sans-serif;
    font-weight: 800;
    color: #fff;
    font-size: 120px;
    background-color: transparent;
}
#main.freshers .rEntry__lead {
    margin-top: 24px;
    width: 327px;
}
#main.freshers .rEntry__text {
    font-size: 133%;
    line-height: 180%;
    font-weight: 500;
    color: #fff;
    letter-spacing: 0.03em;
    font-feature-settings: 'palt' on;
    text-align: center;
    margin-top: 24px;
}
#main.freshers .rEntry__btns {
    display: flex;
    align-items: center;
    column-gap: 8px;
    justify-content: center;
    width: 100%;
    margin-top: 32px;
}
#main.freshers .rEntry__btn {
    border-radius: 2px;
    max-width: 420px;
    width: 100%;
    margin: 0;
}
/*
#main.freshers .rEntry__btn {
    padding: 32px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    background-color: #fff;
    border-radius: 2px;
    max-width: 420px;
    width: 100%;
}
#main.freshers .rEntry__btn-text {
    display: inline-block;
    font-size: 200%;
    font-weight: 700;
    letter-spacing: 0.03em;
    font-feature-settings: 'palt' on;
    color: #FA0046;
}
#main.freshers .rEntry__btn-icon {
    background-image: url(/recruit/common/images/rn02/icon_arrow-right.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 32px;
    height: 44px;
}
*/

.tFloatBnr{
    display: block;
    border-radius: 8px;
    box-shadow: 0px 2px 6px 1px rgba(0, 0, 0, 0.15);
    height: 100px;
    width: 320px;
    position: fixed;
    right: 40px;
    top: 124px;
    background: #fff;
    z-index: 5000;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s ease-out;
}
.tFloatBnr.show{
    opacity: 1;
    pointer-events: auto;
}
.tFloatBnr.is-closed {
    opacity: 0;
    pointer-events: none;
}
.tFloatBnrWrap{
    display: flex;
    align-items: center;
    text-decoration: none;
    height: 100%;
}
.tFloatBnrImg{
    width: 50%;
    height: 100%;
    border-radius: 8px;
    overflow: hidden;
}
.tFloatBnrImg img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.tFloatBnrText{
    padding: 0 0 0 14px;
    font-family: "Noto Sans JP", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS P Gothic", Arial, Helvetica, sans-serif;
    font-weight: 600;
    font-size: 16px;
    line-height: 140%;
    letter-spacing: 0.03em;
    font-feature-settings: 'palt' on;
    color: #000;
    text-decoration: none;
}
.tFloatBnrClose{
    position: absolute;
    top: -16px;
    right: -16px;
    background: #fff;
    border-radius: 50%;
    width: 32px;
    height: 32px;
    z-index: 5001;
    box-shadow: 0px 2px 6px 1px rgba(0, 0, 0, 0.15);
    cursor: pointer;
}
.tFloatBnrClose > div{
    position: relative;
    width: 100%;
    height: 100%;
}
.tFloatBnrClose > div span{
    position: absolute;
    left: 50%;
    top: 50%;
    width: 14px;
    height: 2px;
    background: #FA0046;

}
.tFloatBnrClose > div span:nth-of-type(1){
    transform: translate(-50%,-50%) rotate(-45deg);
}
.tFloatBnrClose > div span:nth-of-type(2){
    transform: translate(-50%,-50%) rotate(45deg);
}
