

@charset "UTF-8";

/*

    Aflac CSS
    家族に毎月届く生命保険 ＧＩＦＴ - 特長

*/


/* .bloRecomendedFor
----------------------------------------------- */
.bloRecomendedFor {
    display: flex;

    margin-bottom: 30px;

    overflow: hidden;
}
@media print, screen and (min-width: 768px) {   /* PC */
    .bloRecomendedFor {
        height: 103px;
        border-radius: 5px;
    }
}
@media only screen and (max-width: 767px) {     /* SP */
    .bloRecomendedFor {
        min-height: 59px;
        border-radius: 3px;
        font-size: 12px;
    }
}
/* .wrapperRecommendedForHead */
.bloRecomendedFor .wrapperRecommendedForHead {
    background: #f998a6;
}
@media print, screen and (min-width: 768px) {   /* PC */
    .bloRecomendedFor .wrapperRecommendedForHead {
        border-top: 6px solid #f998a6;
    }
}
@media only screen and (max-width: 767px) {     /* SP */
    .bloRecomendedFor .wrapperRecommendedForHead {
        border-top: 4px solid #f998a6;
    }
}
/* .bloRecommendedForHead */
.bloRecomendedFor .bloRecommendedForHead {
    display: flex;
    flex-flow: column;
    justify-content: center;
    align-items: center;
    height: 100%;

    background: #e25563;
    color: #ffffff;
    font-weight: bold;
}
@media print, screen and (min-width: 768px) {   /* PC */
    .bloRecomendedFor .bloRecommendedForHead {
        width: 145px;
        border-top-left-radius: 5px;
        line-height: 1.3;
    }
    .bloRecomendedFor .bloRecommendedForHead > :first-child {
        font-size: 19px;
    }
    .bloRecomendedFor .bloRecommendedForHead > :last-child {
        font-size: 24px;
    }
}
@media only screen and (max-width: 767px) {     /* SP */
    .bloRecomendedFor .bloRecommendedForHead {
        width: 94px;
        border-top-left-radius: 3px;
    }
    .bloRecomendedFor .bloRecommendedForHead > :last-child {
        font-size: 15px;
    }
}
/* .bloRecommendedForText */
.bloRecomendedFor .bloRecommendedForText {
    flex: 1;
    position: relative;
    display: flex;
    align-items: center;
    background: #f2dbdd;
    color: #003366;
    font-weight: bold;
}
.bloRecomendedFor .bloRecommendedForText::before,
.bloRecomendedFor .bloRecommendedForText::after {
    content: "";
    position: absolute;
    left: 0;
    display: block;
}
.bloRecomendedFor .bloRecommendedForText .modHighLight {
    color: #f2652a;
}
@media print, screen and (min-width: 768px) {   /* PC */
    .bloRecomendedFor .bloRecommendedForText {
        padding: 5px 22px 0 25px;

        background: linear-gradient(
            90deg,
            #ffffff 0px, #ffffff 3px,
            #f2dbdd 3px, #f2dbdd 100%
        );

        font-size: 18px;
    }
    .bloRecomendedFor .bloRecommendedForText::before {
        top: calc(50% - 8px);;
        border-top: 10px solid transparent;
        border-bottom: 10px solid transparent;
        border-left: 12px solid #ffffff;
    }
    .bloRecomendedFor .bloRecommendedForText::after {
        top: calc(50% - 5px);
        border-top: 7px solid transparent;
        border-bottom: 7px solid transparent;
        border-left: 9px solid #e25563;
    }
}
@media only screen and (max-width: 767px) {     /* SP */
    .bloRecomendedFor .bloRecommendedForText {
        padding: 11px 14px 11px 16px;

        background: linear-gradient(
            90deg,
            #ffffff 0px, #ffffff 2px,
            #f2dbdd 2px, #f2dbdd 100%
        );
    }
    .bloRecomendedFor .bloRecommendedForText::before {
        top: calc(50% - 8px);;
        border-top: 7px solid transparent;
        border-bottom: 7px solid transparent;
        border-left: 7px solid #ffffff;
    }
    .bloRecomendedFor .bloRecommendedForText::after {
        top: calc(50% - 5px);
        border-top: 4px solid transparent;
        border-bottom: 4px solid transparent;
        border-left: 4px solid #e25563;
    }
}


/* .bloTokucho
----------------------------------------------- */
.bloTokucho {
    display: flex;
    gap: 10px;
    margin-bottom: 40px;
}
.bloTokucho > .bloTokuchoIcon {
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    align-items: center;

    width: 80px;
    height: 80px;
    border-radius: 40px;
    margin-right: 10px;
    background: #e25563;

    color: #ffffff;
}
.bloTokucho > .bloTokuchoIcon > :last-child {
    font-size: 30px;
    line-height: 1;
}
.bloTokucho > .bloTokuchoInner {
    flex: 1;
    display: flex;
    flex-flow: column;
    justify-content: center;
    align-items: flex-start;
    font-size: 16px;
}
.bloTokucho > .bloTokuchoInner > .txStrong {
    font-size: 18px;
}
.bloTokucho > .bloTokuchoInner > .txLinkArrow {
    font-size: 14px;
}
.bloTokucho > .bloTokuchoInner > .txLinkArrow::before {
    top: calc(50% - 5px);
    left: 4px;
}
@media print, screen and (min-width: 768px) {   /* PC */
    .bloTokucho .modVariableFontSize {
        font-size: 18px;
    }
}
@media only screen and (max-width: 767px) {     /* SP */
    .bloTokucho .modVariableFontSize {
        font-size: 16px;
    }
}


/* .bloExample
----------------------------------------------- */
.bloExample {
    font-size: 16px;
}
.bloExample .txSquareBdr {
    display: inline-block;
    border: 1px solid #cccccc;
    padding: 2px 5px 1px;
    margin-bottom: 10px;

    line-height: 1;
}
@media print, screen and (min-width: 768px) {   /* PC */
    .bloExample {
        padding: 0 25px;
    }
    .bloExample .bloExampleInnerShort {
        width: 600px;
    }
}
.bloExample .imgExample {
    padding: 30px 0;
}
.bloExample .imgExample > img {
    display: block;
    margin: 0 auto;
}


/* #bloPlusIcon
----------------------------------------------- */
#bloPlusIcon {
    width: 80px;
    margin: 0 auto 25px;
}
#bloPlusIcon::before, #bloPlusIcon::after {
    content: "";
    display: block;
    width: 24px;
    margin: 0 auto;
    background: #eea688;
}
#bloPlusIcon::before {
    height: 29px;
}
#bloPlusIcon::after {
    height: 27px;
}
#bloPlusIcon > #bloPlusIconInner {
    display: flex;
    justify-content: center;
    height: 24px;
    background: #eea688;
    color: #ffffff;
    font-size: 16px;
    font-weight: bold;
}


/* .bloTokuyaku
----------------------------------------------- */
.bloTokuyaku {
    font-size: 16px;
}
.bloTokuyaku .headTokuyaku {
    margin-bottom: 5px;
    font-size: 18px;
    font-weight: bold;
}
.bloTokuyaku a {
    font-size: 14px;
    display: inline-flex;
    gap: 5px;
    margin-top: 5px;
    align-items: center;
}
@media print, screen and (min-width: 768px) {   /* PC */
    .bloTokuyaku {
        padding: 0 25px;
    }
    .bloTokuyaku > .bloTwoColumn {
        display: flex;
        gap: 10px;
    }
}
@media print, screen and (min-width: 768px) {   /* PC */
    .bloTokuyaku .logoNonSmoker {
        width: 235px;
        height: auto;;
    }
}
@media only screen and (max-width: 767px) {     /* SP */
    .bloTokuyaku .logoHaraikomiMenjo {
        display: block;
        margin: 10px auto;
    }
    .bloTokuyaku .logoNonSmoker {
        display: block;
        width: 187px;
        height: auto;
        margin: 0 auto 25px;
    }
}


/* #bloMoreoverIcon
----------------------------------------------- */
#bloMoreoverIcon {
    display: flex;
    justify-content: center;
    align-items: center;

    width: 112px;
    height: 32px;

    background: #108ccf;
    color: #ffffff;
    font-size: 16px;
    font-weight: bold;
}
@media print, screen and (min-width: 768px) {   /* PC */
    #bloMoreoverIcon {
        margin: 30px auto 15px;
    }
}
@media only screen and (max-width: 767px) {     /* SP */
    #bloMoreoverIcon {
        margin: 30px auto 25px;
    }
}



