body {
    min-width: 1100px;
}

.disp-sp {
    display: none;
}

/* header */
.header {
    position: relative;
    height: 100px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 20px;
    box-shadow: 3px 0 6px rgba(0,0,0,.16);
    z-index: 10;
}
.logo {
    width: 205px;
    height: 82px;
}
.menu {
    display: flex;
    align-items: center;
}
.header__link {
    width: 264px;
    background: url(../img/header_arrow.svg) no-repeat right 15px center;
    background-color: #FF7602;
    border-radius: 30px;
    padding: 14px 20px 14px 10px;
    box-sizing: border-box;
    color: #fff;
    text-decoration: none;
    font-size: 24px;
    font-weight: bold;
    text-align: center;
    transition: 0.2s;
}
.header__link:hover {
    background: #FFF url(../img/cv_arrow_on.svg) no-repeat right 13px center;
    border: 2px solid #FF7602;
    color: #FF7602;
}

/* mv */
.mv {
    display: flex;
}
.mv__image {
    position: relative;
    width: 50%;
    background: url(../img/mv_photo.jpg) no-repeat right;
    background-size: cover;
}
.mv__inner {
    position: absolute;
    top: 116px;

}
.mv__photo {
    margin-bottom: 30px;
    text-align: center;
}
.mv__square {
    display: block;
    margin-bottom: 20px;
}
.mv__square__text {
    display: inline-block;
    color: #003893;
    background-color: #fff;
}

.mv__large {
    display: block;
    margin-bottom: 20px;
    color: #fff;
}
.mv__small {
    color: #fff;
}

.mv__link {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 436px;
    height: 76px;
    margin: 0 auto;
    text-align: center;
    background: #FF7602 url(../img/cv_arrow.svg) no-repeat right 78px center;
    border-radius: 40px;
    color: #fff;
    font-size: 27px;
    font-weight: bold;
    text-decoration: none;
    transition: 0.2s;
}
.mv__link:hover {
    background: #FFF url(../img/cv_arrow_on.svg) no-repeat right 76px center;
    border: 2px solid #FF7602;
    box-sizing: border-box;
    color: #FF7602;
}
.mv__illust {
    position: relative;
    width: 50%;
    background: url(../img/mv_illust_bg.png) repeat;
    background-size: 26px;
}
.mv__illust__img {
    position: absolute;
    bottom: 0;
}

@media screen and (max-width:1100px) {
    /* mv */
    .mv {
        height: 505px;
    }
    .mv__inner {
        right: 45px;

    }
    .mv__square__text {
        width: 64px;
        height: 64px;
        font-size: 58px;
    }
    .mv__large {
        font-size: 110px;
    }
    .mv__small {
        font-size: 20px;
    }
    .mv__illust__img {
        left: 30px;
        width: 484px;
    }
}

@media screen and (min-width:1101px) and ( max-width:1419px) {
    /* mv */
    .mv {
        height: 46vw;
    }
    .mv__inner {
        right: 5vw;
    }
    .mv__square__text {
        width: 5.5vw;
        height: 5.5vw;
        font-size: 5vw;
    }
    .mv__large {
        font-size: 10vw;
    }
    .mv__small {
        font-size: 2vw;
    }
    .mv__illust__img {
        left: 4vw;
        width: 44vw;
    }
}

@media screen and (min-width:1420px) {
    /* mv */
    .mv {
        height: 653px;
    }
    .mv__inner {
        right: 75px;

    }
    .mv__square__text {
        width: 78px;
        height: 78px;
        font-size: 71px;
    }
    .mv__large {
        font-size: 142px;
    }
    .mv__small {
        font-size: 28px;
    }
    .mv__illust__img {
        left: 65px;
        width: 624px;
    }
}

/* gift */
.gift {
    position: relative;
    height: 330px;
}
.gift__midashi {
    background-color: #FFDC50;
    text-align: center;
    height: 68px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: bold;
    color: #003893;
    font-size: 35px;
}
.gift__img {
    position: absolute;
    top: 19px;
    left: 0;
    right: 0;
    margin: auto;
    width: 1057px;
    height: 297px;
}

/* flow */
.flow {
    padding: 52px 0 48px;
    background: url(../img/stripe_bg.png) repeat;
    background-size: 26px;
}
.flow__midashi {
    margin-bottom: 40px;
    font-size: 35px;
    font-weight: bold;
    color: #003893;
    letter-spacing: 0.1em;
    text-align: center;
}
.flow__list {
    position: relative;
    width: 1000px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
}
.flow__list:before {
    position: absolute;
    content: "";
    width: 100%;
    height: 9px;
    top: 133px;
    background-color: #95AFD9;
}
.flow__list__item {
    position: relative;
    width: 309px;
    z-index: 10;
}
.flow__number {
    position: relative;
    z-index: 10;
    width: 46px;
    height: 46px;
    display: block;
    margin: 0 auto -20px;
    border-radius: 50%;
    color: #fff;
    font-size: 33px;
    font-family: 'Alata', sans-serif;
    background-color: #003893;
    text-align: center;
    line-height: 1.2;
}
.flow__illust {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 185px;
    padding-top: 15px;
    background-color: #fff;
    border-radius: 10px 10px 0 0;
}
.flow__topic {
    height: 63px;
    margin-bottom: 22px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 0 0 10px 10px;
    background-color: #003893;
    color: #fff;
    font-size: 20px;
    font-weight: bold;
    line-height: 1.3;
    text-align: center;
}
.flow__detail {
    font-size: 15px;
    line-height: 1.6;
    color: #283D5F;
}

/* inquire */
.inquire {
    height: 278px;
    display: flex;
}
.inquire__img {
    position: relative;
    width: 50%;
    background: url(../img/inquire_bg.jpg) no-repeat right;
    background-size: cover;
}
.inquire__img__illust {
    position: absolute;
    right: 27px;
    bottom: 0;
    width: 476px;
    height: 262px;
}
.inquire__text {
    width: 50%;
    background-color: #003893;
    color: #fff;
}
.inquire__text__inner {
    margin: 47px 0 0 52px;
    width: 430px;
    text-align: center;
}
.inquire__sub {
    display: block;
    padding-bottom: 24px;
    margin-bottom: 10px;
    font-size: 18px;
    background: url(../img/inquire_fukidashi.svg) no-repeat bottom;
}
.inquire__midashi {
    margin-bottom: 20px;
    font-size: 35px;
    font-weight: bold;
}
.inquire__button {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 368px;
    height: 67px;
    margin: 0 auto;
    border-radius: 40px;
    color: #fff;
    font-size: 28px;
    font-weight: bold;
    background: #FF7602 url(../img/cv_arrow.svg) no-repeat right 30px center;
    text-align: center;
    text-decoration: none;
    transition: 0.2s;
}
.inquire__button:hover {
    background: #FFF url(../img/cv_arrow_on.svg) no-repeat right 28px center;
    border: 2px solid #FF7602;
    box-sizing: border-box;
    color: #FF7602;
}

/* recommend */
.recommend {
    width: 1100px;
    padding: 60px 40px;
    margin: 0 auto;
    display: flex;
    justify-content: center;
}
.recommend__illust {
    margin: 60px 60px 0 0;
    width: 568px;
    height: 281px;
}
.recommend__midashi {
    margin-bottom: 15px;
    color: #003893;
    font-size: 35px;
    letter-spacing: 0.1em;
}
.recommend__text {
    margin-bottom: 55px;
    font-size: 18px;
    line-height: 1.6;
}
.recommend__list__item {
    padding: 10px 0 10px 50px;
    background: url(../img/recommend_check.svg) no-repeat left;
    background-size: 31px;
    font-weight: bold;
}
.recommend__list__item:not(:last-child) {
    margin-bottom: 20px;
}

/* feature */
.feature {
    padding: 75px 0 15px;
    background: url(../img/stripe_bg.png) repeat;
    background-size: 26px;
}
.feature__midashi {
    margin-bottom: 15px;
    font-size: 35px;
    font-weight: bold;
    color: #003893;
    letter-spacing: 0.1em;
    text-align: center;
}
.feature__minimidashi {
    margin-bottom: 45px;
    text-align: center;
    color: #AABDDD;
    font-size: 16px;
    font-family: 'Alata', sans-serif;
    letter-spacing: 0.1em;
}
.feature__sub {
    margin-bottom: 60px;
    font-size: 18px;
    text-align: center;
}
.feature__list {
    position: relative;
    width: 945px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
.feature__list__item {
    width: 271px;
    margin: 0 22px 60px;
}
.feature__illust {
    margin-bottom: 28px;
}
.feature__text {
    font-size: 19px;
    font-weight: bold;
    line-height: 1.6;
    text-align: center;
}

/* service */
.service {
    margin-bottom: 78px;
}
.service__midashi {
    position: relative;
    padding: 15px 0;
    margin-bottom: 45px;
    background-color: #003893;
    color: #fff;
    text-align: center;
    line-height: 1.2;
    font-size: 35px;
    font-weight: bold;
    letter-spacing: 0.1em;
}
.service__midashi:after {
    content: "";
    position: absolute;
    width: 0;
    right: 0;
    left: 0;
    bottom: -47px;
    margin: auto;
    transform: translateY(-50%);
    border: 15px solid transparent;
    border-top: 17px solid #003893;
}
.service__performance {
    margin-bottom: 35px;
    color: #003893;
    font-size: 35px;
    font-weight: bold;
    letter-spacing: 0.1em;
    text-align: center;
}
.service__number {
    margin-bottom: 35px;
    font-size: 45px;
}
.service__voices {
    position: relative;
    margin: 0 auto 50px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
@media screen and (max-width:1534px) {
    .service__voices {
        width: 945px;
    }
}
.service__voices__item {
    width: 263px;
    margin: 60px 22px 40px;
    padding: 90px 22px 22px 20px;
    position: relative;
    border: 6px solid #F0F0F0;
}
.service__img {
    width: 133px;
    height: 133px;
    margin: auto;
    position: absolute;
    top: -66px;
    left: 0;
    right: 0;
}
.service__detail {
    height: 116px;
    line-height: 1.4;
    font-weight: bold;
}
.service__profile {
    text-align: right;
}

.service__kodawari {
    height: 410px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.service__kodawari__sentences {
    position: relative;
    width: 57%;
    height: 100%;
}
.service__kodawari__sentences__inner {
    position: absolute;
    width: 494px;
    height: 100%;
    right: 78px;
    top: 78px;
    bottom: 0;
    margin: auto;

}
.service__kodawari__midashi {
    margin-bottom: 35px;
    color: #003893;
    font-size: 35px;
    font-weight: bold;
    letter-spacing: 0.1em;
}
.service__kodawari__text {
    line-height: 2;
    font-size: 18px;
}
.service__kodawari__img {
    overflow: hidden;
    width: 43%;
    height: 100%;
    font-size: 18px;
    background-color: #E0E0E0;
}
.service__kodawari__photo {
    height: 410px;
}

/* merit */
.merit {
    padding: 55px 0 75px;
    background-color: #EDF2F7;
}
.merit__midashi {
    margin-bottom: 15px;
    font-size: 35px;
    font-weight: bold;
    color: #003893;
    text-align: center;
    letter-spacing: 0.1em;
}
.merit__minimidashi {
    margin-bottom: 55px;
    text-align: center;
    color: #AABDDD;
    font-size: 16px;
    font-family: 'Alata', sans-serif;
    letter-spacing: 0.1em;
}
.merit__sub {
    margin-bottom: 60px;
    font-size: 18px;
    line-height: 1.8;
    text-align: center;
}
.merit__list {
    position: relative;
    width: 1035px;
    margin: 0 auto 50px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
.merit__list__item {
    width: 171px;
    margin: 0 18px;
}
.merit__img {
    margin-bottom: 28px;
}
.merit__caption {
    font-size: 19px;
    font-weight: bold;
    line-height: 1.6;
    text-align: center;
}
.merit__text {
    width: 900px;
    margin: 0 auto 20px;
    font-size: 18px;
    line-height: 2;
}
.merit__note {
    width: 900px;
    margin: 0 auto;
    font-size: 14px;
    line-height: 1.6;
    color: #A0A0A0;
}

/* question */
.question {
    width: 900px;
    margin: 0 auto;
    padding: 70px 0;
}
.question__midashi {
    margin-bottom: 15px;
    font-size: 35px;
    font-weight: bold;
    color: #003893;
    letter-spacing: 0.1em;
    text-align: center;
}
.question__minimidashi {
    margin-bottom: 55px;
    text-align: center;
    color: #AABDDD;
    font-size: 16px;
    font-family: 'Alata', sans-serif;
    letter-spacing: 0.1em;
}
.question__list__item:not(:last-child) {
    margin-bottom: 40px; 
}
.question__list__item dl {
    padding-bottom: 40px;
    border-bottom: 1px dotted #E3E3E3;
}
.question__list__item__q {
    position: relative;
    margin-bottom: 30px;
    padding: 8px 0 0 84px;
    color: #003893;
    font-weight: bold;
    font-size: 20px;
}
.question__list__item__q:before {
    position: absolute;
    content: "Q";
    left: 0;
    top: 0;
    width: 44px;
    height: 44px;
    line-height: 1.6;
    color: #fff;
    background-color: #003893;
    border-radius: 50%;
    font-size: 24px;
    font-family: 'Alata', sans-serif;
    font-weight: normal;
    text-align: center;
}
.question__list__item__a {
    position: relative;
    padding: 0 0 0 84px;
    font-size: 15px;
    line-height: 1.6;
}
.question__list__item__a:before {
    position: absolute;
    content: "A";
    left: 0;
    top: 0;
    width: 44px;
    height: 44px;
    line-height: 1.6;
    color: #003892;
    border-radius: 50%;
    border: 2px solid #003892;
    box-sizing: border-box; 
    font-size: 24px;
    font-family: 'Alata', sans-serif;
    text-align: center;
}
.question__list__item__note {
    margin-top: 20px;
    color: #8D8D8D;
    font-size: 14px;
}

/* footer */
.footer {
    padding: 38px 0 45px;
    background-color: #0B295C;
}
.footer__logo__img {
    display: block;
    width: 222px;
    height: 89px;
    margin: 0 auto 20px;
}
.footer__links {
    display: flex;
    justify-content: center;
    margin-bottom: 20px;
}
.footer__links__item:not(:last-child) {
    margin-right: 20px;
    padding-right: 20px;
    border-right: 1px solid #fff;
}
.footer__links__item__link {
    color: #fff;
    font-size: 15px;
    text-decoration: none;
}
.footer__copyright {
    color: #436296;
    font-size: 13px;
    text-align: center;
}