@charset "UTF-8";

/* common
---------------- */
#lift .mincho {
    font-family: '游明朝', 'Yu Mincho', YuMincho, 'Hiragino Mincho Pro', serif;
}

#lift_pr .mincho {
    font-family: '游明朝', 'Yu Mincho', YuMincho, 'Hiragino Mincho Pro', serif;
}

#lift .sec_ttl {
    color: #566166;
    font-family: '游明朝', 'Yu Mincho', YuMincho, 'Hiragino Mincho Pro', serif;
    font-size: 6rem;
    margin-bottom: 6%;
    font-feature-settings: "palt";
    font-weight: 500;
    text-align: center;
}

#lift .sec_ttl_wrap {
    text-align: center;
    margin-bottom: 6%;
}

#lift .sec_ttl_wrap .sec_ttl {
    font-size: 8rem;
    letter-spacing: .05em;
    margin: 2% 0 2%;
    font-weight: 700;
}

#lift .sec_ttl .txt_s {
    font-size: 6rem;
}

#lift .sec_ttl_wrap .sub_ttl_en {
    font-family: '游明朝', 'Yu Mincho', YuMincho, 'Hiragino Mincho Pro', serif;
    font-size: 4rem;
    text-align: center;
    color: #566166;
    margin-top: -1%;
}

#lift .blue {
    color: #56b2de;
}


/* sec01
---------------- */
#lift .sec01 >.inner {
    padding-bottom: 2%;
}

#lift .sec01 h3 {
    margin-bottom: 2%;
    letter-spacing: 3px;
    font-weight: 700;
}

#lift .sec01 .fukidashi_wrap {
    background: url("../images/menu/lift/sec1_shape1.png") no-repeat;
    background-size: contain;
    padding: 10% 2%;
    width: 95%;
    margin: 0 auto;
}

#lift .sec01 .mincho {
    font-size: 4vw;
}

#lift .sec01 .sec01_bottom {
    background: url("../images/menu/lift/sec1_bg.jpg") no-repeat;
    background-size: cover;
}

#lift .sec01 .sec01_bottom .p_txt {
    padding: 5% 3% 0;
}

/* sec02
---------------- */

#lift .sec02 {
    background: url("../images/menu/lift/sec2_bg.jpg")no-repeat;
    background-size: cover;
}

#lift .sec02 .ttl_wrap {
    padding: 6% 0 0;
}

#lift .sec02 .ttl_wrap .sub_ttl {
    font-size: 3.4rem;
    font-weight: 700;
    margin-bottom: 3px;
}

#lift .sec02 .ttl_wrap h3 {
    background-image: linear-gradient(90deg, #6abee6, #55d4a9);
    color: #fff;
    font-size: 4.8rem;
    padding: 2% 0 1%;
}

#lift .sec02 .ttl_wrap h3 span {
    font-size: 3.9rem;
}

#lift .sec02 .desc_wrap .p_txt {
    padding: 0 3%;
    margin-bottom: 6%;
}

---------------- */
#lift .sec03 {
    padding-top: 3%;
}

#lift .sec03 .merit_list {
    background: #e1f2fa;
    padding: 4% 4% 4%;
    margin-bottom: 6%;
    overflow: hidden; /* 角丸などがある場合に備えて */
}

#lift .sec03 .merit_list_ttl {
    background: #6abee6;
    color: #fff;
    display: block; 
    width: 100%;
    padding: 0 0;
    font-size: 3.8rem;
    margin-bottom: 6%;
    text-align: center;
    font-weight: 700;
}

#lift .sec03 .merit_list figure {
    width: 100%;
    margin: 0 0 5%;
}

#lift .sec03 .merit_list h5 {
    color: #56b2de;
    font-size: 4.8rem;
    line-height: 1.4;
    margin-bottom: 3%;
    font-weight: 700;
    padding: 0 0;
}

#lift .sec03 .merit_list .p_txt {
    font-size: 2.6rem;
    padding: 0 0;
    text-align: justify;
}


/* sec04 (修正: リストのデザイン調整)
---------------- */
#lift .sec04 {
    background: url("../images/menu/lift/sec4_bg.jpg")no-repeat;
    background-size: cover;
    padding: 2% 0 0;
}

#lift .sec04 .sec_ttl_wrap h3 {
    font-size: 6rem;
    margin-bottom: 6%;
    color: #566166;
}

#lift .sec04 .sec_ttl_wrap h3 .txt_s {
    font-size: 5.2rem;
}

#lift .sec04 .check_list ul {
    margin-bottom: 6%;
}

#lift .sec04 .check_list ul li {
    background: #fff;
    margin: 0 auto 3%;
    width: 95%;
    padding: 3% 2% 3% 10%; /* アイコン分の左余白確保 */
    position: relative;
    text-align: left; /* 左揃えに変更 */
    box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.1);
}

#lift .sec04 .check_list ul li::before {
    content: '';
    display: block;
    width: 6%;
    aspect-ratio: 1/1;
    background: url("../images/menu/lift/check_icon.png")no-repeat;
    background-size: contain;
    position: absolute;
    left: 3%;
    top: 50%;
    transform: translateY(-50%);
}

#lift .sec04 figure {
    width: 95%;
}

#lift .sec04 .check_list ul li::before {
    content: '';
    display: block;
    width: 6%;
    aspect-ratio: 1/1;
    background: url("../images/menu/lift/sec4_shape1.png")no-repeat;
    background-size: contain;
    position: absolute;
    left: 3%;
    top: 50%;
    transform: translateY(-50%);
}

#lift .blue {
    color: #56b2de;
}

/* sec05
---------------- */
#lift .sec05 {
    padding: 1% 0 0;
}

#lift .sec05 .sec_ttl_wrap {
    margin-bottom: 6%;
}

#lift .sec05 .heading_area .sub_ttl_en {
    font-family: '游明朝', 'Yu Mincho', YuMincho, 'Hiragino Mincho Pro', serif;
    font-size: 3rem;
    text-align: center;
    color: #566166;
    margin-top: -1%;
}

#lift .sec05 .price_box {
    margin-bottom: 6%;
    width: 95%;
    margin: 0 auto 6%;
}

#lift .sec05 .price_box .menu_name {
    background: #6abee6;
    color: #fff;
    font-size: 3.8rem;
    margin-right: 0;
    font-weight: 700;
    text-align: center;
    padding: 3% 0;
}

#lift .sec05 .price_box .p_txt {
    border: 2px solid #6abee6;
    text-align: center;
    font-size: 4rem;
    padding: 2% 4%;
}

#lift .sec05 .price_box .price {
    font-size: 6rem;
    line-height: 1.2;
    color: #e66a7a;
    font-weight: 700;
}

#lift .sec05 .price_box .yen {
    font-size: 4rem;
    color: #e66a7a;
}

#lift .sec05 .price_box .tax {
    font-size: 3rem;
    color: #000;
    font-weight: normal;
}

#lift .sec05 .btn_area {
    padding: 0 0;
}


/* faq
---------------- */
#lift .faq {
    background: #88cbeb;
    padding-top: 8%;
}

#lift .faq .sec_ttl_wrap .sec_ttl {
    color: #fff;
}

#lift .faq .sec_ttl_wrap .sub_ttl_en {
    color: #fff;
}

#lift .faq .faq_area {
    padding: 0 6% 6%;
}

#lift .faq .faq_list {
    background: #fff;
    margin-bottom: 4%;
}

#lift .faq .faq_list .flex {
    align-items: center;
}

#lift .faq .faq_list .ques {
    padding: 4% 4%;
    position: relative;
}

#lift .faq .faq_list .ques .number {
    font-size: 3rem;
    font-weight: 700;
    margin-right: 2%;
}

#lift .faq .faq_list .ques h4 {
    font-size: 3rem;
    padding: 0 0;
    width: 85%;
    line-height: 1.4;
}

#lift .faq .faq_list .ques h4::after {
    content: '';
    background: url("../images/menu/lift/faq_plus.png")no-repeat;
    background-size: contain;
    height: 25%;
    width: 4%;
    position: absolute;
    right: 5%;
    top: 50%;
    transform: translateY(-50%);
    display: inline-block;
}

#lift .faq .faq_list .ques.active h4::after {
    content: '';
    background: url("../images/menu/lift/faq_minus.png")no-repeat;
    background-size: contain;
    height: 25%;
    width: 3.5%;
    position: absolute;
    right: 5.5%;
    top: 50%;
    transform: translateY(-20%);
    display: inline-block;
}

#lift .faq .faq_list .answer {
    padding: 4% 1%;
    margin: 0 4%;
    border-top: 1px solid #566166;
    display: none;
}

#lift .faq .faq_list .answer dt {
    font-size: 2.6rem;
    font-weight: 700;
    margin-bottom: 2%;
}

#lift .bottom_btn_area {
    padding: 6% 2% 8%;
}

/* faq_pr
---------------- */
#lift_pr .sec05 {
    margin-bottom: 6%;
}

#lift_pr .faq {
    background: #88cbeb;
}

#lift_pr .faq .sec_ttl_wrap .sec_ttl {
    color: #fff;
}

#lift_pr .faq .sec_ttl_wrap .sub_ttl_en {
    color: #fff;
}

#lift_pr .faq .faq_area {
    padding: 0 6% 6%;
}

#lift_pr .faq .faq_list {
    background: #fff;
    margin-bottom: 4%;
}

#lift_pr .faq .faq_list .flex {
    align-items: center;
}

#lift_pr .faq .faq_list .ques {
    padding: 4% 4%;
    position: relative;
}

#lift_pr .faq .faq_list .ques .number {
    font-size: 3rem;
    font-weight: 700;
    margin-right: 2%;
}

#lift_pr .faq .faq_list .ques h4 {
    font-size: 3rem;
    padding: 0 0;
    width: 85%;
    line-height: 1.4;
}

#lift_pr .faq .faq_list .ques h4::after {
    content: '';
    background: url("../images/menu/lift/faq_plus.png")no-repeat;
    background-size: contain;
    height: 25%;
    width: 4%;
    position: absolute;
    right: 5%;
    top: 50%;
    transform: translateY(-50%);
    display: inline-block;
}

#lift_pr .faq .faq_list .ques.active h4::after {
    content: '';
    background: url("../images/menu/lift/faq_minus.png")no-repeat;
    background-size: contain;
    height: 25%;
    width: 3.5%;
    position: absolute;
    right: 5.5%;
    top: 50%;
    transform: translateY(-20%);
    display: inline-block;
}

#lift_pr .faq .faq_list .answer {
    padding: 4% 1%;
    margin: 0 4%;
    border-top: 1px solid #566166;
    display: none;
}

#lift_pr .faq .faq_list .answer dt {
    font-size: 2.6rem;
    font-weight: 700;
    margin-bottom: 2%;
}

#lift_pr .bottom_btn_area {
    padding: 6% 2% 8%;
}