@charset 'UTF-8';
/* ==========================================================================
   toppage
   ========================================================================== */
.p-bespoke__bg
{
    background: #f5f6fd;
}
.p-bespoke__bg2
{
    background: #f4f4f4;
}
.p-bespoke__title
{
    font-size: 30px;
    font-size: 3rem;
    font-weight: 300;
}
@media screen and (min-width: 1024px)
{
    .p-bespoke__title
    {
        margin: 0vw 0vw 1.32vw 0vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-bespoke__title
    {
        margin: 0vw 0vw 3vw 0vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-bespoke__title
    {
        margin: 0vw 0vw 4vw 0vw;
    }
}
@media screen and (max-width: 1023px)
{
    .p-bespoke__title
    {
        font-size: 20px;
        font-size: 2rem;
    }
}
.p-bespoke__title span
{
    color: #1729aa;
}
.p-bespoke__noBreak
{
    font-size: 17px;
    font-size: 1.7rem;
    font-weight: 300;

    width: 100%;

    border-collapse: collapse;

    color: #333;
    border: 1px solid #999;
}
@media screen and (min-width: 768px)
{
    .p-bespoke__noBreak
    {
        min-width: 1080px;
    }
}
@media screen and (max-width: 767px)
{
    .p-bespoke__noBreak
    {
        min-width: 750px;
    }
}
.p-bespoke__noBreak th
{
    font-weight: 400;

    text-align: center;

    background: #f8f8f8;
}
.p-bespoke__noBreak th.width
{
    font-weight: 500;
}
@media screen and (max-width: 767px)
{
    .p-bespoke__noBreak th.width
    {
        font-size: 20px;
    }
}
@media screen and (min-width: 1480px)
{
    .p-bespoke__noBreak th.width
    {
        font-size: 20px;
        font-size: 2rem;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-bespoke__noBreak th.width
    {
        font-size: 1.1627906977vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-bespoke__noBreak th.width
    {
        font-size: 1.3513513514vw;
    }
}
.p-bespoke__noBreak td
{
    line-height: 1.8;
}
@media screen and (min-width: 1024px)
{
    .p-bespoke__noBreak td
    {
        min-width: 200px;
    }
}
@media screen and (min-width: 1480px)
{
    .p-bespoke__noBreak td h4
    {
        font-size: 22px;
        font-size: 2.2rem;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-bespoke__noBreak td h4
    {
        font-size: 1.2790697674vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-bespoke__noBreak td h4
    {
        font-size: 1.4864864865vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-bespoke__noBreak td h4
    {
        font-size: 2.6829268293vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-bespoke__noBreak td h4
    {
        font-size: 4.1666666667vw;
    }
}
.p-bespoke__noBreak td .link
{
    font-weight: 400;

    margin-top: 5px;

    text-decoration: underline;

    color: #1729ac;
}
.p-bespoke__noBreak td .link .icon
{
    line-height: 1;

    display: inline-block;

    -webkit-box-sizing: border-box;

            box-sizing: border-box;
    width: .5em;
    height: .5em;
    margin-bottom: 3px;
    margin-left: 10px;

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

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

    color: #333;
    border: .1em solid currentColor;
    border-bottom: 0;
    border-left: 0;
}
.p-bespoke__noBreak td span
{
    display: inline-block;

    width: 200px;
}
@media screen and (max-width: 1023px)
{
    .p-bespoke__noBreak td span
    {
        display: block;

        width: 100%;
    }
}
.p-bespoke__noBreak td div
{
    display: block;
}
@media screen and (max-width: 767px)
{
    .p-bespoke__noBreak td div:nth-child(n+2)
    {
        margin-top: 20px;
    }
}
.p-bespoke__noBreak th,
.p-bespoke__noBreak td
{
    padding: 15px 30px;

    vertical-align: middle;

    border: 1px solid #999;
}
@media screen and (max-width: 767px)
{
    .p-bespoke__noBreak th,
    .p-bespoke__noBreak td
    {
        font-size: 32px;
        font-size: 4.27vw;

        padding: 4vw 3.33vw 4vw 3.33vw;
    }
}
.p-bespoke__noBreak th .glist,
.p-bespoke__noBreak td .glist
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;

        flex-wrap: wrap;
}
.p-bespoke__noBreak th .glist li,
.p-bespoke__noBreak td .glist li
{
    margin-right: 15px;
}
.p-bespoke__noBreak th .glist li:before,
.p-bespoke__noBreak td .glist li:before
{
    font-weight: 600;

    margin-right: 10px;

    content: '・';

    color: #1729ac;
}
.p-bespoke__btmLink
{
    display: block;
    overflow: hidden;

    padding-top: 30px;
    padding-bottom: 30px;

    color: #fff;
    background: #1729ac;
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-bespoke__btmLink
    {
        padding-top: 1.5697674419vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-bespoke__btmLink
    {
        padding-top: 1.6216216216vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-bespoke__btmLink
    {
        padding-top: 3.22265625vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-bespoke__btmLink
    {
        padding-top: 4.296875vw;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-bespoke__btmLink
    {
        padding-bottom: 1.5697674419vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-bespoke__btmLink
    {
        padding-bottom: 1.6216216216vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-bespoke__btmLink
    {
        padding-bottom: 3.22265625vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-bespoke__btmLink
    {
        padding-bottom: 4.296875vw;
    }
}
.p-bespoke__contact
{
    text-align: center;
}
.p-bespoke__contact .en
{
    font-family: 'Josefin Sans', sans-serif;
    font-weight: 500;
}
@media screen and (max-width: 767px)
{
    .p-bespoke__contact .en
    {
        font-size: 4.4270833333vw;
    }
}
@media screen and (min-width: 1480px)
{
    .p-bespoke__contact .en
    {
        font-size: 24px;
        font-size: 2.4rem;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-bespoke__contact .en
    {
        font-size: 1.3953488372vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-bespoke__contact .en
    {
        font-size: 1.6216216216vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-bespoke__contact .en
    {
        font-size: 2.9268292683vw;
    }
}
.p-bespoke__contact .jp
{
    font-weight: 400;
}
@media screen and (max-width: 767px)
{
    .p-bespoke__contact .jp
    {
        font-size: 5.859375vw;
    }
}
@media screen and (min-width: 1480px)
{
    .p-bespoke__contact .jp
    {
        font-size: 35px;
        font-size: 3.5rem;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-bespoke__contact .jp
    {
        font-size: 2.0348837209vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-bespoke__contact .jp
    {
        font-size: 2.3648648649vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-bespoke__contact .jp
    {
        font-size: 4.2682926829vw;
    }
}
.p-bespoke__btnText
{
    margin-top: 20px;

    text-align: center;
}

.video
{
    position: relative;

    width: 100%;

    aspect-ratio: 16/9;
}
.video__videostart
{
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    width: 100px;
    margin: auto;
}
.video video
{
    position: absolute;
    top: 0;
    left: 0;

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

    color: #1729ac;
}

/* ===============================================
#p-company
=============================================== */
.p-company__menuWrap
{
    margin-right: auto;
    margin-left: auto;
}
@media screen and (min-width: 1024px)
{
    .p-company__menuWrap
    {
        width: 70%;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-company__menuWrap
    {
        width: 100%;
    }
}
.p-company__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-company__menu:after
    {
        display: block;

        width: 45%;

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

    color: #3c3c3c;
}
@media screen and (min-width: 1480px)
{
    .p-company__menu a
    {
        font-size: 20px;
        font-size: 2rem;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-company__menu a
    {
        font-size: 1.1627906977vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-company__menu a
    {
        font-size: 1.3513513514vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-company__menu a
    {
        font-size: 2.4390243902vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-company__menu a
    {
        font-size: 2.6041666667vw;
    }
}
@media screen and (min-width: 1024px)
{
    .p-company__menu a
    {
        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)
{
    .p-company__menu a
    {
        padding-left: 1.5697674419vw;
    }
}
@media screen and (min-width: 1024px) and (max-width: 1279px) and (min-width: 1024px)
{
    .p-company__menu a
    {
        padding-left: 1.6216216216vw;
    }
}
@media screen and (min-width: 1024px) and (max-width: 1023px) and (min-width: 768px)
{
    .p-company__menu a
    {
        padding-left: 3.515625vw;
    }
}
@media screen and (min-width: 1024px) and (max-width: 767px)
{
    .p-company__menu a
    {
        padding-left: 7.8125vw;
    }
}
@media screen and (min-width: 1024px) and (max-width: 1479px) and (min-width: 1280px)
{
    .p-company__menu a
    {
        padding-right: 1.5697674419vw;
    }
}
@media screen and (min-width: 1024px) and (max-width: 1279px) and (min-width: 1024px)
{
    .p-company__menu a
    {
        padding-right: 1.6216216216vw;
    }
}
@media screen and (min-width: 1024px) and (max-width: 1023px) and (min-width: 768px)
{
    .p-company__menu a
    {
        padding-right: 3.515625vw;
    }
}
@media screen and (min-width: 1024px) and (max-width: 767px)
{
    .p-company__menu a
    {
        padding-right: 7.8125vw;
    }
}
@media screen and (min-width: 1024px)
{
    .p-company__menu a:last-child
    {
        border-right: 1px solid #1729ac;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-company__menu a
    {
        width: 33.3333333333%;

        text-align: center;

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

        text-align: center;

        border-left: 1px solid #1729ac;
    }
    .p-company__menu a:nth-child(even)
    {
        border-right: 1px solid #1729ac;
    }
    .p-company__menu a:nth-child(n+3)
    {
        margin-top: 40px;
    }
}
@media screen and (max-width: 767px) and (max-width: 1479px) and (min-width: 1280px)
{
    .p-company__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-company__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-company__menu a:nth-child(n+3)
    {
        margin-top: 4.296875vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 767px)
{
    .p-company__menu a:nth-child(n+3)
    {
        margin-top: 5.7291666667vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 767px)
{
    .p-company__menu a
    {
        font-size: 4.4270833333vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-company__menu.column3:after
    {
        display: block;

        width: 0;

        content: '';
    }
    .p-company__menu.column3 a:last-child
    {
        border-right: 1px solid #1729ac;
    }
}
.p-company__concept
{
    position: relative;

    overflow: hidden;

    background: #f5f6fd;
}
.p-company__conceptText
{
    font-size: 18px;
    font-weight: 400;
    line-height: 1.8;

    position: relative;
    z-index: 10;

    text-align: center;
}
@media screen and (min-width: 1480px)
{
    .p-company__conceptText
    {
        font-size: 24px;
        font-size: 2.4rem;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-company__conceptText
    {
        font-size: 1.3953488372vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-company__conceptText
    {
        font-size: 1.6216216216vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-company__conceptText
    {
        font-size: 2.9268292683vw;
    }
}
.p-company__barItem
{
    position: absolute;
    z-index: 0;
    top: 0;
    right: 0;

    height: 100%;

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

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

.outlineArea__title
{
    font-weight: 300;
}
@media screen and (max-width: 767px)
{
    .outlineArea__title
    {
        font-size: 6.5104166667vw;
    }
}
@media screen and (min-width: 1480px)
{
    .outlineArea__title
    {
        font-size: 30px;
        font-size: 3rem;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .outlineArea__title
    {
        font-size: 1.7441860465vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .outlineArea__title
    {
        font-size: 2.027027027vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .outlineArea__title
    {
        font-size: 3.6585365854vw;
    }
}
@media screen and (min-width: 1024px)
{
    .outlineArea__title
    {
        margin: 0vw 0vw 1.32vw 0vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .outlineArea__title
    {
        margin: 0vw 0vw 3vw 0vw;
    }
}
@media screen and (max-width: 767px)
{
    .outlineArea__title
    {
        margin: 0vw 0vw 4vw 0vw;
    }
}
.outlineArea__title img
{
    width: 30px;
    margin-right: 10px;
    margin-bottom: -5px;
}
.outlineArea__title span
{
    display: inline-block;

    margin-right: 10px;

    color: #1729aa;
}
.outlineArea__table
{
    font-size: 17px;
    font-size: 1.7rem;
    font-weight: 300;

    width: 100%;

    color: #333;
}
@media screen and (max-width: 767px)
{
    .outlineArea__table
    {
        border: 1px solid #999;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .outlineArea__table
    {
        border-top: 1px solid #999;
        border-right: 1px solid #999;
        border-left: 1px solid #999;
    }
}
@media screen and (min-width: 1024px)
{
    .outlineArea__table tr
    {
        border: 1px solid #999;
    }
}
@media screen and (min-width: 1024px)
{
    .outlineArea__table tr:nth-child(n+2) th
    {
        border-left: 1px solid #999;
    }
}
@media screen and (max-width: 767px)
{
    .outlineArea__table tr:nth-child(n+2) th
    {
        border-top: 1px solid #999;
        border-left: 0;
    }
}
.outlineArea__table th
{
    font-weight: 400;

    text-align: center;

    background: #f8f8f8;
}
.outlineArea__table th.width
{
    font-weight: 500;
}
@media screen and (max-width: 767px)
{
    .outlineArea__table th.width
    {
        font-size: 20px;
    }
}
@media screen and (min-width: 1480px)
{
    .outlineArea__table th.width
    {
        font-size: 20px;
        font-size: 2rem;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .outlineArea__table th.width
    {
        font-size: 1.1627906977vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .outlineArea__table th.width
    {
        font-size: 1.3513513514vw;
    }
}
@media screen and (min-width: 1024px)
{
    .outlineArea__table th:nth-child(n+2)
    {
        border-left: 1px solid #999;
    }
}
@media screen and (max-width: 767px)
{
    .outlineArea__table th:nth-child(n+2)
    {
        border-top: 1px solid #999;
        border-left: 0;
    }
}
@media screen and (min-width: 1024px)
{
    .outlineArea__table th
    {
        border-right: 1px solid #999;
    }
}
@media screen and (min-width: 768px)
{
    .outlineArea__table th
    {
        width: 200px;
    }
    .outlineArea__table th.width
    {
        width: 40%;
    }
}
@media screen and (min-width: 768px) and (max-width: 1023px)
{
    .outlineArea__table th
    {
        width: 30%;

        border-bottom: 1px solid #999;
    }
}
@media screen and (max-width: 767px)
{
    .outlineArea__table th
    {
        position: relative;

        border-bottom: 1px solid #999;
    }
}
.outlineArea__table td
{
    line-height: 1.8;

    min-width: 200px;
}
@media screen and (min-width: 1480px)
{
    .outlineArea__table td h4
    {
        font-size: 22px;
        font-size: 2.2rem;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .outlineArea__table td h4
    {
        font-size: 1.2790697674vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .outlineArea__table td h4
    {
        font-size: 1.4864864865vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .outlineArea__table td h4
    {
        font-size: 2.6829268293vw;
    }
}
@media screen and (max-width: 767px)
{
    .outlineArea__table td h4
    {
        font-size: 4.1666666667vw;
    }
}
.outlineArea__table td .link
{
    font-weight: 500;

    margin-top: 5px;

    text-decoration: underline;

    color: #1729ac;
}
.outlineArea__table td .link .icon
{
    line-height: 1;

    display: inline-block;

    -webkit-box-sizing: border-box;

            box-sizing: border-box;
    width: .5em;
    height: .5em;
    margin-bottom: 3px;
    margin-left: 10px;

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

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

    color: #333;
    border: .1em solid currentColor;
    border-bottom: 0;
    border-left: 0;
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .outlineArea__table td
    {
        width: 70%;

        border-bottom: 1px solid #999;
        border-left: 1px solid #999;
    }
}
.outlineArea__table td span
{
    display: inline-block;

    width: 200px;
}
@media screen and (max-width: 1023px)
{
    .outlineArea__table td span
    {
        display: block;

        width: 100%;
    }
}
.outlineArea__table td div
{
    display: block;
}
@media screen and (max-width: 767px)
{
    .outlineArea__table td div:nth-child(n+2)
    {
        margin-top: 20px;
    }
}
.outlineArea__table th,
.outlineArea__table td
{
    padding: 15px 30px;

    vertical-align: middle;
}
@media screen and (max-width: 767px)
{
    .outlineArea__table th,
    .outlineArea__table td
    {
        font-size: 32px;
        font-size: 4.27vw;

        display: block;

        width: 100%;
        padding: 4vw 3.33vw 4vw 3.33vw;
    }
}
.outlineArea__table th .glist,
.outlineArea__table td .glist
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;

        flex-wrap: wrap;
}
.outlineArea__table th .glist li,
.outlineArea__table td .glist li
{
    margin-right: 15px;
}
.outlineArea__table th .glist li:before,
.outlineArea__table td .glist li:before
{
    font-weight: 600;

    margin-right: 10px;

    content: '・';

    color: #1729ac;
}
.outlineArea__noBreak
{
    font-size: 17px;
    font-size: 1.7rem;
    font-weight: 300;

    width: 100%;

    border-collapse: collapse;

    color: #333;
    border: 1px solid #999;
}
@media screen and (min-width: 768px)
{
    .outlineArea__noBreak
    {
        min-width: 1080px;
    }
}
@media screen and (max-width: 767px)
{
    .outlineArea__noBreak
    {
        min-width: 850px;
    }
}
.outlineArea__noBreak th
{
    font-weight: 400;

    text-align: center;

    background: #f8f8f8;
}
.outlineArea__noBreak th.width
{
    font-weight: 500;
}
@media screen and (max-width: 767px)
{
    .outlineArea__noBreak th.width
    {
        font-size: 20px;
    }
}
@media screen and (min-width: 1480px)
{
    .outlineArea__noBreak th.width
    {
        font-size: 20px;
        font-size: 2rem;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .outlineArea__noBreak th.width
    {
        font-size: 1.1627906977vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .outlineArea__noBreak th.width
    {
        font-size: 1.3513513514vw;
    }
}
.outlineArea__noBreak td
{
    line-height: 1.8;
}
@media screen and (min-width: 1024px)
{
    .outlineArea__noBreak td
    {
        min-width: 200px;
    }
}
@media screen and (min-width: 1480px)
{
    .outlineArea__noBreak td h4
    {
        font-size: 22px;
        font-size: 2.2rem;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .outlineArea__noBreak td h4
    {
        font-size: 1.2790697674vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .outlineArea__noBreak td h4
    {
        font-size: 1.4864864865vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .outlineArea__noBreak td h4
    {
        font-size: 2.6829268293vw;
    }
}
@media screen and (max-width: 767px)
{
    .outlineArea__noBreak td h4
    {
        font-size: 4.1666666667vw;
    }
}
.outlineArea__noBreak td .link
{
    font-weight: 400;

    margin-top: 5px;

    text-decoration: underline;

    color: #1729ac;
}
.outlineArea__noBreak td .link .icon
{
    line-height: 1;

    display: inline-block;

    -webkit-box-sizing: border-box;

            box-sizing: border-box;
    width: .5em;
    height: .5em;
    margin-bottom: 3px;
    margin-left: 10px;

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

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

    color: #333;
    border: .1em solid currentColor;
    border-bottom: 0;
    border-left: 0;
}
.outlineArea__noBreak td span
{
    display: inline-block;

    width: 200px;
}
@media screen and (max-width: 1023px)
{
    .outlineArea__noBreak td span
    {
        display: block;

        width: 100%;
    }
}
.outlineArea__noBreak td div
{
    display: block;
}
@media screen and (max-width: 767px)
{
    .outlineArea__noBreak td div:nth-child(n+2)
    {
        margin-top: 20px;
    }
}
.outlineArea__noBreak th,
.outlineArea__noBreak td
{
    padding: 15px 30px;

    vertical-align: middle;

    border: 1px solid #999;
    text-align: center;
}
@media screen and (max-width: 767px)
{
    .outlineArea__noBreak th,
    .outlineArea__noBreak td
    {
        padding: 4vw 3.33vw 4vw 3.33vw;
    }
}
.outlineArea__noBreak th .glist,
.outlineArea__noBreak td .glist
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;

        flex-wrap: wrap;
}
.outlineArea__noBreak th .glist li,
.outlineArea__noBreak td .glist li
{
    margin-right: 15px;
}
.outlineArea__noBreak th .glist li:before,
.outlineArea__noBreak td .glist li:before
{
    font-weight: 600;

    margin-right: 10px;

    content: '・';

    color: #1729ac;
}
.outlineArea__noBreak2
{
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: 300;

    width: 100%;

    table-layout: fixed;
    border-collapse: collapse;

    word-wrap: break-word;
    word-break: break-all;

    color: #333;
    border: 1px solid #999;
}
@media screen and (min-width: 768px)
{
    .outlineArea__noBreak2
    {
        min-width: 1080px;
    }
}
@media screen and (max-width: 767px)
{
    .outlineArea__noBreak2
    {
        min-width: 1280px;
    }
}
.outlineArea__noBreak2 tr
{
    width: 100%;
}
.outlineArea__noBreak2 th
{
    text-align: center;

    background: #f8f8f8;
}
.outlineArea__noBreak2 td
{
    line-height: 1.8;
}
.outlineArea__noBreak2 th,
.outlineArea__noBreak2 td
{
    padding: 5px;

    vertical-align: middle;

    border: 1px solid #999;
}

.pt15
{
    margin-top: 30px;
    padding-top: 30px;

    border-top: 1px solid #efefef;
}
@media screen and (max-width: 767px)
{
    .pt15
    {
        margin-top: 15px;
        padding-top: 15px;
    }
}
.pt15 a
{
    text-decoration: underline;

    color: #1729ac;
}

.link_un a
{
    text-decoration: underline;

    color: #1729ac;
}

.p-map
{
    overflow: hidden;

    aspect-ratio: 16/8;
}
@media screen and (max-width: 1023px)
{
    .p-map
    {
        width: 100%;

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

        aspect-ratio: 3.5/4;
    }
}
@media screen and (min-width: 1024px)
{
    .p-map
    {
        width: 100%;
    }
}

/* p-baseDetail
-------------------------------------------------------------------------- */
.p-baseDetail__imageList
{
    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;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}
.p-baseDetail__imageItem
{
    width: 25%;

    aspect-ratio: 4/3;
}
.p-baseDetail__imageItem img
{
    width: 100%;
    height: 100%;
}
@media screen and (max-width: 1023px)
{
    .p-baseDetail__imageItem
    {
        width: 50%;
    }
}

.border-top
{
    border-top: 1px solid #1729ac;
}

.spAtten
{
    font-weight: bold;

    margin-bottom: 5px;

    color: #1729ac;
}
@media screen and (min-width: 1024px)
{
    .spAtten
    {
        display: none;
    }
}

/* ===============================================
#p-corting
=============================================== */
.p-corting__item
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    padding-bottom: 20px;

    border-bottom: 1px solid #000;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
}
.p-corting__item:nth-child(n+2)
{
    margin-top: 20px;
}
@media screen and (max-width: 767px)
{
    .p-corting__item:nth-child(n+2)
    {
        margin-top: 60px;
    }
}
@media screen and (max-width: 767px) and (max-width: 1479px) and (min-width: 1280px)
{
    .p-corting__item:nth-child(n+2)
    {
        margin-top: 3.1395348837vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 1279px) and (min-width: 1024px)
{
    .p-corting__item:nth-child(n+2)
    {
        margin-top: 3.2432432432vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 1023px) and (min-width: 768px)
{
    .p-corting__item:nth-child(n+2)
    {
        margin-top: 6.4453125vw;
    }
}
@media screen and (max-width: 767px) and (max-width: 767px)
{
    .p-corting__item:nth-child(n+2)
    {
        margin-top: 8.59375vw;
    }
}
@media screen and (max-width: 1023px)
{
    .p-corting__item
    {
        width: 80%;
        margin: 0 auto;

        -ms-flex-wrap: wrap;

            flex-wrap: wrap;
    }
}
@media screen and (max-width: 767px)
{
    .p-corting__item
    {
        width: 100%;
    }
}
.p-corting__image
{
    width: 240px;
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-corting__image
    {
        width: 13.9534883721vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-corting__image
    {
        width: 16.2162162162vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-corting__image
    {
        width: 23.4375vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-corting__image
    {
        width: 17.625vw;
    }
}
@media screen and (max-width: 1023px)
{
    .p-corting__image
    {
        width: 40%;
    }
}
@media screen and (max-width: 767px)
{
    .p-corting__image
    {
        width: 60%;
        margin: 0 auto;
    }
}
.p-corting__disc
{
    font-weight: 400;

    width: 320px;
}
@media screen and (max-width: 767px)
{
    .p-corting__disc
    {
        font-size: 5.2083333333vw;
    }
}
@media screen and (min-width: 1480px)
{
    .p-corting__disc
    {
        font-size: 26px;
        font-size: 2.6rem;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-corting__disc
    {
        font-size: 1.511627907vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-corting__disc
    {
        font-size: 1.7567567568vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-corting__disc
    {
        font-size: 3.1707317073vw;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-corting__disc
    {
        width: 18.6046511628vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-corting__disc
    {
        width: 21.6216216216vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-corting__disc
    {
        width: 31.25vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-corting__disc
    {
        width: 23.5vw;
    }
}
@media screen and (max-width: 1023px)
{
    .p-corting__disc
    {
        width: 55%;
    }
}
@media screen and (max-width: 767px)
{
    .p-corting__disc
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

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

        -webkit-box-pack: center;

            -ms-flex-pack: center;

                justify-content: center;
    }
}
.p-corting__table
{
    width: 320px;
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-corting__table
    {
        width: 18.6046511628vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-corting__table
    {
        width: 21.6216216216vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-corting__table
    {
        width: 31.25vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-corting__table
    {
        width: 23.5vw;
    }
}
.p-corting__table .item
{
    font-weight: 18px;
    font-weight: 400;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    padding: 5px 30px;

    -webkit-box-pack: justify;

        -ms-flex-pack: justify;

            justify-content: space-between;
}
.p-corting__table .item:nth-child(odd)
{
    background: #f5f6fd;
}
@media screen and (max-width: 1023px)
{
    .p-corting__table
    {
        width: 80%;
        margin: 30px auto 0;
    }
}
@media screen and (max-width: 767px)
{
    .p-corting__table
    {
        width: 100%;
    }
}
@media screen and (min-width: 1024px)
{
    .p-corting__text
    {
        width: 160px;
    }
}
@media screen and (min-width: 1024px) and (max-width: 1479px) and (min-width: 1280px)
{
    .p-corting__text
    {
        width: 9.3023255814vw;
    }
}
@media screen and (min-width: 1024px) and (max-width: 1279px) and (min-width: 1024px)
{
    .p-corting__text
    {
        width: 10.8108108108vw;
    }
}
@media screen and (min-width: 1024px) and (max-width: 1023px) and (min-width: 768px)
{
    .p-corting__text
    {
        width: 15.625vw;
    }
}
@media screen and (min-width: 1024px) and (max-width: 767px)
{
    .p-corting__text
    {
        width: 11.75vw;
    }
}
.p-corting__text .title
{
    font-size: 18px;
    font-weight: 500;
}
.p-corting__text .title span
{
    color: #1729ac;
}
.p-corting__text .title span:nth-of-type(1)
{
    margin-right: 5px;
}
.p-corting__text .title span:nth-of-type(2)
{
    margin-left: 5px;
}
@media screen and (max-width: 1023px)
{
    .p-corting__text
    {
        margin: 30px auto 0;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-corting__text
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
    }
}
.p-corting__graph
{
    width: 350px;
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-corting__graph
    {
        width: 20.3488372093vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-corting__graph
    {
        width: 23.6486486486vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-corting__graph
    {
        width: 34.1796875vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-corting__graph
    {
        width: 25.703125vw;
    }
}
@media screen and (max-width: 1023px)
{
    .p-corting__graph
    {
        width: 80%;
        margin: 0 auto;
    }
}
@media screen and (max-width: 767px)
{
    .p-corting__graph
    {
        width: 100%;
    }
}
.flex1 ul{
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    margin-bottom: 25px;
}
.f_left {
    width: 100%;
    order: 2;
}
.f_right {
    order: 1;
    width: 100%;
    position: relative;
    }
    .f_left li {
        width: 23%;
        margin-bottom: 10px;
    }
    .f_left li p ,
    .f_right p,
    .flex2 .no4 {
 color: #FFF;
 border-radius: 25px;
 background-color: #000;
 width: 11em;
 text-align: center;
 margin-left: auto;
 margin-right: auto;
 margin-top: 10px;
 font-size: 150%;
    }
    
    .f_left p.no1{
            background-color: #000;
           }
           .f_left p.no2{
            background-color: #666;
           }
          .f_left p.no3{
            background-color: #3e57dc;
           }
           .f_left p.no4{
            background-color: #1729ac;
           }

.f_left li img{
    width: 100%;
}
.flex2{
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    
}

.f_right{
margin-bottom: 40px;
max-width: 1000px;
margin-left: auto;
margin-right: auto;
}
.f2_left img{
    width: 100%;
}
.outlineArea__noBreak th.no1 ,
.color1 {
    background: #e1e1e1;
}
.outlineArea__noBreak th.no4 ,
.color4 {
    background: #cfd3ec;
}

@media screen and (max-width: 1023px)
{
    .flex1{
        display: inherit;
        -webkit-justify-content:inherit;
        justify-content: inherit;
        
    }

    .f_left {
       
            margin-bottom: 40px;

    }
    .f_left ul{
        display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    flex-wrap:wrap;
    }

    .f_left li{
        width: 48%;
    }
    .f_left li:nth-child(1),
    .f_left li:nth-child(2){
margin-bottom: 30px;

    }
    .f_right {
       
        margin-bottom: 40px;
        }



        .f2_left ,
        .f2_right{
        width: 100%;
        }
}
@media screen and (max-width: 767px)
{
    .f_left li{
        width: 48%;
    }
    .f_left li p ,
    .f_right p,
    .flex2 .no4 {

 width: 11em;
 font-size: 100%;
    }

    .flex2 .no4 {

 width: 11em;

    }
}
@media screen and (min-width: 1023px)
{
.c-list__item.no4{
 width: 50%;
}

.c-list__item.no4 .c-list__content{
 aspect-ratio: 6.1/3;
}
}