@charset 'UTF-8';
/* ==========================================================================
   subpage
   ========================================================================== */
/* p-mv
----------------------------------------------------------------- */
.p-mv
{
    position: relative;

    overflow: hidden;

    width: 100%;
    max-height: 820px;

    background-color: #000;
}
@media screen and (max-width: 1479px) and (min-width: 1024px)
{
    .p-mv
    {
        margin-top: -2px;
    }
}
.p-mv__bg
{
    position: absolute;
    z-index: 20;
    top: 0;
    left: 0;

    width: 995px;
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-mv__bg
    {
        width: 57.8488372093vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-mv__bg
    {
        width: 67.2297297297vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-mv__bg
    {
        width: 106.884765625vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-mv__bg
    {
        width: 129.5572916667vw;
    }
}
@media screen and (max-width: 1023px)
{
    .p-mv__bg
    {
        width: 800px;
    }
}
@media screen and (max-width: 1023px) and (max-width: 1479px) and (min-width: 1280px)
{
    .p-mv__bg
    {
        width: 46.511627907vw;
    }
}
@media screen and (max-width: 1023px) and (max-width: 1279px) and (min-width: 1024px)
{
    .p-mv__bg
    {
        width: 54.0540540541vw;
    }
}
@media screen and (max-width: 1023px) and (max-width: 1023px) and (min-width: 768px)
{
    .p-mv__bg
    {
        width: 85.9375vw;
    }
}
@media screen and (max-width: 1023px) and (max-width: 767px)
{
    .p-mv__bg
    {
        width: 104.1666666667vw;
    }
}
.p-mv__slider
{
    position: absolute;
    top: 0;
    left: 50%;

    width: 100vw;
    height: 100%;

    -webkit-transform: translateX(-50%);

            transform: translateX(-50%);

    background-color: #000;
}
@media screen and (max-width: 767px)
{
    .p-mv__slider
    {
        height: 100%;
    }
}
.p-mv__slide
{
    position: relative;

    width: 100%;

    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}
.p-mv__slide--01
{
    position: relative;
}
@media screen and (max-width: 1023px)
{
    .p-mv__slide--01
    {
        background-image: url(../image/slider01_tb.jpg);
        background-position: center center;
    }
}
@media screen and (min-width: 1024px)
{
    .p-mv__slide--01
    {
        background-image: url(../image/slider01.jpg);
        background-position: center 0;
    }
}
@media screen and (max-width: 767px)
{
    .p-mv__slide--01
    {
        background-image: url(../image/slider01_sp.jpg);
        background-position: center center;
    }
}
.p-mv__slide--01:before
{
    position: absolute;
    z-index: 10;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    content: '';

    background: rgba(0, 0, 0, .4);
}
.p-mv__slide--02
{
    position: relative;
}
@media screen and (max-width: 1023px)
{
    .p-mv__slide--02
    {
        background-image: url(../image/slider02_tb.jpg);
        background-position: center center;
    }
}
@media screen and (min-width: 1024px)
{
    .p-mv__slide--02
    {
        background-image: url(../image/slider02.jpg);
        background-position: center 5%;
    }
}
@media screen and (max-width: 767px)
{
    .p-mv__slide--02
    {
        background-image: url(../image/slider02_sp.jpg);
        background-position: center center;
    }
}
.p-mv__slide--02:before
{
    position: absolute;
    z-index: 10;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    content: '';

    background: rgba(0, 0, 0, .4);
}
.p-mv__slide--03
{
    position: relative;
}
@media screen and (max-width: 1023px)
{
    .p-mv__slide--03
    {
        background-image: url(../image/slider03_tb.jpg);
        background-position: center center;
    }
}
@media screen and (min-width: 1024px)
{
    .p-mv__slide--03
    {
        background-image: url(../image/slider03.jpg);
        background-position: center 35%;
    }
}
@media screen and (max-width: 767px)
{
    .p-mv__slide--03
    {
        background-image: url(../image/slider03_sp.jpg);
        background-position: center center;
    }
}
.p-mv__slide--03:before
{
    position: absolute;
    z-index: 10;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    content: '';

    background: rgba(0, 0, 0, .4);
}
.p-mv__slide--04
{
    position: relative;
}
@media screen and (max-width: 1023px)
{
    .p-mv__slide--04
    {
        background-image: url(../image/slider04_tb.jpg);
        background-position: center center;
    }
}
@media screen and (min-width: 1024px)
{
    .p-mv__slide--04
    {
        background-image: url(../image/slider04.jpg);
        background-position: center center;
    }
}
@media screen and (max-width: 767px)
{
    .p-mv__slide--04
    {
        background-image: url(../image/slider04_sp.jpg);
        background-position: center center;
    }
}
.p-mv__slide--04:before
{
    position: absolute;
    z-index: 10;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    content: '';

    background: rgba(0, 0, 0, .4);
}
.p-mv__content
{
    position: relative;
    z-index: 10;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    width: 100%;
    height: 100%;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;
}
.p-mv__innerWrap
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: 100%;
    height: 100%;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}
@media screen and (min-width: 768px) and (max-width: 1479px)
{
    .p-mv__innerWrap
    {
        max-width: 1240px;
        margin-right: auto;
        margin-left: auto;
        padding-right: 20px;
        padding-left: 20px;
    }
}
@media screen and (max-width: 767px)
{
    .p-mv__innerWrap
    {
        padding-top: 10px;
        padding-right: 2.67vw;
        padding-left: 2.67vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 1479px) and (min-width: 1280px)
{
    .p-mv__innerWrap
    {
        padding-top: .523255814vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 1279px) and (min-width: 1024px)
{
    .p-mv__innerWrap
    {
        padding-top: .5405405405vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 1023px) and (min-width: 768px)
{
    .p-mv__innerWrap
    {
        padding-top: 1.171875vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 767px)
{
    .p-mv__innerWrap
    {
        padding-top: 2.6041666667vw;
    }
}
@media screen and (min-width: 768px)
{
    .p-mv__innerWrap
    {
        max-width: 1500px;
        margin-right: auto;
        margin-left: auto;
    }
}
.p-mv__inner
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: 100%;
    height: 100%;

    -webkit-box-align: end;

        -ms-flex-align: end;

            align-items: flex-end;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
}
.p-mv__title
{
    position: relative;

    margin-bottom: 150px;
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-mv__title
    {
        margin-bottom: 7.8488372093vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-mv__title
    {
        margin-bottom: 8.1081081081vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-mv__title
    {
        margin-bottom: 16.11328125vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-mv__title
    {
        margin-bottom: 37.109375vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-mv__title
    {
        margin-bottom: 180px;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px) and (max-width: 1479px) and (min-width: 1280px)
{
    .p-mv__title
    {
        margin-bottom: 9.4186046512vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px) and (max-width: 1279px) and (min-width: 1024px)
{
    .p-mv__title
    {
        margin-bottom: 9.7297297297vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px) and (max-width: 1023px) and (min-width: 768px)
{
    .p-mv__title
    {
        margin-bottom: 19.3359375vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px) and (max-width: 767px)
{
    .p-mv__title
    {
        margin-bottom: 44.53125vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-mv__title
    {
        margin-bottom: 75px;
    }
}
@media screen and (max-width: 767px) and (max-width: 1479px) and (min-width: 1280px)
{
    .p-mv__title
    {
        margin-bottom: 3.9244186047vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 1279px) and (min-width: 1024px)
{
    .p-mv__title
    {
        margin-bottom: 4.0540540541vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 1023px) and (min-width: 768px)
{
    .p-mv__title
    {
        margin-bottom: 8.7890625vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 767px)
{
    .p-mv__title
    {
        margin-bottom: 19.53125vw;
    }
}
.p-mv__title .en
{
    font-family: 'Josefin Sans', sans-serif;
    font-weight: 700;
    line-height: 1.2;

    position: relative;
    z-index: 10;

    text-align: right;

    color: #fff;
}
@media screen and (min-width: 1480px)
{
    .p-mv__title .en
    {
        font-size: 80px;
        font-size: 8rem;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-mv__title .en
    {
        font-size: 4.6511627907vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-mv__title .en
    {
        font-size: 5.4054054054vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-mv__title .en
    {
        font-size: 8.5365853659vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-mv__title .en
    {
        font-size: 8.8541666667vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-mv__title .en
    {
        padding-bottom: 5px;
    }
}
.p-mv__title .jp
{
    font-weight: 400;

    position: relative;
    z-index: 10;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    text-align: right;

    color: #fff;

    -webkit-box-pack: end;

        -ms-flex-pack: end;

            justify-content: flex-end;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}
@media screen and (min-width: 1480px)
{
    .p-mv__title .jp
    {
        font-size: 40px;
        font-size: 4rem;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-mv__title .jp
    {
        font-size: 2.3255813953vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-mv__title .jp
    {
        font-size: 2.7027027027vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-mv__title .jp
    {
        font-size: 5.487804878vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-mv__title .jp
    {
        font-size: 6.5104166667vw;
    }
}
.p-mv__title .jp:before
{
    display: block;

    width: 0;
    width: 300px;
    height: 1px;
    margin-right: 20px;

    content: '';
    -webkit-transition: all .3s ease 0s;
    transition: all .3s ease 0s;

    opacity: 1;
    background: #fff;
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-mv__title .jp:before
    {
        margin-right: 1.0465116279vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-mv__title .jp:before
    {
        margin-right: 1.0810810811vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-mv__title .jp:before
    {
        margin-right: 2.34375vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-mv__title .jp:before
    {
        margin-right: 5.2083333333vw;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-mv__title .jp:before
    {
        width: 17.4418604651vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-mv__title .jp:before
    {
        width: 20.2702702703vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-mv__title .jp:before
    {
        width: 29.296875vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-mv__title .jp:before
    {
        width: 22.03125vw;
    }
}
.p-mv__bgImage
{
    position: absolute;
}
@media screen and (min-width: 1024px)
{
    .p-mv__bgImage
    {
        right: -3%;
        bottom: 0;

        height: 100%;
    }
    .p-mv__bgImage img
    {
        width: auto !important;
        max-width: none !important;
        height: 100% !important;
    }
}
@media screen and (max-width: 1023px)
{
    .p-mv__bgImage
    {
        top: 0;
        left: 10%;

        width: 100%;
        height: 100%;
    }
    .p-mv__bgImage img
    {
        width: auto !important;
        max-width: none !important;
        height: 100% !important;
    }
}
@media screen and (max-width: 767px)
{
    .p-mv__bgImage
    {
        top: 0;
        left: 15%;
    }
}

.sub_mv
{
    display: block;
    overflow: hidden;

    width: 100%;
    padding-top: 115px;
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .sub_mv
    {
        padding-top: 6.0174418605vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .sub_mv
    {
        padding-top: 6.2162162162vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .sub_mv
    {
        padding-top: 13.4765625vw;
    }
}
@media screen and (max-width: 767px)
{
    .sub_mv
    {
        padding-top: 29.9479166667vw;
    }
}
@media screen and (max-width: 1023px)
{
    .sub_mv
    {
        padding-top: 8.5vw;
    }
}
@media screen and (max-width: 767px)
{
    .sub_mv
    {
        padding-top: 13vw;
    }
}
.sub_mv__inner
{
    width: 100%;
}
@media screen and (max-width: 767px)
{
    .sub_mv__inner
    {
        padding: 0vw 5.33vw 0vw 5.33vw;
    }
}
@media screen and (min-width: 768px)
{
    .sub_mv__inner
    {
        max-width: 1540px;
        margin-right: auto;
        margin-left: auto;
        padding-right: 20px;
        padding-left: 20px;
    }
}
.sub_mvInner
{
    position: relative;
    z-index: 10;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    min-height: 400px;

    -webkit-box-pack: center;

        -ms-flex-pack: center;

            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}
@media screen and (max-width: 1023px)
{
    .sub_mvInner
    {
        min-height: 55vw;
    }
}
@media screen and (max-width: 767px)
{
    .sub_mvInner
    {
        min-height: 70vw;
    }
}
.sub_mvImage
{
    position: absolute;
    z-index: -10;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;
}
.sub_mvImage:before
{
    position: absolute;
    z-index: 0;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    content: '';

    background: rgba(0, 0, 0, .5);
}
.sub_mvImage img
{
    width: 100%;
    height: 100%;

    -o-object-position: 50% 50%;

       object-position: 50% 50%;
}
.sub_mvImage.project img
{
    width: 100%;
    height: 100%;

    -o-object-position: 50% 65%;

       object-position: 50% 65%;
}
.sub_mvImage.contact img
{
    width: 100%;
    height: 100%;

    -o-object-position: 50% 70%;

       object-position: 50% 70%;
}
.sub_mvImage.error img
{
    width: 100%;
    height: 100%;

    -o-object-position: 50% 65%;

       object-position: 50% 65%;
}
.sub_mvImage.faq img
{
    width: 100%;
    height: 100%;

    -o-object-position: 50% 90%;

       object-position: 50% 90%;
}
.sub_mvImage.privacy img
{
    width: 100%;
    height: 100%;

    -o-object-position: 50% 45%;

       object-position: 50% 45%;
}
.sub_mvImage.greeting img
{
    width: 100%;
    height: 100%;

    -o-object-position: 50% 45%;

       object-position: 50% 45%;
}
.sub_mvImage.history img
{
    width: 100%;
    height: 100%;

    -o-object-position: 50% 60%;

       object-position: 50% 60%;
}
.sub_mvImage.associated img
{
    width: 100%;
    height: 100%;

    -o-object-position: 50% 70%;

       object-position: 50% 70%;
}
.sub_mvImage.proposal img
{
    width: 100%;
    height: 100%;

    -o-object-position: 50% 70%;

       object-position: 50% 70%;
}
.sub_mvImageList
{
    position: absolute;
    z-index: -10;
    top: 0;
    left: 0;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    width: 100%;
    height: 100%;

    -ms-flex-wrap: wrap;

        flex-wrap: wrap;
}
.sub_mvImageList:before
{
    position: absolute;
    z-index: 0;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    content: '';

    background: rgba(0, 0, 0, .5);
}
.sub_mvImageList img
{
    width: 33.3333333333%;
    height: 50%;
}
.sub_mvImageList.osaka img,
.sub_mvImageList.sagamihara img
{
    width: 50%;
    height: 100%;
}
.sub_mvImageList.bespoke img
{
    width: 25%;
    height: 100%;
}
.sub_mv__barItem
{
    position: absolute;
    top: 0;
    right: 0;

    height: 100%;
}
.sub_mv__barItem img
{
    width: auto;
    max-width: none;
    height: 100%;
}
@media screen and (min-width: 1024px)
{
    .sub_mv__barItem
    {
        right: 5%;

        height: 200%;
    }
}
@media screen and (max-width: 1023px)
{
    .sub_mv__barItem
    {
        right: -15%;
    }
}
@media screen and (max-width: 767px)
{
    .sub_mv__barItem
    {
        right: -10%;
    }
}

@-webkit-keyframes fadezoom
{
    0%
    {
        -webkit-transform: scale(1);
                transform: scale(1);
    }
    100%
    {
        -webkit-transform: scale(1.25);
                transform: scale(1.25);
    }
}

@keyframes fadezoom
{
    0%
    {
        -webkit-transform: scale(1);
                transform: scale(1);
    }
    100%
    {
        -webkit-transform: scale(1.25);
                transform: scale(1.25);
    }
}
.slick-animation
{
    -webkit-animation: fadezoom 10s linear 0s normal both;
            animation: fadezoom 10s linear 0s normal both;
}

/* p-breadcrumbs
-------------------------------------------------------------------------- */
@media screen and (min-width: 768px)
{
    .p-breadcrumbs
    {
        padding: 7px 0;
    }
}
@media screen and (min-width: 768px)
{
    .p-breadcrumbs__inner
    {
        max-width: 1240px;
        margin-right: auto;
        margin-left: auto;
        padding-right: 20px;
        padding-left: 20px;
    }
}
@media screen and (max-width: 767px)
{
    .p-breadcrumbs__nav
    {
        position: relative;

        overflow-x: scroll;

        -webkit-overflow-scrolling: touch;
    }
}
@media screen and (max-width: 767px)
{
    .p-breadcrumbs__list
    {
        font-size: 12px;

        display: table;

        padding: 2.67vw 0vw 2.67vw 0vw;
    }
}
@media screen and (min-width: 768px)
{
    .p-breadcrumbs__list
    {
        display: block;
    }
}
.p-breadcrumbs__item
{
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 300;
}
@media screen and (max-width: 767px)
{
    .p-breadcrumbs__item
    {
        display: table-cell;

        vertical-align: middle;
        white-space: nowrap;
    }
}
@media screen and (min-width: 768px)
{
    .p-breadcrumbs__item
    {
        display: inline;
    }
}
.p-breadcrumbs__item::before
{
    display: inline-block;

    padding: 0 .25em;

    content: '>';

    color: #1729ac;
}
.p-breadcrumbs__item:first-child::before
{
    display: none;
}
.p-breadcrumbs__link
{
    font-weight: 400;

    text-decoration: none;
}
.p-breadcrumbs__link:hover
{
    text-decoration: underline;
}

/* p-subPage
   ----------------------------------------------------------------- */
.p-subPage__headingText
{
    font-size: 20px;
}
@media screen and (min-width: 1480px)
{
    .p-subPage__headingText
    {
        font-size: 20px;
        font-size: 2rem;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-subPage__headingText
    {
        font-size: 1.1627906977vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-subPage__headingText
    {
        font-size: 1.3513513514vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-subPage__headingText
    {
        font-size: 2.4390243902vw;
    }
}
.p-subPage__menuWrap
{
    margin-right: auto;
    margin-left: auto;
}
@media screen and (min-width: 1024px)
{
    .p-subPage__menuWrap
    {
        width: 70%;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-subPage__menuWrap
    {
        width: 100%;
    }
}
.p-subPage__menu
{
    font-family: 'Josefin Sans', sans-serif;

    position: relative;
    z-index: 10;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    width: 100%;
    margin-right: auto;
    margin-left: auto;

    -webkit-box-pack: center;

        -ms-flex-pack: center;

            justify-content: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}
@media screen and (max-width: 767px)
{
    .p-subPage__menu:after
    {
        display: block;

        width: 45%;

        content: '';
    }
}
.p-subPage__menu a
{
    font-weight: 500;
    line-height: 1;

    color: #3c3c3c;
}
@media screen and (min-width: 1480px)
{
    .p-subPage__menu a
    {
        font-size: 20px;
        font-size: 2rem;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-subPage__menu a
    {
        font-size: 1.1627906977vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-subPage__menu a
    {
        font-size: 1.3513513514vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-subPage__menu a
    {
        font-size: 2.4390243902vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-subPage__menu a
    {
        font-size: 2.6041666667vw;
    }
}
@media screen and (min-width: 1024px)
{
    .p-subPage__menu a
    {
        padding-right: 30px;
        padding-left: 30px;

        border-left: 1px solid #007bc6;
    }
}
@media screen and (min-width: 1024px) and (max-width: 1479px) and (min-width: 1280px)
{
    .p-subPage__menu a
    {
        padding-left: 1.5697674419vw;
    }
}
@media screen and (min-width: 1024px) and (max-width: 1279px) and (min-width: 1024px)
{
    .p-subPage__menu a
    {
        padding-left: 1.6216216216vw;
    }
}
@media screen and (min-width: 1024px) and (max-width: 1023px) and (min-width: 768px)
{
    .p-subPage__menu a
    {
        padding-left: 3.515625vw;
    }
}
@media screen and (min-width: 1024px) and (max-width: 767px)
{
    .p-subPage__menu a
    {
        padding-left: 7.8125vw;
    }
}
@media screen and (min-width: 1024px) and (max-width: 1479px) and (min-width: 1280px)
{
    .p-subPage__menu a
    {
        padding-right: 1.5697674419vw;
    }
}
@media screen and (min-width: 1024px) and (max-width: 1279px) and (min-width: 1024px)
{
    .p-subPage__menu a
    {
        padding-right: 1.6216216216vw;
    }
}
@media screen and (min-width: 1024px) and (max-width: 1023px) and (min-width: 768px)
{
    .p-subPage__menu a
    {
        padding-right: 3.515625vw;
    }
}
@media screen and (min-width: 1024px) and (max-width: 767px)
{
    .p-subPage__menu a
    {
        padding-right: 7.8125vw;
    }
}
@media screen and (min-width: 1024px)
{
    .p-subPage__menu a:last-child
    {
        border-right: 1px solid #007bc6;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-subPage__menu a
    {
        width: 33.3333333333%;

        text-align: center;

        border-left: 1px solid #007bc6;
    }
    .p-subPage__menu a:nth-child(3n+3)
    {
        border-right: 1px solid #007bc6;
    }
    .p-subPage__menu a:last-child
    {
        border-right: 1px solid #007bc6;
    }
    .p-subPage__menu a:nth-child(n+4)
    {
        margin-top: 20px;
    }
}
@media screen and (max-width: 767px)
{
    .p-subPage__menu a
    {
        width: 50%;

        text-align: center;

        border-left: 1px solid #007bc6;
    }
    .p-subPage__menu a:nth-child(even)
    {
        border-right: 1px solid #007bc6;
    }
    .p-subPage__menu a:nth-child(n+3)
    {
        margin-top: 40px;
    }
}
@media screen and (max-width: 767px) and (max-width: 1479px) and (min-width: 1280px)
{
    .p-subPage__menu a:nth-child(n+3)
    {
        margin-top: 2.0930232558vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 1279px) and (min-width: 1024px)
{
    .p-subPage__menu a:nth-child(n+3)
    {
        margin-top: 2.1621621622vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 1023px) and (min-width: 768px)
{
    .p-subPage__menu a:nth-child(n+3)
    {
        margin-top: 4.296875vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 767px)
{
    .p-subPage__menu a:nth-child(n+3)
    {
        margin-top: 5.7291666667vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 767px)
{
    .p-subPage__menu a
    {
        font-size: 3.6458333333vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-subPage__menu.column3:after
    {
        display: block;

        width: 0;

        content: '';
    }
    .p-subPage__menu.column3 a:last-child
    {
        border-right: 1px solid #007bc6;
    }
}

/* c-list
-------------------------------------------------------------------------- */
.c-list
{
    position: relative;

    background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 210px, rgb(244, 244, 244) 210px, rgb(244, 244, 244) 100%);
}
@media screen and (max-width: 1023px)
{
    .c-list
    {
        background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), color-stop(22.5vw, rgba(0, 0, 0, 0)), color-stop(22.5vw, rgb(244, 244, 244)), to(rgb(244, 244, 244)));
        background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 22.5vw, rgb(244, 244, 244) 22.5vw, rgb(244, 244, 244) 100%);
    }
}
@media screen and (max-width: 767px)
{
    .c-list
    {
        background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), color-stop(35vw, rgba(0, 0, 0, 0)), color-stop(35vw, rgb(244, 244, 244)), to(rgb(244, 244, 244)));
        background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 35vw, rgb(244, 244, 244) 35vw, rgb(244, 244, 244) 100%);
    }
}
@media screen and (min-width: 768px)
{
    .c-list__wrap
    {
        position: relative;

        display: -webkit-box;

        display: -ms-flexbox;

        display: flex;

        -webkit-box-pack: justify;

            -ms-flex-pack: justify;

                justify-content: space-between;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    }
}
@media screen and (max-width: 1023px)
{
    .c-list__wrap
    {
        margin-bottom: 30px;
    }
}
@media screen and (max-width: 1023px) and (max-width: 1479px) and (min-width: 1280px)
{
    .c-list__wrap
    {
        margin-bottom: 1.5697674419vw;
    }
}
@media screen and (max-width: 1023px) and (max-width: 1279px) and (min-width: 1024px)
{
    .c-list__wrap
    {
        margin-bottom: 1.6216216216vw;
    }
}
@media screen and (max-width: 1023px) and (max-width: 1023px) and (min-width: 768px)
{
    .c-list__wrap
    {
        margin-bottom: 3.515625vw;
    }
}
@media screen and (max-width: 1023px) and (max-width: 767px)
{
    .c-list__wrap
    {
        margin-bottom: 7.8125vw;
    }
}
@media screen and (max-width: 1023px)
{
    .c-list__wrap.mw2-1 .c-list__item
    {
        width: 100%;
    }
    .c-list__wrap.mw2-1 .c-list__item:nth-child(n+2)
    {
        margin-top: 40px;
    }
}
@media screen and (min-width: 1024px)
{
    .c-list__wrap:after,
    .c-list__wrap:before
    {
        display: block;

        width: calc(33.3333333333% - 40px);

        content: '';
    }
    .c-list__wrap:before
    {
        -webkit-box-ordinal-group: 2;
            -ms-flex-order: 1;
                order: 1;
    }
}
.c-list__item
{
    position: relative;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;

    width: 100%;

    text-decoration: none;
}
@media screen and (min-width: 1024px)
{
    .c-list__item
    {
        width: calc(33.3333333333% - 40px);
    }
    .c-list__item:nth-child(n+4)
    {
        margin-top: 60px;
    }
}
@media screen and (max-width: 1023px)
{
    .c-list__item:nth-child(n+3)
    {
        margin-top: 40px;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .c-list__item
    {
        width: calc(50% - 20px);
    }
}
@media screen and (max-width: 767px)
{
    .c-list__item:nth-child(n+2)
    {
        margin-top: 30px;
    }
}
.c-list__item.s-text .c-list__subtextArea .text
{
    font-size: 17px;
    font-size: 1.7rem;
}
@media screen and (min-width: 1480px)
{
    .c-list__item.s-text .c-list__subtextArea .text
    {
        font-size: 17px;
        font-size: 1.7rem;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .c-list__item.s-text .c-list__subtextArea .text
    {
        font-size: .988372093vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .c-list__item.s-text .c-list__subtextArea .text
    {
        font-size: 1.1486486486vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .c-list__item.s-text .c-list__subtextArea .text
    {
        font-size: 2.0731707317vw;
    }
}
@media screen and (min-width: 1024px)
{
    .c-list__item.column4
    {
        width: calc(25% - 40px);
    }
    .c-list__item.column4:nth-child(n+4)
    {
        margin-top: 0;
    }
    .c-list__item.column4:nth-child(n+5)
    {
        margin-top: 60px;
    }
}
@media screen and (max-width: 1023px)
{
    .c-list__item.column4:nth-child(n+3)
    {
        margin-top: 40px;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .c-list__item.column4
    {
        width: calc(50% - 20px);
    }
}
@media screen and (max-width: 767px)
{
    .c-list__item.column4:nth-child(n+2)
    {
        margin-top: 30px;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .c-list__item.center
    {
        margin-right: auto;
        margin-left: auto;
    }
}
.c-list__content
{
    position: relative;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;
    overflow: hidden;

    -webkit-box-pack: center;

        -ms-flex-pack: center;

            justify-content: center;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    aspect-ratio: 4/3;
}
.c-list__textArea
{
    position: relative;
    z-index: 20;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;

    width: 100%;
    margin-bottom: 35px;
    padding: 20px 50px;

    background: rgba(0, 0, 0, .5);

    -webkit-box-pack: center;

        -ms-flex-pack: center;

            justify-content: center;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .c-list__textArea
    {
        margin-bottom: 1.8313953488vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .c-list__textArea
    {
        margin-bottom: 1.8918918919vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .c-list__textArea
    {
        margin-bottom: 4.1015625vw;
    }
}
@media screen and (max-width: 767px)
{
    .c-list__textArea
    {
        margin-bottom: 9.1145833333vw;
    }
}
@media screen and (max-width: 1023px)
{
    .c-list__textArea
    {
        padding: 20px;
    }
}
.c-list__textArea .jp
{
    font-weight: 400;
    line-height: 1;

    position: relative;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;

    text-align: right;
    white-space: nowrap;

    color: #fff;

    -webkit-box-pack: center;

        -ms-flex-pack: center;

            justify-content: center;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
}
.c-list__textArea .jp:after
{
    display: block;

    width: 2em;
    height: 1px;
    margin-top: 15px;
    margin-bottom: 15px;

    content: '';

    background: #fff;
}
@media screen and (max-width: 767px)
{
    .c-list__textArea .jp:after
    {
        margin-top: 10px;
        margin-bottom: 10px;
    }
}
@media screen and (min-width: 1480px)
{
    .c-list__textArea .jp
    {
        font-size: 35px;
        font-size: 3.5rem;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .c-list__textArea .jp
    {
        font-size: 2.0348837209vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .c-list__textArea .jp
    {
        font-size: 2.3648648649vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .c-list__textArea .jp
    {
        font-size: 3.6585365854vw;
    }
}
@media screen and (max-width: 767px)
{
    .c-list__textArea .jp
    {
        font-size: 6.5104166667vw;
    }
}
.c-list__textArea .en
{
    font-family: 'Josefin Sans', sans-serif;
    font-weight: 400;
    line-height: 1.2;

    text-align: right;
    white-space: nowrap;

    color: #fff;
}
@media screen and (min-width: 1480px)
{
    .c-list__textArea .en
    {
        font-size: 27.225px;
        font-size: 2.7225rem;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .c-list__textArea .en
    {
        font-size: 1.5828488372vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .c-list__textArea .en
    {
        font-size: 1.839527027vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .c-list__textArea .en
    {
        font-size: 3.4146341463vw;
    }
}
@media screen and (max-width: 767px)
{
    .c-list__textArea .en
    {
        font-size: 6.25vw;
    }
}
.c-list__imageArea
{
    position: absolute;
    z-index: 0;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;
}
.c-list__imageArea img
{
    display: block;

    width: 100%;
    height: 100%;
}
.c-list__imageArea .icon
{
    position: absolute;
    right: 15px;
    bottom: 15px;

    display: block;

    width: 40px;

    zindex: 10;
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .c-list__imageArea .icon
    {
        width: 2.3255813953vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .c-list__imageArea .icon
    {
        width: 2.7027027027vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .c-list__imageArea .icon
    {
        width: 4.296875vw;
    }
}
@media screen and (max-width: 767px)
{
    .c-list__imageArea .icon
    {
        width: 5.2083333333vw;
    }
}
.c-list__imageArea.blue:before
{
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    content: '';

    background: rgba(0, 56, 158, .3);
}
.c-list__imageArea.black:before
{
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    content: '';

    background: rgba(0, 0, 0, .35);
}
.c-list__imageArea.navy:before
{
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    content: '';

    background: rgba(44, 75, 130, .6);
}
.c-list__imageArea.purple:before
{
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    content: '';

    background: rgba(62, 62, 136, .6);
}
.c-list__imageArea .list
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    overflow: hidden;

    height: 100%;

    -ms-flex-wrap: wrap;

        flex-wrap: wrap;
}
.c-list__imageArea .list .item
{
    overflow: hidden;

    width: 33.3333333333%;
    height: 50%;
}
.c-list__imageArea .list4
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    height: 100%;
}
.c-list__imageArea .list4 .item
{
    overflow: hidden;

    width: 25%;
}
.c-list__btmtext
{
    margin-top: 15px;
}
.c-list__btmtextArea
{
    padding: 15px 0 20px;

    border-bottom: 1px solid #1729ac;

    -webkit-box-flex: 1;

        -ms-flex: 1;

            flex: 1;
}
.c-list__btmtextArea .title
{
    font-size: 25px;
    font-weight: 400;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    margin-bottom: 5px;
}
@media screen and (min-width: 1480px)
{
    .c-list__btmtextArea .title
    {
        font-size: 25px;
        font-size: 2.5rem;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .c-list__btmtextArea .title
    {
        font-size: 1.4534883721vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .c-list__btmtextArea .title
    {
        font-size: 1.6891891892vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .c-list__btmtextArea .title
    {
        font-size: 2.6829268293vw;
    }
}
.c-list__btmtextArea .title:before
{
    display: inline-block;

    width: .5em;
    height: 1em;
    margin-top: .3em;
    margin-right: .5em;

    content: '';

    background: -webkit-gradient(linear, left top, right top, from(#1729ac), color-stop(50%, #1729ac), color-stop(50%, #3e57dc), to(#3e57dc));

    background: linear-gradient(90deg, #1729ac 0%, #1729ac 50%, #3e57dc 50%, #3e57dc 100%);
}
.c-list__subtextArea
{
    padding: 0 0 20px;

    border-bottom: 1px solid #1729ac;

    -webkit-box-flex: 1;

        -ms-flex: 1;

            flex: 1;
}
.c-list__subtextArea.mbp
{
    margin-bottom: 20px;
}
.c-list__subtextArea .title
{
    font-family: 'Josefin Sans', sans-serif;
    font-weight: 400;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    margin-bottom: 5px;

    color: #1729ac;
}
.c-list__subtextArea .text
{
    font-size: 20px;
}
@media screen and (min-width: 1480px)
{
    .c-list__subtextArea .text
    {
        font-size: 20px;
        font-size: 2rem;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .c-list__subtextArea .text
    {
        font-size: 1.1627906977vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .c-list__subtextArea .text
    {
        font-size: 1.3513513514vw;
    }
}
.c-list__subtextArea .jp_title
{
    font-weight: 300;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;
}
@media screen and (max-width: 767px)
{
    .c-list__subtextArea .jp_title
    {
        font-size: 6.5104166667vw;
    }
}
@media screen and (min-width: 1480px)
{
    .c-list__subtextArea .jp_title
    {
        font-size: 30px;
        font-size: 3rem;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .c-list__subtextArea .jp_title
    {
        font-size: 1.7441860465vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .c-list__subtextArea .jp_title
    {
        font-size: 2.027027027vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .c-list__subtextArea .jp_title
    {
        font-size: 3.6585365854vw;
    }
}
.c-list__subtextArea .jp_title:before
{
    display: inline-block;

    width: .5em;
    height: 1em;
    margin-top: .3em;
    margin-right: .5em;

    content: '';

    background: -webkit-gradient(linear, left top, right top, from(#1729ac), color-stop(50%, #1729ac), color-stop(50%, #3e57dc), to(#3e57dc));

    background: linear-gradient(90deg, #1729ac 0%, #1729ac 50%, #3e57dc 50%, #3e57dc 100%);
}

.topMenu
{
    font-family: 'Josefin Sans', sans-serif;

    position: relative;
    z-index: 10;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    width: 80%;
    margin-right: auto;
    margin-left: auto;

    -webkit-box-pack: center;

        -ms-flex-pack: center;

            justify-content: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}
@media screen and (max-width: 1023px)
{
    .topMenu
    {
        width: 100%;
    }
}
.topMenu__item
{
    font-weight: 400;
    line-height: 1;
    line-height: 1;

    position: relative;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    margin-top: 10px;

    text-align: center;
    white-space: nowrap;

    color: #3c3c3c;

    -webkit-box-pack: center;

        -ms-flex-pack: center;

            justify-content: center;
}
@media screen and (min-width: 1480px)
{
    .topMenu__item
    {
        font-size: 20px;
        font-size: 2rem;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .topMenu__item
    {
        font-size: 1.1627906977vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .topMenu__item
    {
        font-size: 1.3513513514vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .topMenu__item
    {
        font-size: 2.4390243902vw;
    }
}
@media screen and (max-width: 767px)
{
    .topMenu__item
    {
        font-size: 2.6041666667vw;
    }
}
@media screen and (min-width: 768px) and (min-width: 1480px)
{
    .topMenu__item
    {
        font-size: 22px;
        font-size: 2.2rem;
    }
}
@media screen and (min-width: 768px) and (max-width: 1479px) and (min-width: 1280px)
{
    .topMenu__item
    {
        font-size: 1.2790697674vw;
    }
}
@media screen and (min-width: 768px) and (max-width: 1279px) and (min-width: 1024px)
{
    .topMenu__item
    {
        font-size: 1.4864864865vw;
    }
}
@media screen and (min-width: 768px) and (max-width: 1023px) and (min-width: 768px)
{
    .topMenu__item
    {
        font-size: 2.6829268293vw;
    }
}
@media screen and (min-width: 768px) and (max-width: 767px)
{
    .topMenu__item
    {
        font-size: 2.8645833333vw;
    }
}
@media screen and (min-width: 1024px)
{
    .topMenu__item
    {
        width: 33.3333333333%;
        padding-right: 30px;
        padding-left: 30px;

        border-left: 1px solid #1729ac;
    }
}
@media screen and (min-width: 1024px) and (max-width: 1479px) and (min-width: 1280px)
{
    .topMenu__item
    {
        padding-left: 1.5697674419vw;
    }
}
@media screen and (min-width: 1024px) and (max-width: 1279px) and (min-width: 1024px)
{
    .topMenu__item
    {
        padding-left: 1.6216216216vw;
    }
}
@media screen and (min-width: 1024px) and (max-width: 1023px) and (min-width: 768px)
{
    .topMenu__item
    {
        padding-left: 3.515625vw;
    }
}
@media screen and (min-width: 1024px) and (max-width: 767px)
{
    .topMenu__item
    {
        padding-left: 7.8125vw;
    }
}
@media screen and (min-width: 1024px) and (max-width: 1479px) and (min-width: 1280px)
{
    .topMenu__item
    {
        padding-right: 1.5697674419vw;
    }
}
@media screen and (min-width: 1024px) and (max-width: 1279px) and (min-width: 1024px)
{
    .topMenu__item
    {
        padding-right: 1.6216216216vw;
    }
}
@media screen and (min-width: 1024px) and (max-width: 1023px) and (min-width: 768px)
{
    .topMenu__item
    {
        padding-right: 3.515625vw;
    }
}
@media screen and (min-width: 1024px) and (max-width: 767px)
{
    .topMenu__item
    {
        padding-right: 7.8125vw;
    }
}
@media screen and (min-width: 1024px)
{
    .topMenu__item:nth-child(n+4)
    {
        margin-top: 30px;
    }
}
@media screen and (min-width: 1024px) and (max-width: 1479px) and (min-width: 1280px)
{
    .topMenu__item:nth-child(n+4)
    {
        margin-top: 1.5697674419vw;
    }
}
@media screen and (min-width: 1024px) and (max-width: 1279px) and (min-width: 1024px)
{
    .topMenu__item:nth-child(n+4)
    {
        margin-top: 1.6216216216vw;
    }
}
@media screen and (min-width: 1024px) and (max-width: 1023px) and (min-width: 768px)
{
    .topMenu__item:nth-child(n+4)
    {
        margin-top: 3.515625vw;
    }
}
@media screen and (min-width: 1024px) and (max-width: 767px)
{
    .topMenu__item:nth-child(n+4)
    {
        margin-top: 7.8125vw;
    }
}
@media screen and (min-width: 1024px)
{
    .topMenu__item:last-child:nth-child(2)
    {
        border-right: 1px solid #1729ac;
    }
    .topMenu__item:nth-child(3n+3)
    {
        border-right: 1px solid #1729ac;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .topMenu__item
    {
        width: 50%;

        text-align: center;

        border-left: 1px solid #1729ac;
    }
    .topMenu__item:nth-child(2n+2)
    {
        border-right: 1px solid #1729ac;
    }
    .topMenu__item:last-child
    {
        border-right: 1px solid #1729ac;
    }
    .topMenu__item:nth-child(n+3)
    {
        margin-top: 30px;
    }
}
@media screen and (max-width: 767px)
{
    .topMenu__item
    {
        width: 100%;
        padding-right: 15px;
        padding-left: 15px;

        text-align: left;

        border-right: 1px solid #1729ac;
        border-left: 1px solid #1729ac;
    }
    .topMenu__item:nth-child(n+2)
    {
        margin-top: 40px;
    }
}
@media screen and (max-width: 767px) and (max-width: 1479px) and (min-width: 1280px)
{
    .topMenu__item:nth-child(n+2)
    {
        margin-top: 2.0930232558vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 1279px) and (min-width: 1024px)
{
    .topMenu__item:nth-child(n+2)
    {
        margin-top: 2.1621621622vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 1023px) and (min-width: 768px)
{
    .topMenu__item:nth-child(n+2)
    {
        margin-top: 4.296875vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 767px)
{
    .topMenu__item:nth-child(n+2)
    {
        margin-top: 5.7291666667vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 1479px) and (min-width: 1280px)
{
    .topMenu__item
    {
        padding-left: .7848837209vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 1279px) and (min-width: 1024px)
{
    .topMenu__item
    {
        padding-left: .8108108108vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 1023px) and (min-width: 768px)
{
    .topMenu__item
    {
        padding-left: 1.7578125vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 767px)
{
    .topMenu__item
    {
        padding-left: 3.90625vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 1479px) and (min-width: 1280px)
{
    .topMenu__item
    {
        padding-right: .7848837209vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 1279px) and (min-width: 1024px)
{
    .topMenu__item
    {
        padding-right: .8108108108vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 1023px) and (min-width: 768px)
{
    .topMenu__item
    {
        padding-right: 1.7578125vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 767px)
{
    .topMenu__item
    {
        padding-right: 3.90625vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 767px)
{
    .topMenu__item
    {
        font-size: 4.4270833333vw;
    }
}
.topMenu__item:after
{
    line-height: 1;

    position: absolute;
    top: 0;
    right: 20px;
    bottom: 0;

    display: block;

    -webkit-box-sizing: border-box;

            box-sizing: border-box;
    width: .8em;
    height: .8em;
    margin: auto;
    margin-top: -2px;
    margin-left: 25px;

    content: '';
    -webkit-transform: translateY(-25%) rotate(135deg);
            transform: translateY(-25%) rotate(135deg);
    vertical-align: middle;

    color: #333;
    border: 1px solid #3e57dc;
    border-bottom: 0;
    border-left: 0;
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .topMenu__item:after
    {
        margin-left: 1.3081395349vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .topMenu__item:after
    {
        margin-left: 1.3513513514vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .topMenu__item:after
    {
        margin-left: 2.9296875vw;
    }
}
@media screen and (max-width: 767px)
{
    .topMenu__item:after
    {
        margin-left: 6.5104166667vw;
    }
}
@media screen and (max-width: 767px)
{
    .topMenu__item:after
    {
        right: 15px;
    }
}

.toggleBtn
{
    font-size: 24px;
    font-weight: 400;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    margin: 0 auto;
    padding: 0 20px;

    cursor: pointer;
    -webkit-transition: all .3s ease 0s;
    transition: all .3s ease 0s;

    color: #fff;
    border: 1px solid #1729ac;
    border-radius: 0 10px 0 0;
    background: #1729ac;

    -webkit-box-pack: justify;

        -ms-flex-pack: justify;

            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}
@media screen and (max-width: 767px)
{
    .toggleBtn
    {
        font-size: 17px;

        padding: 0 20px 0 5px;
    }
}
.toggleBtn:hover
{
    opacity: .7;
}
.toggleBtn .textFlex
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: 100%;
}
.toggleBtn .textFlex .image
{
    width: 55px;
    padding: 10px;

    background: #fff;
}
@media screen and (max-width: 767px)
{
    .toggleBtn .textFlex .image
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        width: 40px;
        padding: 5px;

        -webkit-box-align: center;

            -ms-flex-align: center;

                align-items: center;
    }
}
.toggleBtn .textFlex .text
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    padding: 0 20px;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;
}
@media screen and (max-width: 767px)
{
    .toggleBtn .textFlex .text
    {
        width: calc(100% - 40px);
        padding: 5px 10px;
    }
}
.toggleBtn .arrow-arrow
{
    position: relative;

    width: 1em;
}
@media screen and (max-width: 767px)
{
    .toggleBtn .arrow-arrow
    {
        width: 17px;
    }
}
.toggleBtn .arrow-arrow:before,
.toggleBtn .arrow-arrow:after
{
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    width: 100%;
    height: 2px;

    content: '';
    -webkit-transition: all .3s ease 0s;
    transition: all .3s ease 0s;

    background-color: #fff;
}
.toggleBtn .arrow-arrow:before
{
    -webkit-transform: translateX(-35%) rotate(45deg);
            transform: translateX(-35%) rotate(45deg);
}
.toggleBtn .arrow-arrow:after
{
    -webkit-transform: translateX(35%) rotate(-45deg);
            transform: translateX(35%) rotate(-45deg);
}
.toggleBtn.open .arrow-arrow:before
{
    -webkit-transform: translateX(35%) rotate(45deg);
            transform: translateX(35%) rotate(45deg);
}
.toggleBtn.open .arrow-arrow:after
{
    -webkit-transform: translateX(-35%) rotate(-45deg);
            transform: translateX(-35%) rotate(-45deg);
}

.toggleContent
{
    display: none;

    padding: 30px 20px;

    border-bottom: 1px solid #1729ac;
}
@media screen and (max-width: 767px)
{
    .toggleContent
    {
        padding: 30px 5px;
    }
}
.toggleContent__inner
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
.toggleContent .icon
{
    width: 55px;
    padding: 5px 10px;
}
@media screen and (max-width: 767px)
{
    .toggleContent .icon
    {
        width: 40px;
        padding: 5px;
    }
}
.toggleContent__wrap
{
    width: calc(100% - 80px);
    margin-left: 20px;
}
@media screen and (max-width: 767px)
{
    .toggleContent__wrap
    {
        width: calc(100% - 40px);
        margin-left: 10px;
    }
}
@media screen and (min-width: 1024px)
{
    .toggleContent .innerColum
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
            -ms-flex-direction: row-reverse;
                flex-direction: row-reverse;
    }
}
@media screen and (min-width: 1024px)
{
    .toggleContent .innerColum__item.ml50
    {
        margin-left: 40px;
    }
}
@media screen and (max-width: 1023px)
{
    .toggleContent .innerColum__item:nth-child(2)
    {
        margin-top: 20px;
    }
    .toggleContent .innerColum__item img
    {
        display: block;

        margin-right: auto;
        margin-left: auto;
    }
}

/* p-columnRayout
-------------------------------------------------------------------------- */
@media screen and (min-width: 1024px)
{
    .p-columnRayout__list
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        -webkit-box-pack: justify;

            -ms-flex-pack: justify;

                justify-content: space-between;
    }
}
.p-columnRayout__item
{
    display: block;
}
@media screen and (min-width: 1024px)
{
    .p-columnRayout__item
    {
        width: calc(50% - 30px);
    }
}
@media screen and (max-width: 1023px)
{
    .p-columnRayout__item:nth-child(n+2)
    {
        margin-top: 40px;
    }
}
.p-columnRayout__title .jp
{
    font-family: 'Noto Serif JP', serif;
    font-weight: 400;
    line-height: 1.4;

    margin-bottom: 10px;
}
@media screen and (min-width: 1480px)
{
    .p-columnRayout__title .jp
    {
        font-size: 35px;
        font-size: 3.5rem;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-columnRayout__title .jp
    {
        font-size: 2.0348837209vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-columnRayout__title .jp
    {
        font-size: 2.3648648649vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-columnRayout__title .jp
    {
        font-size: 4.2682926829vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-columnRayout__title .jp
    {
        font-size: 6.25vw;
    }
}
.p-columnRayout__title .en
{
    font-family: 'Josefin Sans', sans-serif;
    font-size: 17px;
    font-weight: 400;

    color: #1729ac;
}
@media screen and (min-width: 1480px)
{
    .p-columnRayout__title .en
    {
        font-size: 20px;
        font-size: 2rem;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-columnRayout__title .en
    {
        font-size: 1.1627906977vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-columnRayout__title .en
    {
        font-size: 1.3513513514vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-columnRayout__title .en
    {
        font-size: 2.4390243902vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-columnRayout__title .en
    {
        margin-top: 5px;
    }
}
@media screen and (min-width: 1024px)
{
    .p-columnRayout__title
    {
        margin-top: -20px;
    }
}
.p-columnRayout__text
{
    margin-top: 30px;
    padding-top: 30px;
    padding-bottom: 30px;

    border-top: 1px solid #1729ac;
    border-bottom: 1px solid #1729ac;
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-columnRayout__text
    {
        margin-top: 1.5697674419vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-columnRayout__text
    {
        margin-top: 1.6216216216vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-columnRayout__text
    {
        margin-top: 3.22265625vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-columnRayout__text
    {
        margin-top: 4.296875vw;
    }
}
.p-columnRayout__image
{
    position: relative;

    overflow: hidden;

    width: 100%;

    aspect-ratio: 4/3;
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-columnRayout__image
    {
        width: 80%;
        margin-right: auto;
        margin-left: auto;
    }
}
.p-columnRayout__image img
{
    font-family: 'object-fit: cover; object-position: 50% 50%;';

    width: 100%;
    height: 100%;

    -o-object-fit: cover;

       object-fit: cover;
    -o-object-position: 50% 50%;
       object-position: 50% 50%;
}
.p-columnRayout__bgImage
{
    position: absolute;
    right: 10px;
    bottom: 10px;

    width: 220px;

    opacity: .4;
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-columnRayout__bgImage
    {
        width: 12.7906976744vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-columnRayout__bgImage
    {
        width: 14.8648648649vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-columnRayout__bgImage
    {
        width: 21.484375vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-columnRayout__bgImage
    {
        width: 16.15625vw;
    }
}
.p-columnRayout__bgImage img
{
    max-width: 100%;
}
.p-columnRayout__btmText
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;

    margin-top: 10px;

    -webkit-box-pack: end;

        -ms-flex-pack: end;

            justify-content: flex-end;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-columnRayout__btmText
    {
        width: 80%;
        margin-right: auto;
        margin-left: auto;
    }
}
.p-columnRayout__btmText .jp
{
    font-family: 'Noto Serif JP', serif;
    font-weight: 400;
}
@media screen and (min-width: 1480px)
{
    .p-columnRayout__btmText .jp
    {
        font-size: 28px;
        font-size: 2.8rem;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-columnRayout__btmText .jp
    {
        font-size: 1.6279069767vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-columnRayout__btmText .jp
    {
        font-size: 1.8918918919vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-columnRayout__btmText .jp
    {
        font-size: 3.6585365854vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-columnRayout__btmText .jp
    {
        font-size: 5.46875vw;
    }
}
.p-columnRayout__btmText .en
{
    font-family: 'Josefin Sans', sans-serif;
    font-size: 17px;
    font-weight: 400;

    margin-top: 5px;
    margin-left: 20px;

    color: #1729ac;
}
@media screen and (min-width: 1480px)
{
    .p-columnRayout__btmText .en
    {
        font-size: 20px;
        font-size: 2rem;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-columnRayout__btmText .en
    {
        font-size: 1.1627906977vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-columnRayout__btmText .en
    {
        font-size: 1.3513513514vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-columnRayout__btmText .en
    {
        font-size: 2.4390243902vw;
    }
}

/* PhotoGallery
   ----------------------------------------------------------------- */
.photo-gallery
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-pack: justify;

        -ms-flex-pack: justify;

            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}
.photo-gallery__wrap
{
    padding-bottom: 90px;

    background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 150px, rgb(229, 242, 250) 150px, rgb(229, 242, 250) 100%);
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .photo-gallery__wrap
    {
        padding-bottom: 4.7093023256vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .photo-gallery__wrap
    {
        padding-bottom: 4.8648648649vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .photo-gallery__wrap
    {
        padding-bottom: 9.66796875vw;
    }
}
@media screen and (max-width: 767px)
{
    .photo-gallery__wrap
    {
        padding-bottom: 12.890625vw;
    }
}
@media screen and (max-width: 1023px)
{
    .photo-gallery__wrap
    {
        background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 120px, rgb(229, 242, 250) 120px, rgb(229, 242, 250) 100%);
    }
}
.photo-gallery::after
{
    display: block;

    width: calc(33.3333333333% - 12px);

    content: '';
}
.photo-gallery figure
{
    position: relative;

    overflow: hidden;

    width: calc(33.3333333333% - 10px);
    height: auto;
}
.photo-gallery figure:nth-child(n+3)
{
    margin-top: 15px;
}
@media screen and (max-width: 767px)
{
    .photo-gallery figure
    {
        width: calc(50% - 3px);
    }
    .photo-gallery figure:nth-child(n+2)
    {
        margin-top: 6px;
    }
}
.photo-gallery figure:before
{
    display: block;

    padding-top: 75%;

    content: '';
}
.photo-gallery figure a
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;
    overflow: hidden;

    width: 100%;

    aspect-ratio: 4/3;
}
.photo-gallery figure a img
{
    width: 100%;
    height: 100%;
}
.photo-gallery figure:nth-child(-n+2)
{
    width: calc(50% - 8px);
}
@media screen and (max-width: 767px)
{
    .photo-gallery figure:nth-child(-n+2)
    {
        width: 100%;
    }
}
.photo-gallery figcaption
{
    display: none;
}

/* captionGallery
   ----------------------------------------------------------------- */
.caption-gallery
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-pack: justify;

        -ms-flex-pack: justify;

            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}
.caption-gallery__wrap
{
    padding-bottom: 90px;

    background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 150px, rgb(229, 242, 250) 150px, rgb(229, 242, 250) 100%);
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .caption-gallery__wrap
    {
        padding-bottom: 4.7093023256vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .caption-gallery__wrap
    {
        padding-bottom: 4.8648648649vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .caption-gallery__wrap
    {
        padding-bottom: 9.66796875vw;
    }
}
@media screen and (max-width: 767px)
{
    .caption-gallery__wrap
    {
        padding-bottom: 12.890625vw;
    }
}
@media screen and (max-width: 1023px)
{
    .caption-gallery__wrap
    {
        background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 120px, rgb(229, 242, 250) 120px, rgb(229, 242, 250) 100%);
    }
}
.caption-gallery::after
{
    display: block;

    width: calc(33.3333333333% - 12px);

    content: '';
}
.caption-gallery figure
{
    position: relative;

    overflow: hidden;

    width: calc(33.3333333333% - 10px);
    height: auto;
}
.caption-gallery figure:nth-child(n+3)
{
    margin-top: 15px;
}
@media screen and (max-width: 767px)
{
    .caption-gallery figure
    {
        width: calc(50% - 3px);
    }
    .caption-gallery figure:nth-child(n+2)
    {
        margin-top: 6px;
    }
}
.caption-gallery figure:before
{
    display: block;

    padding-top: 75%;

    content: '';
}
.caption-gallery figure a
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;
    overflow: hidden;

    width: 100%;

    aspect-ratio: 4/3;
}
.caption-gallery figure a img
{
    width: 100%;
    height: 100%;
}
.caption-gallery figure:nth-child(-n+2)
{
    width: calc(50% - 8px);
}
@media screen and (max-width: 767px)
{
    .caption-gallery figure:nth-child(-n+2)
    {
        width: 100%;
    }
}
.caption-gallery figcaption
{
    margin-top: 5px;
}
.caption-gallery figcaption span
{
    display: inline-block;

    margin-right: 5px;

    color: #1729ac;
}

/* youtube
----------------------------------------------------------------- */
.youtube
{
    position: relative;

    width: 100%;

    aspect-ratio: 16/9;
}
.youtube iframe
{
    position: absolute;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;
}
.youtube__text
{
    margin-top: 15px;
}
.youtube__text span
{
    margin-right: 5px;

    color: #1729ac;
}

/* p-recruit
-------------------------------------------------------------------------- */
.p-recruit
{
    position: relative;
}
.p-recruit__imageList
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
@media screen and (max-width: 1023px)
{
    .p-recruit__imageList
    {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    }
}
.p-recruit__imageItem
{
    background: #007bc6;

    aspect-ratio: 4/3;
}
@media screen and (max-width: 1023px)
{
    .p-recruit__imageItem
    {
        width: 50%;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-recruit__imageItem
    {
        aspect-ratio: 2/1 !important;
    }
}
@media screen and (max-width: 1023px)
{
    .p-recruit__imageItem:nth-child(1)
    {
        width: 100%;
    }
}
.p-recruit__imageItem img
{
    width: 100%;
    height: 100%;

    opacity: .4;
}
.p-recruit__textArea
{
    position: absolute;
    z-index: 10;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;

    margin: auto;

    text-align: center;

    -webkit-box-pack: center;

        -ms-flex-pack: center;

            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}
.p-recruit__title
{
    font-family: 'Josefin Sans', sans-serif;
    font-weight: 500;
    line-height: 1;

    position: relative;
    position: relative;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;

    width: -webkit-fit-content;

    width: -moz-fit-content;

    width: fit-content;
    width: 100%;
    margin-right: auto;
    margin-left: auto;

    text-align: center;

    color: #fff;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}
@media screen and (max-width: 767px)
{
    .p-recruit__title
    {
        font-size: 7.8125vw;
    }
}
@media screen and (min-width: 768px)
{
    .p-recruit__title
    {
        white-space: nowrap;
    }
}
@media screen and (max-width: 767px) and (max-width: 767px)
{
    .p-recruit__title
    {
        font-size: 10.4166666667vw;
    }
}
.p-recruit__disc
{
    font-weight: 400;

    width: 100%;
    margin-top: 15px;

    color: #fff;
}
@media screen and (max-width: 767px)
{
    .p-recruit__disc
    {
        font-size: 3.515625vw;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-recruit__disc
    {
        margin-top: .7848837209vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-recruit__disc
    {
        margin-top: .8108108108vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-recruit__disc
    {
        margin-top: 1.611328125vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-recruit__disc
    {
        margin-top: 2.1484375vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 767px)
{
    .p-recruit__disc
    {
        font-size: 4.5572916667vw;
    }
}

/* p-project
-------------------------------------------------------------------------- */
.p-project.type1
{
    background: #e5f2fa;
}
.p-project.type2
{
    background: #f7f7f7;
}
.p-project__pageTitle
{
    font-weight: 400;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    width: 100%;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;
}
@media screen and (max-width: 767px)
{
    .p-project__pageTitle
    {
        font-size: 3.515625vw;
    }
}
.p-project__pageTitle img
{
    width: 35px;
    margin-right: 10px;
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-project__pageTitle img
    {
        width: 2.0348837209vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-project__pageTitle img
    {
        width: 2.3648648649vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-project__pageTitle img
    {
        width: 3.759765625vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-project__pageTitle img
    {
        width: 4.5572916667vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 767px)
{
    .p-project__pageTitle
    {
        font-size: 4.5572916667vw;
    }
}
.p-project__list
{
    margin-top: 30px;
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-project__list
    {
        margin-top: 1.5697674419vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-project__list
    {
        margin-top: 1.6216216216vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-project__list
    {
        margin-top: 3.22265625vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-project__list
    {
        margin-top: 4.296875vw;
    }
}
@media screen and (min-width: 1024px)
{
    .p-project__list
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        -ms-flex-wrap: wrap;

            flex-wrap: wrap;
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between;
    }
}
@media screen and (max-width: 767px)
{
    .p-project__list
    {
        width: 100%;
    }
}
.p-project__item
{
    display: block;

    width: calc(50% - 30px);
}
@media screen and (max-width: 1023px)
{
    .p-project__item
    {
        width: 80%;
        margin-right: auto;
        margin-left: auto;
    }
    .p-project__item:nth-child(n+2)
    {
        margin-top: 30px;
    }
}
@media screen and (max-width: 767px)
{
    .p-project__item
    {
        width: 100%;
    }
    .p-project__item:nth-child(n+2)
    {
        margin-top: 30px;
    }
}
.p-project__itemWrap
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    overflow: hidden;

    width: 100%;

    border: 1px solid #ddd;
    border-radius: 10px;

    -webkit-box-pack: justify;

        -ms-flex-pack: justify;

            justify-content: space-between;
}
@media screen and (max-width: 767px)
{
    .p-project__itemWrap
    {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
    }
}
.p-project__imageArea
{
    overflow: hidden;

    width: 45%;

    aspect-ratio: 4/3;
}
@media screen and (max-width: 767px)
{
    .p-project__imageArea
    {
        width: 100%;

        aspect-ratio: 2/1;
    }
}
.p-project__imageArea img
{
    width: 100%;
    height: 100%;
}
.p-project__textArea
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;

    width: 55%;

    background: url(../image/project/bg.png);
    background-size: cover;

    -webkit-box-pack: justify;

        -ms-flex-pack: justify;

            justify-content: space-between;
}
@media screen and (max-width: 767px)
{
    .p-project__textArea
    {
        width: 100%;
    }
}
.p-project__addless
{
    font-weight: 600;

    padding-top: 5px;
    padding-bottom: 5px;

    text-align: center;

    color: #4a2d19;
    background: rgba(255, 255, 255, .4);
}
@media screen and (max-width: 767px)
{
    .p-project__addless
    {
        font-size: 5.859375vw;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-project__addless
    {
        padding-top: .261627907vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-project__addless
    {
        padding-top: .2702702703vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-project__addless
    {
        padding-top: .537109375vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-project__addless
    {
        padding-top: .7161458333vw;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-project__addless
    {
        padding-bottom: .261627907vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-project__addless
    {
        padding-bottom: .2702702703vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-project__addless
    {
        padding-bottom: .537109375vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-project__addless
    {
        padding-bottom: .7161458333vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-project__addless
    {
        padding-bottom: 10px;
    }
}
@media screen and (max-width: 767px) and (max-width: 767px)
{
    .p-project__addless
    {
        font-size: 7.1614583333vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 1479px) and (min-width: 1280px)
{
    .p-project__addless
    {
        padding-bottom: .523255814vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 1279px) and (min-width: 1024px)
{
    .p-project__addless
    {
        padding-bottom: .5405405405vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 1023px) and (min-width: 768px)
{
    .p-project__addless
    {
        padding-bottom: 1.07421875vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 767px)
{
    .p-project__addless
    {
        padding-bottom: 1.4322916667vw;
    }
}
.p-project__desc
{
    font-weight: 600;

    padding-top: 5px;
    padding-bottom: 5px;

    text-align: center;

    color: #4a2d19;
}
@media screen and (max-width: 767px)
{
    .p-project__desc
    {
        font-size: 3.2552083333vw;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-project__desc
    {
        padding-top: .261627907vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-project__desc
    {
        padding-top: .2702702703vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-project__desc
    {
        padding-top: .537109375vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-project__desc
    {
        padding-top: .7161458333vw;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-project__desc
    {
        padding-bottom: .261627907vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-project__desc
    {
        padding-bottom: .2702702703vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-project__desc
    {
        padding-bottom: .537109375vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-project__desc
    {
        padding-bottom: .7161458333vw;
    }
}
@media screen and (max-width: 1023px)
{
    .p-project__desc
    {
        padding-top: 10px;
        padding-bottom: 20px;
    }
}
@media screen and (max-width: 1023px) and (max-width: 1479px) and (min-width: 1280px)
{
    .p-project__desc
    {
        padding-top: .523255814vw;
    }
}
@media screen and (max-width: 1023px) and (max-width: 1279px) and (min-width: 1024px)
{
    .p-project__desc
    {
        padding-top: .5405405405vw;
    }
}
@media screen and (max-width: 1023px) and (max-width: 1023px) and (min-width: 768px)
{
    .p-project__desc
    {
        padding-top: 1.07421875vw;
    }
}
@media screen and (max-width: 1023px) and (max-width: 767px)
{
    .p-project__desc
    {
        padding-top: 1.4322916667vw;
    }
}
@media screen and (max-width: 1023px) and (max-width: 1479px) and (min-width: 1280px)
{
    .p-project__desc
    {
        padding-bottom: 1.0465116279vw;
    }
}
@media screen and (max-width: 1023px) and (max-width: 1279px) and (min-width: 1024px)
{
    .p-project__desc
    {
        padding-bottom: 1.0810810811vw;
    }
}
@media screen and (max-width: 1023px) and (max-width: 1023px) and (min-width: 768px)
{
    .p-project__desc
    {
        padding-bottom: 2.1484375vw;
    }
}
@media screen and (max-width: 1023px) and (max-width: 767px)
{
    .p-project__desc
    {
        padding-bottom: 2.8645833333vw;
    }
}
@media screen and (max-width: 767px) and (min-width: 1480px)
{
    .p-project__desc
    {
        font-size: 20px;
        font-size: 2rem;
    }
}
@media screen and (max-width: 767px) and (max-width: 1479px) and (min-width: 1280px)
{
    .p-project__desc
    {
        font-size: 1.1627906977vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 1279px) and (min-width: 1024px)
{
    .p-project__desc
    {
        font-size: 1.3513513514vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 1023px) and (min-width: 768px)
{
    .p-project__desc
    {
        font-size: 2.4390243902vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 767px)
{
    .p-project__desc
    {
        font-size: 2.6041666667vw;
    }
}
.p-project__textAreaInner
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: 100%;
    padding-top: 15px;
    padding-bottom: 15px;

    -webkit-box-pack: center;

        -ms-flex-pack: center;

            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-project__textAreaInner
    {
        padding-top: .7848837209vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-project__textAreaInner
    {
        padding-top: .8108108108vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-project__textAreaInner
    {
        padding-top: 1.611328125vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-project__textAreaInner
    {
        padding-top: 2.1484375vw;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-project__textAreaInner
    {
        padding-bottom: .7848837209vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-project__textAreaInner
    {
        padding-bottom: .8108108108vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-project__textAreaInner
    {
        padding-bottom: 1.611328125vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-project__textAreaInner
    {
        padding-bottom: 2.1484375vw;
    }
}
@media screen and (max-width: 1023px)
{
    .p-project__textAreaInner
    {
        padding-top: 20px;
        padding-bottom: 20px;
    }
}
@media screen and (max-width: 1023px) and (max-width: 1479px) and (min-width: 1280px)
{
    .p-project__textAreaInner
    {
        padding-top: 1.0465116279vw;
    }
}
@media screen and (max-width: 1023px) and (max-width: 1279px) and (min-width: 1024px)
{
    .p-project__textAreaInner
    {
        padding-top: 1.0810810811vw;
    }
}
@media screen and (max-width: 1023px) and (max-width: 1023px) and (min-width: 768px)
{
    .p-project__textAreaInner
    {
        padding-top: 2.1484375vw;
    }
}
@media screen and (max-width: 1023px) and (max-width: 767px)
{
    .p-project__textAreaInner
    {
        padding-top: 2.8645833333vw;
    }
}
@media screen and (max-width: 1023px) and (max-width: 1479px) and (min-width: 1280px)
{
    .p-project__textAreaInner
    {
        padding-bottom: 1.0465116279vw;
    }
}
@media screen and (max-width: 1023px) and (max-width: 1279px) and (min-width: 1024px)
{
    .p-project__textAreaInner
    {
        padding-bottom: 1.0810810811vw;
    }
}
@media screen and (max-width: 1023px) and (max-width: 1023px) and (min-width: 768px)
{
    .p-project__textAreaInner
    {
        padding-bottom: 2.1484375vw;
    }
}
@media screen and (max-width: 1023px) and (max-width: 767px)
{
    .p-project__textAreaInner
    {
        padding-bottom: 2.8645833333vw;
    }
}
.p-project__title
{
    font-weight: 600;

    padding-top: 3px;
    padding-bottom: 3px;

    color: #4a2d19;
    border-top: 3px solid #4a2d19;
    border-bottom: 3px solid #4a2d19;
}
@media screen and (max-width: 767px)
{
    .p-project__title
    {
        font-size: 2.6041666667vw;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-project__title
    {
        padding-top: .1569767442vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-project__title
    {
        padding-top: .1621621622vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-project__title
    {
        padding-top: .322265625vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-project__title
    {
        padding-top: .4296875vw;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-project__title
    {
        padding-bottom: .1569767442vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-project__title
    {
        padding-bottom: .1621621622vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-project__title
    {
        padding-bottom: .322265625vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-project__title
    {
        padding-bottom: .4296875vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-project__title
    {
        font-size: 17px;

        border-top: 2px solid #4a2d19;
        border-bottom: 2px solid #4a2d19;
    }
}
.p-project__logo
{
    width: 50px;
    margin-right: 10px;
    margin-left: 10px;
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-project__logo
    {
        width: 2.9069767442vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-project__logo
    {
        width: 3.3783783784vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-project__logo
    {
        width: 5.37109375vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-project__logo
    {
        width: 6.5104166667vw;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-project__logo
    {
        margin-left: .523255814vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-project__logo
    {
        margin-left: .5405405405vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-project__logo
    {
        margin-left: 1.07421875vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-project__logo
    {
        margin-left: 1.4322916667vw;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-project__logo
    {
        margin-right: .523255814vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-project__logo
    {
        margin-right: .5405405405vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-project__logo
    {
        margin-right: 1.07421875vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-project__logo
    {
        margin-right: 1.4322916667vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-project__logo
    {
        width: 80px;
    }
}
@media screen and (max-width: 767px) and (max-width: 1479px) and (min-width: 1280px)
{
    .p-project__logo
    {
        width: 4.6511627907vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 1279px) and (min-width: 1024px)
{
    .p-project__logo
    {
        width: 5.4054054054vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 1023px) and (min-width: 768px)
{
    .p-project__logo
    {
        width: 8.59375vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 767px)
{
    .p-project__logo
    {
        width: 10.4166666667vw;
    }
}
.p-project__en
{
    font-family: 'Josefin Sans', sans-serif;
    line-height: 1;

    padding-top: 7px;
    padding-bottom: 7px;

    color: #4a2d19;
}
@media screen and (max-width: 767px)
{
    .p-project__en
    {
        font-size: 2.8645833333vw;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-project__en
    {
        padding-top: .3662790698vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-project__en
    {
        padding-top: .3783783784vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-project__en
    {
        padding-top: .751953125vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-project__en
    {
        padding-top: 1.0026041667vw;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-project__en
    {
        padding-bottom: .3662790698vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-project__en
    {
        padding-bottom: .3783783784vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-project__en
    {
        padding-bottom: .751953125vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-project__en
    {
        padding-bottom: 1.0026041667vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-project__en
    {
        font-size: 17px;

        padding-top: 10px;
        padding-bottom: 10px;
    }
}
@media screen and (max-width: 767px) and (max-width: 1479px) and (min-width: 1280px)
{
    .p-project__en
    {
        padding-top: .523255814vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 1279px) and (min-width: 1024px)
{
    .p-project__en
    {
        padding-top: .5405405405vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 1023px) and (min-width: 768px)
{
    .p-project__en
    {
        padding-top: 1.07421875vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 767px)
{
    .p-project__en
    {
        padding-top: 1.4322916667vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 1479px) and (min-width: 1280px)
{
    .p-project__en
    {
        padding-bottom: .523255814vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 1279px) and (min-width: 1024px)
{
    .p-project__en
    {
        padding-bottom: .5405405405vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 1023px) and (min-width: 768px)
{
    .p-project__en
    {
        padding-bottom: 1.07421875vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 767px)
{
    .p-project__en
    {
        padding-bottom: 1.4322916667vw;
    }
}
.p-project__en.type1
{
    border-top: 3px solid #f09dc1;
    border-bottom: 3px solid #82be62;
}
@media screen and (max-width: 767px)
{
    .p-project__en.type1
    {
        border-top: 2px solid #f09dc1;
        border-bottom: 2px solid #82be62;
    }
}
.p-project__en.type2
{
    border-top: 3px solid #82be62;
    border-bottom: 3px solid #ffc373;
}
@media screen and (max-width: 767px)
{
    .p-project__en.type2
    {
        border-top: 2px solid #82be62;
        border-bottom: 2px solid #ffc373;
    }
}
.p-project__bg
{
    width: 100%;
    height: 100%;
}
.p-project__image
{
    font-family: 'object-fit: cover; object-position: 50% 100%;';

    width: 100%;
    height: 100%;

    -o-object-fit: cover;

       object-fit: cover;
    -o-object-position: 50% 100%;
       object-position: 50% 100%;
}
@media screen and (max-width: 767px)
{
    .p-project__image.bottom
    {
        font-family: 'object-fit: cover; object-position: 50% 0%;';

        -o-object-position: 50% 0;

           object-position: 50% 0;
    }
    .p-project__image.left
    {
        font-family: 'object-fit: cover; object-position: 0% 100%;';

        -o-object-position: 0 100%;

           object-position: 0 100%;
    }
}
.p-project__btnText
{
    margin-top: 15px;
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-project__btnText
    {
        margin-top: .7848837209vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-project__btnText
    {
        margin-top: .8108108108vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-project__btnText
    {
        margin-top: 1.611328125vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-project__btnText
    {
        margin-top: 2.1484375vw;
    }
}

/* p-projectDetail
-------------------------------------------------------------------------- */
.p-projectDetail__imageList
{
    position: relative;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;
}
@media screen and (max-width: 1023px)
{
    .p-projectDetail__imageList
    {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    }
}
.p-projectDetail__imageItem
{
    background: #f7f7f7;

    aspect-ratio: 16/9;
}
@media screen and (max-width: 1023px)
{
    .p-projectDetail__imageItem
    {
        aspect-ratio: 4/3;
    }
}
@media screen and (max-width: 1023px)
{
    .p-projectDetail__imageItem
    {
        width: 100%;
    }
}
.p-projectDetail__imageItem img
{
    width: 100%;
    height: 100%;
}
.p-projectDetail__textArea
{
    position: absolute;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    width: 100%;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    margin: auto;
    padding-top: 15px;
    padding-bottom: 15px;

    background: rgba(248, 247, 236, .7);

    -webkit-box-pack: center;

        -ms-flex-pack: center;

            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}
@media screen and (min-width: 1024px)
{
    .p-projectDetail__textArea
    {
        top: 0;
    }
}
@media screen and (max-width: 1023px)
{
    .p-projectDetail__textArea
    {
        top: 0;
        bottom: 0;
    }
}
.p-projectDetail__textArea.center
{
    top: 0;
    bottom: 0;
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-projectDetail__textArea
    {
        padding-top: .7848837209vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-projectDetail__textArea
    {
        padding-top: .8108108108vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-projectDetail__textArea
    {
        padding-top: 1.611328125vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-projectDetail__textArea
    {
        padding-top: 2.1484375vw;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-projectDetail__textArea
    {
        padding-bottom: .7848837209vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-projectDetail__textArea
    {
        padding-bottom: .8108108108vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-projectDetail__textArea
    {
        padding-bottom: 1.611328125vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-projectDetail__textArea
    {
        padding-bottom: 2.1484375vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-projectDetail__textArea
    {
        padding-top: 20px;
        padding-bottom: 20px;
    }
}
@media screen and (max-width: 767px) and (max-width: 1479px) and (min-width: 1280px)
{
    .p-projectDetail__textArea
    {
        padding-top: 1.0465116279vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 1279px) and (min-width: 1024px)
{
    .p-projectDetail__textArea
    {
        padding-top: 1.0810810811vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 1023px) and (min-width: 768px)
{
    .p-projectDetail__textArea
    {
        padding-top: 2.1484375vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 767px)
{
    .p-projectDetail__textArea
    {
        padding-top: 2.8645833333vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 1479px) and (min-width: 1280px)
{
    .p-projectDetail__textArea
    {
        padding-bottom: 1.0465116279vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 1279px) and (min-width: 1024px)
{
    .p-projectDetail__textArea
    {
        padding-bottom: 1.0810810811vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 1023px) and (min-width: 768px)
{
    .p-projectDetail__textArea
    {
        padding-bottom: 2.1484375vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 767px)
{
    .p-projectDetail__textArea
    {
        padding-bottom: 2.8645833333vw;
    }
}
.p-projectDetail__title
{
    font-weight: 600;

    padding-top: 3px;
    padding-bottom: 3px;

    color: #4a2d19;
    border-top: 3px solid #4a2d19;
    border-bottom: 3px solid #4a2d19;
}
@media screen and (max-width: 767px)
{
    .p-projectDetail__title
    {
        font-size: 3.515625vw;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-projectDetail__title
    {
        padding-top: .1569767442vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-projectDetail__title
    {
        padding-top: .1621621622vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-projectDetail__title
    {
        padding-top: .322265625vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-projectDetail__title
    {
        padding-top: .4296875vw;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-projectDetail__title
    {
        padding-bottom: .1569767442vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-projectDetail__title
    {
        padding-bottom: .1621621622vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-projectDetail__title
    {
        padding-bottom: .322265625vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-projectDetail__title
    {
        padding-bottom: .4296875vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 767px)
{
    .p-projectDetail__title
    {
        font-size: 4.5572916667vw;
    }
}
.p-projectDetail__logo
{
    width: 83px;
    margin-right: 20px;
    margin-left: 20px;
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-projectDetail__logo
    {
        width: 4.8255813953vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-projectDetail__logo
    {
        width: 5.6081081081vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-projectDetail__logo
    {
        width: 8.916015625vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-projectDetail__logo
    {
        width: 10.8072916667vw;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-projectDetail__logo
    {
        margin-left: 1.0465116279vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-projectDetail__logo
    {
        margin-left: 1.0810810811vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-projectDetail__logo
    {
        margin-left: 2.1484375vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-projectDetail__logo
    {
        margin-left: 2.8645833333vw;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-projectDetail__logo
    {
        margin-right: 1.0465116279vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-projectDetail__logo
    {
        margin-right: 1.0810810811vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-projectDetail__logo
    {
        margin-right: 2.1484375vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-projectDetail__logo
    {
        margin-right: 2.8645833333vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-projectDetail__logo
    {
        width: 98px;
    }
}
@media screen and (max-width: 767px) and (max-width: 1479px) and (min-width: 1280px)
{
    .p-projectDetail__logo
    {
        width: 5.6976744186vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 1279px) and (min-width: 1024px)
{
    .p-projectDetail__logo
    {
        width: 6.6216216216vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 1023px) and (min-width: 768px)
{
    .p-projectDetail__logo
    {
        width: 10.52734375vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 767px)
{
    .p-projectDetail__logo
    {
        width: 12.7604166667vw;
    }
}
.p-projectDetail__en
{
    font-family: 'Josefin Sans', sans-serif;
    line-height: 1;

    padding-top: 7px;
    padding-bottom: 7px;

    color: #4a2d19;
}
@media screen and (max-width: 767px)
{
    .p-projectDetail__en
    {
        font-size: 4.1666666667vw;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-projectDetail__en
    {
        padding-top: .3662790698vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-projectDetail__en
    {
        padding-top: .3783783784vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-projectDetail__en
    {
        padding-top: .751953125vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-projectDetail__en
    {
        padding-top: 1.0026041667vw;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-projectDetail__en
    {
        padding-bottom: .3662790698vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-projectDetail__en
    {
        padding-bottom: .3783783784vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-projectDetail__en
    {
        padding-bottom: .751953125vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-projectDetail__en
    {
        padding-bottom: 1.0026041667vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-projectDetail__en
    {
        padding-top: 10px;
        padding-bottom: 10px;
    }
}
@media screen and (max-width: 767px) and (max-width: 1479px) and (min-width: 1280px)
{
    .p-projectDetail__en
    {
        padding-top: .523255814vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 1279px) and (min-width: 1024px)
{
    .p-projectDetail__en
    {
        padding-top: .5405405405vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 1023px) and (min-width: 768px)
{
    .p-projectDetail__en
    {
        padding-top: 1.07421875vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 767px)
{
    .p-projectDetail__en
    {
        padding-top: 1.4322916667vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 1479px) and (min-width: 1280px)
{
    .p-projectDetail__en
    {
        padding-bottom: .523255814vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 1279px) and (min-width: 1024px)
{
    .p-projectDetail__en
    {
        padding-bottom: .5405405405vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 1023px) and (min-width: 768px)
{
    .p-projectDetail__en
    {
        padding-bottom: 1.07421875vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 767px)
{
    .p-projectDetail__en
    {
        padding-bottom: 1.4322916667vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 767px)
{
    .p-projectDetail__en
    {
        font-size: 5.2083333333vw;
    }
}
.p-projectDetail__en.type1
{
    border-top: 3px solid #f09dc1;
    border-bottom: 3px solid #82be62;
}
.p-projectDetail__en.type2
{
    border-top: 3px solid #82be62;
    border-bottom: 3px solid #ffc373;
}
.p-projectDetail__pageTitle
{
    font-weight: 400;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    width: 100%;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;
}
@media screen and (max-width: 767px)
{
    .p-projectDetail__pageTitle
    {
        font-size: 3.515625vw;
    }
}
.p-projectDetail__pageTitle img
{
    width: 35px;
    margin-right: 10px;
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-projectDetail__pageTitle img
    {
        width: 2.0348837209vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-projectDetail__pageTitle img
    {
        width: 2.3648648649vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-projectDetail__pageTitle img
    {
        width: 3.759765625vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-projectDetail__pageTitle img
    {
        width: 4.5572916667vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 767px)
{
    .p-projectDetail__pageTitle
    {
        font-size: 4.5572916667vw;
    }
}
@media screen and (min-width: 1024px)
{
    .p-projectDetail__list
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        -ms-flex-wrap: wrap;

            flex-wrap: wrap;
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between;
    }
}
@media screen and (max-width: 767px)
{
    .p-projectDetail__list
    {
        width: 100%;
    }
}
.p-projectDetail__item
{
    display: block;

    width: calc(50% - 30px);
}
@media screen and (max-width: 1023px)
{
    .p-projectDetail__item
    {
        width: 80%;
        margin-right: auto;
        margin-left: auto;
    }
    .p-projectDetail__item:nth-child(n+2)
    {
        margin-top: 30px;
    }
}
@media screen and (max-width: 767px)
{
    .p-projectDetail__item
    {
        width: 100%;
    }
    .p-projectDetail__item:nth-child(n+2)
    {
        margin-top: 30px;
    }
}
.p-projectDetail__itemWrap
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: 100%;

    border: 1px solid #402a1d;

    -webkit-box-pack: justify;

        -ms-flex-pack: justify;

            justify-content: space-between;
}
.p-projectDetail__imageArea
{
    overflow: hidden;

    width: 45%;

    aspect-ratio: 4/3;
}
@media screen and (max-width: 767px)
{
    .p-projectDetail__imageArea
    {
        width: 40%;
    }
}
.p-projectDetail__imageArea img
{
    width: 100%;
    height: 100%;
}
.p-projectDetail__desc
{
    font-weight: 600;
}
@media screen and (max-width: 767px)
{
    .p-projectDetail__desc
    {
        font-size: 3.515625vw;
    }
}
@media screen and (min-width: 1024px)
{
    .p-projectDetail__desc
    {
        text-align: center;
    }
}
@media screen and (max-width: 767px) and (max-width: 767px)
{
    .p-projectDetail__desc
    {
        font-size: 4.5572916667vw;
    }
}
.p-projectDetail__mapWrap
{
    background: #f7f7f7;
}
.p-projectDetail__mapBtmText
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;

    margin-top: 10px;
}
.p-projectDetail__mapBtmItem
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin-top: 10px;
}
.p-projectDetail__contactArea
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    overflow: hidden;

    border: solid 1px #ddd;
    border-radius: 10px;
    background: url(../image/project/bg.png);
    background-size: cover;
}
@media screen and (max-width: 1023px)
{
    .p-projectDetail__contactArea
    {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-projectDetail__contactArea
    {
        width: 80%;
        margin-right: auto;
        margin-left: auto;
    }
}
.p-projectDetail__contactItem
{
    position: relative;

    width: 50%;
}
@media screen and (max-width: 1023px)
{
    .p-projectDetail__contactItem
    {
        width: 100%;
    }
}
.p-projectDetail__contactTextArea
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;

    height: 100%;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}
@media screen and (max-width: 1023px)
{
    .p-projectDetail__contactTextArea
    {
        padding: 30px 0;
    }
}
.p-projectDetail__contactTitle
{
    font-weight: 600;

    color: #4a2d19;
}
@media screen and (max-width: 767px)
{
    .p-projectDetail__contactTitle
    {
        font-size: 3.3854166667vw;
    }
}
.p-projectDetail__contactTitle:after,
.p-projectDetail__contactTitle:before
{
    content: '／';
}
.p-projectDetail__contactTitle:after
{
    margin-left: 5px;
}
.p-projectDetail__contactTitle:before
{
    margin-right: 5px;
}
.p-projectDetail__contactTel
{
    font-family: 'Josefin Sans', sans-serif;
    font-weight: 600;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    margin: 15px 0;

    color: #4a2d19;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}
@media screen and (max-width: 767px)
{
    .p-projectDetail__contactTel
    {
        font-size: 5.2083333333vw;
    }
}
.p-projectDetail__contactTel img
{
    width: 35px;
    margin-right: 10px;
}
.p-projectDetail__contactImage
{
    width: 100%;

    aspect-ratio: 16/7;
}
@media screen and (max-width: 1023px)
{
    .p-projectDetail__contactImage
    {
        aspect-ratio: 16/9;
    }
}
.p-projectDetail__contactImage img
{
    width: 100%;
    height: 100%;
}

.p-flow__wrap
{
    max-width: 1040px;
    margin-right: auto;
    margin-left: auto;
    padding-top: 30px;
    padding-right: 20px;
    padding-bottom: 30px;
    padding-left: 20px;

    border-top: 1px solid #007bc6;
    border-bottom: 1px solid #007bc6;
}
.p-flow__titleWrap
{
    text-align: center;
}
@media screen and (min-width: 1480px)
{
    .p-flow__titleWrap .jp
    {
        font-size: 30px;
        font-size: 3rem;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-flow__titleWrap .jp
    {
        font-size: 1.7441860465vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-flow__titleWrap .jp
    {
        font-size: 2.027027027vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-flow__titleWrap .jp
    {
        font-size: 3.6585365854vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-flow__titleWrap .jp
    {
        font-size: 4.5572916667vw;
    }
}
.p-flow__title
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
@media screen and (min-width: 1024px)
{
    .p-flow__title
    {
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
    }
}
@media screen and (max-width: 1023px)
{
    .p-flow__title
    {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;

        -webkit-box-align: start;

            -ms-flex-align: start;

                align-items: flex-start;
    }
}
.p-flow__title .label
{
    font-family: 'Josefin Sans', sans-serif;
    font-weight: 400;
    line-height: 1;

    margin-right: 10px;
    padding: 6px 20px;

    text-align: center;

    color: #fff;
    border-radius: 10px;
    background: #007cc6;
}
@media screen and (max-width: 767px)
{
    .p-flow__title .label
    {
        font-size: 3.515625vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 767px)
{
    .p-flow__title .label
    {
        font-size: 4.5572916667vw;
    }
}
.p-flow__title .jp
{
    font-weight: 600;
}
@media screen and (max-width: 767px)
{
    .p-flow__title .jp
    {
        font-size: 3.515625vw;
    }
}
@media screen and (max-width: 1023px)
{
    .p-flow__title .jp
    {
        margin-top: 10px;
    }
}
@media screen and (max-width: 767px) and (max-width: 767px)
{
    .p-flow__title .jp
    {
        font-size: 4.5572916667vw;
    }
}
.p-flow__text
{
    margin-top: 20px;
    padding: 15px 20px;

    border-radius: 10px;
    background: #e5f2fa;
}
.p-flow__arrow
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    padding: 30px 0;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}
.p-flow__arrow .icon
{
    line-height: 1;

    display: inline-block;

    -webkit-box-sizing: border-box;

            box-sizing: border-box;
    width: 2.5em;
    height: 2.5em;

    -webkit-transform: translateY(-25%) rotate(135deg);

            transform: translateY(-25%) rotate(135deg);
    vertical-align: middle;

    color: #007cc6;
    border: 4px solid currentColor;
    border-bottom: 0;
    border-left: 0;
}

/* ===============================================
#p-fcArea
=============================================== */
.p-fcArea
{
    position: relative;

    display: block;
    overflow: hidden;
}
.p-fcArea:before
{
    position: absolute;
    z-index: 5;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    content: '';

    background: rgba(0, 0, 0, .45);
}
.p-fcArea__bg
{
    font-family: 'object-fit: cover; object-position: 50% 57%;';

    position: absolute;
    z-index: 0;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    -o-object-fit: cover;

       object-fit: cover;
    -o-object-position: 50% 57%;
       object-position: 50% 57%;
}
.p-fcArea__barbg
{
    position: absolute;
    z-index: 6;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;
}
.p-fcArea__barItem
{
    position: absolute;
    top: 0;
    left: -20%;

    width: 850px;
    height: 100%;
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-fcArea__barItem
    {
        width: 49.4186046512vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-fcArea__barItem
    {
        width: 57.4324324324vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-fcArea__barItem
    {
        width: 91.30859375vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-fcArea__barItem
    {
        width: 110.6770833333vw;
    }
}
@media screen and (max-width: 1023px)
{
    .p-fcArea__barItem img
    {
        width: auto;
        max-width: none;
        height: 100%;
    }
}
@media screen and (max-width: 767px)
{
    .p-fcArea__barItem
    {
        left: -40%;
    }
}
.p-fcArea__inner
{
    padding-top: 170px;
    padding-bottom: 170px;
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-fcArea__inner
    {
        padding-top: 8.8953488372vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-fcArea__inner
    {
        padding-top: 9.1891891892vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-fcArea__inner
    {
        padding-top: 16.6015625vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-fcArea__inner
    {
        padding-top: 22.1354166667vw;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-fcArea__inner
    {
        padding-bottom: 8.8953488372vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-fcArea__inner
    {
        padding-bottom: 9.1891891892vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-fcArea__inner
    {
        padding-bottom: 16.6015625vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-fcArea__inner
    {
        padding-bottom: 22.1354166667vw;
    }
}
.p-fcArea__wrap
{
    position: relative;
    z-index: 10;
}
@media screen and (min-width: 1024px)
{
    .p-fcArea__wrap
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        -webkit-box-align: center;

            -ms-flex-align: center;

                align-items: center;
    }
}
.p-fcArea__item
{
    width: 50%;
}
@media screen and (max-width: 1023px)
{
    .p-fcArea__item
    {
        width: 100%;
    }
}
.p-fcArea__title
{
    font-size: 20px;
    font-weight: 400;

    text-align: center;

    color: #fff;
}
@media screen and (min-width: 1480px)
{
    .p-fcArea__title
    {
        font-size: 22px;
        font-size: 2.2rem;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-fcArea__title
    {
        font-size: 1.2790697674vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-fcArea__title
    {
        font-size: 1.4864864865vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-fcArea__title
    {
        font-size: 2.6829268293vw;
    }
}
@media screen and (max-width: 1023px)
{
    .p-fcArea__title
    {
        margin-top: 40px;
    }
}
.p-fcArea__btnList
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin-top: 20px;
}
.p-fcArea__btnList .jpBtn
{
    font-weight: 400;
    line-height: 1;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    width: 50%;
    padding: 8px 0 12px;

    color: #fff;
    background: #3e57dc;

    -webkit-box-pack: center;

        -ms-flex-pack: center;

            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}
@media screen and (min-width: 1480px)
{
    .p-fcArea__btnList .jpBtn
    {
        font-size: 25px;
        font-size: 2.5rem;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-fcArea__btnList .jpBtn
    {
        font-size: 1.4534883721vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-fcArea__btnList .jpBtn
    {
        font-size: 1.6891891892vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-fcArea__btnList .jpBtn
    {
        font-size: 3.0487804878vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-fcArea__btnList .jpBtn
    {
        line-height: 1.3;

        text-align: center;
    }
}
.p-fcArea__btnList .enBtn
{
    font-family: 'Josefin Sans', sans-serif;
    font-weight: 400;
    line-height: 1;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    width: 50%;
    padding: 12px 0 8px;

    color: #fff;
    background: #1729ac;

    -webkit-box-pack: center;

        -ms-flex-pack: center;

            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}
@media screen and (min-width: 1480px)
{
    .p-fcArea__btnList .enBtn
    {
        font-size: 25px;
        font-size: 2.5rem;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-fcArea__btnList .enBtn
    {
        font-size: 1.4534883721vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-fcArea__btnList .enBtn
    {
        font-size: 1.6891891892vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-fcArea__btnList .enBtn
    {
        font-size: 3.0487804878vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-fcArea__btnList .enBtn
    {
        line-height: 1.3;

        text-align: center;
    }
}

.p-thanks__wrap
{
    padding-top: 30px;
    padding-bottom: 30px;

    border-top: 1px solid #1729ac;
    border-bottom: 1px solid #1729ac;
}
.p-thanks__logo
{
    width: 8vw;
    margin: 0 auto;
}
@media screen and (max-width: 1023px)
{
    .p-thanks__logo
    {
        width: 16vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-thanks__logo
    {
        width: 24vw;
    }
}
.p-thanks__btnWrap
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin: 0 auto;

    -webkit-box-pack: center;

        -ms-flex-pack: center;

            justify-content: center;
}
@media screen and (min-width: 1024px)
{
    .p-thanks__btnWrap
    {
        width: 80%;
    }
}
@media screen and (max-width: 1023px)
{
    .p-thanks__btnWrap
    {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;

        width: 100%;

        -webkit-box-align: center;

            -ms-flex-align: center;

                align-items: center;
    }
    .p-thanks__btnWrap .p-thanks__btn:nth-child(2)
    {
        margin-top: 30px;
    }
}
.p-thanks__btnWrap .p-thanks__btn
{
    margin: 0;
}
@media screen and (min-width: 1024px)
{
    .p-thanks__btnWrap .p-thanks__btn:nth-child(2)
    {
        margin-left: 40px;
    }
}
.p-thanks__btn
{
    font-weight: 500;
    line-height: 1;

    position: relative;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    margin: 0 auto;
    padding: 20px 30px 22px;

    cursor: pointer;
    -webkit-transition: .3s ease;
    transition: .3s ease;
    text-align: center;
    text-decoration: none;

    color: #fff;
    border: solid 1px #1729ac;
    outline: none;
    background: #1729ac;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
}
@media screen and (min-width: 1024px)
{
    .p-thanks__btn
    {
        width: 450px;
    }
}
@media screen and (min-width: 1024px) and (min-width: 1480px)
{
    .p-thanks__btn
    {
        font-size: 35px;
        font-size: 3.5rem;
    }
}
@media screen and (min-width: 1024px) and (max-width: 1479px) and (min-width: 1280px)
{
    .p-thanks__btn
    {
        font-size: 2.0348837209vw;
    }
}
@media screen and (min-width: 1024px) and (max-width: 1279px) and (min-width: 1024px)
{
    .p-thanks__btn
    {
        font-size: 2.3648648649vw;
    }
}
@media screen and (max-width: 1023px)
{
    .p-thanks__btn
    {
        width: 450px;
    }
}
@media screen and (max-width: 1023px) and (max-width: 1023px) and (min-width: 768px)
{
    .p-thanks__btn
    {
        font-size: 3.6585365854vw;
    }
}
@media screen and (max-width: 1023px) and (max-width: 1479px) and (min-width: 1280px)
{
    .p-thanks__btn
    {
        width: 26.1627906977vw;
    }
}
@media screen and (max-width: 1023px) and (max-width: 1279px) and (min-width: 1024px)
{
    .p-thanks__btn
    {
        width: 30.4054054054vw;
    }
}
@media screen and (max-width: 1023px) and (max-width: 1023px) and (min-width: 768px)
{
    .p-thanks__btn
    {
        width: 48.33984375vw;
    }
}
@media screen and (max-width: 1023px) and (max-width: 767px)
{
    .p-thanks__btn
    {
        width: 58.59375vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-thanks__btn
    {
        line-height: 1.3;

        width: 100%;
    }
}
@media screen and (max-width: 767px) and (max-width: 767px)
{
    .p-thanks__btn
    {
        font-size: 6.5104166667vw;
    }
}
.p-thanks__btn a
{
    color: #fff;
}
.p-thanks__btn:hover
{
    opacity: 1;
    color: #1729ac;
    background: #fff;
}
.p-thanks__btn:hover a
{
    color: #1729ac;
}
.p-thanks__btn.color
{
    color: #1729ac;
    background: #fff;
}
.p-thanks__btn.color a
{
    color: #1729ac;
}
.p-thanks__btn.color:hover
{
    opacity: 1;
    color: #fff;
    background: #1729ac;
}
.p-thanks__btn.color:hover a
{
    color: #fff;
}
.p-thanks__btn.arrow
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-pack: justify;

        -ms-flex-pack: justify;

            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}
.p-thanks__btn.arrow:after
{
    width: .5em;
    height: .5em;
    margin-top: 3px;
    margin-left: 1em;

    content: '';
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);

    border: 0;
    border-top: solid 4px #fff;
    border-right: solid 4px #fff;
}
@media screen and (max-width: 767px)
{
    .p-thanks__btn.arrow:after
    {
        width: .75em;
        height: .75em;
        margin-left: .75em;

        border-top: solid 2px #fff;
        border-right: solid 2px #fff;
    }
}

.color
{
    color: #1729ac;
}

.pass-re
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin: 10px auto;

    -webkit-box-pack: end;

        -ms-flex-pack: end;

            justify-content: flex-end;
}
@media screen and (min-width: 1024px)
{
    .pass-re
    {
        width: 76%;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .pass-re
    {
        width: 440px;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px) and (max-width: 1479px) and (min-width: 1280px)
{
    .pass-re
    {
        width: 25.5813953488vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px) and (max-width: 1279px) and (min-width: 1024px)
{
    .pass-re
    {
        width: 29.7297297297vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px) and (max-width: 1023px) and (min-width: 768px)
{
    .pass-re
    {
        width: 47.265625vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px) and (max-width: 767px)
{
    .pass-re
    {
        width: 57.2916666667vw;
    }
}
.pass-re a span
{
    color: #1729ac;
}

.p-tDetail
{
    background: #f5f6fd;
}
@media screen and (min-width: 1024px)
{
    .p-tDetail__head
    {
        width: 40%;
    }
}
@media screen and (max-width: 1023px)
{
    .p-tDetail__head
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
}
.p-tDetail__head .label
{
    position: relative;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;
    overflow: hidden;

    width: 150px;
    height: 24px;
    margin-bottom: 7px;
    margin-left: 10px;
    padding: 0 5px 2px;

    color: #fff;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;
}
@media screen and (max-width: 1023px)
{
    .p-tDetail__head .label
    {
        width: 130px;
        margin-left: 10px;
    }
}
.p-tDetail__head .label span
{
    position: relative;
    z-index: 10;
}
.p-tDetail__head .label:after
{
    position: absolute;
    z-index: 0;
    top: 0;
    right: 5%;

    display: block;

    width: 26px;
}
.p-tDetail__head .label.new
{
    background: #6b81b9;
}
.p-tDetail__head .label.new:after
{
    content: url(../image/topics/01.svg);
}
.p-tDetail__head .label.release
{
    background: #4783cc;
}
.p-tDetail__head .label.release:after
{
    content: url(../image/topics/02.svg);
}
.p-tDetail__head .label.media
{
    background: #5ca5b2;
}
.p-tDetail__head .label.media:after
{
    content: url(../image/topics/03.svg);
}
.p-tDetail__title
{
    font-weight: 300;
}
@media screen and (min-width: 1024px)
{
    .p-tDetail__title
    {
        width: 60%;
    }
}
@media screen and (max-width: 1023px)
{
    .p-tDetail__title
    {
        margin-top: 15px;
    }
}
.p-tDetail__date
{
    font-family: 'Josefin Sans', sans-serif;
    font-size: 20px;
    font-weight: 600;

    color: #515fc1;
}
@media screen and (min-width: 1480px)
{
    .p-tDetail__date
    {
        font-size: 20px;
        font-size: 2rem;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-tDetail__date
    {
        font-size: 1.1627906977vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-tDetail__date
    {
        font-size: 1.3513513514vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-tDetail__date
    {
        font-size: 2.4390243902vw;
    }
}
.p-tDetail__new
{
    font-family: 'Josefin Sans', sans-serif;
    font-size: 20px;
    font-weight: 600;

    margin-left: 10px;
}
@media screen and (min-width: 1480px)
{
    .p-tDetail__new
    {
        font-size: 20px;
        font-size: 2rem;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-tDetail__new
    {
        font-size: 1.1627906977vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-tDetail__new
    {
        font-size: 1.3513513514vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-tDetail__new
    {
        font-size: 2.4390243902vw;
    }
}
.p-tDetail__meta
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;
}
.p-tDetail__wideImage
{
    display: block;
    overflow: hidden;

    aspect-ratio: 4/3;
}
.p-tDetail__wideImage img
{
    width: 100%;
    height: 100%;
}
.p-tDetail__wideText
{
    margin-top: 10px;
}
.p-tDetail__wideText span
{
    display: inline-block;

    margin-right: 5px;

    color: #1729ac;
}

@media screen and (min-width: 768px)
{
    .p-tDetailPhoto__wrap
    {
        position: relative;

        display: -webkit-box;

        display: -ms-flexbox;

        display: flex;

        -webkit-box-pack: justify;

            -ms-flex-pack: justify;

                justify-content: space-between;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    }
}
@media screen and (max-width: 1023px)
{
    .p-tDetailPhoto__wrap
    {
        margin-bottom: 30px;
    }
}
@media screen and (max-width: 1023px) and (max-width: 1479px) and (min-width: 1280px)
{
    .p-tDetailPhoto__wrap
    {
        margin-bottom: 1.5697674419vw;
    }
}
@media screen and (max-width: 1023px) and (max-width: 1279px) and (min-width: 1024px)
{
    .p-tDetailPhoto__wrap
    {
        margin-bottom: 1.6216216216vw;
    }
}
@media screen and (max-width: 1023px) and (max-width: 1023px) and (min-width: 768px)
{
    .p-tDetailPhoto__wrap
    {
        margin-bottom: 3.515625vw;
    }
}
@media screen and (max-width: 1023px) and (max-width: 767px)
{
    .p-tDetailPhoto__wrap
    {
        margin-bottom: 7.8125vw;
    }
}
@media screen and (min-width: 1024px)
{
    .p-tDetailPhoto__wrap:after,
    .p-tDetailPhoto__wrap:before
    {
        display: block;

        width: calc(50% - 40px);

        content: '';
    }
    .p-tDetailPhoto__wrap:before
    {
        -webkit-box-ordinal-group: 2;
            -ms-flex-order: 1;
                order: 1;
    }
}
.p-tDetailPhoto__item
{
    position: relative;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;

    width: 100%;

    text-decoration: none;
}
@media screen and (min-width: 1024px)
{
    .p-tDetailPhoto__item
    {
        width: calc(50% - 40px);
    }
    .p-tDetailPhoto__item:nth-child(n+3)
    {
        margin-top: 60px;
    }
}
@media screen and (max-width: 1023px)
{
    .p-tDetailPhoto__item:nth-child(n+3)
    {
        margin-top: 40px;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-tDetailPhoto__item
    {
        width: calc(50% - 20px);
    }
}
@media screen and (max-width: 767px)
{
    .p-tDetailPhoto__item:nth-child(n+2)
    {
        margin-top: 30px;
    }
}
.p-tDetailPhoto__content
{
    position: relative;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;
    overflow: hidden;

    -webkit-box-pack: center;

        -ms-flex-pack: center;

            justify-content: center;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    aspect-ratio: 4/3;
}
.p-tDetailPhoto__imageArea
{
    position: absolute;
    z-index: 0;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;
}
.p-tDetailPhoto__imageArea img
{
    display: block;

    width: 100%;
    height: 100%;
}
.p-tDetailPhoto__btmtext
{
    margin-top: 15px;
}
.p-tDetailPhoto__btmtext span
{
    display: inline-block;

    margin-right: 5px;

    color: #1729ac;
}
