@charset "UTF-8";
body {
    text-align: center;
    color: #1d1d1d;
    width: 100%;
    overflow: hidden;
    font-size: 16px;
    font-size: 1.6rem;
}

@media only screen and (max-width: 736px) {
    body {
        font-size: 1.5rem;
        font-size: 4.6875vw;
    }
}

.wrap img {
    width: 100%;
}

.pc_none {
    display: none;
}

@media only screen and (max-width: 736px) {
    .pc_none {
        display: block;
    }
}

@media only screen and (max-width: 736px) {
    .sp_none {
        display: none;
    }
}

.letter-space {
    letter-spacing: -0.06em;
}

.txt-right_pc {
    text-align: right;
}

@media only screen and (max-width: 736px) {
    .txt-right_pc {
        text-align: left;
    }
}


/****btn
*****************************************/

.cv-area {
    width: 100%;
    position: fixed;
    bottom: 0;
    z-index: 100;
}

.cv-list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}

.cv-list__item {
    width: 100%;
    background-color: #fff;
    text-align: center;
    position: relative;
}

.cv-list__item:after {
    content: "→";
    display: block;
    position: absolute;
    top: 50%;
    right: 2.31%;
    margin-top: -18px;
    font-size: 36px;
    line-height: 1;
    color: #fff;
}

@media only screen and (max-width: 736px) {
    .cv-list__item:after {
        margin-top: -10px;
        font-size: 20px;
        line-height: 1;
    }
}

.cv-list__link {
    display: block;
    padding: 10px 0;
    font-size: 20px;
    font-size: 2rem;
    color: #fff;
    text-decoration: none;
}

.cv-list__link:before {
    content: "";
    vertical-align: middle;
    display: inline-block;
    margin-top: -2px;
    margin-right: 10px;
    width: 38px;
    height: 25px;
    background: url(../imgs/nav-icon.png) 0 0 no-repeat;
}

@media only screen and (max-width: 736px) {
    .cv-list__link {
        display: block;
        padding: 10px 0 10px 33%;
        font-size: 14px;
        line-height: 16px;
        text-align: left;
    }
    .cv-list__link:before {
        position: absolute;
        top: 50%;
        left: 13%;
        margin: 0 auto;
        width: 24px;
        height: 20px;
        margin-top: -8px;
        background-size: contain;
    }
}

.cv-list__link_left {
    background-color: #b3972c;
}

@media only screen and (max-width: 736px) {
    .cv-list__link_left {
        padding: 10px 0;
        text-align: center;
    }
    .cv-list__link_left:before {
        left: 5%;
    }
}

/****head
*****************************************/

.header {
    padding-left: 15px;
    padding-right: 15px;
    background-color: #231815;
    color: #858585;
    text-align: left;
}

.header__tit {
    margin: 0;
    font-size: 10px;
    font-weight: normal;
    line-height: 25px;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
}


/****block共通
*****************************************/

.block {
    text-align: left;
    margin-bottom: 100px;
}

@media only screen and (max-width: 736px) {
    .block {
        margin-bottom: 12.5%;
    }
}

@media only screen and (max-width: 736px) {
    .tit-visual {
        height: 24.5rem;
        height: 76.5625vw;
        position: relative;
    }
}

.tit-visual_main {
    background: url(../imgs/visual-01_pc.jpg) center center no-repeat;
    background-size: cover;
    text-align: left;
}

@media only screen and (max-width: 736px) {
    .tit-visual_main {
        background: url(../imgs/visual-01_sp.jpg) center center no-repeat;
        background-size: cover;
        height: 36rem;
        height: 112.5vw;
    }
}

.tit-visual_reason {
    background: url(../imgs/visual-02.jpg) center center no-repeat;
    background-size: cover;
}

.tit-visual_merit {
    background: url(../imgs/visual-03.jpg) center center no-repeat;
    background-size: cover;
}

.tit-visual__icon {
    width: 100%;
    max-width: 1160px;
    margin: 0 auto 292px;
}

.tit-visual__icon img {
    width: 17.24138%;
}

.tit-visual__icon_main {
    margin-bottom: 312px;
}

@media only screen and (max-width: 736px) {
    .tit-visual__icon {
        width: 28.125%;
        margin: 0;
    }
    .tit-visual__icon img {
        width: 100%;
    }
}

.tit-visual__lead {
    max-width: 1120px;
    width: 100%;
    padding: 0 10px 38px 10px;
    margin: 0 auto;
}

.tit-visual__lead_main {
    padding-bottom: 15px;
}

@media only screen and (max-width: 736px) {
    .tit-visual__lead {
        width: 90.625%;
        padding: 0;
        position: absolute;
        left: 0;
        right: 0;
        bottom: 2rem;
        bottom: 6.25vw;
    }
}

.tit-visual-txt {
    text-align: center;
    background-color: #b6ad91;
    padding: 44px 10px;
    margin-bottom: 60px;
}

.tit-visual-txt img {
    max-width: 1100px;
}

@media only screen and (max-width: 736px) {
    .tit-visual-txt {
        text-align: left;
        color: #fff;
        font-size: 1.2rem;
        font-size: 3.75vw;
        margin-bottom: 6.25%;
        padding: 6.25% 3.125%;
        letter-spacing: -0.035em;
        text-align: justify;
        /* 両端揃え */
        text-justify: inter-ideograph;
        /* 両端揃えの種類 */
    }
}


/****introduction
*****************************************/

.introduction {
    width: 100%;
    max-width: 1120px;
    margin-right: auto;
    margin-left: auto;
    padding: 0 10px;
}

@media only screen and (max-width: 736px) {
    .introduction {
        padding: 0;
    }
}

.introduction__tit {
    border-bottom: 16px solid #d5c8a0;
    margin-bottom: 50px;
}

@media only screen and (max-width: 736px) {
    .introduction__tit {
        width: 93.75%;
        margin: 0 auto 6.25%;
    }
}

.introduction-list {
    max-width: 1100px;
    padding-bottom: 150px;
    position: relative;
}

@media only screen and (max-width: 736px) {
    .introduction-list {
        padding-bottom: 28.125%;
    }
}

.introduction-list__item {
    float: left;
    width: 29.09091%;
    margin-right: 6.36364%;
    position: relative;
}

.introduction-list__item:after {
    content: "";
    background: url(../imgs/ima-mark-01.png) 0 0 no-repeat;
    position: absolute;
    height: 41px;
    width: 41px;
    top: 20%;
    right: -17%;
}

@media only screen and (min-width: 737px) and (max-width: 980px) {
    .introduction-list__item:after {
        top: 13%;
        right: -20%;
    }
}

@media only screen and (max-width: 736px) {
    .introduction-list__item:after {
        left: 0;
        right: 0;
        margin: 0 auto;
        top: auto;
        bottom: -4.75rem;
        bottom: -14.84375vw;
    }
}

@media only screen and (max-width: 736px) {
    .introduction-list__item {
        float: none;
        margin: 0 auto 18.4375%;
        width: 93.75%;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }
}

.introduction-list__item_last:after {
    content: "";
    display: none;
}

@media only screen and (max-width: 736px) {
    .introduction-list__item_last {
        margin-bottom: 0;
    }
}

.introduction-list__img {
    border: 3px solid #aa965c;
    margin-bottom: 20px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}

@media only screen and (max-width: 736px) {
    .introduction-list__img {
        width: 48.33333%;
        margin-bottom: 0;
    }
}

.introduction-list__txt {
    font-size: 17px;
    font-size: 1.7rem;
    border-left: 4px solid #aa965c;
    padding-left: 15px;
}

@media only screen and (max-width: 736px) {
    .introduction-list__txt {
        font-size: 1.2rem;
        font-size: 3.75vw;
        border-left: none;
        width: 48.33333%;
        padding: 0;
    }
}

.introduction-list:before {
    content: "";
    background: url(../imgs/ima-mark-02.png) 0 0 no-repeat;
    position: absolute;
    bottom: 30px;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 502px;
    height: 86px;
}

@media only screen and (max-width: 736px) {
    .introduction-list:before {
        background-size: 100% auto;
        width: 25rem;
        width: 78.125vw;
        height: 4.5rem;
        height: 14.0625vw;
        bottom: 2.5rem;
        bottom: 7.8125vw;
    }
}

.introduction-box {
    text-align: center;
    border: 3px solid #aa965c;
    padding-top: 35px;
}

@media only screen and (max-width: 736px) {
    .introduction-box {
        width: 93.75%;
        margin: 0 auto;
        padding-top: 6.25%;
    }
}

.introduction-box__tit {
    margin: 0 auto 25px;
    width: 68.37294%;
}

@media only screen and (max-width: 736px) {
    .introduction-box__tit {
        width: 94.27609%;
        margin-bottom: 5.05051%;
    }
}

.introduction-box__txt {
    font-size: 26px;
    font-size: 2.6rem;
    margin-bottom: 50px;
}

@media only screen and (min-width: 737px) and (max-width: 980px) {
    .introduction-box__txt {
        font-size: 19px;
        font-size: 1.9rem;
    }
}

@media only screen and (max-width: 736px) {
    .introduction-box__txt {
        font-size: 1.2rem;
        font-size: 3.75vw;
        margin-bottom: 8.41751%;
    }
}

.introduction-box__subtit {
    width: 93.69287%;
    margin: 0 auto 25px;
    border-bottom: 16px solid #d5c8a0;
}

@media only screen and (max-width: 736px) {
    .introduction-box__subtit {
        width: 90.90909%;
        padding: 0;
        margin-bottom: 3.367%;
        border-width: 0.8rem;
        border-width: 2.5vw;
    }
}

.introduction-box__zuhan {
    text-align: left;
    width: 84.09506%;
    margin-bottom: 20px;
    margin-left: auto;
    margin-right: auto;
}

@media only screen and (max-width: 736px) {
    .introduction-box__zuhan {
        width: 90.90909%;
        padding: 0;
        margin: 0 auto 2.52525%;
    }
}

.introduction-box__attention {
    font-size: 12px;
    margin-bottom: 2px;
    text-align: left;
    padding: 0 20px;
}

@media only screen and (max-width: 736px) {
    .introduction-box__attention {
        font-size: 1rem;
        font-size: 3.125vw;
        margin-bottom: 5.05051%;
        letter-spacing: -0.02em;
    }
}


/****privilege
*****************************************/

.privilege-wrap {
    background-color: #f6f4ee;
    padding: 90px 0;
}

@media only screen and (max-width: 736px) {
    .privilege-wrap {
        padding: 0 0 6.25% 0;
    }
}

.privilege {
    width: 100%;
    max-width: 1160px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
}

@media only screen and (max-width: 736px) {
    .privilege {
        padding: 0;
    }
}

.privilege-tit__icon {
    position: absolute;
    top: 0;
    left: 0px;
    width: 17.24138%;
}

@media only screen and (max-width: 736px) {
    .privilege-tit__icon {
        left: 0;
        width: 28.125%;
    }
}

.privilege-lead-wrap {
    padding-left: 17.24138%;
    padding-right: 10px;
    margin-bottom: 35px;
}

@media only screen and (max-width: 736px) {
    .privilege-lead-wrap {
        padding: 0;
        margin-bottom: 4.6875%;
    }
}

.privilege-lead {
    padding-top: 22px;
    width: 100%;
    margin-bottom: 1%;
}

@media only screen and (max-width: 736px) {
    .privilege-lead {
        padding: 0 3.125% 0 28.125%;
        margin-bottom: 1.25rem;
        margin-bottom: 3.90625vw;
    }
}

.privilege-attention {
    font-size: 12px;
    text-align: left;
}

.privilege-attention_top {
    padding-left: 3.96552%;
}

.privilege-attention_bottom {
    padding: 0 10px;
}

@media only screen and (max-width: 736px) {
    .privilege-attention {
        font-size: 10px;
        width: 93.75%;
        margin: 0 auto;
    }
    .privilege-attention_top {
        padding-left: 0;
    }
    .privilege-attention_bottom {
        padding: 0;
    }
}

.privilege-card {
    margin-bottom: 25px;
}

@media only screen and (max-width: 736px) {
    .privilege-card {
        margin-bottom: 6.66667%;
    }
}

.privilege-txt {
    border-bottom: 16px solid #d5c8a0;
    margin: 0 0 20px;
}

@media only screen and (max-width: 736px) {
    .privilege-txt {
        width: 93.75%;
        margin: 0 auto 2.5%;
        font-size: 1px;
        border-width: 0.8rem;
        border-width: 2.5vw;
    }
}


/****reason
*****************************************/

.reason__cont-wrap {
    width: 100%;
    max-width: 1120px;
    margin-right: auto;
    margin-left: auto;
    padding: 0 10px;
}

@media only screen and (max-width: 736px) {
    .reason__cont-wrap {
        padding: 0;
    }
}

.reason__cont {
    text-align: left;
    width: 48.18182%;
}

.reason__cont_left {
    float: left;
}

.reason__cont_right {
    float: right;
    margin-bottom: 5px;
}

@media only screen and (max-width: 736px) {
    .reason__cont {
        width: 93.75%;
        margin: 0 auto;
    }
    .reason__cont_left {
        float: none;
        margin-bottom: 7.8125%;
    }
    .reason__cont_right {
        float: none;
    }
}

.reason__subtit {
    border-bottom: 10px solid #d5c8a0;
    margin-bottom: 15px;
}

@media only screen and (max-width: 736px) {
    .reason__subtit {
        border-width: 0.7rem;
        border-width: 2.1875vw;
        margin-bottom: 5%;
    }
}

.reason-box {
    border: 3px solid #aa965c;
}

.reason-list__item {
    margin: 0 auto;
    padding: 7.70713% 3.85356% 5.78035%;
    font-size: 15px;
}

.reason-list__item:nth-child(odd) {
    background-color: #f6f4ee;
}

.reason-list__term {
    margin-bottom: 15px;
}

.reason-table th {
    width: 16.98%;
    padding: 20px 10px;
    text-align: center;
    vertical-align: middle;
    border-right: 1px solid #aa965c;
    border-bottom: 1px solid #aa965c;
    font-weight: bold;
}

.reason-table td {
    padding: 20px 10px;
    border-bottom: 1px solid #aa965c;
}

.reason-table__txt {
    padding-left: 1em;
    text-indent: -1em;
}

.reason-table__txt_gold {
    color: #bf933b;
}

.reason-table__img_thanks {
    width: 40.69479%;
    padding: 10px 0 0 26.30273%;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
}

@media only screen and (max-width: 736px) {
    .reason-table__img_thanks {
        width: 59.44056%;
        padding-left: 20px;
    }
}

.reason-table__img_40 {
    width: 25.80645%;
    margin: 0 auto 10px;
}

@media only screen and (max-width: 736px) {
    .reason-table__img_40 {
        width: 36.36364%;
        padding-top: 10px;
        margin-bottom: 20px;
    }
}

.reson-prize {
    padding: 45px 0 15px;
}

@media only screen and (max-width: 736px) {
    .reson-prize {
        padding: 2.5rem 0 0 0;
        padding: 7.8125vw 0 0 0;
    }
}

.reson-prize__tit {
    border-bottom: 10px solid #d5c8a0;
    margin-bottom: 25px;
}

@media only screen and (max-width: 736px) {
    .reson-prize__tit {
        border-width: 0.7rem;
        border-width: 2.1875vw;
    }
}

.reson-prize-list {
    width: 91.60305%;
    margin: 0 auto;
}

.reson-prize-list__item {
    width: 47.91667%;
    float: left;
}

.reson-prize-list__item:nth-child(even) {
    float: right;
}

.reson-prize-list__year {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1;
    margin-bottom: 8px;
    position: relative;
}

@media only screen and (max-width: 736px) {
    .reson-prize-list__year {
        font-size: 1.4rem;
        font-size: 4.375vw;
    }
}

.reson-prize-list__year:before {
    content: "";
    display: inline-block;
    margin-right: 5px;
    width: 15px;
    height: 15px;
    background-color: #aa965c;
}

.reson-prize-list__img {
    margin-bottom: 8px;
}

.reson-prize-list__name {
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1;
    margin-bottom: 20px;
}

@media only screen and (max-width: 736px) {
    .reson-prize-list__name {
        font-size: 1.3rem;
        font-size: 4.0625vw;
        line-height: 1.3;
        letter-spacing: -0.075em;
    }
}

.reason-attention {
    font-size: 12px;
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 5px;
    text-align: right;
}

@media only screen and (max-width: 736px) {
    .reason-attention {
        font-size: 1rem;
        font-size: 3.125vw;
        padding-top: 0;
        width: 93.75%;
    }
}


/****merit
*****************************************/

.merit-list {
    width: 100%;
    max-width: 1180px;
    margin: 0 auto;
    padding: 0 10px;
}

@media only screen and (max-width: 736px) {
    .merit-list {
        padding: 0;
    }
}

.merit-list__item {
    border: 3px solid #aa965c;
    font-size: 0;
    margin-bottom: 20px;
    padding: 0 0 18px 0;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
}

@media only screen and (max-width: 736px) {
    .merit-list__item {
        display: block;
        width: 93.75%;
        margin: 0 auto 6.25%;
        padding: 6.25% 0;
    }
}

.merit-list__icon {
    width: 20.3125%;
    padding: 7px 0 0 7px;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    margin-right: 3.64583%;
}

@media only screen and (max-width: 736px) {
    .merit-list__icon {
        display: block;
        width: 78.78788%;
        margin: 0 auto 5.05051%;
        padding: 0;
    }
}

.merit-list__tit {
    font-size: 24px;
    font-size: 2.4rem;
    font-weight: bold;
    margin-right: 3.125%;
    padding-top: 18px;
    width: 19.44444%;
    line-height: 1.4;
}

@media only screen and (max-width: 736px) {
    .merit-list__tit {
        width: auto;
        text-align: center;
        font-size: 1.8rem;
        font-size: 5.625vw;
        margin: 0 0 6.73401%;
        padding: 0;
    }
}

.merit-list__txt {
    font-size: 17px;
    font-size: 1.7rem;
    width: 52.08333%;
    padding: 26px 0 8px;
}

@media only screen and (max-width: 736px) {
    .merit-list__txt {
        width: 84.17508%;
        margin: 0 auto;
        font-size: 1.5rem;
        font-size: 4.6875vw;
        padding: 0;
    }
}

.merit-list__attention {
    font-size: 10px;
    font-size: 1rem;
    position: absolute;
    bottom: 10px;
    right: 32px;
    line-height: 1;
}

@media only screen and (max-width: 736px) {
    .merit-list__attention {
        position: static;
        width: 84.17508%;
        margin: 0 auto;
        line-height: 1.4;
        padding-top: 5.05051%;
    }
}


/****footer
*****************************************/

.banner-area {
    background-color: #eee;
    padding: 50px 10px;
}

.banner-list {
    max-width: 960px;
    margin: 2rem auto 1rem;
    text-align: center;
}

.banner-list__item {
    display: inline-block;
    margin-bottom: 1rem;
    padding: 0 .2%;
}

.banner-list__item:nth-last-child(-n+2) {
    margin-bottom: 0;
}

.banner-list__item img {
    width: auto;
    height: 55px;
}

@media only screen and (max-width: 736px) {
    .banner-list__item {
        width: 200px;
        margin-bottom: 20px;
    }

    .banner-list__item:nth-last-child(-n+2) {
        margin-bottom: 20px;
    }

    .banner-list__item:last-child {
        margin-bottom: 0;
    }
}

.footer {
    padding: 30px 60px 25px;
    text-align: left;
    margin: 0 auto;
    max-width: 1040px;
}

@media only screen and (max-width: 736px) {
    .footer {
        padding: 30px 0 25px;
        text-align: center;
    }
}

.footer__logo {
    margin-bottom: 8px;
}

.footer__logo img {
    width: 170px;
}

.footer__copy {
    color: #1f73b9;
    font-size: 10px;
    letter-spacing: .01em;
    font-smoothing: antialiased;
    padding: 10px 0;
}


/****utility
*****************************************/

.mr0 {
    margin-right: 0;
}

@media only screen and (max-width: 736px) {
    .mr0 {
        margin-right: auto;
    }
}

.mb0 {
    margin-bottom: 0;
}

.contents-footer-annotation {
    font-size: 12px;
    max-width: 1100px;
    margin: 0 auto 2em auto;
    padding: 0 5px;
    text-align: left;
}

@media only screen and (max-width: 736px) {
    .contents-footer-annotation {
        font-size: 1rem;
        font-size: 3.125vw;
        padding-top: 0;
        width: 93.75%;
    }
}
