@charset "UTF-8";
/* CSS Document */
@media screen and (min-width: 0) {

    /*
    .##.....##.########.########...#######.
    .##.....##.##.......##.....##.##.....##
    .##.....##.##.......##.....##.##.....##
    .#########.######...########..##.....##
    .##.....##.##.......##...##...##.....##
    .##.....##.##.......##....##..##.....##
    .##.....##.########.##.....##..#######.
    */
    .hero {}

    .hero .wrap {
        padding-top: 30px;
    }

    .hero__figure {
        width: 57.54vw;
        max-width: 786px;
        margin: 0 auto;
    }

    .hero__figure img {
        width: 100%;
        height: auto;
    }

    /*
    .####.##....##.########.########...#######.
    ..##..###...##....##....##.....##.##.....##
    ..##..####..##....##....##.....##.##.....##
    ..##..##.##.##....##....########..##.....##
    ..##..##..####....##....##...##...##.....##
    ..##..##...###....##....##....##..##.....##
    .####.##....##....##....##.....##..#######.
    */
    .intro {
        margin: 0 auto;
        margin-top: 36px;
    }

    .intro__figure {
        position: relative;
        width: calc(100vw - 40px);
        margin: 20px auto 36px;
    }

    .intro__figure img {
        width: 100%;
        height: auto;
    }

    .intro__text {}

    .intro__text p {
        margin-bottom: 20px;
    }

    .intro__policy {
        display: flex;
        flex-direction: column;
        gap: 20px;
        margin-top: 40px;
    }

    .intro__image {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        padding-top: 20px;
    }

    .intro__image__icon {
        width: 60px;
        aspect-ratio: 1;
    }

    .intro__image__title {
        position: absolute;
        top: 0;
        left: 68px;
        width: auto;
        height: 42px;
        z-index: -1;
    }

    .intro__image figcaption {
        margin-top: auto;
        padding-bottom: 10px;
        line-height: 1;
    }

    .intro__image figcaption .c-text-accent.c-text-large {
        font-size: 20px;
    }

    /*
    ..######...########..########.########.########.####.##....##..######..
    .##....##..##.....##.##.......##..........##.....##..###...##.##....##.
    .##........##.....##.##.......##..........##.....##..####..##.##.......
    .##...####.########..######...######......##.....##..##.##.##.##...####
    .##....##..##...##...##.......##..........##.....##..##..####.##....##.
    .##....##..##....##..##.......##..........##.....##..##...###.##....##.
    ..######...##.....##.########.########....##....####.##....##..######..
    */
    .greeting__years {
        max-width: 730px;
        margin: 0 auto;
        margin-bottom: 15px;
        font-family: "Bebas Neue", sans-serif;
        font-weight: 400;
        text-align: center;
        line-height: 1;
        color: rgb(var(--theme-color));
        text-transform: uppercase;
        background-image: url(../images/figure_greeting01.png), url(../images/figure_greeting02.png);
        background-size: 90px auto;
        background-position: left bottom, right bottom;
        background-repeat: no-repeat;
    }

    .greeting__years__num {
        font-size: 13.33vw;
        line-height: 1;
    }

    .greeting__years__num .c-text-large {
        font-size: 37.33vw;
        letter-spacing: 0;
        line-height: 120px;
    }

    .greeting__years__text {
        font-size: 30px;
        letter-spacing: .12em;
    }

    /*
    .##......##..#######..########..##....##..######.
    .##..##..##.##.....##.##.....##.##...##..##....##
    .##..##..##.##.....##.##.....##.##..##...##......
    .##..##..##.##.....##.########..#####.....######.
    .##..##..##.##.....##.##...##...##..##.........##
    .##..##..##.##.....##.##....##..##...##..##....##
    ..###..###...#######..##.....##.##....##..######.
    */
    .works {}

    .works__lead {
        margin-bottom: 30px;
        font-size: 24px;
        letter-spacing: .1em;
        word-break: auto-phrase;
    }

    .works__category {
        text-align: left;
    }

    .works__category--dtp {}

    .works__category-title {
        width: 200px;
        font-size: 24px;
        line-height: 35px;
        border-bottom: 1px solid rgb(var(--theme-color));
    }

    .works__list {
        margin: 26px -20px 30px;
    }

    .js-slider {}

    .js-slider .slick-list {
        /* max-height: 256px; */
        padding-left: 57px;
        overflow: hidden;
    }

    .js-slider .slick-track {
        display: flex;
        justify-content: start;
        padding: 6px;
        gap: 30px;
    }

    .slick-track:before,
    .slick-track:after {
        display: none !important;
    }

    .works__list .works__item {
        flex: 0;
        width: 260px;
        flex-basis: 260px;
        max-width: 260px;
        height: auto;
        min-height: 100%;
        border-radius: 16px;
        box-shadow: 0 0 6px rgba(0, 0, 0, .25);
        overflow: hidden;
    }

    .works__figure {
        display: flex;
        flex-direction: column;
        height: auto;
        background: lightgray;
    }

    .works__image {
        width: 100%;
        height: auto;
    }

    .works__caption {
        height: 100%;
        padding: 18px;
        word-break: auto-phrase;
        background: white;
    }

    .works__title {
        margin-bottom: 8px;
        font-size: 20px;
        line-height: 1;
    }

    .works__title.c-text-small {
        font-size: 18px;
    }

    .works__text {
        line-height: 1.25;
    }

    .works__category--web {}

    /*
    ..######...#######..##.....##.########.....###....##....##.##....##
    .##....##.##.....##.###...###.##.....##...##.##...###...##..##..##.
    .##.......##.....##.####.####.##.....##..##...##..####..##...####..
    .##.......##.....##.##.###.##.########..##.....##.##.##.##....##...
    .##.......##.....##.##.....##.##........#########.##..####....##...
    .##....##.##.....##.##.....##.##........##.....##.##...###....##...
    ..######...#######..##.....##.##........##.....##.##....##....##...
    */
    .company {}

    .company__item {
        text-align: center;
    }

    .company__term {
        padding: 3px;
        background: rgba(var(--theme-color), .2);
    }

    .company__desc {
        padding: 15px 12px;
    }

    .company__desc p {
        padding-top: 0;
        font-weight: 400;
    }

    .company__accordion--content .btn--more {
        margin-top: 0;
    }

    .btn--more {
        background: #F5F5F5;
    }

    .btn--accordion--trigger {
        background: rgba(var(--theme-color), .1);
    }

    .btn--accordion--trigger.is-open .accordion--trigger__text.closed {
        display: none;
    }

    .btn--accordion--trigger:not(.is-open) .accordion--trigger__text.opened {
        display: none;
    }

    /*
    .########..########..######..########..##.....##.####.########
    .##.....##.##.......##....##.##.....##.##.....##..##.....##...
    .##.....##.##.......##.......##.....##.##.....##..##.....##...
    .########..######...##.......########..##.....##..##.....##...
    .##...##...##.......##.......##...##...##.....##..##.....##...
    .##....##..##.......##....##.##....##..##.....##..##.....##...
    .##.....##.########..######..##.....##..#######..####....##...
    */
    .recruit {}

    .recruit__text {
        text-align: center;
        font-weight: 400;
    }

    .recruit__figure {
        width: 50%;
        max-width: 686px;
        margin: 0 auto;
        margin-top: 30px;
    }

    .recruit__figure img {
        width: 100%;
        height: auto;
    }

    /*
    ..######...#######..##....##.########....###.....######..########
    .##....##.##.....##.###...##....##......##.##...##....##....##...
    .##.......##.....##.####..##....##.....##...##..##..........##...
    .##.......##.....##.##.##.##....##....##.....##.##..........##...
    .##.......##.....##.##..####....##....#########.##..........##...
    .##....##.##.....##.##...###....##....##.....##.##....##....##...
    ..######...#######..##....##....##....##.....##..######.....##...
    */
    .contact {}

    .contact__tel {
        margin-top: 45px;
        margin-bottom: 36px;
    }

    .contact__tel a {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 6px;
        font-family: "Bebas Neue", sans-serif;
        font-weight: 400;
        font-size: 60px;
        line-height: 1;
        letter-spacing: 0;
    }

    .contact__tel a img {
        width: 46px;
    }

    .contact__form {
        width: fit-content;
        margin: 45px auto 48px;
        font-size: 20px;
        color: rgb(var(--theme-color));
        border-bottom: 1px solid;
    }

    .contact__form a {
        display: block;
    }

    .contact__form__text {
        font-weight: 400;
    }

    .contact .c-link.c-text-accent {
        font-weight: 700;
        border-bottom: 1px solid;
    }

    /*
    ....###.....######...######..########..######...######.
    ...##.##...##....##.##....##.##.......##....##.##....##
    ..##...##..##.......##.......##.......##.......##......
    .##.....##.##.......##.......######....######...######.
    .#########.##.......##.......##.............##.......##
    .##.....##.##....##.##....##.##.......##....##.##....##
    .##.....##..######...######..########..######...######.
    */
    .access {}

    .access__map {
        margin-top: 36px;
    }

    .access__title {
        width: fit-content;
        padding: 0 40px;
        padding-bottom: 8px;
        margin: 0 auto;
        margin-bottom: 15px;
        font-size: 24px;
        text-align: center;
        line-height: 1;
        text-transform: uppercase;
        border-bottom: 1px solid rgb(var(--theme-color));
    }

    .access__addr {
        margin-bottom: 1em;
        line-height: 1.5;
    }

    .access__item {
        line-height: 1.5;
    }

    .access__map iframe {
        width: 100%;
        height: 215px;
        margin-bottom: 25px;
        border-radius: 8px;
    }

    .access__map--chiba {}

    .access__map--tokyo {}

    .access__map--fairy {}

    .access__map--fairy .access__title {
        padding-left: 6px;
        padding-right: 6px;
        text-align: left;
    }

    .access__map--fairy .access__title .c-text-small {
        font-size: 12px;
        font-weight: 400;
    }

    /*
    .########....###....####.########..##....##
    .##.........##.##....##..##.....##..##..##.
    .##........##...##...##..##.....##...####..
    .######...##.....##..##..########.....##...
    .##.......#########..##..##...##......##...
    .##.......##.....##..##..##....##.....##...
    .##.......##.....##.####.##.....##....##...
    */
    .fairy {
        margin: 100px 20px 30px;
        border: 4px solid rgb(var(--fairy-theme-color));
    }

    .fairy .wrap {
        padding: 15px 12px;
    }

    .fairy__header {
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 8px;
        margin-bottom: 20px;
    }

    .fairy__logo {
        width: 96px;
    }

    .fairy__logo img {
        width: 100%;
    }

    .fairy__title {
        font-size: 24px;
        line-height: 30px;
    }

    .fairy__title .c-text-small {
        font-size: 16px;
        line-height: 1;
        color: rgb(var(--gray));
    }

    .fairy__copy {
        margin-bottom: 12px;
        font-family: "Bebas Neue", sans-serif;
        font-weight: 400;
        text-align: center;
        color: rgb(var(--fairy-theme-color));
        font-size: 36px;
        line-height: 1;
    }

    .fairy__lead {
        margin-bottom: 1em;
        color: rgb(var(--gray));
        line-height: 1.75;
    }

    .fairy__gallery {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
        width: 100%;
        margin: 0 auto;
    }

    .fairy__gallery picture {
        flex: 1;
    }

    .fairy__gallery picture:nth-of-type(1) {
        flex: 2;
        flex-basis: 100%;
    }

    .fairy__gallery picture img {
        width: 100%;
    }

    .btn--fairy {
        margin-top: 16px;
        margin-bottom: 10px;
        background: #EAEAEA;
    }
}

/* スマホ用（767px以下で適用） */
/*
..######..########.
.##....##.##.....##
.##.......##.....##
..######..########.
.......##.##.......
.##....##.##.......
..######..##.......
*/
@media screen and (max-width: 767px) {

    /*
    .####.##....##.########.########...#######.
    ..##..###...##....##....##.....##.##.....##
    ..##..####..##....##....##.....##.##.....##
    ..##..##.##.##....##....########..##.....##
    ..##..##..####....##....##...##...##.....##
    ..##..##...###....##....##....##..##.....##
    .####.##....##....##....##.....##..#######.
    */
    .intro__figure .intro__image01 {
        width: 24.53vw;
    }

    .intro__figure picture {
        display: block;
    }

    .intro__figure .intro__image02 {
        width: 60.53vw;
        margin: 0 auto;
    }

    .intro__figure .intro__image03 {
        position: absolute;
        top: 50%;
        left: 50%;
        width: 80vw;
        translate: -50% -50%;
    }

    .intro__figure .intro__image04 {
        right: 0;
        bottom: 0;
        width: 35.2vw;
        margin-left: auto;
    }

    .intro__figure figcaption {
        position: absolute;
        line-height: 25px;
    }

    .intro__catch {
        top: 0;
        right: 0;
        translate: 0 7dvh;
    }

    .intro__lead {
        left: 0;
        bottom: 0;
        translate: 0 -10dvh;
    }

    .intro__image:nth-of-type(even) {
        flex-direction: row-reverse;
    }

    .intro__image:nth-of-type(even) .intro__image__title {
        left: auto;
        right: 68px;
    }

    .works__lead .c-text-large {
        font-size: 36px;
    }
}

/* PC用（768px以上で適用） */
/*
.########...######.
.##.....##.##....##
.##.....##.##......
.########..##......
.##........##......
.##........##....##
.##.........######.
*/
@media screen and (min-width: 768px) {

    /*
    .##.....##.########.########...#######.
    .##.....##.##.......##.....##.##.....##
    .##.....##.##.......##.....##.##.....##
    .#########.######...########..##.....##
    .##.....##.##.......##...##...##.....##
    .##.....##.##.......##....##..##.....##
    .##.....##.########.##.....##..#######.
    */
    .hero .wrap {
        padding-top: 6.51dvh;
    }

    /*
    .####.##....##.########.########...#######.
    ..##..###...##....##....##.....##.##.....##
    ..##..####..##....##....##.....##.##.....##
    ..##..##.##.##....##....########..##.....##
    ..##..##..####....##....##...##...##.....##
    ..##..##...###....##....##....##..##.....##
    .####.##....##....##....##.....##..#######.
    */
    .intro__figure {
        height: 26.79vw;
        max-width: 1206px;
        margin-bottom: 60px;
        /* padding: 0 20px; */
    }

    .intro__figure .intro__image01 {
        width: 10.83vw;
        max-width: 148px;
    }

    .intro__figure picture {
        display: block;
    }

    .intro__figure .intro__image02 {
        position: absolute;
        top: 50%;
        left: 47%;
        width: 61.75%;
        max-width: 720px;
        translate: -50% -50%;
    }

    .intro__figure .intro__image03 {
        position: absolute;
        top: 50%;
        left: 47%;
        width: 54.56%;
        max-width: 658px;
        translate: -50% -50%;
    }

    .intro__figure .intro__image04 {
        position: absolute;
        right: 0;
        bottom: 0;
        width: 17.86vw;
        max-width: 244px;
        margin-left: auto;
    }

    .intro__figure figcaption {
        position: absolute;
        line-height: 25px;
    }

    .intro__catch {
        top: 100px;
        left: 0;
    }

    .intro__lead {
        right: 0;
        bottom: 100px;
        text-align: right;
    }

    .intro__text {
        text-align: center;
    }

    .intro__policy {
        flex-direction: row;
        justify-content: center;
        flex-wrap: wrap;
        gap: 24px 3.43%;
        margin-top: 60px;
    }

    .intro__image {
        /* flex: 1; */
        width: calc((100% - 6.86%)/3);
        padding-top: 0;
        gap: 12px;
        width: fit-content;
        background-size: auto 40px;
    }

    .intro__image__icon {
        width: auto;
        height: 115px;
        aspect-ratio: auto;
    }

    .intro__image.intro__image01 {
        --intro__image__icon: 102px;
    }

    .intro__image.intro__image02 {
        --intro__image__icon: 165px;
    }

    .intro__image.intro__image03 {
        --intro__image__icon: 130px;
    }

    .intro__image__title {
        left: var(--intro__image__icon);
    }

    .intro__image figcaption {
        font-size: 20px;
        line-height: 1.25;
        word-break: auto-phrase;
    }

    .intro__image:nth-of-type(1) figcaption {
        white-space: nowrap;
    }

    .intro__image figcaption .c-text-accent.c-text-large {
        font-size: 30px;
    }

    /*
    ..######...########..########.########.########.####.##....##..######..
    .##....##..##.....##.##.......##..........##.....##..###...##.##....##.
    .##........##.....##.##.......##..........##.....##..####..##.##.......
    .##...####.########..######...######......##.....##..##.##.##.##...####
    .##....##..##...##...##.......##..........##.....##..##..####.##....##.
    .##....##..##....##..##.......##..........##.....##..##...###.##....##.
    ..######...##.....##.########.########....##....####.##....##..######..
    */
    .greeting {
        margin-top: 80px;
    }

    .greeting__years {
        margin-bottom: 30px;
        padding-top: 30px;
        background-size: 27.4% auto;
    }

    .greeting__years__num {
        font-size: 100px;
    }

    .greeting__years__num .c-text-large {
        font-size: 240px;
        letter-spacing: 0;
        line-height: 140px;
    }

    .greeting__years__text {
        font-size: 36px;
    }

    /*
    .##......##..#######..########..##....##..######.
    .##..##..##.##.....##.##.....##.##...##..##....##
    .##..##..##.##.....##.##.....##.##..##...##......
    .##..##..##.##.....##.########..#####.....######.
    .##..##..##.##.....##.##...##...##..##.........##
    .##..##..##.##.....##.##....##..##...##..##....##
    ..###..###...#######..##.....##.##....##..######.
    */
    .works {
        margin-top: 120px;
    }

    .works__lead {
        text-align: center;
    }

    .works__lead .c-text-large {
        font-size: 36px;
    }

    .js-slider .slick-list {
        padding-left: 10px;
        padding-right: 10px;
    }

    .works__list.slick-initialized .slick-slide {
        display: flex;
        flex-direction: column;
        gap: 35px;
        width: 86.82vw;
        max-width: 1166px;
        height: auto;
        min-height: 100%;
    }

    .works__list .slick-slide > div {
        display: flex;
        /* justify-content: center; */
        gap: 4.97%;
        height: 100%;
    }

    .works__list {
        display: flex;
        flex-wrap: wrap;
        gap: 35px 4.89%;
        margin: 26px -10px 40px;
    }

    .works__list .works__item {
        width: 350px;
        flex-basis: 30.02%;
        max-width: 350px;
    }

    .works__figure {}

    .works__category-title {
        text-align: left;
        font-size: 30px;
        line-height: 1;
        padding-bottom: 7px;
    }

    /*
    ..######...#######..##.....##.########.....###....##....##.##....##
    .##....##.##.....##.###...###.##.....##...##.##...###...##..##..##.
    .##.......##.....##.####.####.##.....##..##...##..####..##...####..
    .##.......##.....##.##.###.##.########..##.....##.##.##.##....##...
    .##.......##.....##.##.....##.##........#########.##..####....##...
    .##....##.##.....##.##.....##.##........##.....##.##...###....##...
    ..######...#######..##.....##.##........##.....##.##....##....##...
    */
    .company {}

    .company .wrap {
        max-width: 1096px;
    }

    .company__item {
        display: flex;
        flex-wrap: nowrap;
    }

    .company__term {
        flex: 0;
        flex-basis: 123px;
        padding: 10px 0;
        padding-right: 27px;
        text-align: right;
        border-right: 2px solid;
        background: transparent;
    }

    .company__desc {
        flex: 1;
        width: auto;
        padding: 10px 0;
        padding-left: 27px;
        text-align: left;
    }

    .company__desc p {
        padding-top: 0;
        font-weight: 400;
    }

    .company__accordion--content .btn--more {
        margin-top: 0;
    }

    /*
    ....###.....######...######..########..######...######.
    ...##.##...##....##.##....##.##.......##....##.##....##
    ..##...##..##.......##.......##.......##.......##......
    .##.....##.##.......##.......######....######...######.
    .#########.##.......##.......##.............##.......##
    .##.....##.##....##.##....##.##.......##....##.##....##
    .##.....##..######...######..########..######...######.
    */
    .access__map {
        display: flex;
        flex-direction: column;
        margin-top: 60px;
    }

    .access__title {
        order: 0;
        width: 375px;
        margin-bottom: 30px;
        padding-bottom: 10px;
        font-size: 26px;
        border-width: 2px;
    }

    .access__addr {
        margin-bottom: 10px;
        font-size: 20px;
    }

    .access__map iframe {
        order: 1;
        height: 545px;
        margin-top: 30px;
        margin-bottom: 0;
        border-radius: 20px;
    }

    /*
    .########....###....####.########..##....##
    .##.........##.##....##..##.....##..##..##.
    .##........##...##...##..##.....##...####..
    .######...##.....##..##..########.....##...
    .##.......#########..##..##...##......##...
    .##.......##.....##..##..##....##.....##...
    .##.......##.....##.####.##.....##....##...
    */
    .fairy {
        width: calc(100vw - 40px);
        max-width: 1170px;
        margin: 120px auto;
        border: 4px solid rgb(var(--fairy-theme-color));
    }

    .fairy .wrap {
        max-width: 976px;
        padding: 50px 12px 70px;
    }

    .fairy__header {
        justify-content: flex-start;
        align-items: flex-start;
        gap: 44px;
        margin-bottom: -70px;
    }

    .fairy__logo {
        width: 156px;
    }

    .fairy__logo img {
        width: 100%;
    }

    .fairy__title {
        margin-top: 30px;
        font-size: 40px;
        line-height: 1;
    }

    .fairy__title .c-text-small {
        font-size: 18px;
    }

    .fairy__copy {
        margin-bottom: 18px;
        font-size: 60px;
        text-transform: none;
    }

    .fairy__lead {
        margin-bottom: 2em;
        font-size: 16px;
    }

    .fairy__gallery {
        flex-wrap: nowrap;
        gap: 20px;
        margin-top: 60px;
    }

    .fairy__gallery picture {
        flex: 1;
    }

    .fairy__gallery picture:nth-of-type(1) {
        flex: 0;
        flex-basis: 47.34%;
    }

    .fairy__gallery picture img {
        width: 100%;
    }

    .btn--fairy {
        width: 366px;
        margin-top: 46px;
        margin-bottom: 0;
        border-radius: 0;
        background: transparent;
        border-bottom: 2px solid;
    }

    .btn--fairy a {
        padding: 2px 0;
    }
}

/*
    .########....###....########..##.......########.########
    ....##......##.##...##.....##.##.......##..........##...
    ....##.....##...##..##.....##.##.......##..........##...
    ....##....##.....##.########..##.......######......##...
    ....##....#########.##.....##.##.......##..........##...
    ....##....##.....##.##.....##.##.......##..........##...
    ....##....##.....##.########..########.########....##...
    */
@media screen and (min-width: 768px) and (max-width: 1024px) {

    /*
    .##.....##.########.########...#######.
    .##.....##.##.......##.....##.##.....##
    .##.....##.##.......##.....##.##.....##
    .#########.######...########..##.....##
    .##.....##.##.......##...##...##.....##
    .##.....##.##.......##....##..##.....##
    .##.....##.########.##.....##..#######.
    */
    .hero .wrap {
        padding-top: 30px;
    }

    /*
    .####.##....##.########.########...#######.
    ..##..###...##....##....##.....##.##.....##
    ..##..####..##....##....##.....##.##.....##
    ..##..##.##.##....##....########..##.....##
    ..##..##..####....##....##...##...##.....##
    ..##..##...###....##....##....##..##.....##
    .####.##....##....##....##.....##..#######.
    */
    .intro__catch {
        top: 7.32vw;
    }

    .intro__lead {
        bottom: 7.32vw;
    }

    .intro__policy {
        flex-direction: column;
        width: fit-content;
        margin-left: auto;
        margin-right: auto;
    }

    .intro__policy .intro__image {
        --intro__image__icon: 90px;
    }

    .intro__image .intro__image__icon {
        width: var(--intro__image__icon);
        height: auto;
        aspect-ratio: 1;
    }

    .intro__image__title {
        left: calc(var(--intro__image__icon) + 14px);
    }

    /*
    .##......##..#######..########..##....##..######.
    .##..##..##.##.....##.##.....##.##...##..##....##
    .##..##..##.##.....##.##.....##.##..##...##......
    .##..##..##.##.....##.########..#####.....######.
    .##..##..##.##.....##.##...##...##..##.........##
    .##..##..##.##.....##.##....##..##...##..##....##
    ..###..###...#######..##.....##.##....##..######.
    */
    .works__list {
        width: 100vw;
        height: auto;
        margin-left: -20px;
        margin-right: -20px;
    }

    /*
    .########..########..######..########..##.....##.####.########
    .##.....##.##.......##....##.##.....##.##.....##..##.....##...
    .##.....##.##.......##.......##.....##.##.....##..##.....##...
    .########..######...##.......########..##.....##..##.....##...
    .##...##...##.......##.......##...##...##.....##..##.....##...
    .##....##..##.......##....##.##....##..##.....##..##.....##...
    .##.....##.########..######..##.....##..#######..####....##...
    */
    .recruit__figure {
        width: 60%;
    }

    /*
    ....###.....######...######..########..######...######.
    ...##.##...##....##.##....##.##.......##....##.##....##
    ..##...##..##.......##.......##.......##.......##......
    .##.....##.##.......##.......######....######...######.
    .#########.##.......##.......##.............##.......##
    .##.....##.##....##.##....##.##.......##....##.##....##
    .##.....##..######...######..########..######...######.
    */
    .access__map iframe {
        height: auto;
        aspect-ratio: 16 / 9;
    }

    /*
    .########....###....####.########..##....##
    .##.........##.##....##..##.....##..##..##.
    .##........##...##...##..##.....##...####..
    .######...##.....##..##..########.....##...
    .##.......#########..##..##...##......##...
    .##.......##.....##..##..##....##.....##...
    .##.......##.....##.####.##.....##....##...
    */
    .fairy__copy {
        padding-left: 200px;
        text-align: left;
    }
}