@charset "UTF-8";

/* 
kabelline-diet
------------------------ 
*/

/* section01 */

#kab .sec01 {
    background: url("../images/menu/kabelline/sec1_bg.jpg")no-repeat;
    background-size: cover;
    padding-top: 1%;
}

#kab .sec01 .heading_area .pk_txt {
    font-size: 3.7rem;
    text-align: center;
    margin: 0 auto 1%;
    background: url("../images/menu/kabelline/sec1_shape.png")no-repeat center center;
    background-size: contain;
    width: 51%;
}

#kab .sec01 .heading_area h3 {
    font-size: 6rem;
    text-align: center;
    margin: 0 0 4%;
    color: #665658;
}

#kab .sec01 .w_bg {
    box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.15);
    padding: 6% 7%;
    margin: 0 3%;
}

#kab .sec01 .w_bg ul li {
    margin-bottom: 3%;
    align-items: center;
}

#kab .sec01 .w_bg ul li:last-child {
    margin-bottom: 0;
}

#kab .sec01 .w_bg ul li figure {
    width: 6%;
    margin-right: 2%;
}

#kab .sec01 .w_bg ul li .p_txt {
    width: 92%;
    font-size: 3rem;
    color: #665658;
}

/* section02 */

#kab .sec02 {
    background: #fcf0f1;
    padding: 6% 5% 10%;
}

#kab .sec02 h3 {
    font-size: 4.2rem;
    background: url("../images/menu/kabelline/sec2_shape.png")no-repeat center center;
    background-size: contain;
    width: 90%;
    text-align: center;
    padding: 4% 0;
    margin: 0 auto 6%;
}

#kab .sec02 .p_txt {
    padding: 0 2%
}

#kab .sec02 figure {
    width: 81%;
    margin: 6% auto;
}

#kab .sec02 .bg_txt_half {
    background: linear-gradient(transparent 60%, #fff 40%);
    font-weight: 500;
}

/* section03 */

#kab .sec03 {
    background: url("../images/menu/kabelline/sec3_bg.jpg")no-repeat;
    background-size: cover;
}

#kab .sec03 .heading_wrap figure {
    width: 55%;
}

#kab .sec03 .heading_wrap h3 {
    font-size: 4.5rem;
    margin-left: -6%;
    line-height: 1.3;
}

#kab .sec03 .heading_wrap h3 .bg_txt_half {
    font-size: 6.4rem;
    background: linear-gradient(transparent 60%, #fff 40%);
}

#kab .sec03 .txt_area {
    padding: 4% 3% 8%;
}

#kab .sec03 .border_box {
    padding: 6% 6%;
    border: 1px solid #1b1b1b;
    position: relative;
}

#kab .sec03 .border_box::before {
    content: '';
    width: 9%;
    height: 1px;
    background: #1b1b1b;
    display: inline-block;
    position: absolute;
    top: 1.9%;
    right: -2.9%;
    transform: rotate(45deg);
}

#kab .sec03 .border_box::after {
    content: '';
    width: 9%;
    height: 1px;
    background: #1b1b1b;
    display: inline-block;
    position: absolute;
    bottom: 1.9%;
    left: -2.9%;
    transform: rotate(45deg);
}

#kab .sec03 .border_box .p_txt {
    line-height: 1.5;
}

/* section04 */

#kab .sec04 {
    background: #fae1e4;
}

#kab .sec04 .sec04_top {
    padding: 6% 0 8% 0;
    position: relative;
}

#kab .sec04 .sec04_top .txt_wrap {
    position: absolute;
    top: 16%;
    left: 8%;
    width: 50%;
}

#kab .sec04 .sec04_top .txt_wrap figure {
    position: absolute;
    left: -8%;
    bottom: -85%;
    width: 110%;
}

#kab .sec04 .sec04_top .sec4_img1 {
    width: 88%;
    margin-left: auto;
}

#kab .sec04 .sec04_top h3 {
    font-size: 3.8rem;
    line-height: 1.55;
    letter-spacing: .16em;
}
@media screen and (max-width: 749px) {
    #kab .sec04 .sec04_top h3 {
        font-size: 5vw;
    }
}

#kab .sec04 .sec04_top h3 .bg_txt {
    background: #fff;
    color: #e66a7a;
    padding: 0 1% 0 2%;
}

#kab .sec04 .sec04_bottom {
    padding: 2% 4% 8%;
}

#kab .sec04 .sec04_bottom .w_bg {
    padding: 6% 6%;
}

#kab .sec04 .sec04_bottom .w_bg .bold_txt {
    color: #e66a7a;
}

/* section05 */

#kab .sec05 .inner {
    padding-top: 9%;
    padding-bottom: 9%;
}

#kab .sec05 h3 {
    font-size: 3.8rem;
    text-align: center;
    margin: 0 auto 4%;
    border: 1px solid #e67a6a;
    padding: 2% 0;
    position: relative;
    width: 95%;
    color: #e67a6a;
}
@media screen and (max-width: 749px) {
    #kab .sec05 h3 {
        font-size: 5.1vw;
    }
}

#kab .sec05 h3::after {
    position: absolute;
    content: '';
    right: -1px;
    top: -1px;
    border-width: 0 20px 20px 0;
    border-style: solid;
    border-color: #fff #fff #e67a6a;
}
@media screen and (max-width: 420px) {
    #kab .sec05 h3::after {
        border-width: 0 15px 15px 0;
    }
}

#kab .sec05 figure {
    width: 100%;
}

/* section06 */

#kab .sec06 {
    background: #fcf0f1;
    margin-bottom: 10%;
}

#kab .sec06 h3 {
    font-size: 4.9rem;
    text-align: center;
    line-height: 1.55;
    padding: 3% 0;
    background: linear-gradient(to right, #e66a7a, #e6906a);
    color: #fff;
    letter-spacing: .1em;
}

#kab .sec06 h3 .color_txt {
    color: #fcffac;
}

#kab .sec06 .p_txt {
    padding: 0 3%;
}

#kab .sec06 figure {
    margin: 8% auto;
    width: 97%;
}

#kab .sec06 .bg_txt_half {
    background: linear-gradient(transparent 60%, #fff 40%);
    font-size: 500;
}

/* section07 */

#kab .sec07 .fee_wrap {
    padding: 6% 4% 6%;
}

#kab .sec07 .fee_wrap ul li {
    border: 3px solid #f7d2d7;
}
@media screen and (max-width: 420px) {
    #kab .sec07 .fee_wrap ul li {
        border: 2px solid #f7d2d7;
    }
}

#kab .sec07 .fee_wrap h4 {
    background: #fae1e4;
    font-size: 4rem;
    text-align: center;
    padding: 1.5% 0;
    font-weight: 700;
}

#kab .sec07 .fee_wrap dd {
    padding: 3% 4% 2%;
}

#kab .sec07 .fee_wrap dd .flex {
    justify-content: center;
    align-items: end;
}

#kab .sec07 .fee_wrap dd .fee {
    font-size: 5.5rem;
    font-weight: 700;
    line-height: 1.2;
    -webkit-font-feature-settings: 'palt' 1;
    font-feature-settings: "palt";
    letter-spacing: .05em;
}

#kab .sec07 .fee_wrap dd .fee span {
    font-size: 4rem;
}

#kab .sec07 .fee_wrap dd .pay_txt {
    padding-bottom: .5%;
    margin-left: 1%;
    font-size: 3rem;
}

#kab .sec07 .fee_wrap dd .add_txt {
    align-items: start;
    justify-content: start;
    padding-top: 2%;
}

#kab .sec07 .fee_wrap .add_txt_micro {
    background: #fae1e4;
    margin: 4% 0 0;
    padding: 4% 4% 4% 8%;
}

#kab .sec07 .fee_wrap .add_txt_micro .p_txt::before {
    content: '※';
    margin-left: -4.6%;
}

/* renewar 2411 */
#kab .pk_txt {
    color: #e66a7a;
}

/* #kab .bottom_info .pk_txt {
    color: #4fb0dd;
}

#kab .approval .pk_txt {
    color: #4fb0dd;
} */