@charset "UTF-8";

/*----------------------------------------------------
	バナー
----------------------------------------------------*/
/*お急ぎの方への開閉ボタン*/
.hurry_box {
    display: none;
}

@media screen and (max-width: 767px) {
    .hurry_box {
        display: inline-block;
        width: 100%;
        padding: 15px;
        margin-bottom: 30px;
    }

    .hurry_box .open_btn {
        display: block;
        width: 100%;
        margin: 0 auto;
        padding: 15px 0;
        background: #f06664;
        text-align: center;
        margin-bottom: 20px;
        border-radius: 100px;
        box-shadow: 3px 3px 0 #ad392a;
        border: 0;
        line-height: 1.4;
    }

    .hurry_box .open_btn .fa-angle-up {
        transition: all 0.3s;
        transform: rotate(180deg);
    }

    .hurry_box .open_btn .fa-angle-up:before {
        border-radius: 100px;
        margin: 0 5px;
    }

    .hurry_box .open_btn h3 {
        font-size: 2.6rem;
        font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Meiryo UI", "Hiragino Sans", "Helvetica Neue", sans-serif;
        color: #fff;
    }

    .hurry_box .open_btn p {
        font-size: 1.6rem;
        color: #ffe100;
    }

    .hurry_box .open_btn.active .fa-angle-up {
        transform: rotate(360deg);
    }

    .hurry_box .hurry_detail {
        display: none;
    }

    .hurry_box .hurry_detail li {
        font-size: 1.7rem;
        padding-bottom: 10px;
        font-weight: 700;
        position: relative;
        padding-left: 18px;
    }

    .hurry_box .hurry_detail li::before {
        content: "\f058";
        font-family: "Font Awesome 6 free";
        color: #f06664;
        font-weight: 900;
        position: absolute;
        left: 0;
        top: 0;
        bottom: 0;
        margin: 0;
    }

    .hurry_box .tel_btn {
        background: #073465;
        color: #fff;
        text-align: center;
        border-radius: 5px;
        margin: 20px auto;
    }

    .hurry_box .tel_btn .flex {
        padding: 10px;
        flex-wrap: wrap;
        color: #fff;
        justify-content: center;
        gap: 0;
    }

    .hurry_box .tel_btn .flex .head_catch {
        width: 100%;
        color: #ffe100;
        font-size: 2rem;
        white-space: nowrap;
    }

    .hurry_box .tel_btn .flex .tel_anime {
        position: relative;
        top: 5px;
    }

    .hurry_box .tel_btn .flex .tel_anime svg {
        width: 50px;
        height: 50px;
        fill: #fff;
    }

    .hurry_box .tel_btn .flex .tel_txt {
        font-size: 3.5rem;
        font-weight: 800;
        white-space: nowrap;
        margin-left: 8px;
    }

    .hurry_box .tel_btn .flex .foot_catch {
        width: 100%;
        font-size: 1.7rem;
        white-space: nowrap;
    }

    .hurry_box .tel_btn .flex .foot_catch .big {
        font-size: 2.6rem;
        font-weight: 900;
    }

    .hurry_box .tel_btn .flex .foot_catch .tel_free {
        display: inline-block;
        border: 1px solid #fff;
        padding: 0 5px;
        text-align: center;
        border-radius: 5px;
        font-size: 1.6rem;
    }

    .hurry_box .reminder {
        text-align: center;
        font-size: 2.2rem;
        font-weight: 700;
    }

    .hurry_box .reminder span {
        background: #f06664;
        color: #fff;
        padding: 5px;
        display: block;
    }

    .hurry_box .hurry_banner_box {
        border: 1px solid #eee;
        padding: 10px 0 20px 0;
        background: #f6f3ee;
        box-shadow: 0 0 3px #ccc;
    }

    .hurry_box .hurry_banner_box p {
        font-weight: 700;
        text-align: center;
        line-height: 1.2;
    }

    .hurry_box .hurry_banner_box p .num {
        color: #f06664;
        font-size: 1.3em;
    }

    .hurry_box .hurry_banner_box .column {
        padding: 0;
    }
}

.column_banner {
    padding: 50px 0 65px;
}

@media screen and (max-width: 820px) {
    .column_banner {
        padding: 25px 0 30px;
    }
}

.column_banner .fukidashi_title {
    margin-bottom: 10px;
}

.column_banner.banner_top {
    padding-top: 60px;
}

.column_banner a:hover {
    opacity: 1;
}

.banner_box {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
}

.banner_box li {
    width: auto;
}

@media screen and (max-width: 1100px) {
    .banner_box li {
        width: 49%;
        padding: 5px 0;
    }
}

@media screen and (max-width: 820px) {
    .banner_box li {
        width: 100%;
        text-align: center;
    }
}

.banner_box li img {
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
}

.banner_box .w100 {
    width: 100%;
    display: block;
    margin: 0 auto 10px;
    text-align: center;
}

@media screen and (max-width: 820px) {
    .banner_box .w100 {
        margin: 0;
    }
}

.banner_box {
    max-width: 1000px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
}

@media screen and (max-width: 1100px) {
    .banner_box {
        gap: 5px;
        padding: 0 15px;
    }
}

.banner_box li {
    width: auto;
}

@media screen and (max-width: 1100px) {
    .banner_box li {
        width: 49%;
    }
}

@media screen and (max-width: 767px) {
    .banner_box li {
        width: 100%;
        text-align: center;
    }
}

.banner_box li .catch {
    margin-bottom: 0;
    font-size: 1.8rem;
}

.banner_box .w100 {
    width: 100%;
    display: block;
    margin: 0 auto;
    text-align: center;
}

@media screen and (max-width: 767px) {
    .banner_box .w100 {
        margin: 0;
    }
}

.banner_box .w80 {
    width: 80%;
    display: block;
    margin: 10px auto 0;
    text-align: center;
}

@media screen and (max-width: 767px) {
    .banner_box .w80 {
        width: 100%;
        margin: 0;
    }
}

/*----------------------------------------------------
	使いまわし要素
----------------------------------------------------*/
.infomations .event_wrap {
    padding-bottom: 60px;
}

/*----------------------------------------------------
	記事一覧
----------------------------------------------------*/
.news_text a {
    display: flex;
    align-items: center;
    margin-bottom: 1rem;
}

@media screen and (max-width: 820px) {
    .news_text a {
        flex-wrap: wrap;
    }
}

.news_text a .date {
    border-radius: 50px;
    color: #bf212e;
    border: 1px solid;
    font-size: 1.5rem;
    padding: 0 10px;
    margin-right: 2rem;
}

.news_text a .title {
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Meiryo UI", "Hiragino Sans", "Helvetica Neue", sans-serif;
    font-size: 1.8rem;
    font-weight: 500;
}

@media screen and (max-width: 820px) {
    .news_text a .title {
        width: 100%;
        display: block;
    }
}

.column_voice {
    padding-top: 60px;
}

.column_voice .cat {
    font-size: 1.2rem;
    background: #666;
    color: #fff;
    position: absolute;
    top: 8px;
    right: 8px;
    padding: 5px 10px;
    border-radius: 5px;
    text-align: center;
}

@media screen and (max-width: 820px) {
    .column_voice .cat {
        font-size: 1rem;
    }
}

.column_voice .rbox {
    padding: 20px;
}

@media screen and (max-width: 820px) {
    .column_voice .rbox {
        padding: 0;
    }
}

.column_voice .voice_row {
    display: flex;
    margin-top: 30px;
}

@media screen and (max-width: 820px) {
    .column_voice .voice_row {
        flex-wrap: wrap;
    }
}

.column_voice .voice_row li {
    width: 24%;
    margin-bottom: 30px;
    background: #fff;
    margin-right: 2%;
    box-shadow: 0px 0px 5px #eee;
    position: relative;
    border-radius: 5px;
}

.column_voice .voice_row li:last-child {
    margin-right: 0;
}

@media screen and (max-width: 820px) {
    .column_voice .voice_row li {
        width: 48%;
        margin-bottom: 20px;
        padding: 10px;
    }
}

.column_voice .rbox .title {
    margin-bottom: 16px;
}

@media screen and (max-width: 820px) {
    .column_voice .rbox .title {
        font-size: 1.6rem;
        margin-bottom: 10px;
    }
}

.column_voice .rbox .date {
    font-size: 1.4rem;
    margin-bottom: 13px;
    color: #666;
}

@media screen and (max-width: 820px) {
    .column_voice .rbox .date {
        margin-bottom: 5px;
    }
}

@media screen and (max-width: 820px) {
    .column_voice .rbox .flex {
        justify-content: flex-start;
    }
}

@media screen and (max-width: 767px) {
    .column_voice .rbox .flex {
        flex-wrap: wrap;
        justify-content: center;
        gap: 10px;
        text-align: center;
    }
}

.column_voice .rbox .cat {
    position: unset;
}

.column_voice .rbox .star {
    color: #ff8300;
    font-size: 1.8rem;
}

@media screen and (max-width: 767px) {
    .column_voice .rbox .plan_name {
        text-align: center;
    }
}

.column_voice .rbox .plan_name span {
    font-size: 1.6rem;
    background: #eee;
    color: #333;
    padding: 5px 10px;
    border-radius: 4px;
    margin-right: 8px;
}

@media screen and (max-width: 767px) {
    .column_voice .rbox .plan_name span {
        margin-right: 0;
    }
}

.column_voice .face_img {
    height: 80px;
    width: 80px;
    margin: 0;
}

@media screen and (max-width: 820px) {
    .column_voice .face_img {
        margin-right: 20px;
    }
}

@media screen and (max-width: 767px) {
    .column_voice .face_img {
        margin-right: 0;
    }
}

.column_event .event_row {
    display: flex;
    justify-content: flex-start;
    gap: 30px;
}

@media screen and (max-width: 820px) {
    .column_event .event_row {
        flex-wrap: wrap;
        gap: 0 10px;
    }
}

.column_event .event_row li {
    width: 24%;
    margin-bottom: 30px;
    background: #fff;
    box-shadow: 0px 0px 5px #eee;
    position: relative;
    border-radius: 5px;
}

@media screen and (max-width: 820px) {
    .column_event .event_row li {
        width: 48%;
        margin-bottom: 15px;
    }
}

.column_event .event_row li:last-child {
    margin-right: 0;
}

.column_event .event_row img {
    display: block;
    margin: 0 auto;
    height: 170px;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
}

.column_event .event_row .cat {
    display: none;
}

.column_event .event_row .rbox {
    padding: 20px;
}

@media screen and (max-width: 820px) {
    .column_event .event_row .rbox {
        padding: 10px;
    }
}

.column_event .event_row .rbox .date {
    font-size: 1.5rem;
    color: #666;
}

.column_event .event_row .rbox .date,
.column_event .event_row .rbox .title {
    display: block;
}

.column_event .event_row .rbox .text {
    display: block;
    font-size: 1.4rem;
    color: #444;
}

.column_event .event_row .rbox .title {
    font-size: 1.8rem;
    margin-bottom: 20px;
    line-height: 1.4;
}

.column_knowledge {
    margin-top: 50px;
    position: relative;
}

.column_knowledge .knowledge_row {
    margin: 40px 0;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 30px;
}

@media screen and (max-width: 820px) {
    .column_knowledge .knowledge_row {
        gap: 10px;
    }
}

.column_knowledge .knowledge_row > li {
    width: 48%;
    background: #ffffff;
    border-radius: 5px;
    box-shadow: 0px 0px 5px #eee;
}

.column_knowledge .knowledge_row > li a {
    position: relative;
    display: flex;
    justify-content: space-between;
    text-decoration: none;
    color: inherit;
}

.column_knowledge .knowledge_row > li a img {
    border-radius: 5px 0 5px 0;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    height: 140px;
}

@media screen and (max-width: 820px) {
    .column_knowledge .knowledge_row > li {
        width: 100%;
        padding: 10px;
    }
}

.column_knowledge .knowledge_row .cat {
    position: absolute;
    top: 8px;
    right: 8px;
    display: inline-block;
    padding: 5px 10px;
    background: #666;
    color: #fff;
    font-size: 1.3rem;
    border-radius: 5px;
    line-height: 1;
}

@media screen and (max-width: 820px) {
    .column_knowledge .knowledge_row .cat {
        top: 0;
        right: 0;
        font-size: 1rem;
    }
}

.column_knowledge .knowledge_row .img_box {
    order: 0;
    width: 36%;
    align-self: start;
}

@media screen and (max-width: 820px) {
    .column_knowledge .knowledge_row .img_box img {
        -o-object-fit: cover;
        object-fit: cover;
        width: 100%;
        height: 120px;
    }
}

.column_knowledge .knowledge_row .rbox {
    order: 1;
    width: 57%;
    margin-right: 15px;
}

.column_knowledge .knowledge_row .rbox .title {
    margin-top: 25px;
    font-size: 1.8rem;
    display: block;
}

.column_knowledge .knowledge_row .rbox .date {
    display: none;
}

.column_knowledge .knowledge_row .rbox .text {
    font-size: 1.4rem;
    margin-top: 10px;
    display: block;
    color: #686868;
}

/*----------------------------------------------------
	特約店
----------------------------------------------------*/
.inner_dis .dist_inner {
    max-width: 1000px;
}

.inner_dis .dist_inner .list_article_dist {
    padding-bottom: 50px;
}

@media screen and (max-width: 767px) {
    .inner_dis .dist_inner .list_article_dist {
        padding-bottom: 20px;
    }
}

.inner_dis .dist_inner .list_article_dist .list {
    flex-wrap: wrap;
}

.inner_dis .dist_inner .list_article_dist .panel {
    margin-bottom: 50px;
}

.inner_dis .dist_inner .list_article_dist .dist_list {
    width: calc(50% - 15px);
    border: 3px solid #bf212e;
    text-align: center;
    display: flex;
    flex-direction: column;
}

@media screen and (max-width: 767px) {
    .inner_dis .dist_inner .list_article_dist .dist_list {
        width: 100%;
    }
}

.inner_dis .dist_inner .list_article_dist .dist_list h3 {
    font-size: 2rem;
    padding: 5px 0;
    background: #bf212e;
    color: #fff;
    text-align: center;
}

.inner_dis .dist_inner .list_article_dist .dist_list h3 a {
    color: #fff;
    font-size: 1.2rem;
    margin-left: 20px;
    text-decoration: underline;
}

.inner_dis .dist_inner .list_article_dist .dist_list p {
    margin: 1em 0 0;
    padding: 0 10px;
}

@media screen and (max-width: 767px) {
    .inner_dis .dist_inner .list_article_dist .dist_list p {
        padding: 0 15px;
    }
}

.inner_dis .dist_inner .list_article_dist .dist_list p.address a {
    color: #bf212e;
}

.inner_dis .dist_inner .list_article_dist .dist_list p.description {
    color: #2e5915;
    font-weight: bold;
}

.inner_dis .dist_inner .list_article_dist .dist_list p.description span {
    font-size: 1.4rem;
    color: #333;
}

.inner_dis .dist_inner .list_article_dist .dist_list .benefits {
    background: #f5f9f3;
    padding: 10px;
    line-height: 1.6;
    margin: 10px;
    color: #3d5719;
    font-weight: 500;
}

@media screen and (max-width: 767px) {
    .inner_dis .dist_inner .list_article_dist .dist_list .benefits {
        padding: 10px 20px;
    }
}

.inner_dis .dist_inner .list_article_dist .dist_list .benefits span {
    font-size: 18px;
    background: #fff;
    margin-bottom: -9px;
    display: block;
    color: #305719;
    font-weight: 600;
    border: 1px solid #305719;
    border-radius: 5px;
}

.inner_dis .list_dis {
    max-width: 1000px;
    width: 100%;
    margin: 30px auto;
}

@media screen and (max-width: 767px) {
    .inner_dis .list_dis {
        margin: 10px auto;
    }
}

.inner_dis .list_dis .cate {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

@media screen and (max-width: 1100px) {
    .inner_dis .list_dis .cate {
        padding: 0 15px;
    }
}

.inner_dis .list_dis .cate li {
    box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.29);
    border: none;
    border-top: 1px solid #eee;
    width: calc(20% - 10px);
    text-align: center;
    margin-bottom: 10px;
    border-radius: 5px;
    cursor: pointer;
}

@media screen and (max-width: 767px) {
    .inner_dis .list_dis .cate li {
        padding: 0;
        width: calc(20% - 5px);
    }
}

.inner_dis .list_dis .cate li.active {
    background: #000;
    color: #fff;
}

.inner_dis .list_dis .cate li a {
    text-align: center;
    display: block;
    padding: 10px 20px;
    border-radius: 5px;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
}

@media screen and (max-width: 767px) {
    .inner_dis .list_dis .cate li a {
        font-size: 1.2rem;
        line-height: 1.2;
        padding: 5px;
    }
}

.inner_dis .list_dis .cate li .bg_color {
    background-color: #2e5915;
    color: #fff;
}

.inner_dis .list_dis .dis_first_txt {
    margin-top: 30px;
    text-align: center;
    padding: 0 15px;
    font-size: 1.4rem;
}

@media screen and (max-width: 767px) {
    .inner_dis .list_dis .dis_first_txt {
        margin-top: 10px;
    }
}

.inner_dis .dis_pagination {
    text-align: center;
}

.inner_dis .dis_pagination .current {
    border: 1px solid #bf212e;
    background: #bf212e;
    color: #fff;
}

#support {
    padding-bottom: 30px;
}

#support .dis_dealer {
    max-width: 800px;
    width: 90%;
    margin: 20px auto 0;
    background: #eee;
    padding: 20px 15px 40px;
}

#support .dis_dealer h4 {
    font-size: 2rem;
    color: #bf212e;
    margin-bottom: 15px;
    text-align: center;
}

#support .dis_dealer p {
    font-size: 1.4rem;
    line-height: 1.5;
}

/*----------------------------------------------------
	事前相談
----------------------------------------------------*/
.column_consultation {
    background: url(../img/common/consultation_bg.jpg) no-repeat;
    background-size: cover;
    padding: 60px 0;
    text-align: center;
}

.column_consultation .consultation_wrap .consultation_catch {
    text-align: center;
}

.column_consultation .consultation_wrap .consultation_catch span {
    background: #f6f908;
    padding: 10px 60px;
    overflow: auto;
    display: inline-block;
    border-radius: 50px;
}

.column_consultation .consultation_wrap .consultation_title {
    color: #333;
    font-weight: 500;
    padding-bottom: 30px;
    text-align: center;
}

@media screen and (max-width: 820px) {
    .column_consultation .consultation_wrap .consultation_title {
        text-align: left;
    }
}

.column_consultation .consultation_wrap .consultation_list {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-bottom: 35px;
}

.column_consultation .consultation_wrap .consultation_list li {
    width: 32%;
    padding: 30px;
    background: #fff;
    border-radius: 5px;
}

@media screen and (max-width: 820px) {
    .column_consultation .consultation_wrap .consultation_list li {
        width: 100%;
        margin-bottom: 20px;
    }
}

.column_consultation .consultation_wrap .consultation_list .list_title {
    display: inline-block;
    margin: 0 auto;
    color: #333;
    padding: 0 1rem;
}

.column_consultation .consultation_wrap .consultation_list .list_title span {
    color: #bf212e;
    border-bottom: 1px solid;
}

.column_consultation .consultation_wrap .consultation_list .list_txt {
    text-align: left;
}

/*----------------------------------------------------
	資料請求
----------------------------------------------------*/
.column_inquiry {
    padding: 0;
    margin-bottom: 60px;
}

.column_inquiry::before {
    content: "";
    background: url(../img/common/inquiry_bg.jpg);
    width: 960px;
    height: 670px;
    position: absolute;
    right: 0;
    z-index: -1;
    padding: 0;
}

@media screen and (max-width: 820px) {
    .column_inquiry::before {
        content: none;
    }
}

.column_inquiry .inquiry_wrap {
    width: 50%;
    padding: 60px;
    padding-left: 0;
    background: #fff;
    float: left;
}

@media screen and (max-width: 1100px) {
    .column_inquiry .inquiry_wrap {
        width: 60%;
        padding: 50px;
        padding-left: 0;
    }
}

@media screen and (max-width: 820px) {
    .column_inquiry .inquiry_wrap {
        width: 100%;
        padding: 0;
        margin-bottom: 30px;
    }
}

.column_inquiry .inquiry_wrap .inquiry_title {
    color: #bf212e;
    font-size: 2.4rem;
    padding-bottom: 30px;
}

@media screen and (max-width: 820px) {
    .column_inquiry .inquiry_wrap .inquiry_title {
        font-size: 2rem;
        padding-top: 30px;
    }
}

.column_inquiry .inquiry_wrap .doc_box {
    border-top: 1px solid #bf212e;
    border-bottom: 1px solid #bf212e;
    padding: 30px 0;
    margin-bottom: 30px;
    text-align: center;
}

@media screen and (max-width: 820px) {
    .column_inquiry .inquiry_wrap .doc_box {
        padding: 20px;
    }
}

.column_inquiry .inquiry_wrap .doc_box_title {
    color: #bf212e;
    margin-bottom: 10px;
}

.column_inquiry .inquiry_wrap .doc_box_title span {
    color: #333;
    border-bottom: 0;
    padding-left: 1rem;
}

.column_inquiry .inquiry_wrap .doc_box_laber {
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
    gap: 10px;
}

.column_inquiry .inquiry_wrap .doc_box_laber p {
    width: 48%;
    background: #f6f908;
    color: #333;
    border-radius: 45px;
    text-align: center;
    font-size: 1.5rem;
}

@media screen and (max-width: 767px) {
    .column_inquiry .inquiry_wrap .doc_box_laber p {
        width: 100%;
    }
}

.column_inquiry .btn {
    position: relative;
}

.column_inquiry .btn .inquiry_img {
    position: absolute;
    left: 40px;
    top: 0;
    bottom: 0;
    margin: auto;
}

@media screen and (max-width: 820px) {
    .column_inquiry .btn .inquiry_img {
        display: none;
    }
}

.column_inquiry .sp_img {
    display: none;
}

@media screen and (max-width: 767px) {
    .column_inquiry .sp_img {
        display: block;
    }
}

/*----------------------------------------------------
	INDEX PAGE
----------------------------------------------------*/
/*------トップバナー------------------------------*/
.column_banner_top {
    padding-bottom: 50px;
}

.category .column_banner_top {
    padding-bottom: 100px;
}

/*------特徴コーナー------------------------------*/
.column_feature .feature_laber {
    display: block;
    margin: 0 auto;
    padding: 5px;
    font-size: 1.8rem;
    background: #bf212e;
    color: #fff;
    text-align: center;
    width: 100px;
    border-radius: 30px;
    line-height: 1;
}

.column_feature .feature_laber span {
    font-size: 2.6rem;
    font-family: "Oswald", sans-serif;
}

.column_feature .feature_first {
    background: #fff;
    background: linear-gradient(#fff 0%, #fff 50%, #e6f2f9 50%, #e6f2f9 100%);
    position: relative;
    margin-bottom: 120px;
}

@media screen and (max-width: 767px) {
    .column_feature .feature_first {
        margin-bottom: 60px;
    }
}

.column_feature .feature_first:after {
    content: "";
    background-image: url(../img/top/feature_title_bg.png);
    background-size: contain;
    width: 100%;
    height: 51px;
    display: block;
    position: relative;
    bottom: -40px;
    background-position: center;
    background-repeat: no-repeat;
}

@media screen and (max-width: 767px) {
    .column_feature .feature_first:after {
        bottom: -30px;
    }
}

.column_feature .feature_first .feature_list_box {
    position: relative;
    display: flex;
    gap: 30px;
    flex-wrap: wrap;
    margin-top: 30px;
}

@media screen and (max-width: 820px) {
    .column_feature .feature_first .feature_list_box {
        gap: 60px 0;
    }
}

.column_feature .feature_first .feature_list_box li {
    width: calc(33.3333333333% - 20px);
    position: relative;
    border: 1px solid #ccc;
    border-radius: 10px;
    box-shadow: 0 0 5px #ccc;
    background: #fff;
}

@media screen and (max-width: 820px) {
    .column_feature .feature_first .feature_list_box li {
        width: 100%;
    }
}

.column_feature .feature_first .feature_list_box li a:hover {
    opacity: 1;
}

.column_feature .feature_first .feature_list_box li h3 {
    color: #f14666;
    font-size: 2.6rem;
    font-weight: 700;
    text-align: center;
    margin: 20px 0 10px;
}

.column_feature .feature_first .feature_list_box li p:not(.feature_laber) {
    padding: 20px;
}

@media screen and (max-width: 820px) {
    .column_feature .feature_first .feature_list_box li p:not(.feature_laber) {
        padding-right: 10px;
    }
}

.column_feature .feature_first .feature_list_box li .feature_laber {
    position: absolute;
    top: -20px;
    right: 0;
    left: 0;
    margin: auto;
}

.column_feature .feature_first .feature_list_box li .flex {
    flex-direction: column;
    gap: 0;
}

@media screen and (max-width: 820px) {
    .column_feature .feature_first .feature_list_box li .flex {
        flex-direction: unset;
        height: 200px;
    }

    .column_feature .feature_first .feature_list_box li .flex figure {
        width: 40%;
        aspect-ratio: 1/1;
        overflow: hidden;
    }

    .column_feature .feature_first .feature_list_box li .flex figure img {
        -o-object-fit: cover;
        object-fit: cover;
        height: 100%;
    }

    .column_feature .feature_first .feature_list_box li .flex p {
        width: 60%;
    }
}

.column_feature .feature_wrap {
    position: relative;
    margin-bottom: 80px;
}

@media screen and (max-width: 820px) {
    .column_feature .feature_wrap {
        margin-bottom: 40px;
    }
}

.column_feature .feature_wrap .feature_title_wrap .feature_laber {
    margin-bottom: 15px;
}

.column_feature .feature_wrap .feature_title_wrap .feature_next_title {
    padding-bottom: 30px;
    font-size: 2.4rem;
    text-align: center;
    font-weight: 600;
}

.column_feature .feature_wrap .feature_title_wrap .feature_next_title span {
    font-size: 3.4rem;
    color: #f14666;
}

@media screen and (max-width: 767px) {
    .column_feature .feature_wrap .feature_title_wrap .feature_next_title span {
        display: block;
    }
}

.column_feature .feature_wrap.feature2 .other_service_list {
    display: flex;
    gap: 30px;
    margin: 40px 0;
    flex-wrap: wrap;
    align-items: center;
}

.column_feature .feature_wrap.feature2 .other_service_list li {
    width: calc(50% - 15px);
    border: 1px solid #ccc;
    padding: 20px;
    transition: 0.3s all;
}

.column_feature .feature_wrap.feature2 .other_service_list li:hover {
    box-shadow: 0 0 8px #ccc;
}

@media screen and (max-width: 767px) {
    .column_feature .feature_wrap.feature2 .other_service_list li {
        width: 100%;
    }
}

.column_feature .feature_wrap.feature2 .other_service_list li a {
    display: flex;
    gap: 10px;
}

.column_feature .feature_wrap.feature2 .other_service_list li a figure {
    width: 127px;
}

.column_feature .feature_wrap.feature2 .other_service_list li a .txt_box {
    flex: 1;
    display: flex;
    flex-direction: column;
}

.column_feature .feature_wrap.feature2 .other_service_list li a .txt_box h3 {
    color: #bf212e;
    flex: 1;
    font-size: 2.4rem;
}

.column_feature .feature_wrap.feature2 .other_service_list li a .txt_box .lead {
    flex: 2;
}

.column_feature .feature_wrap.feature2 .other_service_list li a .txt_box .readmore {
    margin-top: auto;
    color: #bf212e;
    text-align: right;
}

.column_feature .feature_wrap.feature2 .other_service_list li a .txt_box .readmore::before {
    content: "\f138";
    font-family: "Font Awesome 6 free";
    font-weight: 700;
}

.column_feature .feature_wrap.feature2 .staff_title {
    color: #bf212e;
    font-size: 2.4rem;
    font-weight: 700;
    margin-bottom: 20px;
    text-align: center;
}

.column_feature .feature_wrap.feature3 .support_list {
    display: flex;
    flex-wrap: wrap;
}

.column_feature .feature_wrap.feature3 .support_list li {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    width: 25%;
    padding: 20px;
    gap: 10px;
    border-right: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
}

.column_feature .feature_wrap.feature3 .support_list li:nth-child(4n) {
    border-right: 0;
}

.column_feature .feature_wrap.feature3 .support_list li:nth-child(n+5) {
    border-bottom: 0;
}

@media screen and (max-width: 767px) {
    .column_feature .feature_wrap.feature3 .support_list li:nth-child(n+5) {
        border-bottom: 1px solid #ccc;
    }
}

@media screen and (max-width: 820px) {
    .column_feature .feature_wrap.feature3 .support_list li {
        padding: 20px 10px;
    }
}

@media screen and (max-width: 767px) {
    .column_feature .feature_wrap.feature3 .support_list li {
        width: 50%;
    }

    .column_feature .feature_wrap.feature3 .support_list li:nth-child(2n) {
        border-right: 0;
    }

    .column_feature .feature_wrap.feature3 .support_list li:nth-child(n+7) {
        border-bottom: 0;
    }
}

.column_feature .feature_wrap.feature3 .support_list li figure {
    height: 80px;
    display: grid;
    place-items: center;
}

.column_feature .feature_wrap.feature3 .support_list li p {
    color: #bf212e;
    font-weight: 700;
    font-size: 1.8rem;
    line-height: 1.4;
}

.column_feature article:last-of-type {
    margin-bottom: 0;
}

/*------投稿系一覧------------------------------*/
.column_info {
    background: url(../img/common/bg.png);
    padding: 60px 0;
}

.column_info .knowledge_wrap {
    margin-bottom: 100px;
}

/*------スタッフ紹介------------------------------*/
.column_staff {
    padding-top: 30px;
}

.column_staff .inner {
    background: #fafafa;
    border: 1px solid #eee;
}

.column_staff .staff_title {
    text-align: center;
    position: relative;
    font-size: 2.4rem;
    line-height: 1.4;
    padding: 20px 0;
    border-bottom: 1px solid #ccb764;
}

.column_staff .staff_title span {
    color: #ccb764;
}

@media screen and (max-width: 820px) {
    .column_staff .staff_title {
        font-size: 2rem;
    }
}

.column_staff .staff_list {
    overflow: hidden;
    display: flex;
    gap: 10px;
    padding: 20px;
}

.column_staff .staff_list a {
    text-align: center;
    color: #ccb764;
    font-size: 1.6rem;
}

.column_staff .staff_list li {
    width: 16.6666666667%;
}

.column_staff .tel_wrap {
    display: flex;
    align-items: center;
    background: #ccb764;
    color: #fff;
    gap: 20px;
    justify-content: center;
}

@media screen and (max-width: 820px) {
    .column_staff .tel_wrap {
        flex-wrap: wrap;
        gap: 0 20px;
    }
}

@media screen and (max-width: 767px) {
    .column_staff .tel_wrap {
        padding-bottom: 20px;
    }
}

.column_staff .tel_wrap .tel_wrap_left p {
    line-height: 1.4;
}

@media screen and (max-width: 820px) {
    .column_staff .tel_wrap .tel_wrap_left {
        width: 100%;
        text-align: center;
        padding-top: 10px;
    }
}

.column_staff .tel_wrap .tel_num {
    font-size: 4rem;
    color: #fff;
    font-family: "Oswald", sans-serif;
}

.column_staff .tel_wrap .tel_num:before {
    content: "\f2a0";
    font-family: "Font Awesome 6 free";
    font-weight: 700;
    padding-right: 0.2em;
}

.column_staff .tel_wrap .tel_wrap_right {
    display: flex;
    gap: 10px;
}

.column_staff .tel_wrap .tel_wrap_right p {
    background: #fff;
    color: #ccb764;
    padding: 5px;
    border-radius: 5px;
}

/*------グリーティング------------------------------*/
.column_greeting .inner {
    position: relative;
}

.column_greeting .greeting_wrap {
    position: absolute;
    right: 0;
    bottom: 0;
    width: 50%;
    float: right;
    margin-top: 30px;
    padding: 60px;
    background: #fff;
}

@media screen and (max-width: 1100px) {
    .column_greeting .greeting_wrap {
        padding: 50px;
    }
}

@media screen and (max-width: 820px) {
    .column_greeting .greeting_wrap {
        position: relative;
        width: 100%;
        padding: 0 0 10px;
    }
}

.column_greeting .greeting_wrap .greeting_title {
    color: #bf212e;
    font-size: 2.4rem;
    border-left: 1px solid;
    padding-left: 2rem;
    position: relative;
    left: 20px;
    margin-bottom: 20px;
    line-height: 2;
}

@media screen and (max-width: 767px) {
    .column_greeting .greeting_wrap .greeting_title {
        border-left: 0;
        padding-left: 0;
        left: unset;
    }
}

.column_greeting .greeting_wrap .greeting_title:before {
    content: "花浄院";
    writing-mode: vertical-rl;
    font-size: 1.5rem;
    position: absolute;
    left: -30px;
}

@media screen and (max-width: 767px) {
    .column_greeting .greeting_wrap .greeting_title:before {
        display: none;
    }
}

.column_greeting .greeting_wrap .greeting_lead {
    line-height: 2;
}

/*------お問い合わせコーナー------------------------------*/
.column_contact .contact_wrap {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
}

.column_contact .contact_wrap .sumire {
    width: 200px;
    text-align: center;
}

@media screen and (max-width: 767px) {
    .column_contact .contact_wrap .sumire {
        display: none;
    }
}

.column_contact .contact_wrap .staff_box {
    width: auto;
    flex: 1;
    border: 1px solid #bf212e;
    border-radius: 5px;
}

.column_contact .contact_wrap .staff_box .staff_box_title {
    background-color: #bf212e;
    color: #fff;
    font-size: 2.2rem;
    text-align: center;
    width: 100%;
    padding: 5px;
    border-radius: 4px 4px 0 0;
}

.column_contact .contact_wrap .staff_box ul {
    display: flex;
    gap: 30px;
    padding: 20px;
    flex-wrap: wrap;
}

.column_contact .contact_wrap .staff_box ul li {
    width: calc(50% - 15px);
}

@media screen and (max-width: 820px) {
    .column_contact .contact_wrap .staff_box ul li {
        width: 100%;
    }
}

.column_contact .contact_wrap .staff_box ul li .flex {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
}

.column_contact .contact_wrap .staff_box ul li .flex figure {
    width: 120px;
}

.column_contact .contact_wrap .staff_box ul li .flex .title {
    flex: 1;
    font-size: 1.8rem;
    font-weight: 700;
}

@media screen and (max-width: 820px) {
    .column_contact .contact_wrap .staff_box ul li .flex .title {
        width: 100%;
    }
}

.column_contact .contact_wrap .staff_box ul li .flex .lead {
    width: 100%;
}

.column_contact .contact_wrap .tel_bnr {
    width: 100%;
}

/*----------------------------------------------------
	プラン一覧
----------------------------------------------------*/
.column_plan_list .plan_catch {
    color: #505455;
    text-align: center;
    margin-bottom: 30px;
}

.column_plan_list .plan_box {
    display: flex;
    justify-content: space-between;
    gap: 30px;
    flex-wrap: wrap;
    position: relative;
    z-index: 2;
}

@media screen and (max-width: 820px) {
    .column_plan_list .plan_box {
        gap: 15px;
    }
}

.column_plan_list .plan_box li {
    width: calc(33.3333333333% - 20px);
    text-align: center;
    box-shadow: 0 2px 5px #eee;
    background: #fff;
    border-radius: 10px;
    transition: 0.3s all;
}

.column_plan_list .plan_box li:hover {
    box-shadow: 0 2px 8px #ccc;
}

@media screen and (max-width: 820px) {
    .column_plan_list .plan_box li {
        width: calc(33.3333333333% - 10px);
    }
}

@media screen and (max-width: 767px) {
    .column_plan_list .plan_box li {
        width: 100%;
    }
}

.column_plan_list .plan_box li.w100 {
    width: 100%;
}

.column_plan_list .plan_box li a {
    height: 100%;
    display: flex;
    flex-direction: column;
}

.column_plan_list .plan_box .plan_box_catch {
    color: #fff;
    padding: 5px;
    margin: 0 0 5px;
    display: block;
    line-height: 1.4;
    font-size: 1.4rem;
    border-radius: 5px 5px 0 0;
}

.column_plan_list .plan_box .plan_box_title {
    font-size: 2.8rem;
    margin: 0 0 5px;
}

.column_plan_list .plan_box .plan_box_img {
    width: 100%;
    margin: 0 0 10px;
}

.column_plan_list .plan_box .plan_box_info_wrap {
    display: flex;
    flex-direction: column;
}

.column_plan_list .plan_box .button {
    border-top: 1px solid #ccc;
    padding: 5px;
    font-size: 1.4rem;
}

.column_plan_list .plan_box .plan_box_flow {
    display: flex;
    justify-content: center;
    gap: 3px;
    align-items: center;
    padding: 0 10px;
}

.column_plan_list .plan_box .plan_box_flow p {
    font-size: 1.5rem;
    line-height: 1;
    padding: 7px 0;
}

.column_plan_list .plan_box .plan_box_flow .num {
    font-family: "Oswald", sans-serif;
    font-size: 1.8rem;
    font-weight: 700;
    padding: 0;
    width: 32%;
}

.column_plan_list .plan_box .plan_box_flow .num span {
    font-size: 1.5rem;
    font-weight: 500;
}

.column_plan_list .plan_box .flow {
    width: calc(33.3333333333% - 3px);
    border-radius: 10px;
    padding: 10px;
    color: #ccc;
    border: 1px solid #ccc;
}

.column_plan_list .plan_box .plan_box_img_sub {
    width: 95%;
    background: #de7c8c;
    color: #fff;
    font-size: 1.5rem;
    line-height: 1;
    padding: 5px;
    margin: 5px auto;
    border-radius: 30px;
    position: relative;
}

.column_plan_list .plan_box .plan_box_img_sub:after {
    content: "";
    position: absolute;
    bottom: -8px;
    right: 0;
    left: 0;
    margin: auto;
    width: 0;
    height: 0;
    border-style: solid;
    border-right: 7px solid transparent;
    border-left: 7px solid transparent;
    border-top: 8px solid #de7c8c;
    border-bottom: 0;
}

.column_plan_list .plan_box .plan_box_img_sub .price {
    font-family: "Oswald", sans-serif;
    font-size: 2rem;
}

.column_plan_list .plan_box .plan_box_img_sub .mini {
    font-size: 1.7rem;
}

.column_plan_list .plan_box .plan_box_price {
    display: flex;
    justify-content: space-around;
    align-items: flex-end;
    margin-bottom: 10px;
    flex-wrap: wrap;
    flex: 1;
}

@media screen and (max-width: 820px) {
    .column_plan_list .plan_box .plan_box_price {
        flex-wrap: wrap;
        gap: 10px;
        flex: unset;
        margin-top: auto;
    }
}

.column_plan_list .plan_box .plan_box_price .discount {
    color: #f06664;
    font-size: 4.6rem;
    font-family: "Oswald", sans-serif;
    position: relative;
    line-height: 1;
    font-weight: 700;
}

.column_plan_list .plan_box .plan_box_price .discount .tax {
    font-size: 1.2rem;
    position: absolute;
    right: -3px;
    top: 25%;
}

.column_plan_list .plan_box .plan_box_price .discount .yen {
    font-size: 2.2rem;
}

.column_plan_list .plan_box .plan_box_price .taxin {
    font-size: 2rem;
    color: #222;
    font-family: "Oswald", sans-serif;
    line-height: 1;
}

.column_plan_list .plan_box .plan_box_price .taxin .taxin_laber {
    display: block;
    font-size: 1.5rem;
}

.column_plan_list .plan_box .plan_box_price .taxin .taxin_yen {
    font-size: 1.5rem;
}

.column_plan_list .plan_box .plan_direct {
    border: 1px solid #db514f;
}

.column_plan_list .plan_box .plan_direct .plan_box_catch {
    background: #db514f;
}

.column_plan_list .plan_box .plan_direct .plan_box_title {
    color: #db514f;
}

.column_plan_list .plan_box .plan_direct .plan_box_flow .num {
    color: #db514f;
}

.column_plan_list .plan_box .plan_direct .flow.in {
    border: 1px solid #db514f;
    color: #db514f;
}

.column_plan_list .plan_box .plan_family {
    border: 1px solid #47904f;
}

.column_plan_list .plan_box .plan_family .plan_box_catch {
    background: #47904f;
}

.column_plan_list .plan_box .plan_family .plan_box_title {
    color: #47904f;
}

.column_plan_list .plan_box .plan_family .plan_box_flow .num {
    color: #47904f;
}

.column_plan_list .plan_box .plan_family .flow.in {
    border: 1px solid #47904f;
    color: #47904f;
}

.column_plan_list .plan_box .plan_oneday {
    border: 1px solid #050c97;
}

.column_plan_list .plan_box .plan_oneday .plan_box_catch {
    background: #050c97;
}

.column_plan_list .plan_box .plan_oneday .plan_box_title {
    color: #050c97;
}

.column_plan_list .plan_box .plan_oneday .plan_box_flow .num {
    color: #050c97;
}

.column_plan_list .plan_box .plan_oneday .flow.in {
    border: 1px solid #050c97;
    color: #050c97;
}

.column_plan_list .plan_box .plan_original {
    border: 1px solid #e3c261;
}

.column_plan_list .plan_box .plan_original img {
    border-radius: 10px;
}

#plan .column_plan_list {
    background: unset;
    padding-bottom: 80px;
    margin-bottom: 0;
}

/*----------------------------------------------------
	斎場一覧　簡易版
----------------------------------------------------*/
.column_area_first {
    padding-bottom: 75px;
}

@media screen and (max-width: 767px) {
    .column_area_first {
        padding-bottom: 45px;
    }
}

.column_hall_list .hall_list_title {
    text-align: left;
    font-size: clamp(1.8rem, 5vw, 2.2rem);
    margin-bottom: 20px;
}

.column_hall_list .hall_list_title:before {
    content: "";
    background-image: url(../img/top/friends.jpg);
    width: 43px;
    height: 49px;
    background-size: cover;
    display: inline-block;
    position: relative;
    top: 15px;
}

.column_hall_list .area_list_wrap .area_list {
    display: flex;
    justify-content: flex-start;
    gap: 30px;
    margin-bottom: 60px;
    flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
    .column_hall_list .area_list_wrap .area_list {
        gap: 10px 0;
    }
}

.column_hall_list .area_list_wrap .area_list li {
    width: calc(33.3333333333% - 15px);
    border-radius: 0 0 5px 5px;
}

@media screen and (max-width: 767px) {
    .column_hall_list .area_list_wrap .area_list li {
        width: 100%;
    }
}

.column_hall_list .area_list_wrap .area_list li a:hover {
    opacity: 1;
}

.column_hall_list .area_list_wrap .area_list li .txt_wrap {
    display: flex;
    justify-content: space-between;
}

.column_hall_list .area_list_wrap .area_list li .txt_wrap .area_name {
    color: #fff;
    font-size: 2rem;
    padding: 10px 0 10px 30px;
}

.column_hall_list .area_list_wrap .area_list li .txt_wrap .area_num {
    background: #fff;
    font-size: 1.8rem;
    padding: 15px 15px 15px 0;
    position: relative;
    font-weight: 700;
    border-radius: 0 0 4px 0;
}

.column_hall_list .area_list_wrap .area_list li .txt_wrap .area_num:before {
    content: "";
    display: inline-block;
    width: 20px;
    height: 100%;
    top: 0;
    left: -20px;
    border-radius: 100% 0 0 100%/50%;
    background: #fff;
    position: absolute;
}

.column_hall_list .part_hall .part_hall_links {
    margin-bottom: 60px;
    flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
    .column_hall_list .part_hall .part_hall_links {
        gap: 15px;
    }
}

.column_hall_list .part_hall .part_hall_links li {
    width: calc(25% - 23px);
    text-align: center;
    border: 1px solid #bf212e;
    border-radius: 50px;
    background: #fff;
    padding: 10px 15px;
}

@media screen and (max-width: 820px) {
    .column_hall_list .part_hall .part_hall_links li {
        width: calc(50% - 23px);
    }
}

@media screen and (max-width: 767px) {
    .column_hall_list .part_hall .part_hall_links li {
        width: 100%;
    }
}

.column_hall_list .part_hall .part_hall_links li a {
    display: block;
}

.column_hall_list .part_hall .part_hall_links li:nth-child(1) {
    border: 1px solid #bf212e;
}

.column_hall_list .part_hall .part_hall_links li:nth-child(1) a {
    color: #bf212e;
}

.column_hall_list .part_hall .part_hall_links li:nth-child(2) {
    border: 1px solid #050c97;
}

.column_hall_list .part_hall .part_hall_links li:nth-child(2) a {
    color: #050c97;
}

.column_hall_list .part_hall .part_hall_links li:nth-child(3) {
    border: 1px solid #47904f;
}

.column_hall_list .part_hall .part_hall_links li:nth-child(3) a {
    color: #47904f;
}

.column_hall_list .part_hall .part_hall_links li:nth-child(4) {
    border: 1px solid #db514f;
}

.column_hall_list .part_hall .part_hall_links li:nth-child(4) a {
    color: #db514f;
}

.column_hall_list .part_hall .hall_area_wrap {
    margin-bottom: 45px;
}

@media screen and (max-width: 767px) {
    .column_hall_list .part_hall .hall_area_wrap {
        margin-bottom: 40px;
    }
}

.column_hall_list .part_hall .hall_list {
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
    margin-bottom: 30px;
}

@media screen and (max-width: 820px) {
    .column_hall_list .part_hall .hall_list {
        gap: 10px;
    }
}

.column_hall_list .part_hall .hall_list li {
    position: relative;
    width: calc(33.3333333333% - 15px);
    box-shadow: 0 2px 5px #eee;
    border-radius: 0 0 5px 5px;
    transition: 0.3s all;
}

.column_hall_list .part_hall .hall_list li:hover {
    box-shadow: 0 2px 8px #ccc;
}

@media screen and (max-width: 820px) {
    .column_hall_list .part_hall .hall_list li {
        width: calc(33.3333333333% - 7px);
    }
}

@media screen and (max-width: 767px) {
    .column_hall_list .part_hall .hall_list li {
        width: calc(50% - 5px);
    }
}

.column_hall_list .part_hall .hall_list li a {
    display: flex;
    flex-direction: column;
    text-align: center;
    height: 100%;
}

.column_hall_list .part_hall .hall_list li.kakogawa {
    border-top: 2px solid #bf212e;
}

.column_hall_list .part_hall .hall_list li.takasago {
    border-top: 2px solid #050c97;
}

.column_hall_list .part_hall .hall_list li.kobe {
    border-top: 2px solid #47904f;
}

.column_hall_list .part_hall .hall_list li.akashi {
    border-top: 2px solid #db514f;
}

.column_hall_list .part_hall .hall_list li .hall_name {
    font-size: 1.8rem;
    line-height: 1;
    text-align: center;
    margin-bottom: 20px;
}

.column_hall_list .part_hall .part_hall_img {
    min-height: 190px;
    overflow: hidden;
}

@media screen and (max-width: 767px) {
    .column_hall_list .part_hall .part_hall_img {
        min-height: 120px;
    }
}

.column_hall_list .part_hall .part_hall_img img {
    -o-object-fit: cover;
    object-fit: cover;
    height: 100%;
    width: 100%;
}

.column_hall_list .part_hall .area_laber {
    font-size: 1.5rem;
    font-weight: 700;
    border: 1px solid;
    border-radius: 30px;
    display: inline-block;
    padding: 0 20px;
    text-align: center;
    width: 110px;
    margin: 10px auto;
}

.column_hall_list .part_hall .area_laber.kakogawa {
    border-color: #bf212e;
    color: #bf212e;
}

.column_hall_list .part_hall .area_laber.takasago {
    border-color: #050c97;
    color: #050c97;
}

.column_hall_list .part_hall .area_laber.kobe {
    border-color: #47904f;
    color: #47904f;
}

.column_hall_list .part_hall .area_laber.akashi {
    border-color: #db514f;
    color: #db514f;
}

.column_hall_list .part_hall h3 {
    margin-bottom: 20px;
}

.column_hall_list .part_hall .readmore {
    font-size: 1.5rem;
    line-height: 1.4;
    text-align: right;
    font-weight: 600;
    padding: 0 5px 5px;
    margin-top: auto;
}

.column_hall_list .part_hall .readmore::after {
    content: "\f105";
    font-family: "Font Awesome 6 free";
    padding-left: 10px;
}

/*----------------------------------------------------
	斎場一覧　詳細版
----------------------------------------------------*/
.map_wrap {
    position: relative;
}

.map_wrap:before {
    content: "";
    display: block;
    position: absolute;
    width: 102%;
    height: 47px;
    left: -1px;
    right: 0;
    margin: 0 auto;
    background: #fff;
}

.map_wrap .iframe {
    border: none;
}

.column_hall_list .hall_info_box {
    background: #fff;
    border-radius: 5px;
    margin-bottom: 30px;
    padding: 30px 0;
}

@media screen and (max-width: 767px) {
    .column_hall_list .hall_info_box {
        margin-bottom: 20px;
        padding: 20px 0;
    }
}

.column_hall_list .hall_info_box:first-of-type {
    border-top: 1px solid #eee;
}

.column_hall_list .hall_info_box a {
    display: block;
}

.column_hall_list .hall_info_box a:hover .btn {
    background: #bf212e;
    color: #fff;
}

.column_hall_list .hall_info_box a:hover .btn:after {
    color: #fff;
}

.column_hall_list .hall_info_box .hall_name {
    font-size: 2.2rem;
    text-align: left;
    margin-bottom: 10px;
}

.column_hall_list .hall_info_box .hall_name br {
    display: none;
}

.column_hall_list .hall_info_box .hall_detail {
    padding: 40px 0;
}

@media screen and (max-width: 767px) {
    .column_hall_list .hall_info_box .hall_detail {
        padding: 20px 0 15px;
    }
}

.column_hall_list .hall_info_box .flex {
    align-items: center;
}

@media screen and (max-width: 820px) {
    .column_hall_list .hall_info_box .flex {
        flex-wrap: wrap;
        gap: 10px;
    }
}

.column_hall_list .hall_info_box .info_left {
    width: 340px;
    margin-right: 30px;
}

@media screen and (max-width: 820px) {
    .column_hall_list .hall_info_box .info_left {
        width: 100%;
        margin: 0;
        text-align: center;
    }
}

.column_hall_list .hall_info_box .info_left img {
    -o-object-fit: cover;
    object-fit: cover;
    aspect-ratio: 4/3;
}

.column_hall_list .hall_info_box .info_right {
    width: calc(100% - 370px);
    position: relative;
}

@media screen and (max-width: 1100px) {
    .column_hall_list .hall_info_box .info_right {
        width: 100%;
    }
}

.column_hall_list .hall_info_box .info_right .google_link {
    border: 2px solid #4885ed;
    border-left: 10px solid #4885f0;
    padding: 5px 10px 5px 5px;
    margin-bottom: 20px;
    border-radius: 3px;
    font-size: 1.5rem;
    font-weight: 600;
    white-space: nowrap;
    display: inline-block;
    transition: all 0.3s;
}

.column_hall_list .hall_info_box .info_right .google_link span {
    font-weight: 900;
    color: #f06664;
    transition: all 0.3s;
}

.column_hall_list .hall_info_box .info_right .google_link::after {
    content: "\f138";
    font-family: "Font Awesome 6 free";
    font-weight: 700;
    color: #4885ed;
    position: relative;
    left: 5px;
    transition: all 0.3s;
}

.column_hall_list .hall_info_box .info_right .google_link:hover {
    background: #4885ed;
    color: #fff;
    opacity: 1;
}

.column_hall_list .hall_info_box .info_right .google_link:hover span {
    color: #fff200;
}

.column_hall_list .hall_info_box .info_right .google_link:hover::after {
    color: #fff;
}

@media screen and (max-width: 767px) {
    .column_hall_list .hall_info_box .info_right .google_link {
        width: 100%;
        position: relative;
        margin-bottom: 10px;
    }
}

.column_hall_list .hall_info_box .info_right dl {
    flex-wrap: wrap;
    gap: 10px;
}

.column_hall_list .hall_info_box .info_right dl dt {
    width: 15%;
    background: #e6f2f9;
    color: #444;
    text-align: center;
    border-radius: 5px;
    padding: 2px 0;
}

@media screen and (max-width: 1100px) {
    .column_hall_list .hall_info_box .info_right dl dt {
        width: 25%;
    }
}

.column_hall_list .hall_info_box .info_right dl dd {
    width: calc(84% - 5px);
}

@media screen and (max-width: 1100px) {
    .column_hall_list .hall_info_box .info_right dl dd {
        width: calc(73% - 5px);
    }
}

.column_hall_list .hall_info_box .info_right .btn {
    padding: 10px;
    width: 300px;
    margin: 0;
    margin-left: auto;
    font-weight: 600;
}

.column_hall_list .hall_info_box .info_right .btn:after {
    font-size: 1.6rem;
}

@media screen and (max-width: 767px) {
    .column_hall_list .hall_info_box .info_right .btn {
        margin: 0 auto;
    }
}

.column_hall_list .hall_info_box .feature_icon {
    display: flex;
    gap: 5px;
    margin: 20px 0;
    flex-wrap: wrap;
    justify-content: flex-start;
}

@media screen and (max-width: 767px) {
    .column_hall_list .hall_info_box .feature_icon {
        margin: 10px 0 20px;
    }
}

.column_hall_list .hall_info_box .feature_icon li {
    width: calc(16.6666666667% - 6px);
    border: 1px solid #5b430e;
    border-radius: 5px;
    text-align: center;
    background: #fff;
    padding: 3px 2px;
    line-height: 1.4;
    font-size: 1.3rem;
}

@media screen and (max-width: 1100px) {
    .column_hall_list .hall_info_box .feature_icon li {
        width: 24%;
    }
}

@media screen and (max-width: 820px) {
    .column_hall_list .hall_info_box .feature_icon li {
        width: 48%;
    }
}

.column_hall_list .hall_info_box .feature_icon li::before {
    content: "\f058";
    font-family: "Font Awesome 6 free";
    font-weight: 900;
    padding-right: 0.5em;
    color: #bf212e;
}

.column_hall_list .hall_info_box .btn_more a {
    display: inline-block;
}

.column_hall_list .hall_info_box_kakogawa .hall_name {
    color: #bf212e;
}

.column_hall_list .hall_info_box_takasago .hall_name {
    color: #050c97;
}

.column_hall_list .hall_info_box_kobe .hall_name {
    color: #47904f;
}

.column_hall_list .hall_info_box_akashi .hall_name {
    color: #db514f;
}

/*----------------------------------------------------
	斎場詳細
----------------------------------------------------*/
.column_hall_first .family_hall_laber {
    background: #bf212e;
    color: #fff;
    padding: 5px 20px;
    border-radius: 10px;
    display: inline-block;
    margin-bottom: 10px;
    font-size: 1.5rem;
}

.column_hall_first .hall_head_wrap {
    width: 100%;
    align-items: center;
    margin-bottom: 15px;
}

@media screen and (max-width: 767px) {
    .column_hall_first .hall_head_wrap {
        flex-wrap: wrap;
        gap: 5px;
        text-align: center;
    }
}

@media screen and (max-width: 767px) {
    .column_hall_first .hall_head_wrap .flex_item {
        width: 48%;
    }
}

@media screen and (max-width: 767px) {
    .column_hall_first .hall_head_wrap .flex_item {
        width: 100%;
    }
}

.column_hall_first .hall_head_wrap .flex_item.flex {
    align-items: flex-end;
    text-align: center;
    letter-spacing: 0.2px;
}

@media screen and (max-width: 820px) {
    .column_hall_first .hall_head_wrap .flex_item.flex {
        width: 60%;
        gap: 5px;
    }
}

@media screen and (max-width: 767px) {
    .column_hall_first .hall_head_wrap .flex_item.flex {
        width: 100%;
    }
}

.column_hall_first .hall_head_wrap .flex_item.flex p {
    font-size: 1.4rem;
    font-weight: 600;
}

@media screen and (max-width: 820px) {
    .column_hall_first .hall_head_wrap .flex_item.flex p {
        display: none;
    }
}

.column_hall_first .hall_head_wrap .sec_title {
    text-align: left;
    font-family: "KiwiMaru", sans-serif;
    font-weight: 300;
    font-style: normal;
    font-weight: 700;
}

@font-face {
    font-family: "KiwiMaru";
    src: url("../fonts/KiwiMaru-Light.ttf") format("truetype");
}

@media screen and (max-width: 820px) {
    .column_hall_first .hall_head_wrap .sec_title {
        text-align: center;
    }
}

.hall-img-slider .swiper-button-next {
    right: 130px;
}

@media screen and (max-width: 820px) {
    .hall-img-slider .swiper-button-next {
        right: 0;
    }
}

.hall-img-slider .swiper-button-prev {
    left: 130px;
}

@media screen and (max-width: 820px) {
    .hall-img-slider .swiper-button-prev {
        left: 0;
    }
}

.hall-img {
    margin: 0 auto;
}

.hall-img .container {
    position: relative;
    margin: 100px auto 60px auto;
    max-width: 1100px;
}

.hall-img .swiper-container {
    text-align: center;
    cursor: grab;
}

.hall-img .swiper-container:active {
    cursor: grabbing;
}

.hall-img .swiper-container .swiper-slide img {
    max-width: 100%;
    width: 100%;
    height: auto;
    opacity: 0.3;
}

.hall-img .swiper-container .swiper-slide-active img {
    opacity: 1;
}

.hall-img #thumbs {
    height: 10%;
    box-sizing: border-box;
    padding-top: 10px;
}

.hall-img #thumbs .swiper-slide {
    width: 16%;
    height: auto;
    opacity: 0.3;
    cursor: grab;
}

.hall-img #thumbs .swiper-slide:active {
    cursor: grabbing;
}

.hall-img #thumbs .swiper-slide-active {
    opacity: 1;
}

.hall-img .swiper-wrapper > p {
    margin: 0 auto;
}

.column_hall_detail .hall_detail {
    padding: 40px 0;
    border-top: 1px solid #eee;
    border-bottom: 1px solid #eee;
    position: relative;
    background: #fff;
    margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
    .column_hall_detail .hall_detail {
        padding: 0 0 40px;
        margin-bottom: 0;
    }
}

.column_hall_detail .hall_detail .sec_title {
    text-align: left;
}

.column_hall_detail .hall_detail .detail_box {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    padding: 30px;
    background: #fafafa;
    margin-top: 0;
    border-radius: 5px;
    margin-bottom: 35px;
}

@media screen and (max-width: 820px) {
    .column_hall_detail .hall_detail .detail_box {
        display: block;
        padding: 20px;
    }
}

@media screen and (max-width: 767px) {
    .column_hall_detail .hall_detail .detail_box {
        padding: 5px;
    }
}

.column_hall_detail .hall_detail .detail_box a {
    text-decoration: none;
    color: inherit;
}

.column_hall_detail .hall_detail .detail_box .hall_detail_left {
    width: 55%;
}

@media screen and (max-width: 820px) {
    .column_hall_detail .hall_detail .detail_box .hall_detail_left {
        width: 100%;
        margin-bottom: 25px;
    }
}

.column_hall_detail .hall_detail .detail_box .hall_detail_left .row {
    display: flex;
    padding: 15px 0;
    border-bottom: 1px solid #ddd;
}

@media screen and (max-width: 820px) {
    .column_hall_detail .hall_detail .detail_box .hall_detail_left .row {
        display: block;
        padding: 10px 0;
    }
}

.column_hall_detail .hall_detail .detail_box .hall_detail_left .row:first-child {
    padding-top: 0;
}

.column_hall_detail .hall_detail .detail_box .hall_detail_left .row:last-child {
    border-bottom: none;
}

@media screen and (max-width: 820px) {
    .column_hall_detail .hall_detail .detail_box .hall_detail_left .row:last-child {
        border-bottom: 1px solid #ddd;
    }
}

.column_hall_detail .hall_detail .detail_box .hall_detail_left .row dt {
    width: 30%;
    min-width: 165px;
    font-weight: 500;
    font-weight: bold;
}

@media screen and (max-width: 820px) {
    .column_hall_detail .hall_detail .detail_box .hall_detail_left .row dt {
        width: 100%;
    }
}

.column_hall_detail .hall_detail .detail_box .hall_detail_left .row dd {
    width: 70%;
}

@media screen and (max-width: 820px) {
    .column_hall_detail .hall_detail .detail_box .hall_detail_left .row dd {
        width: 100%;
    }
}

.column_hall_detail .hall_detail .detail_box .hall_detail_left__maplink {
    display: inline-block;
    background: #050c97;
    color: #fff;
    font-size: 1.3rem;
    border-radius: 8px;
    padding: 6px 15px;
    line-height: 1;
}

.column_hall_detail .hall_detail .detail_box .hall_detail_right {
    width: 40%;
}

.column_hall_detail .hall_detail .detail_box .hall_detail_right .access_list li:not(:last-of-type) {
    margin-bottom: 20px;
}

.column_hall_detail .hall_detail .detail_box .hall_detail_right .access_list li .title {
    font-size: 1.8rem;
    font-weight: 700;
    border-bottom: 1px solid #ccc;
    padding-bottom: 5px;
    margin-bottom: 10px;
}

.column_hall_detail .hall_detail .detail_box .hall_detail_right .access_list li .title i {
    font-size: 2.2rem;
    margin-right: 5px;
    color: #ccb764;
}

@media screen and (max-width: 820px) {
    .column_hall_detail .hall_detail .detail_box .hall_detail_right {
        width: 100%;
    }
}

.column_hall_detail .hall_detail .detail_box .hall_detail_w100 .feature_icon {
    flex-wrap: wrap;
    gap: 5px;
    justify-content: flex-start;
}

.column_hall_detail .hall_detail .detail_box .hall_detail_w100 .feature_icon li {
    width: calc(25% - 4px);
    border: 1px solid #ccc;
    border-radius: 5px;
    padding: 5px;
    background: #fff;
    font-size: 1.5rem;
}

@media screen and (max-width: 820px) {
    .column_hall_detail .hall_detail .detail_box .hall_detail_w100 .feature_icon li {
        width: calc(50% - 4px);
        font-size: 1.3rem;
    }
}

.column_hall_detail .hall_detail .detail_box .hall_detail_w100 .feature_icon li:before {
    content: "\f138";
    font-family: "Font Awesome 6 free";
    font-weight: 700;
    color: #ccb764;
    padding-right: 0.5em;
}

.column_hall_detail .hall_detail .hall-Gmap {
    margin-bottom: 40px;
}

.column_hall_detail .hall_detail .hall-Gmap .gmap_box {
    width: 100%;
    height: 20vh;
    min-height: 400px;
    margin: 0 auto 20px;
}

@media screen and (max-width: 820px) {
    .column_hall_detail .hall_detail .hall-Gmap .gmap_box {
        margin-top: 30px;
    }
}

.column_hall_detail .hall_detail .hall-Gmap .gmap_box iframe {
    width: 100%;
    height: 100%;
}

.column_hall_detail .hall_detail .setsubi .title {
    font-size: 2.2rem;
    font-weight: 700;
    margin-bottom: 10px;
}

.column_hall_detail .hall_detail .setsubi .title i {
    color: #ccb764;
    margin-right: 5px;
}

.column_hall_detail .hall_detail .setsubi dl {
    display: flex;
    flex-wrap: wrap;
}

.column_hall_detail .hall_detail .setsubi dl dt,
.column_hall_detail .hall_detail .setsubi dl dd {
    border: 1px solid #eee;
    text-align: center;
}

.column_hall_detail .hall_detail .setsubi dl dt {
    width: 23.3%;
    background: #eee;
    padding: 5px 0;
    border-bottom: 1px solid #fff;
}

@media screen and (max-width: 767px) {
    .column_hall_detail .hall_detail .setsubi dl dt {
        width: 30%;
        font-size: 1.4rem;
    }
}

.column_hall_detail .hall_detail .setsubi dl dd {
    width: 10%;
    display: grid;
    align-items: center;
}

@media screen and (max-width: 767px) {
    .column_hall_detail .hall_detail .setsubi dl dd {
        width: 20%;
    }
}

.column_hall_detail .hall_detail .remarks_setsubi {
    padding: 20px;
    background: #f4f4f4;
    margin-top: 30px;
}

@media screen and (max-width: 767px) {
    .column_hall_detail .hall_detail .remarks_setsubi {
        padding: 5px;
        margin-top: 15px;
    }
}

.sec_title_hall_detail {
    color: #bf212e;
    padding-bottom: 30px;
    font-size: clamp(2.4rem, 4vw, 3.4rem);
    line-height: 1.2;
    text-align: left;
    font-weight: 400;
    font-family: "KiwiMaru", sans-serif;
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: "KiwiMaru";
    src: url("../fonts/KiwiMaru-Light.ttf") format("truetype");
}

@media screen and (max-width: 767px) {
    .sec_title_hall_detail {
        padding-bottom: 15px;
        padding-top: 25px;
    }
}

.sec_title_hall_detail span {
    border-bottom: 1px solid #bf212e;
    display: inline-block;
}

.column_hall_reason {
    padding: 75px 0;
    background: #fafafa;
}

@media screen and (max-width: 820px) {
    .column_hall_reason {
        padding: 25px 0 50px;
    }
}

.column_hall_reason .sec_title {
    margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
    .column_hall_reason .sec_title {
        margin-bottom: 10px;
    }
}

.column_hall_reason .hall_reason_wrap {
    display: flex;
    justify-content: left;
    -moz-column-gap: 2%;
    column-gap: 2%;
    row-gap: 30px;
    counter-reset: cnt 0;
}

@media screen and (max-width: 820px) {
    .column_hall_reason .hall_reason_wrap {
        flex-wrap: wrap;
    }
}

.column_hall_reason .hall_reason_wrap .hall_reason_box {
    width: 32%;
    box-shadow: 0 0 10px #eee;
    display: flex;
    flex-wrap: wrap;
    background: #fff;
    flex-direction: column;
    position: relative;
    background: #ffffff;
    box-shadow: 3px 3px 5px #ccc;
    border-radius: 5px;
    counter-increment: reason 1;
}

.column_hall_reason .hall_reason_wrap .hall_reason_box::before {
    content: counter(reason, decimal-leading-zero);
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: -5px;
    left: 5px;
    width: 60px;
    height: 60px;
    background: #db514f;
    font-size: 3.2rem;
    font-weight: 500;
    color: #fff;
    z-index: 1;
}

.column_hall_reason .hall_reason_wrap .hall_reason_box::after {
    content: "";
    position: absolute;
    left: 5px;
    top: 55px;
    height: 0;
    width: 0;
    border-left: 30px solid #db514f;
    border-right: 30px solid #db514f;
    border-bottom: 10px solid transparent;
}

@media screen and (max-width: 820px) {
    .column_hall_reason .hall_reason_wrap .hall_reason_box {
        width: 100%;
    }
}

.column_hall_reason .hall_reason_wrap .hall_reason_box .img_box {
    aspect-ratio: 3/2;
    overflow: hidden;
}

.column_hall_reason .hall_reason_wrap .hall_reason_box .img_box img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.column_hall_reason .hall_reason_wrap .text_wrap {
    padding: 20px;
}

.column_hall_reason .hall_reason_wrap .hall_reason_box_title {
    font-size: 2.4rem;
    color: #bf212e;
    margin-bottom: 10px;
    text-align: center;
    line-height: 1.4;
    font-family: "KiwiMaru", sans-serif;
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: "KiwiMaru";
    src: url("../fonts/KiwiMaru-Light.ttf") format("truetype");
}

.column_hall_reason .sec_title br {
    display: none;
}

/*----------------------------------------------------
	特徴
----------------------------------------------------*/
#feature .tit_sub {
    text-align: center;
    font-size: 3rem;
    font-family: "KiwiMaru", sans-serif;
    font-weight: 300;
    font-style: normal;
    margin-bottom: 20px;
}

@font-face {
    font-family: "KiwiMaru";
    src: url("../fonts/KiwiMaru-Light.ttf") format("truetype");
}

@media screen and (max-width: 767px) {
    #feature .tit_sub {
        font-size: 2rem;
    }
}

@media (max-width: 330px) {
    #feature .tit_sub {
        font-size: 1.7rem;
    }
}

#feature .feature_new_txt {
    text-align: center;
}

@media screen and (max-width: 767px) {
    #feature .feature_new_txt {
        font-size: 1.4rem;
    }
}

.column_reason_message {
    background: #2E5915;
    padding: 60px 2%;
}

@media screen and (max-width: 767px) {
    .column_reason_message {
        padding: 20px 2%;
    }
}

.column_reason_message h3 {
    font-size: 3rem;
    font-family: "KiwiMaru", sans-serif;
    font-weight: 300;
    font-style: normal;
    text-align: center;
    color: #fff;
    font-weight: 500;
}

@font-face {
    font-family: "KiwiMaru";
    src: url("../fonts/KiwiMaru-Light.ttf") format("truetype");
}

@media screen and (max-width: 767px) {
    .column_reason_message h3 {
        font-size: 2rem;
        line-height: 1.5;
    }
}

.column_reason_thanks {
    padding: 60px 2%;
}

@media screen and (max-width: 767px) {
    .column_reason_thanks {
        padding: 30px 0;
    }
}

.column_reason_gallery {
    padding: 60px 2%;
    background: url(../img/common/bg_washi.jpg) repeat;
}

@media screen and (max-width: 820px) {
    .column_reason_gallery {
        padding: 30px 2%;
    }
}

@media screen and (max-width: 767px) {
    .column_reason_gallery {
        padding: 30px 0 10px;
    }
}

.column_reason_gallery .feature_new_list {
    max-width: 1100px;
    margin: 30px auto 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 35px;
}

.column_reason_gallery .feature_new_list li {
    width: calc(33.3333333333% - 25px);
    background-color: #fff;
    box-shadow: 0 0 10px #ccc;
    transition: 0.3s;
    border-radius: 5px;
    position: relative;
}

@media screen and (max-width: 767px) {
    .column_reason_gallery .feature_new_list li {
        width: 100%;
    }
}

.column_reason_gallery .feature_new_list li a {
    display: flex;
    height: 100%;
    flex-direction: column;
}

.column_reason_gallery .feature_new_list li .txt {
    padding: 13px 20px 10px 10px;
    font-size: 1.6rem;
    position: relative;
    text-align: left;
}

@media screen and (max-width: 820px) {
    .column_reason_gallery .feature_new_list li .txt {
        font-size: 1.5rem;
        line-height: 1.3;
        padding: 4% 12%;
    }
}

@media screen and (max-width: 767px) {
    .column_reason_gallery .feature_new_list li .txt {
        padding: 4% 8%;
    }
}

.column_reason_gallery .feature_new_list li .js-modal-open .txt {
    text-align: center;
    flex: 1;
}

.column_reason_gallery .feature_new_list li .js-modal-open .txt::after {
    content: "";
    position: absolute;
    top: 42%;
    right: 13px;
    width: 8px;
    height: 8px;
    border-top: 2px solid #333;
    border-right: 2px solid #333;
    transform: rotate(45deg);
}

.column_reason_gallery .feature_new_list li .modal-content {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    height: auto;
    max-width: 600px;
    width: 96% !important;
    background: white;
    padding: 20px 20px 10px;
    border-radius: 10px;
    text-align: center;
}

@media screen and (max-width: 767px) {
    .column_reason_gallery .feature_new_list li .modal-content {
        max-width: 350px;
    }
}

.column_reason_gallery .feature_new_list li .modal-content .close_btn {
    display: none;
}

.column_reason_gallery .feature_new_list li .modal-content .js-modal-close {
    position: relative;
    width: 50px;
    height: 50px;
    border: 2px solid #666;
    border-radius: 35px;
    background: #fff;
    margin: 0 auto;
}

.column_reason_gallery .feature_new_list li .modal-content .js-modal-close::before,
.column_reason_gallery .feature_new_list li .modal-content .js-modal-close::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 3px;
    /* 棒の幅（太さ） */
    height: 22px;
    /* 棒の高さ */
    background: #333;
    /* バツ印の色 */
}

.column_reason_gallery .feature_new_list li .modal-content .js-modal-close::before {
    transform: translate(-50%, -50%) rotate(45deg);
}

.column_reason_gallery .feature_new_list li .modal-content .js-modal-close::after {
    transform: translate(-50%, -50%) rotate(-45deg);
}

.column_reason_useful {
    background: #fff;
}

/*----------------------------------------------------
	プラン
----------------------------------------------------*/
#plan .column_reason {
    margin-bottom: 0;
}

#plan .column_reason .catch {
    margin-bottom: 60px;
}

/*------プラン詳細------------------------------*/
.column_plan_detail {
    padding-bottom: 20px;
}

@media screen and (max-width: 767px) {
    .column_plan_detail {
        padding-bottom: 10px;
    }
}

.plan_detail_page .column_banner {
    background: url(../img/common/bg1.png);
}

/*------特徴------------------------------*/
.column_reason .lap_row_content .lap_row:last-child .coise_box {
    margin-bottom: 0;
}

.column_reason .lap_row .coise_box {
    display: flex;
    flex-direction: row-reverse;
    position: relative;
    align-items: center;
    margin-bottom: 100px;
}

@media screen and (max-width: 820px) {
    .column_reason .lap_row .coise_box {
        display: block;
        margin-bottom: 30px;
    }
}

.column_reason .lap_row .img_box {
    position: relative;
    max-width: 780px;
}

.column_reason .lap_row .text_box {
    z-index: 2;
    background: rgba(255, 255, 255, 0.9);
    box-shadow: 0 0 5px #eee;
    position: absolute;
    width: 55%;
}

@media screen and (max-width: 820px) {
    .column_reason .lap_row .text_box {
        position: relative;
        width: 100%;
    }
}

.column_reason .lap_row .text_box .db_box {
    padding: 10px 5% 30px;
    position: relative;
}

@media screen and (max-width: 820px) {
    .column_reason .lap_row .text_box .db_box {
        padding: 20px 5%;
    }
}

.column_reason .lap_row .text_box .db_box .title {
    position: absolute;
    top: -15px;
    left: -20px;
    background: #bf212e;
    font-weight: normal;
    color: #fff;
    line-height: 1.2;
    text-align: center;
    padding: 15px;
    font-family: "Oswald", sans-serif;
    font-size: 1.8rem;
    border-radius: 0 0 20px 20px;
}

@media screen and (max-width: 820px) {
    .column_reason .lap_row .text_box .db_box .title {
        padding: 15px;
        top: -20px;
        left: 0;
        font-size: 1.6rem;
    }
}

.column_reason .lap_row .text_box .db_box .title span {
    display: block;
    font-size: 3.8rem;
}

@media screen and (max-width: 820px) {
    .column_reason .lap_row .text_box .db_box .title span {
        font-size: 3rem;
    }
}

.column_reason .lap_row .text_box .db_box h3 {
    font-size: 2.6rem;
    padding: 15px 0 30px 40px;
    color: #bf212e;
}

@media screen and (max-width: 820px) {
    .column_reason .lap_row .text_box .db_box h3 {
        padding: 0 0 20px 60px;
        font-size: 1.9rem;
    }

    .column_reason .lap_row .text_box .db_box h3 br {
        display: none;
    }
}

.column_reason .lap_row#point1 .text_box .db_box h3,
.column_reason .lap_row#point2 .text_box .db_box h3,
.column_reason .lap_row#point3 .text_box .db_box h3 {
    padding-bottom: 30px;
}

@media screen and (max-width: 820px) {

    .column_reason .lap_row#point1 .text_box .db_box h3,
    .column_reason .lap_row#point2 .text_box .db_box h3,
    .column_reason .lap_row#point3 .text_box .db_box h3 {
        padding-bottom: 20px;
    }
}

.column_reason .row1 .text_box,
.column_reason .row3 .text_box,
.column_reason .row5 .text_box {
    left: 0;
}

.column_reason .row2 .text_box,
.column_reason .row4 .text_box {
    right: 0;
}

.column_reason .row2 .coise_box,
.column_reason .row4 .coise_box {
    flex-direction: inherit;
}

.column_reason .feature_btn {
    text-align: right;
}

.column_reason .feature_btn a {
    background: #666;
    color: #fff;
    display: inline-block;
    padding: 5px 30px;
    position: relative;
}

.column_reason .feature_btn a::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 6%;
    transform: translateY(-50%) rotate(45deg);
    width: 6px;
    height: 6px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    transition: all 0.3s;
}

/*------特徴------------------------------*/
.plan_reason_box {
    background: linear-gradient(#fff 0%, #fff 50%, #faf7fb 50%, #faf7fb 100%);
    position: relative;
    margin-bottom: 60px;
    padding-top: 60px;
}

@media screen and (max-width: 820px) {
    .plan_reason_box {
        background: #faf7fb;
    }
}

.plan_reason_box ul {
    max-width: 1000px;
    margin: 0 auto;
    display: flex;
    gap: 30px;
    flex-wrap: wrap;
}

@media screen and (max-width: 1100px) {
    .plan_reason_box ul {
        padding: 0 2%;
    }
}

@media screen and (max-width: 767px) {
    .plan_reason_box ul {
        gap: 50px;
    }
}

.plan_reason_box ul li {
    width: calc(33.3333333333% - 20px);
    position: relative;
    border: 1px solid #ccc;
    border-radius: 10px;
    box-shadow: 0 0 5px #ccc;
    background: #fff;
    text-align: center;
}

@media screen and (max-width: 767px) {
    .plan_reason_box ul li {
        width: 100%;
    }
}

.plan_reason_box ul li a {
    padding: 30px 20px 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
}

@media screen and (max-width: 820px) {
    .plan_reason_box ul li a {
        padding: 30px 10px 20px;
    }
}

.plan_reason_box ul li a .number {
    font-family: "Oswald", sans-serif;
    width: 70px;
    height: 70px;
    border-radius: 50px;
    background: #bf212e;
    color: #fff;
    line-height: 70px;
    font-size: 2.4rem;
    position: absolute;
    top: -40px;
    left: 0;
    right: 0;
    margin: auto;
}

.plan_reason_box ul li a .txt {
    font-size: 1.8rem;
    font-weight: 700;
}

@media screen and (max-width: 820px) {
    .plan_reason_box ul li a br {
        display: none;
    }
}

.plan_reason_box ul li:hover {
    cursor: pointer;
}

/*----------------------------------------------------
	供物供花
----------------------------------------------------*/
.kyouka_contact_wrap {
    text-align: center;
}

.kyouka_contact_wrap .catch {
    font-size: 2.2rem;
    font-weight: 700;
    margin-bottom: 0;
}

.kyouka_contact_wrap .telnum {
    font-size: 4.8rem;
    font-family: "Oswald", sans-serif;
    color: #f06664;
}

.kyouka_contact_wrap .telnum i {
    color: #f06664;
    margin-right: 5px;
}

.kyouka_contact_wrap .kyouka_laber {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    margin: 0 auto 30px;
}

.kyouka_contact_wrap .kyouka_laber span {
    background: #ccb764;
    color: #fff;
    border-radius: 5px;
    padding: 10px 20px;
    line-height: 1;
    font-size: 1.8rem;
    display: block;
}

.kyouka_contact_wrap .fax_btn {
    display: block;
    border: 1px solid #bf212e;
    color: #bf212e;
    font-size: 2rem;
    position: relative;
    padding: 10px 0;
}

.kyouka_contact_wrap .fax_btn:after {
    content: "";
    position: absolute;
    top: 50%;
    right: 3%;
    transform: translateY(-50%) rotate(45deg);
    width: 6px;
    height: 6px;
    border-top: 2px solid #bf212e;
    border-right: 2px solid #bf212e;
    transition: all 0.3s;
}

.kyouka_contact_wrap .fax_btn:hover {
    background: #ebf8ff;
}

.column_kyouka_list .item_tit {
    background: #bf212e;
    display: flex;
    justify-content: flex-start;
    vertical-align: center;
    color: #fff;
    padding: 15px;
    margin-bottom: 30px;
}

.column_kyouka_list .item_tit h3 {
    color: #fff;
    border-right: 1px solid #fff;
    padding-right: 10px;
    margin-right: 10px;
}

.column_kyouka_list .item_box_area .item_box {
    display: flex;
    justify-content: center;
    gap: 20px;
}

.column_kyouka_list .item_box_area .item_box .item {
    width: 33.3333333333%;
}

@media screen and (max-width: 820px) {
    .column_kyouka_list .item_box_area .item_box .item {
        width: 48%;
    }
}

.column_kyouka_list .item_box_area .item_box .item a {
    position: relative;
}

.column_kyouka_list .item_box_area .item_box .item .photo_area {
    position: relative;
}

.column_kyouka_list .item_box_area .item_box .item .photo_area img {
    margin: 0 auto;
    display: block;
}

.column_kyouka_list .item_box_area .item_box .item .photo_area .zoom {
    position: absolute;
    bottom: 10px;
    right: 20px;
}

.column_kyouka_list .item_box_area .text_box {
    text-align: center;
    margin-top: 1em;
}

.column_kyouka_list .item_box_area .text_box .tit {
    color: #bf212e;
    line-height: 1;
    font-weight: 600;
}

.column_kyouka_list .item_box_area .text_box .taxin {
    color: #f06664;
    font-family: "Oswald", sans-serif;
}

.column_kyouka_list .item_box_area .text_box .taxin span {
    color: #333;
    font-size: 1.5rem;
}

/*----------------------------------------------------
	お急ぎの方へ
----------------------------------------------------*/
.column_first_hurry {
    background: url(../img/hurry/bg_hurry_container.jpg) no-repeat #f2f9ff;
    padding: 60px 0;
    background-position: right;
    background-size: cover;
    margin-bottom: 60px;
}

@media screen and (max-width: 1100px) {
    .column_first_hurry {
        padding-bottom: 30px;
        background-size: cover;
        background-position: top right 40%;
    }
}

@media screen and (max-width: 820px) {
    .column_first_hurry {
        background-size: 860px;
        background-position: top 0 right -80px;
    }
}

@media screen and (max-width: 767px) {
    .column_first_hurry {
        margin-bottom: 0;
        background-color: initial;
        background-size: 650px;
        background-position: top 0 left -160px;
        padding-bottom: 10px;
    }
}

.column_first_hurry .hurry_container {
    display: flex;
    justify-content: space-between;
}

@media screen and (max-width: 1100px) {
    .column_first_hurry .hurry_container {
        display: block;
    }
}

.column_first_hurry .hurry_container .sec_title {
    text-align: left;
    margin: 0;
    margin-bottom: 30px;
}

@media screen and (max-width: 1100px) {
    .column_first_hurry .hurry_container .sec_title {
        font-size: 5rem;
    }
}

@media screen and (max-width: 820px) {
    .column_first_hurry .hurry_container .sec_title {
        font-size: 3.5rem;
    }
}

@media screen and (max-width: 820px) {
    .column_first_hurry .hurry_container .sec_title {
        text-shadow: 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff;
        margin-bottom: 0;
    }
}

.column_first_hurry .hurry_container .container_txt {
    width: 62%;
}

@media screen and (max-width: 1100px) {
    .column_first_hurry .hurry_container .container_txt {
        width: 66%;
    }
}

@media screen and (max-width: 820px) {
    .column_first_hurry .hurry_container .container_txt {
        width: 100%;
    }
}

.column_first_hurry .hurry_container .container_txt .hurry_tel {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
    .column_first_hurry .hurry_container .container_txt .hurry_tel {
        display: block;
        text-align: center;
    }
}

@media screen and (max-width: 767px) {
    .column_first_hurry .hurry_container .container_txt .hurry_tel {
        display: none;
    }
}

.column_first_hurry .hurry_container .container_txt .hurry_tel .tel_num {
    line-height: 0;
    position: relative;
    font-size: 6rem;
    font-weight: 600;
    text-decoration: none;
    color: #f06664;
    font-family: "Oswald", sans-serif;
    white-space: nowrap;
}

@media screen and (max-width: 820px) {
    .column_first_hurry .hurry_container .container_txt .hurry_tel .tel_num {
        font-size: 5rem;
        min-width: unset;
    }
}

@media screen and (max-width: 820px) {
    .column_first_hurry .hurry_container .container_txt .hurry_tel .tel_num {
        font-size: 3.4rem;
        min-width: unset;
    }
}

.column_first_hurry .hurry_container .container_txt .hurry_tel .tel_num:before {
    content: "\f2a0";
    font-family: "Font Awesome 6 free";
    font-weight: 700;
    padding-right: 0.2em;
    transform: rotate(-45deg);
    display: inline-block;
    position: relative;
    bottom: 10px;
}

@media screen and (max-width: 1100px) {
    .column_first_hurry .hurry_container .container_txt .hurry_tel .tel_point {
        width: auto;
    }
}

@media screen and (max-width: 820px) {
    .column_first_hurry .hurry_container .container_txt .hurry_tel .tel_point {
        text-align: center;
    }
}

.column_first_hurry .hurry_container .container_txt .hurry_tel .tel_point span {
    display: block;
    width: 100%;
    margin-top: 5px;
    padding: 2px 10px;
    background: #ccb764;
    font-size: 1.5rem;
    color: #fff;
    text-align: center;
}

@media screen and (max-width: 1100px) {
    .column_first_hurry .hurry_container .container_txt .hurry_tel .tel_point span {
        width: auto;
    }

    .column_first_hurry .hurry_container .container_txt .hurry_tel .tel_point span:last-child {
        margin-right: 0;
    }
}

.column_first_hurry .hurry_container .container_txt .container_lead {
    font-size: 2.8rem;
    font-weight: 400;
    margin-bottom: 20px;
}

@media screen and (max-width: 820px) {
    .column_first_hurry .hurry_container .container_txt .container_lead {
        font-size: 2rem;
        text-shadow: 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff;
    }
}

@media screen and (max-width: 767px) {
    .column_first_hurry .hurry_container .container_txt .container_lead {
        font-size: 1.8rem;
    }
}

.column_first_hurry .hurry_container .container_txt .container_lead span {
    color: #bf212e;
}

.column_first_hurry .hurry_container .container_txt .smart_tel_bn {
    display: none;
}

@media screen and (max-width: 767px) {
    .column_first_hurry .hurry_container .container_txt .smart_tel_bn {
        display: inline-block;
    }
}

.column_first_hurry .hurry_container .container_txt .container_attention {
    margin-top: 20px;
    background: #fff;
    position: relative;
}

.column_first_hurry .hurry_container .container_txt .container_attention .lead {
    background: #bf212e;
    color: #fff;
    padding: 15px;
    line-height: 1.4;
    font-size: clamp(1.8rem, 4vw, 2rem);
}

@media screen and (max-width: 767px) {
    .column_first_hurry .hurry_container .container_txt .container_attention .lead {
        padding-top: 45px;
    }
}

.column_first_hurry .hurry_container .container_txt .container_attention span {
    position: absolute;
    top: -10px;
    right: -10px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100px;
    height: 100px;
    border-radius: 50%;
    background: #f06664;
    color: #fff;
    line-height: 1.2;
    font-size: clamp(2rem, 4vw, 2.5rem);
}

@media screen and (max-width: 767px) {
    .column_first_hurry .hurry_container .container_txt .container_attention span {
        width: 100%;
        height: auto;
        top: 0;
        right: 0;
        border-radius: 0;
        padding: 5px;
    }
}

.column_first_hurry .hurry_container .container_txt .container_attention ul {
    list-style: none;
    padding: 15px;
    padding-left: 30px;
    text-indent: -1.2em;
}

@media screen and (max-width: 767px) {
    .column_first_hurry .hurry_container .container_txt .container_attention ul {
        padding-right: 0;
        padding-left: 15px;
    }
}

.column_first_hurry .hurry_container .container_txt .container_attention ul li {
    padding-left: 10px;
}

.column_first_hurry .hurry_container .container_txt .container_attention ul li:before {
    content: "\f101";
    font-family: "Font Awesome 6 free";
    padding-right: 0.2em;
    font-weight: 700;
    color: #ccb764;
}

.column_first_hurry .hurry_container .container_txt .container_attention ul li:before:last-child {
    margin-bottom: 0;
}

.column_hurry_example .example_flex {
    justify-content: center;
}

@media screen and (max-width: 767px) {
    .column_hurry_example .example_flex {
        flex-wrap: wrap;
    }
}

.column_hurry_example .example_flex .example_box {
    width: calc(50% - 15px);
}

@media screen and (max-width: 767px) {
    .column_hurry_example .example_flex .example_box {
        width: 100%;
    }
}

.column_hurry_example .example_flex .example_box .title {
    background: #bf212e;
    display: block;
    color: #fff;
    text-align: center;
    padding: 10px;
    border-radius: 10px 10px 0 0;
}

.column_hurry_example .example_flex .example_box .ex_list {
    position: relative;
    padding: 0 15px 0;
    background: #fff;
    border: 1px solid #eee;
    border-radius: 0 0 10px 10px;
}

@media screen and (max-width: 767px) {
    .column_hurry_example .example_flex .example_box .ex_list {
        font-size: 1.8rem;
    }
}

.column_hurry_example .example_flex .example_box .ex_list li {
    padding: 0 0 0 30px;
    position: relative;
    border-bottom: 1px solid #ccc;
    display: flex;
    align-items: center;
    height: 4.8em;
    line-height: 1.4;
}

@media screen and (max-width: 767px) {
    .column_hurry_example .example_flex .example_box .ex_list li {
        height: unset;
        padding: 13px 0 13px 30px;
    }
}

.column_hurry_example .example_flex .example_box .ex_list li:last-of-type {
    border-bottom: none;
}

.column_hurry_example .example_flex .example_box .ex_list li p::before {
    content: "\f058";
    font-family: "Font Awesome 6 free";
    font-size: 2.4rem;
    color: #f06664;
    position: absolute;
    left: 10px;
    top: 50%;
    transform: translate(-50%, -50%);
}

.column_hurry_tel .catch {
    font-size: clamp(2rem, 2vw, 2.4rem);
    font-weight: 700;
    line-height: 1.5;
}

@media screen and (max-width: 767px) {
    .column_hurry_tel .catch {
        margin: 0;
        padding-bottom: 14px;
        padding-top: 0;
    }
}

.column_hurry_tel .catch .big {
    font-family: "Oswald", sans-serif;
    font-size: 3rem;
}

.column_hurry_tel .catch .red {
    color: #f06664;
}

.column_hurry_tel .hurry_tel_list {
    background: #fafafa;
    max-width: 800px;
    margin: 0 auto;
    padding: 10px 20px 20px;
}

@media screen and (max-width: 767px) {
    .column_hurry_tel .hurry_tel_list {
        background: unset;
        padding: 0;
        margin-bottom: 30px;
    }
}

.column_hurry_tel .hurry_tel_list li {
    width: 100%;
    padding: 15px 0 15px 30px;
    position: relative;
    font-size: 1.6rem;
    border-bottom: 1px dashed #ccc;
}

.column_hurry_tel .hurry_tel_list li::before {
    content: "\f058";
    font-family: "Font Awesome 6 free";
    font-size: 2.4rem;
    color: #f06664;
    position: absolute;
    left: 10px;
    top: 50%;
    transform: translate(-50%, -50%);
}

.column_hurry_flow {
    padding-top: 60px;
}

@media screen and (max-width: 820px) {
    .column_hurry_flow {
        padding-top: 0;
    }
}

.column_hurry_flow .hurry_flow {
    display: flex;
    flex-wrap: wrap;
}

.column_hurry_flow .hurry_flow li {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    width: 25%;
}

@media screen and (max-width: 767px) {
    .column_hurry_flow .hurry_flow li {
        width: 100%;
    }
}

.column_hurry_flow .hurry_flow li:nth-child(1) .left_bar {
    background: #ede765;
}

.column_hurry_flow .hurry_flow li:nth-child(1) .left_bar::after {
    border-color: #ede765 transparent transparent transparent;
}

.column_hurry_flow .hurry_flow li:nth-child(2) .left_bar {
    background: #DECA79;
}

.column_hurry_flow .hurry_flow li:nth-child(2) .left_bar::after {
    border-color: #DECA79 transparent transparent transparent;
}

.column_hurry_flow .hurry_flow li:nth-child(3) .left_bar {
    background: #CCB764;
}

.column_hurry_flow .hurry_flow li:nth-child(3) .left_bar::after {
    border-color: #CCB764 transparent transparent transparent;
}

.column_hurry_flow .hurry_flow li:nth-child(4) .left_bar {
    background: #BF212E;
}

.column_hurry_flow .hurry_flow li:nth-child(4) .left_bar::after {
    content: none;
}

.column_hurry_flow .hurry_flow li .left_bar {
    width: 100%;
    background: #bf212e;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
}

@media screen and (max-width: 767px) {
    .column_hurry_flow .hurry_flow li .left_bar {
        width: 100%;
    }
}

.column_hurry_flow .hurry_flow li .left_bar::after {
    content: "";
    position: absolute;
    bottom: -17px;
    width: 0;
    height: 0;
    border-left: 26px solid #bf212e;
    border-top: 26px solid transparent;
    border-bottom: 26px solid transparent;
    transform: rotate(45deg);
    z-index: 30;
    right: -3px;
    margin: auto;
}

@media screen and (max-width: 767px) {
    .column_hurry_flow .hurry_flow li .left_bar::after {
        content: none;
    }
}

.column_hurry_flow .hurry_flow li .left_bar p {
    margin: 0 auto;
    font-size: 2rem;
    color: #fff;
    text-align: center;
}

.column_hurry_flow .hurry_flow .hu_titile {
    display: flex;
    justify-content: center;
    align-items: center;
    background: #fafafa;
    border-bottom: 1px solid #ccc;
    padding: 15px;
    flex: 1;
}

@media screen and (max-width: 767px) {
    .column_hurry_flow .hurry_flow .hu_titile {
        width: 100%;
        padding: 10px;
    }
}

.column_hurry_flow .hurry_flow .text_box {
    border-bottom: 1px solid #ccc;
    padding: 20px 10px 20px 20px;
    flex: 2;
}

@media screen and (max-width: 820px) {
    .column_hurry_flow .hurry_flow .text_box {
        padding: 10px;
        font-size: 1.4rem;
    }
}

.column_hurry_tel {
    padding-top: 30px;
}

@media screen and (max-width: 767px) {
    .column_hurry_tel {
        padding-top: 0;
        padding-bottom: 12px;
    }
}

.column_hurry_tel h3 {
    color: #333;
    text-align: center;
    font-size: 2.6rem;
    margin-bottom: 30px;
    line-height: 1.4;
}

@media screen and (max-width: 820px) {
    .column_hurry_tel h3 {
        font-size: 2rem;
        padding-top: 10px;
        margin-bottom: 20px;
    }
}

.column_hurry_staff {
    padding: 12px 0 50px;
}

@media screen and (max-width: 820px) {
    .column_hurry_staff {
        padding: 30px 0 35px;
    }
}

/*----------------------------------------------------
	会社概要 company
----------------------------------------------------*/
.column_company_detail dl {
    max-width: 900px;
    margin: 50px auto 0;
    width: 100%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    border-left: 1px solid #eee;
    border-right: 1px solid #eee;
}

@media screen and (max-width: 767px) {
    .column_company_detail dl {
        margin: 20px auto 0;
    }
}

.column_company_detail dl dt {
    width: 20%;
    background: #eee;
    border-bottom: 1px solid #fff;
    padding: 10px 0;
    text-align: center;
}

@media screen and (max-width: 820px) {
    .column_company_detail dl dt {
        width: 100%;
    }
}

.column_company_detail dl dd {
    width: 80%;
    border-top: 1px solid #eee;
    border-bottom: 1px solid #eee;
    padding: 10px;
}

@media screen and (max-width: 820px) {
    .column_company_detail dl dd {
        width: 100%;
        border-top: none;
    }
}

.column_company_detail dl dd:first-child {
    border-top: 1px solid #eee;
}

.column_company_detail dl dd span {
    display: block;
    margin-bottom: 15px;
}

@media screen and (max-width: 820px) {
    .column_company_history {
        padding-bottom: 50px;
    }
}

.column_company_history .company_history_list {
    max-width: 900px;
    margin: 50px auto 0;
    width: 100%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
    .column_company_history .company_history_list {
        margin: 20px auto 0;
    }
}

.column_company_history .company_history_list dt {
    width: 20%;
    border-bottom: 1px solid #eee;
    padding: 10px 0;
    text-align: center;
    color: #bf212e;
}

@media screen and (max-width: 820px) {
    .column_company_history .company_history_list dt {
        width: 100%;
        border-bottom: none;
        text-align: left;
        padding: 15px 0 0 10px;
    }
}

.column_company_history .company_history_list dd {
    width: 80%;
    border-bottom: 1px solid #eee;
    padding: 10px 0 10px 10px;
}

@media screen and (max-width: 820px) {
    .column_company_history .company_history_list dd {
        width: 100%;
    }
}

@media screen and (max-width: 767px) {
    .column_company_history .company_history_list dd {
        font-size: 1.6rem;
    }
}

.column_company_history .company_history_list dd:last-child {
    border-top: none;
}

/*----------------------------------------------------
	会葬者の方へ mourner
----------------------------------------------------*/
#mourner .column_mourner_list {
    padding-top: 15px;
}

#mourner .column_hall_list .mourner_hall {
    display: flex;
    gap: 30px;
    flex-wrap: wrap;
    padding: 20px 0;
}

@media screen and (max-width: 820px) {
    #mourner .column_hall_list .mourner_hall {
        gap: 10px;
        padding: 20px 0 0;
    }
}

#mourner .column_hall_list .mourner_hall li {
    width: calc(25% - 23px);
    border: 1px solid #eee;
    display: flex;
    flex-direction: column;
}

@media screen and (max-width: 820px) {
    #mourner .column_hall_list .mourner_hall li {
        width: calc(50% - 5px);
    }
}

#mourner .column_hall_list .mourner_hall li .text_box {
    text-align: center;
    margin-top: 10px;
    padding: 0 10px;
}

@media screen and (max-width: 820px) {
    #mourner .column_hall_list .mourner_hall li .text_box {
        padding: 0;
    }
}

#mourner .column_hall_list .mourner_hall li .text_box h3 {
    color: #bf212e;
    font-size: 1.8rem;
}

#mourner .column_hall_list .mourner_hall li .img_box img {
    aspect-ratio: 4/3;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
}

#mourner .column_hall_list .row-hall_link {
    max-width: 250px;
    margin: 0 auto;
    display: block;
    text-align: center;
    padding: 10px 0;
    border-radius: 0 0 5px 5px;
    margin-top: auto;
}

@media screen and (max-width: 820px) {
    #mourner .column_hall_list .row-hall_link {
        max-width: unset;
        width: 100%;
        padding: 10px;
    }
}

#mourner .column_hall_list .row-hall_link img {
    margin-bottom: 10px;
}

/*----------------------------------------------------
	モーダルウィンドウ
----------------------------------------------------*/
/* モーダル全体(背景＋本体) */
.modal {
    display: none;
    position: fixed;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    height: 100vh;
    width: 100%;
    z-index: 999;
}

.modal .close_btn {
    display: block;
    border-radius: 5px;
    margin: 20px;
}

.modal .close_btn:hover {
    cursor: pointer;
}

/* モーダル背景 */
.modal-bg {
    position: absolute;
    height: 100vh;
    width: 100%;
    background: rgba(0, 0, 0, 0.9);
}

/* モーダル本体 */
.modal-content {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    height: auto;
    width: 320px;
    background: white;
    padding: 20px 20px 10px;
    border-radius: 10px;
    text-align: center;
}

.modal-content .modal_tel {
    margin: 15px 0;
    font-size: 26px;
    font-weight: 600;
    flex-direction: unset;
    justify-content: center;
}

.modal-content .modal_tel::before {
    content: "\f879";
    font-family: "Font Awesome 6 free";
    font-weight: 900;
    padding-right: 0.2em;
    color: #bf212e;
    transform: rotate(110deg);
    display: inline-block;
}

/* モーダルウィンドウ表示中に記事本体を固定 */
body.fixed {
    position: fixed;
    width: 100%;
    height: 100%;
    left: 0;
}

/*----------------------------------------------------
	CONTACT
----------------------------------------------------*/
.contact_form {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 40px;
}

.contact_form dt,
.contact_form dd {
    padding: 15px;
    border-bottom: 1px solid #eee;
}

.contact_form dt {
    width: 20%;
    background: #fafafa;
    position: relative;
}

@media screen and (max-width: 767px) {
    .contact_form dt {
        width: 100%;
    }
}

.contact_form dt span {
    font-size: 1.4rem;
    position: absolute;
    right: 10px;
    background-color: #f06664;
    color: #fff;
    padding: 2px 5px;
    border-radius: 5px;
}

.contact_form dd {
    width: 80%;
}

@media screen and (max-width: 767px) {
    .contact_form dd {
        width: 100%;
    }
}

.contact_form input[type=text],
.contact_form textarea {
    width: 100%;
    border-style: none;
    border: 1px solid #ccc;
}

.contact_form select {
    padding: 5px;
}

.pp_box {
    width: 80%;
    height: 300px;
    box-sizing: border-box;
    overflow-y: scroll;
    border: 1px solid #ccc;
    padding: 20px;
    margin: 0 auto 40px;
}

.pp_box p {
    border-top: 1px solid #eee;
    padding: 15px 0;
}

.pp_box p span {
    display: block;
    font-weight: 700;
}

.accept {
    padding: 20px;
    background: #fafafa;
    text-align: center;
    margin-bottom: 40px;
}

.wpcf7-submit,
.wpcf7-previous {
    width: 240px;
    margin: 0 auto;
    display: block;
    border: 1px solid #f06664;
    border-radius: 30px;
    font-size: 2.2rem;
    background: #f06664;
    color: #fff;
    padding: 10px;
    transition: all 0.3s;
}

.wpcf7-submit:hover,
.wpcf7-previous:hover {
    background-color: #fff;
    color: #f06664;
}

.wpcf7-previous {
    background: #fff;
    color: #ccb764;
    border: 1px solid #ccb764;
    transition: all 0.3s;
}

.wpcf7-previous:hover {
    background: #ccb764;
    color: #fff;
}

/*----------------------------------------------------
MV anime_slider
----------------------------------------------------*/
.anime_slider__contents {
    position: relative;
    height: 100%;
    display: flex;
    overflow: hidden;
}

.anime_slider__contents > li {
    width: 100%;
    transition: all 0.5s;
    display: none;
}

.anime_slider__contents > li.active {
    opacity: 1;
    pointer-events: auto;
    display: block;
}

.anime_slider__contents > li .inner {
    max-width: 1465px;
    margin: 0 auto;
    height: 545px;
    transition: all 0.3s;
}

@media screen and (max-width: 1100px) {
    .anime_slider__contents > li .inner {
        padding: 0;
        height: auto;
    }
}

.anime_slider__contents .anime_slider__content01 .inner {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
}

.anime_slider__contents .anime_slider__content01__l {
    max-width: 355px;
    width: 100%;
    position: relative;
    z-index: 2;
}

.anime_slider__contents .anime_slider__content01__l__inner {
    overflow: hidden;
    background: #faf9f5;
    border-radius: 26px;
    position: relative;
    height: 100%;
}

@media screen and (max-width: 1100px) {
    .anime_slider__contents .anime_slider__content01__l__inner {
        padding-left: 10px;
    }
}

.anime_slider__contents .anime_slider__content01__mainLead {
    padding-top: 45px;
    text-align: center;
}

@media screen and (max-width: 1100px) {
    .anime_slider__contents .anime_slider__content01__mainLead {
        width: 50%;
    }
}

.anime_slider__contents .anime_slider__content01__subLead {
    margin-top: 30px;
    text-align: center;
}

@media screen and (max-width: 1100px) {
    .anime_slider__contents .anime_slider__content01__subLead {
        width: 38%;
    }
}

.anime_slider__contents .anime_slider__content01__deco1 {
    position: absolute;
    bottom: 0;
    left: 0;
}

@media screen and (max-width: 1100px) {
    .anime_slider__contents .anime_slider__content01__deco1 {
        left: initial;
        width: 60%;
        right: 0;
    }
}

.anime_slider__contents .anime_slider__content01__deco2 {
    position: absolute;
    bottom: -33px;
    right: -132px;
}

@media screen and (max-width: 1100px) {
    .anime_slider__contents .anime_slider__content01__deco2 {
        width: 30%;
    }
}

.anime_slider__contents .anime_slider__content01__deco3 {
    position: absolute;
    top: 45px;
    right: -13px;
}

.anime_slider__contents .anime_slider__content01__deco4 {
    position: absolute;
    top: 355px;
    left: -20px;
}

@media screen and (max-width: 1100px) {
    .anime_slider__contents .anime_slider__content01__deco4 {
        display: none;
    }
}

.anime_slider__contents .anime_slider__content01__r {
    position: relative;
}

.anime_slider__contents .anime_slider__content01__mv {
    position: relative;
}

.anime_slider__contents .anime_slider__content01__mv::before {
    content: "";
    display: block;
    width: 27px;
    height: 27px;
    background: #fff;
    -webkit-clip-path: url(#clip01);
    clip-path: url(#clip01);
    transform: rotate(180deg);
    position: absolute;
    right: 0;
    top: 45px;
}

@media screen and (max-width: 1100px) {
    .anime_slider__contents .anime_slider__content01__mv::before {
        display: none;
    }
}

.anime_slider__contents .anime_slider__content01__movie {
    background: #fff;
    position: absolute;
    bottom: 0px;
    right: 0;
    padding: 17px 32px 10px;
    border-radius: 29px 0 0 0;
}

@media screen and (max-width: 1100px) {
    .anime_slider__contents .anime_slider__content01__movie {
        width: 50%;
    }
}

.anime_slider__contents .anime_slider__content01__movie::before,
.anime_slider__contents .anime_slider__content01__movie::after {
    content: "";
    display: block;
    width: 37px;
    height: 37px;
    background: #fff;
    -webkit-clip-path: url(#clip01);
    clip-path: url(#clip01);
    transform: rotate(-90deg);
    position: absolute;
}

.anime_slider__contents .anime_slider__content01__movie::before {
    top: -36px;
    right: 0;
}

@media screen and (max-width: 1100px) {
    .anime_slider__contents .anime_slider__content01__movie::before {
        display: none;
    }
}

.anime_slider__contents .anime_slider__content01__movie::after {
    left: -36px;
    bottom: -1px;
}

.anime_slider__contents .anime_slider__content01__movie__lead {
    font-size: 2.5rem;
    font-weight: bold;
    color: #7e5843;
    text-align: center;
    margin-bottom: 10px;
}

@media screen and (max-width: 1100px) {
    .anime_slider__contents .anime_slider__content01__movie__lead {
        font-size: 1.4rem;
    }
}

.anime_slider__contents .anime_slider__content01__movie__lead .red {
    color: #bf212e;
}

.anime_slider__contents .anime_slider__content01__movie__lead .wrap {
    display: inline-block;
    position: relative;
}

.anime_slider__contents .anime_slider__content01__movie__lead .wrap::before,
.anime_slider__contents .anime_slider__content01__movie__lead .wrap::after {
    content: "";
    display: block;
    width: 1px;
    height: 32px;
    background: #7e5843;
    position: absolute;
    bottom: 0;
}

@media screen and (max-width: 1100px) {

    .anime_slider__contents .anime_slider__content01__movie__lead .wrap::before,
    .anime_slider__contents .anime_slider__content01__movie__lead .wrap::after {
        height: 22px;
    }
}

.anime_slider__contents .anime_slider__content01__movie__lead .wrap::before {
    transform: rotate(-30deg);
    left: -30px;
}

@media screen and (max-width: 1100px) {
    .anime_slider__contents .anime_slider__content01__movie__lead .wrap::before {
        left: -10px;
    }
}

.anime_slider__contents .anime_slider__content01__movie__lead .wrap::after {
    transform: rotate(30deg);
    right: -30px;
}

@media screen and (max-width: 1100px) {
    .anime_slider__contents .anime_slider__content01__movie__lead .wrap::after {
        right: -10px;
    }
}

.anime_slider__contents .anime_slider__content01__movie__frame {
    border: 3px solid #4f2802;
    border-radius: 29px;
    overflow: hidden;
    box-shadow: 10px 10px 0 #ede9e6;
    aspect-ratio: 345/229;
    max-width: 345px;
}

.anime_slider__contents .anime_slider__content01__movie__frame iframe {
    width: 100%;
    height: 100%;
}

.anime_slider__contents .anime_slider__content01__movie__deco {
    display: inline-block;
    position: absolute;
    writing-mode: vertical-rl;
    color: #bf212e;
    transform: rotate(180deg);
    font-family: "Oswald", sans-serif;
    font-size: 1.2rem;
    bottom: 15px;
    right: 0;
}

.anime_slider__contents .anime_slider__content01.first .anime_slider__content01__l {
    opacity: 0;
}

.anime_slider__contents .anime_slider__content01.first .anime_slider__content01__mainLead {
    opacity: 0;
}

.anime_slider__contents .anime_slider__content01.first .anime_slider__content01__subLead {
    opacity: 0;
}

.anime_slider__contents .anime_slider__content01.first .anime_slider__content01__r {
    opacity: 0;
    pointer-events: none;
}

.anime_slider__contents .anime_slider__content01.active.first .anime_slider__content01__l {
    animation-name: anime_slider__content01__l;
    animation-duration: 0.3s;
    animation-fill-mode: forwards;
    animation-delay: 0.4s;
}

.anime_slider__contents .anime_slider__content01.active.first .anime_slider__content01__mainLead,
.anime_slider__contents .anime_slider__content01.active.first .anime_slider__content01__subLead {
    animation-name: anime_slider__content01__l;
    animation-duration: 0.5s;
    animation-fill-mode: forwards;
    animation-delay: 0.9s;
}

.anime_slider__contents .anime_slider__content01.active.first .anime_slider__content01__r {
    animation-name: anime_slider__content01__r;
    animation-duration: 0.7s;
    animation-fill-mode: forwards;
    animation-delay: 1.7s;
    animation-fill-mode: forwards;
}

@keyframes anime_slider__content01__l {
    0% {
        transform: translateY(50px);
        opacity: 0;
    }

    100% {
        transform: translateY(0px);
        opacity: 1;
    }
}

@keyframes anime_slider__content01__r {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

@keyframes animation-lead {
    0% {
        left: -100px;
        opacity: 0;
    }

    100% {
        left: 0px;
        opacity: 1;
    }
}

@keyframes animation-photo {
    0% {
        bottom: -520px;
    }

    100% {
        bottom: -50px;
    }
}

.anime_slider__pagenation {
    display: flex;
    gap: 17px;
    justify-content: center;
    margin-top: 20px;
}

@media screen and (max-width: 767px) {
    .anime_slider__pagenation {
        margin-bottom: 15px;
    }
}

.anime_slider__pagenation button {
    width: 15px;
    height: 15px;
    border-radius: 50%;
    padding: 0;
    background: #ccc;
    border: none;
    cursor: pointer;
}

.anime_slider__pagenation button.active {
    background: #bf212e;
}

@media (max-width: 769px) {
    .top_pc_slider {
        display: none !important;
    }
}

.top_sp_slider {
    display: none !important;
}

@media (max-width: 769px) {
    .top_sp_slider {
        display: block !important;
    }
}

.top_urgency_btn,
.top_urgency_btn02 {
    margin: 0 6.667vw;
    cursor: pointer;
    animation: animetion01 2s ease-out infinite;
}

.top_urgency_btn.on,
.top_urgency_btn02.on {
    animation: none;
    -webkit-animation: none;
}

@keyframes animetion01 {

    0%,
    40%,
    60%,
    80% {
        transform: scale(1);
        -webkit-transform: scale(1);
        -moz-transform: scale(1);
        -ms-transform: scale(1);
        -o-transform: scale(1);
    }

    50%,
    70% {
        transform: scale(0.98);
        -webkit-transform: scale(0.98);
        -moz-transform: scale(0.98);
        -ms-transform: scale(0.98);
        -o-transform: scale(0.98);
    }
}

.top_urgency_btn__title {
    color: #fff;
    font-size: 23px;
    font-size: 4.433vw;
    line-height: 1;
    font-weight: bold;
    text-align: center;
    background-color: #da0012;
    padding: 20px 0 14px;
    padding: 5.333vw 0 3.733vw;
    border-radius: 40px;
    border-radius: 10.667vw;
    -webkit-border-radius: 10.667vw;
    -moz-border-radius: 10.667vw;
    -ms-border-radius: 10.667vw;
    -o-border-radius: 10.667vw;
    box-shadow: 0px 3px 0px 0px #740101;
    box-shadow: 0px 0.8vw 0px 0px #740101;
}

.top_urgency_btn__accent {
    font-size: 14px;
    font-size: 3.733vw;
    color: #f7dd00;
    font-weight: normal;
    position: relative;
    display: inline-flex;
}

.top_urgency_btn__accent::after {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f054";
    display: inline-block;
    margin-left: 7px;
    margin-left: 1.867vw;
    font-size: 2.8vw;
    position: relative;
    top: 0.4vw;
}

.on .top_urgency_btn__accent::after {
    content: "\f139";
}

.top_urgency_content {
    display: none;
    margin-top: 15px;
    border: 1px solid #070707;
    background: #fffbf2;
    padding: 20px 10px 10px;
    border-radius: 5px;
}

.top_urgency_content.active {
    display: block;
}

.top_urgency_content > li {
    text-align: center;
}

.top_urgency_content > li:first-of-type {
    margin-bottom: 15px;
}

.top_sp_banner li {
    text-align: center;
    margin-top: 20px;
}

/*--------------------------------------
会員制度 ceremony
--------------------------------------*/
.column_ceremony_first {
    background: url(../img/ceremony/mvbg.jpg) center/cover no-repeat;
    padding: 80px 0;
    position: relative;
}

@media screen and (max-width: 767px) {
    .column_ceremony_first {
        background-position-x: -450px;
    }
}

.column_ceremony_first .txt_box {
    text-align: center;
    width: 40%;
}

@media screen and (max-width: 1100px) {
    .column_ceremony_first .txt_box {
        width: 70%;
    }
}

@media screen and (max-width: 767px) {
    .column_ceremony_first .txt_box {
        width: 100%;
        position: relative;
        display: block;
    }
}

.column_ceremony_first .txt_box .laber {
    font-size: 2.4rem;
    border: 3px solid #bf212e;
    padding: 10px 20px;
    border-radius: 30px;
    color: #bf212e;
    background: #fff;
    line-height: 1;
    margin-bottom: 5px;
    text-align: center;
    display: inline-block;
}

.column_ceremony_first .txt_box .title {
    font-size: clamp(3.6rem, 4vw, 4rem);
    font-family: "KiwiMaru", sans-serif;
    font-weight: 300;
    font-style: normal;
    font-weight: 700;
    margin-bottom: 25px;
    text-shadow: 2px 3px 3px rgba(0, 0, 0, 0.2);
    color: #4d4d4d;
}

@font-face {
    font-family: "KiwiMaru";
    src: url("../fonts/KiwiMaru-Light.ttf") format("truetype");
}

@media screen and (max-width: 767px) {
    .column_ceremony_first .txt_box .title {
        text-shadow: 3px 3px 4px #fff;
    }
}

.column_ceremony_first .txt_box .catch_lead {
    color: #503400;
    font-size: 1.8rem;
    position: relative;
}

@media screen and (max-width: 767px) {
    .column_ceremony_first .txt_box .catch_lead {
        text-align: left;
        font-size: 1.6rem;
    }
}

@media screen and (max-width: 767px) and (max-width: 767px) {
    .column_ceremony_first .txt_box .catch_lead {
        text-shadow: 3px 3px 4px #fff;
    }
}

.column_ceremony_first .txt_box .catch_lead::after {
    content: "";
    background: url(../img/ceremony/ceremony_card.png) center/cover no-repeat;
    position: absolute;
    top: -20px;
    right: -50px;
    width: 220px;
    height: 135px;
    transform: rotate(15deg);
}

@media screen and (max-width: 767px) {
    .column_ceremony_first .txt_box .catch_lead::after {
        top: 0;
        right: 0;
        width: 120px;
        height: 85px;
    }
}

.column_cbenefits_first .benefits_txt {
    text-align: center;
    background: #8b7f3d;
    padding: 15px 20px;
}

.column_cbenefits_first .benefits_txt .benefits {
    color: #fff;
    font-size: 2.4rem;
    text-align: center;
    font-weight: 700;
}

@media screen and (max-width: 767px) {
    .column_cbenefits_first .benefits_txt .benefits {
        font-size: 2rem;
    }
}

.column_cbenefits_first .benefits_txt .benefits span {
    font-size: 2.8rem;
    color: #bf212e;
    background: #fff;
    padding: 6px 7px;
    margin: 0 3px;
    border-radius: 10px;
}

@media screen and (max-width: 767px) {
    .column_cbenefits_first .benefits_txt .benefits span {
        font-size: 2.4rem;
    }
}

.column_explanation_first .explanation_txt {
    --x-gradient: linear-gradient(90deg, #333 0 35px, transparent 0 calc(100% - 35px), #333 calc(100% - 35px));
    --y-gradient: linear-gradient(#333 0 35px, transparent 0 calc(100% - 35px), #333 calc(100% - 35px));
    margin: 0.5rem;
    padding: 1rem;
    background-image: var(--x-gradient), var(--y-gradient), var(--x-gradient), var(--y-gradient);
    background-repeat: no-repeat;
    background-size: 100% 1px, 1px 100%, 100% 1px, 1px 100%;
    background-position: top, right, bottom, left;
}

.column_explanation_first .explanation_txt p {
    font-size: 1.8rem;
    padding: 10px 30px;
}

@media screen and (max-width: 767px) {
    .column_explanation_first .explanation_txt p {
        padding: 10px 15px;
        font-size: 1.6rem;
    }
}

.column_member-benefits_first .member-benefits_list li {
    border-bottom: 1px solid #614732;
    max-width: 900px;
    width: 100%;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    padding: 25px 0;
}

@media screen and (max-width: 767px) {
    .column_member-benefits_first .member-benefits_list li {
        padding: 20px 0;
        flex-wrap: wrap;
    }
}

.column_member-benefits_first .member-benefits_list li:last-child {
    border-bottom: none;
}

.column_member-benefits_first .member-benefits_list li .benefits_l {
    width: 30%;
    margin: 0;
}

@media screen and (max-width: 820px) {
    .column_member-benefits_first .member-benefits_list li .benefits_l {
        width: 100%;
        padding-bottom: 15px;
    }
}

.column_member-benefits_first .member-benefits_list li .benefits_l img {
    display: block;
    margin: 0 auto;
}

@media screen and (max-width: 767px) {
    .column_member-benefits_first .member-benefits_list li .benefits_l img {
        width: 100%;
    }
}

.column_member-benefits_first .member-benefits_list li .benefits_r {
    width: 60%;
    padding: 0 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    font-family: "KiwiMaru", sans-serif;
    font-weight: 300;
    font-style: normal;
    position: relative;
}

@font-face {
    font-family: "KiwiMaru";
    src: url("../fonts/KiwiMaru-Light.ttf") format("truetype");
}

@media screen and (max-width: 820px) {
    .column_member-benefits_first .member-benefits_list li .benefits_r {
        width: 100%;
        padding: 0;
    }
}

.column_member-benefits_first .member-benefits_list li .benefits_r .benefits {
    color: #BF212E;
    font-weight: bold;
    font-size: 3.4rem;
    position: relative;
}

@media screen and (max-width: 820px) {
    .column_member-benefits_first .member-benefits_list li .benefits_r .benefits {
        font-size: 2.7rem;
    }
}

.column_member-benefits_first .member-benefits_list li .benefits_r .benefits::before {
    content: "";
    position: absolute;
    left: -27px;
    top: -25px;
    width: 50px;
    height: 50px;
    background: url(../img/ceremony/member-benefits_item.png) center/cover no-repeat;
}

@media screen and (max-width: 767px) {
    .column_member-benefits_first .member-benefits_list li .benefits_r .benefits::before {
        left: -17px;
        top: -15px;
        width: 30px;
        height: 30px;
    }
}

.column_member-benefits_first .member-benefits_list li .benefits_r .benefits_r_txt {
    font-size: 2.4rem;
    line-height: 1.3;
    margin-left: 35px;
    width: 300px;
}

@media screen and (max-width: 820px) {
    .column_member-benefits_first .member-benefits_list li .benefits_r .benefits_r_txt {
        width: initial;
        font-size: 1.8rem;
    }
}

@media screen and (max-width: 767px) {
    .column_member-benefits_first .member-benefits_list li .benefits_r .benefits_r_txt {
        font-size: 1.5rem;
    }
}

@media (max-width: 330px) {
    .column_member-benefits_first .member-benefits_list li .benefits_r .benefits_r_txt {
        margin-left: 10px;
    }
}

.column_member-benefits_first .member-benefits_list li .benefits_r .benefits_r_txt span {
    font-size: 3.4rem;
    font-weight: bold;
    color: #FF0000;
}

@media screen and (max-width: 820px) {
    .column_member-benefits_first .member-benefits_list li .benefits_r .benefits_r_txt span {
        font-size: 2.7rem;
    }
}

@media screen and (max-width: 767px) {
    .column_member-benefits_first .member-benefits_list li .benefits_r .benefits_r_txt span {
        font-size: 2.3rem;
    }
}

.column_member-benefits_first .member-benefits_list li .benefits_r .benefits_r_kometxt {
    width: 100%;
    text-align: center;
    font-size: 1.3rem;
}

@media screen and (max-width: 767px) {
    .column_member-benefits_first .member-benefits_list li .benefits_r .benefits_r_kometxt {
        margin-top: 5px;
        text-align: left;
    }
}

.column_member-table {
    padding: 55px 0 15px;
    background: #faf9f5;
    position: relative;
}

@media screen and (max-width: 820px) {
    .column_member-table {
        padding: 60px 0 25px;
    }
}

.column_member-table .inner {
    position: static;
}

.column_member-table .top_area_deco {
    top: -27px;
}

.column_member-table .member-table {
    max-width: 900px;
    width: 100%;
    margin: 50px auto;
}

@media screen and (max-width: 767px) {
    .column_member-table .member-table {
        margin: 50px auto 0;
    }
}

.column_member-table .member-table tr {
    font-size: 1.8rem;
    font-weight: bold;
}

@media screen and (max-width: 767px) {
    .column_member-table .member-table tr {
        font-size: 1.6rem;
        display: flex;
        flex-direction: column;
    }
}

.column_member-table .member-table tr .member-table_l {
    width: 30%;
    color: #fff;
    background: #A39080;
    text-align: center;
    padding: 45px 20px;
}

@media screen and (max-width: 767px) {
    .column_member-table .member-table tr .member-table_l {
        width: 100%;
        padding: 10px 20px;
    }
}

.column_member-table .member-table tr .member-table_r {
    width: 70%;
    background: #fff;
    border: 1px solid #9F8D7D;
    padding-left: 20px;
}

@media screen and (max-width: 767px) {
    .column_member-table .member-table tr .member-table_r {
        width: 100%;
        padding: 15px 20px;
    }
}

.column_member-table .member-table tr .member-table_r p {
    font-size: 1.6rem;
}

.column_member-special {
    padding-top: 50px;
}

@media screen and (max-width: 767px) {
    .column_member-special {
        padding-top: 25px;
    }
}

@media screen and (max-width: 767px) {
    .column_member-flow {
        padding-bottom: 0;
    }
}

.column_member-flow .flow_list {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-top: 50px;
}

.column_member-flow .flow_list li {
    width: calc(33.3333333333% - 20px);
    display: flex;
    flex-direction: column;
}

@media screen and (max-width: 820px) {
    .column_member-flow .flow_list li {
        max-width: 550px;
        width: 100%;
        margin: 0 auto 40px;
    }
}

@media screen and (max-width: 767px) {
    .column_member-flow .flow_list li:last-child {
        margin-bottom: 0;
    }
}

.column_member-flow .flow_list li .flow_txt_inner {
    flex: 1 auto;
    border: 2px solid #1F8800;
    padding: 60px 25px 30px;
    position: relative;
}

@media screen and (max-width: 767px) {
    .column_member-flow .flow_list li .flow_txt_inner {
        padding: 40px 20px 20px;
    }
}

.column_member-flow .flow_list li .flow_txt_inner::before {
    background-color: #fff;
    font-size: clamp(2rem, 4vw, 2.5rem);
    text-align: center;
    font-weight: 700;
    color: #fff;
    background: #1F8800;
    padding: 5px 30px;
    border-radius: 30px;
    position: absolute;
    top: -28px;
    left: 50%;
    transform: translateX(-50%);
    max-width: 230px;
    width: 100%;
}

@media screen and (max-width: 767px) {
    .column_member-flow .flow_list li .flow_txt_inner::before {
        max-width: 220px;
    }
}

.column_member-flow .flow_list li .flow_txt_inner.flow_txt_step-1::before {
    content: "STEP01";
}

.column_member-flow .flow_list li .flow_txt_inner.flow_txt_step-2::before {
    content: "STEP02";
}

.column_member-flow .flow_list li .flow_txt_inner.flow_txt_step-3::before {
    content: "STEP03";
}

.column_member-flow .flow_list li .flow_txt_inner p {
    font-size: 2rem;
}

@media screen and (max-width: 767px) {
    .column_member-flow .flow_list li .flow_txt_inner p {
        font-size: 1.8rem;
    }
}

.column_member-flow .flow_list li .flow_txt_inner .flow_s-txt {
    font-size: 1.4rem;
}

.column_member-flow .flow_list li .flow_txt_inner .flow_contact {
    margin-top: 20px;
    text-align: center;
}

.column_member-flow .flow_list li .flow_txt_inner .flow_contact .flow_contact__club {
    display: block;
    color: #fff;
    font-weight: 600;
    background: #bf212e;
    padding: 5px 10px;
    border-radius: 15px;
    border-bottom: 5px solid #9f000c;
    font-size: 2.4rem;
}

.column_member-flow .flow_list li .flow_txt_inner .flow_contact .flow_contact__tel {
    font-family: "Oswald", sans-serif;
    display: block;
    color: #bf212e;
    font-size: clamp(3.8rem, 4vw, 4rem);
    margin-top: 10px;
    white-space: nowrap;
}

@media (max-width: 330px) {
    .column_member-flow .flow_list li .flow_txt_inner .flow_contact .flow_contact__tel {
        font-size: 3rem;
    }
}

.column_member-flow .flow_list li .flow_txt_inner .flow_contact .flow_contact__tel:before {
    content: "\f2a0";
    font-family: "Font Awesome 6 free";
    font-weight: 700;
    padding-right: 0.2em;
}

/*---------------------------------------------新規記述-----------------------------------------------------------*/
.site_header {
    border-top: 15px solid #bf212e;
    border-left: 18px solid #bf212e;
    border-right: 18px solid #bf212e;
    position: relative;
}

@media screen and (max-width: 767px) {
    .site_header {
        border-left: 9px solid #bf212e;
        border-right: 9px solid #bf212e;
    }
}

.site_header::before {
    content: "";
    display: block;
    width: 26px;
    height: 26px;
    background: #bf212e;
    position: absolute;
    -webkit-clip-path: url(#clip01);
    clip-path: url(#clip01);
    transform: rotate(90deg);
    top: -1px;
    left: -1px;
}

@media screen and (max-width: 767px) {
    .site_header::before {
        top: 0;
        left: 0;
    }
}

.header_inner {
    max-width: 1450px;
    padding-right: 295px;
    padding-bottom: 15px;
    margin: 17px auto 0;
    display: flex;
    justify-content: space-between;
    position: relative;
}

@media only screen and (max-width: 1500px) {
    .header_inner {
        padding-left: 25px;
    }
}

@media only screen and (max-width: 1280px) {
    .header_inner {
        padding-right: 266px;
    }
}

@media screen and (max-width: 1100px) {
    .header_inner {
        padding-left: 15px;
        padding-right: 0px;
        padding-bottom: 8px;
    }
}

.header_logo {
    max-width: 183px;
    width: 100%;
}

@media screen and (max-width: 1100px) {
    .header_logo {
        max-width: 135px;
        margin-top: -20px;
    padding-bottom: 30px;
    }
}

@media only screen and (max-width: 355px) {
    .header_logo {
        max-width: 115px;
    }
}

.header_logo a {
    display: inline-block;
    height: 100%;
    padding-top: 4px;
}



.header_logo a img {
    width: 100%;
}

.header_buttons {
    display: flex;
    justify-content: center;
    margin-left: auto;
    margin-right: 15px;
    -moz-column-gap: 5px;
    column-gap: 5px;
    padding-top: 18px;
}

@media only screen and (max-width: 1320px) {
    .header_buttons {
        margin-right: 5px;
        
    }
}

@media screen and (max-width: 1100px) {
    .header_buttons {
        margin-right: 65px;
        position: absolute;
        bottom: 6px;
        padding-top: 0px;
        row-gap: 3px;
    }
}

.header_buttons > li {
    display: inline-block;
}

@media screen and (max-width: 1100px) {
    .header_buttons > li {
        width: auto;
        display: flex;
    }

    .header_buttons > li:nth-of-type(2) a {
        padding-top: 3px;
    }
}

.header_buttons a {
    display: inline-block;
    color: #af111e;
    font-size: 1.6rem;
    font-weight: bold;
    text-align: center;
    line-height: 1;
    padding: 6px 5px;
    min-width: 110px;
    border: 1px solid #af111e;
    border-radius: 3px;
}


.header_buttons:nth-child(1) a{
    min-width: 70px;
}
.header_buttons:nth-child(2) a{
    min-width: 80px;
}

@media only screen and (max-width: 1280px) {
    .header_buttons a {
        min-width: 80px;
    }
}

@media screen and (max-width: 1170px) {
    .header_buttons a {
        font-size: 1.2rem;
    }
}

@media screen and (max-width: 1100px) {
    .header_buttons a {
        width: auto;
        font-size: 1.2rem;
        height: 100%;
        min-width: 0;
        line-height: 1.2;
        padding: 3px 3px;
    }
}

@media only screen and (max-width: 333px) {
    .header_buttons a {
        padding: 6px 5px;
    }
}

.header_buttons a:hover {
    background: #af111e;
    color: #fff;
    opacity: 1;
}

@media screen and (max-width: 1100px) {
    .header_buttons .active {
        display: none;
    }
}

.header_buttons .active a {
    background: #af111e;
    color: #fff;
}

.header_buttons .active a:hover {
    background: #fff;
    color: #af111e;
}

.header_tel {
    line-height: 1;
    text-align: center;
}

@media screen and (max-width: 1100px) {
    .header_tel {
        display: none;
    }
}

.header_tel a {
    color: #bf212e;
    font-size: 1.5rem;
}

@media screen and (max-width: 1170px) {
    .header_tel a {
        font-size: 1.2rem;
    }
}

.header_tel .num {
    font-family: "Oswald", sans-serif;
    font-size: 3.1rem;
    display: block;
    font-weight: bold;
    margin-top: 4px;
}

@media screen and (max-width: 1300px) {

    .header_tel .num {
        font-size: 2.4rem;
    }
}

.header_tel .tel_anime {
    padding-right: 4px;
}

.header_tel .tel_anime svg {
    width: 27px;
    height: 25px;
    fill: #bf212e;
}

.header_document {
    background: #bf212e;
    position: absolute;
    padding-top: 20px;
    padding-bottom: 5px;
    padding-left: 20px;
    top: -34px;
    right: 0;
}
@media screen and (max-width: 1240px) {
    .header_document {
        padding-bottom: 15px;
    }
}
@media screen and (max-width: 1100px) {
    .header_document {
        display: none;
    }
}

.header_document::before {
    content: "";
    display: block;
    width: 61px;
    height: 61px;
    background: #bf212e;
    -webkit-clip-path: url(#clip01);
    clip-path: url(#clip01);
    transform: rotate(180deg);
    position: absolute;
    left: -88px;
    top: 17px;
}

.header_document::after {
    content: "";
    display: block;
    width: calc(50vw - 725px);
    height: 100%;
    background: #bf212e;
    position: absolute;
    right: calc(726px - 50vw);
    bottom: 0;
}

.header_document a {
    color: #fff;
    font-size: 2.2rem;
    text-align: center;
    padding: 0 15px;
    display: inline-block;
    line-height: 1;
}

.header_document span {
    display: block;
    color: #bf212e;
    background: #fff;
    border-radius: 26px;
    padding: 4px 15px;
    font-size: 1.3rem;
    margin-bottom: 5px;
}

.header_document i {
    position: absolute;
    right: 0;
    top: 43px;
    font-size: 1.4rem;
}

.header_document__img {
    position: absolute;
    top: 10px;
    left: -78px;
}

.header_nav {
    position: absolute;
    bottom: -46px;
    right: 0;
    display: inline-block;
    background: #fff;
    z-index: 2;
    padding-top: 15px;
    padding-bottom: 20px;
    padding-left: 30px;
    padding-right: calc(50vw + 205px - 740px);
    border-radius: 0 0 0 20px;
    letter-spacing: 1.6px;
}

@media only screen and (max-width: 1500px) {
    .header_nav {
        padding-right: 210px;
    }
}

@media screen and (max-width: 1100px) {
    .header_nav {
        display: none;
    }
}

.header_nav::before {
    content: "";
    display: block;
    width: 29px;
    height: 29px;
    background: #fff;
    -webkit-clip-path: url(#clip01);
    clip-path: url(#clip01);
    transform: rotate(180deg);
    position: absolute;
    left: -28px;
    bottom: 18px;
}

.header_nav::after {
    content: "";
    display: block;
    width: 36px;
    height: 36px;
    background: #bf212e;
    -webkit-clip-path: url(#clip01);
    clip-path: url(#clip01);
    transform: rotate(180deg);
    position: absolute;
    right: -1px;
    top: -16px;
}

.header_nav ul {
    display: flex;
    justify-content: space-between;
    gap: 37px;
}

.header_nav ul a {
    display: inline-block;
    font-size: 1.6rem;
    padding-right: 25px;
    position: relative;
}

.header_nav ul a::after {
    content: "";
    display: block;
    width: 13px;
    height: 13px;
    background: #bf212e;
    border-radius: 50%;
    position: absolute;
    right: 0;
    top: 6px;
    z-index: 1;
}

.header_nav ul i {
    position: absolute;
    font-size: 1rem;
    color: #fff;
    right: 3px;
    top: 7px;
    z-index: 2;
    transform: scale(0.7);
}

@media screen and (max-width: 767px) {
    .column_hall_staff {
        padding-top: 0;
    }
}

/*------グロナビ プルダウン-----------------------------*/
.header_nav .tgl_menu {
    display: none;
    position: absolute;
    left: 0;
    top: 40px;
    z-index: 100;
    width: 100%;
    padding: 15px 20px;
    border-radius: 0 0 20px 20px;
    background: #fff;
}

.header_nav .tgl_menu:after {
    content: "";
    border: none;
}

.header_nav .tgl_menu .dwn_menu {
    flex-wrap: wrap;
    width: 100%;
    gap: 5px;
}

.header_nav .tgl_menu .dwn_menu li {
    border: none;
}

.header_nav .tgl_menu .dwn_menu li a {
    font-size: 1.2rem;
    line-height: 30px;
    color: #333;
    padding-right: 0;
}

.header_nav .tgl_menu .dwn_menu li a p {
    font-size: 1.5rem;
    padding-top: 0.5em;
    text-align: center;
    display: inline-block;
}

.header_nav .tgl_menu .dwn_menu li a p span {
    display: inline-block;
    display: block;
}

.header_nav .tgl_menu .dwn_menu li a p span img {
    display: inline-block;
    vertical-align: middle;
    margin: 0 auto;
}

.header_nav .tgl_menu.w100 {
    height: auto;
}

.header_nav .tgl_menu.w100 li {
    width: calc(33.3333333333% - 10px);
}

.header_nav .tgl_menu.w100 .dwn_menu {
    justify-content: center;
}

.header_nav .tgl_menu.w100 .dwn_menu a {
    display: flex;
    flex-direction: column;
    text-align: center;
}

.header_nav .tgl_menu.w100 .dwn_menu a::after {
    display: none;
}

.header_nav .tgl_menu.tgl_area .tgl_area_flex {
    max-width: 750px;
    margin: 0 auto 0 0;
    display: flex;
}

.header_nav .tgl_menu.tgl_area .tgl_area_flex .tgl_area_l {
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    width: 27%;
}

.header_nav .tgl_menu.tgl_area .tgl_area_flex .tgl_area_l li {
    max-width: 185px;
    border: 1px solid #bf212e;
    border-radius: 10px;
    background: #fff;
}

.header_nav .tgl_menu.tgl_area .tgl_area_flex .tgl_area_l li:hover {
    background: #bf212e;
}

.header_nav .tgl_menu.tgl_area .tgl_area_flex .tgl_area_l li:hover a {
    color: #fff;
}

.header_nav .tgl_menu.tgl_area .tgl_area_flex .tgl_area_l li a {
    display: block;
    line-height: 1.3;
    font-size: 1.5rem;
    padding: 5px 10px;
}

.header_nav .tgl_menu.tgl_area .tgl_area_flex .tgl_area_l li a::after {
    display: none;
}

.header_nav .tgl_menu.tgl_area .tgl_area_flex .tgl_area_l .hall_all {
    position: relative;
    background: #bf212e;
}

.header_nav .tgl_menu.tgl_area .tgl_area_flex .tgl_area_l .hall_all::before {
    content: "";
    position: absolute;
    top: 3px;
    right: 0;
    background: url(../img/top/hall_search.png) center/cover no-repeat;
    width: 33px;
    height: 33px;
}

.header_nav .tgl_menu.tgl_area .tgl_area_flex .tgl_area_l .hall_all a {
    padding: 10px 10px;
    color: #fff;
}

.header_nav .tgl_menu.tgl_area .tgl_area_flex .tgl_area_r {
    width: 70%;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 15px;
}

.header_nav .tgl_menu.tgl_area .tgl_area_flex .tgl_area_r li {
    width: calc(33.3333333333% - 25px);
}

.header_nav .tgl_menu.tgl_area .tgl_area_flex .tgl_area_r li a {
    width: 100%;
    margin: 0 auto;
    padding-right: 0;
}

.header_nav .tgl_menu.tgl_area .tgl_area_flex .tgl_area_r li a::after {
    display: none;
}

.header_nav .tgl_menu.tgl_area .tgl_area_flex .tgl_area_r li a img {
    width: 150px;
    height: 80px;
    display: block;
    margin: 0 auto;
    -o-object-fit: cover;
    object-fit: cover;
}

.header_nav .tgl_menu.tgl_area .tgl_area_flex .tgl_area_r li a p {
    font-size: 1.2rem;
    text-align: center;
}

.header_nav .tgl_menu.tgl_area li {
    width: 100%;
}

.header_nav .tgl_menu.tgl_area li a {
    display: inline-block;
    text-align: left;
}

.header_nav .tgl_menu.tgl_plan {
    max-width: 700px;
    left: 100px;
}

.header_nav .pulldown ul:after {
    border: none;
}

.header_nav_hurry {
    position: absolute;
    right: calc(50vw - 740px);
    top: 0;
}

@media only screen and (max-width: 1500px) {
    .header_nav_hurry {
        right: 20px;
    }
}

.header_nav_hurry a {
    display: inline-block;
    height: 100%;
}

main {
    border-left: 18px solid #bf212e;
    border-right: 18px solid #bf212e;
}

@media screen and (max-width: 767px) {
    main {
        border-left: 9px solid #bf212e;
        border-right: 9px solid #bf212e;
    }
}

.sec_banner {
    padding: 40px 0;
}

@media screen and (max-width: 767px) {
    .sec_banner {
        padding: 20px 0 20px;
    }
}

.banner_list {
    max-width: 1100px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    gap: 10px;
}

@media screen and (max-width: 767px) {
    .banner_list {
        flex-wrap: wrap;
        gap: 5px;
    }
}

.banner_list > li {
    width: 48%;
}

@media screen and (max-width: 820px) {
    .banner_list > li {
        width: 100%;
        text-align: center;
    }
}

.sec_top_event {
    padding: 60px 0 60px;
    background: url("../img/common/bg_washi.jpg") repeat;
    position: relative;
}

@media screen and (max-width: 767px) {
    .sec_top_event {
        padding: 30px 0 25px;
    }

    .sec_top_event .btn_more {
        margin-top: -20px;
    }
}

.sec_top_event::before {
    content: "";
    width: 100%;
    height: 10px;
    display: block;
    background: url("../img/common/bg_wave_white.jpg") repeat-x;
    position: absolute;
    top: 0;
    left: 0;
}

.sec_title_plane {
    font-size: 3.4rem;
    text-align: center;
    color: #614732;
    font-family: "KiwiMaru", sans-serif;
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: "KiwiMaru";
    src: url("../fonts/KiwiMaru-Light.ttf") format("truetype");
}

@media screen and (max-width: 820px) {
    .sec_title_plane {
        font-size: 2.8rem;
    }
}

@media screen and (max-width: 767px) {
    .sec_title_plane {
        line-height: 1.4;
        font-size: 2.3rem;
    }
}

.sec_title_plane .mini {
    font-size: 0.8em;
}

.sec_title_plane.color_white {
    color: #fff;
}

@media screen and (max-width: 767px) {
    .swiper_event_wrapper {
        margin-top: -25px;
        margin-bottom: -30px;
    }
}

.swiper_event_list {
    overflow: hidden;
}

.event_list_sp .event_list {
    margin: 40px auto 45px;
    display: flex;
}

.event_list_sp .event_list > li {
    width: 32%;
}

.event_list_sp .event_list a {
    display: inline-block;
    width: 100%;
    height: 100%;
    border: 3px solid #fff;
    border-radius: 15px;
    overflow: hidden;
    position: relative;
}

@media screen and (max-width: 767px) {
    .event_list_sp .event_list a {
        height: 130px;
    }
}

.event_list_sp .event_list__img {
    height: 100%;
    width: 100%;
    aspect-ratio: 205/161;
}

.event_list_sp .event_list__img img {
    -o-object-fit: cover;
    object-fit: cover;
    height: 100%;
    width: 100%;
}

@media screen and (max-width: 767px) {
    .event_list_sp .event_list__img {
        display: none;
    }
}

.event_list_sp .event_list__textbox {
    position: absolute;
    background: #fff;
    border-radius: 15px;
    width: calc(100% - 30px);
    margin: 0 auto;
    left: 0;
    right: 0;
    bottom: 15px;
    padding: 12px 23px 23px;
}

@media screen and (max-width: 767px) {
    .event_list_sp .event_list__textbox {
        width: 100%;
        position: unset;
        height: 100%;
    }
}

.event_list_sp .event_list__date {
    font-size: 1.4rem;
    color: #c02633;
    letter-spacing: 1.3px;
}

.event_list_sp .event_list__cat {
    position: absolute;
    right: 23px;
    top: 12px;
    display: inline-block;
    font-size: 1.4rem;
    color: #fff;
    background: #050c97;
    border-radius: 20px;
    padding: 4px 15px;
    line-height: 1;
}

.event_list_sp .event_list__cat.area_all {
    background: #bb952c;
}

.event_list_sp .event_list__cat.area_kakogawa {
    background: #bf212e;
}

.event_list_sp .event_list__cat.area_akashi {
    background: #db514f;
}

.event_list_sp .event_list__cat.area_kobe {
    background: #47904f;
}

.event_list_sp .event_list__cat.area_takasago {
    background: #050c97;
}

.event_list_sp .event_list__title {
    margin-top: 10px;
    font-size: 1.6rem;
}

.event_list_sp {
    padding: 10px 0 50px;
}

@media screen and (max-width: 767px) {
    .event_list_sp {
        padding: 10px 0 30px;
    }
}

.event_inner_sp {
    display: flex;
    flex-direction: column;
}

.event_inner_sp .event_sp_iteme {
    margin-bottom: 10px;
}

.event_inner_sp .event_sp_iteme .event_list__flex {
    display: flex;
    align-items: center;
}

.event_inner_sp .event_sp_iteme .event_list__flex .event_list__cat {
    position: static;
    margin-left: 5px;
}

.event_inner_sp .event_list__textbox {
    padding: 12px 15px 12px;
}

.btn_more {
    text-align: center;
}

.btn_more a {
    font-size: 1.6rem;
    color: #614732;
    text-align: center;
    display: inline-block;
    min-width: 360px;
    border: 1px solid #614732;
    background: #fff;
    padding: 15px 0;
    position: relative;
    border-radius: 30px;
    box-shadow: 5px 5px 0 #c1bcb7;
    transition: all 0.5s;
}

@media screen and (max-width: 767px) {
    .btn_more a {
        min-width: 100%;
        padding: 15px;
    }
}

.btn_more a:hover {
    background: #614732;
    color: #fff;
    opacity: 1;
}

.btn_more a:hover i {
    color: #fff;
}

.btn_more i {
    position: absolute;
    top: 22px;
    right: 29px;
    transition: all 0.5s;
}

.sec_top_area__nav {
    padding: 65px 0 95px;
}

@media screen and (max-width: 767px) {
    .sec_top_area__nav {
        padding: 25px 0 50px;
    }
}

.sec_title_eng {
    padding-bottom: 20px;
    position: relative;
}

@media screen and (max-width: 820px) {
    .sec_title_eng {
        padding-bottom: 8px;
    }
}

.sec_title_eng .eng {
    display: block;
    font-size: 1.4rem;
    font-family: "Oswald", sans-serif;
    margin-top: 10px;
    letter-spacing: 2px;
}

@media screen and (max-width: 767px) {
    .sec_title_eng .eng {
        display: none;
    }
}

.sec_title_eng::after {
    content: "";
    position: absolute;
    display: block;
    background: #bf212e;
    width: 40px;
    height: 2px;
    bottom: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
}

.sec_title_eng.color_white::after {
    background: #fff;
}

@media screen and (max-width: 1100px) {
    .sec_title_spMini {
        font-size: 2.3rem;
    }

    .sec_title_spMini .mini {
        font-size: 2.3rem;
    }
}

@media screen and (max-width: 767px) {
    .sec_title_spMini .sp_mini {
        font-size: 2rem;
    }

    .sec_title_spMini .sp_big {
        font-size: 2.2rem;
    }
}

.tab_area {
    display: flex;
    justify-content: space-between;
    margin-top: 75px;
}

@media screen and (max-width: 820px) {
    .tab_area {
        flex-wrap: wrap;
        row-gap: 60px;
    }
}

@media screen and (max-width: 767px) {
    .tab_area {
        row-gap: 36px;
        margin-top: 30px;
    }
}

.tab_area > li {
    width: 23%;
    position: relative;
}

@media screen and (max-width: 820px) {
    .tab_area > li {
        width: 48%;
    }
}

@media screen and (max-width: 767px) {
    .tab_area > li {
        width: 100%;
    }
}

.tab_area > li span {
    font-size: 2rem;
    color: #fff;
    position: absolute;
    left: 5px;
    top: -30px;
    display: block;
    z-index: 2;
    line-height: 1.3;
}

@media screen and (max-width: 1100px) {
    .tab_area > li span {
        left: 0;
        top: -40px;
    }
}

@media screen and (max-width: 820px) {
    .tab_area > li span {
        left: 7px;
    }
}

@media screen and (max-width: 767px) {
    .tab_area > li span {
        font-size: 1.6rem;
        left: 8px;
        top: -15px;
    }
}

.tab_area a {
    display: inline-block;
    width: 100%;
    height: 100%;
    border: 2px solid #db514f;
    border-radius: 10px;
    padding: 13px 0;
    text-align: center;
    font-size: 2rem;
    background: #fff;
    box-shadow: 7px 7px 0 #f3f3f2;
}

@media screen and (max-width: 767px) {
    .tab_area a {
        padding: 9px 0;
        font-size: 1.8rem;
    }
}

.tab_area a:after {
    content: "";
    display: block;
    width: 67px;
    height: 67px;
    background: #db514f;
    border-radius: 10px;
    left: -7px;
    top: -33px;
    transform: rotate(45deg);
    z-index: 1;
    position: absolute;
}

@media screen and (max-width: 1100px) {
    .tab_area a:after {
        width: 55px;
        height: 55px;
    }
}

@media screen and (max-width: 820px) {
    .tab_area a:after {
        left: 0;
    }
}

@media screen and (max-width: 767px) {
    .tab_area a:after {
        width: 50px;
        height: 50px;
        left: 0px;
        top: -17px;
    }
}

.tab_area i {
    position: absolute;
    top: 26px;
    right: 24px;
    color: #e27270;
}

@media screen and (max-width: 767px) {
    .tab_area i {
        top: 20px;
        font-size: 1.4rem;
    }
}

.sec_top_area__halls {
    padding: 85px 0 95px;
    background: #faf9f5;
    position: relative;
}

@media screen and (max-width: 820px) {
    .sec_top_area__halls {
        padding: 30px 0 20px;
    }
}

.sec_top_area__halls .inner {
    position: static;
}

.sec_top_area__halls--pt {
    padding-top: 70px;
}

@media screen and (max-width: 820px) {
    .sec_top_area__halls--pt {
        padding-top: 30px;
    }
}

@media screen and (max-width: 767px) {
    .sec_top_area__halls--pt .sec_title_plane {
        margin-bottom: 20px;
    }
}

.sec_top_area__halls--pt .btn_more {
    margin-top: 50px;
}

@media screen and (max-width: 767px) {
    .sec_top_area__halls--pt .btn_more {
        margin-top: 30px;
    }
}

.top_area_deco {
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    top: -30px;
    text-align: center;
}

.top_area_title {
    font-size: 2.6rem;
    padding-left: 50px;
    letter-spacing: 2.3px;
}

@media screen and (max-width: 767px) {
    .top_area_title {
        font-size: 2.2rem;
        padding-left: 0;
    }
}

.top_area_title span {
    font-size: 1.2rem;
    display: block;
    font-family: "Oswald", sans-serif;
    margin-top: -4px;
    letter-spacing: 1.3px;
}

.top_area_title.color_kakogawa {
    background: url("../img/top/bg_top_area_title.png") no-repeat;
    background-position: 0px 18px;
}

@media screen and (max-width: 767px) {
    .top_area_title.color_kakogawa {
        background-position: 110px 18px;
    }
}

@media screen and (max-width: 767px) {
    .top_area_title.color_kakogawa {
        margin-top: 20px;
    }
}

.top_area_title.color_kakogawa span {
    color: #bf212e;
}

.top_area_title.color_takasago {
    background: url("../img/top/bg_top_area_title_takasago.png") no-repeat;
    background-position: 0px 18px;
}

@media screen and (max-width: 767px) {
    .top_area_title.color_takasago {
        background-position: 110px 18px;
    }
}

.top_area_title.color_takasago span {
    color: #050c97;
}

.top_area_title.color_kobe {
    background: url("../img/top/bg_top_area_title_kobe.png") no-repeat;
    background-position: 0px 18px;
}

@media screen and (max-width: 767px) {
    .top_area_title.color_kobe {
        background-position: 180px 18px;
    }
}

.top_area_title.color_kobe span {
    color: #47904f;
}

.top_area_title.color_akashi {
    background: url("../img/top/bg_top_area_title_akashi.png") no-repeat;
    background-position: 0px 18px;
}

@media screen and (max-width: 767px) {
    .top_area_title.color_akashi {
        background-position: 180px 18px;
    }
}

.top_area_title.color_akashi span {
    color: #db514f;
}

.top_area_list {
    display: flex;
    justify-content: left;
    margin-top: 20px;
    margin-bottom: 105px;
    gap: 50px;
}

@media screen and (max-width: 1100px) {
    .top_area_list {
        gap: 4%;
        flex-wrap: wrap;
        row-gap: 50px;
    }
}

@media screen and (max-width: 767px) {
    .top_area_list {
        row-gap: 30px;
        margin-bottom: 25px;
    }
}

.top_area_list:last-of-type {
    margin-bottom: 0;
}

.top_area_list > li {
    width: 32%;
    max-width: 400px;
}

@media screen and (max-width: 1100px) {
    .top_area_list > li {
        width: 48%;
    }
}

.top_area_list a {
    display: inline-block;
    width: 100%;
    height: 100%;
    position: relative;
}

.top_area_list__img {
    border-radius: 20px;
    aspect-ratio: 400/309;
    overflow: hidden;
    width: 100%;
    height: 100%;
}

@media screen and (max-width: 767px) {
    .top_area_list__img {
        height: 150px;
    }
}

.top_area_list__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.top_area_list__title {
    font-size: 2.2rem;
    position: relative;
    line-height: 1;
    letter-spacing: 2.3px;
}

@media screen and (max-width: 767px) {
    .top_area_list__title {
        font-size: 1.8rem;
        letter-spacing: 1.2px;
    }
}

.top_area_list__title::before {
    content: "";
    display: block;
    width: 15px;
    height: 15px;
    border-radius: 50%;
    position: absolute;
    top: 6px;
    left: -22px;
    background: #bf212e;
}

@media screen and (max-width: 767px) {
    .top_area_list__title::before {
        content: none;
    }
}

.top_area_list__access {
    font-size: 1.6rem;
    color: #bf212e;
    margin-top: 6px;
}

@media screen and (max-width: 767px) {
    .top_area_list__access {
        font-size: 1.5rem;
    }
}

.top_area_list__access span {
    display: inline-block;
    position: relative;
}

.top_area_list__access span::after {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background: #bf212e;
    position: absolute;
    left: 0;
    bottom: 0px;
}

@media screen and (max-width: 767px) {
    .top_area_list__access span::after {
        content: none;
    }
}

.top_area_list__textbox {
    background: #faf9f5;
    position: absolute;
    bottom: -1px;
    left: -1px;
    padding: 22px 0 0 47px;
    min-width: 290px;
    border-radius: 0 28px 0 0;
}

@media screen and (max-width: 767px) {
    .top_area_list__textbox {
        min-width: 0px;
        position: static;
        border-radius: 0;
        padding: 20px 5px 0 5px;
    }
}

.top_area_list__textbox:after,
.top_area_list__textbox:before {
    content: "";
    display: block;
    width: 30px;
    height: 30px;
    background: #faf9f5;
    -webkit-clip-path: url(#clip01);
    clip-path: url(#clip01);
    position: absolute;
}

@media screen and (max-width: 767px) {

    .top_area_list__textbox:after,
    .top_area_list__textbox:before {
        content: none;
    }
}

.top_area_list__textbox:after {
    right: -29px;
    bottom: 0px;
}

.top_area_list__textbox:before {
    left: 0px;
    top: -29px;
}

.top_area_list.color_takasago .top_area_list__title::before {
    background: #050c97;
}

.top_area_list.color_takasago .top_area_list__access {
    color: #050c97;
}

.top_area_list.color_takasago .top_area_list__access span::after {
    background: #050c97;
}

.top_area_list.color_kobe .top_area_list__title::before {
    background: #47904f;
}

.top_area_list.color_kobe .top_area_list__access {
    color: #47904f;
}

.top_area_list.color_kobe .top_area_list__access span::after {
    background: #47904f;
}

.top_area_list.color_akashi .top_area_list__title::before {
    background: #db514f;
}

.top_area_list.color_akashi .top_area_list__access {
    color: #db514f;
}

.top_area_list.color_akashi .top_area_list__access span::after {
    background: #db514f;
}

.sec_top_plan {
    padding: 45px 0 50px;
}

@media screen and (max-width: 767px) {
    .sec_top_plan {
        padding: 30px 0 25px;
    }
}

.sec_top_plan_bg {
    background: url("../img/common/bg_pink.jpg") repeat;
}

.plan_list {
    display: flex;
    justify-content: space-between;
    max-width: 1190px;
    margin: 35px auto 0;
}

@media screen and (max-width: 820px) {
    .plan_list {
        flex-wrap: wrap;
        row-gap: 25px;
    }
}

@media screen and (max-width: 767px) {
    .plan_list {
        margin-top: 25px;
    }
}

.plan_list > li {
    width: 32.5%;
    border-radius: 8px;
    overflow: hidden;
    background: #fff;
    box-shadow: 3px 3px 7px rgba(0, 0, 0, 0.1);
}

@media screen and (max-width: 820px) {
    .plan_list > li {
        width: 49%;
    }
}

@media screen and (max-width: 767px) {
    .plan_list > li {
        width: 100%;
    }
}

.plan_list a {
    display: flex;
    flex-direction: column;
    height: 100%;
    width: 100%;
}

.plan_list__lead {
    text-align: center;
    background: #db514f;
    color: #fff;
    font-size: 1.4rem;
    line-height: 1.3;
    padding: 8px;
}

.plan_list__inner {
    padding: 0 10px;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
}

.plan_list__title {
    font-size: 3.2rem;
    text-align: center;
    color: #db514f;
    line-height: 1;
    padding: 9px 0;
}

@media only screen and (max-width: 428px) {
    .plan_list__title {
        font-size: 2.8rem;
    }
}

.plan_list__img img {
    width: 100%;
    height: 100%;
}

.plan_list__flow {
    display: flex;
    justify-content: space-between;
    margin: 5px auto;
    width: 100%;
}

.plan_list__flow > li {
    width: 33%;
    border: 1px solid #a09494;
    color: #a09494;
    font-size: 1.4rem;
    padding: 5px 0;
    text-align: center;
    border-radius: 5px;
}

.plan_list__flow > li.in {
    color: #fff;
}

.plan_list__member {
    text-align: center;
    border: 1px solid #db514f;
    border-radius: 5px;
    padding: 5px 0;
    color: #db514f;
    line-height: 1;
    font-size: 2.4rem;
    font-weight: 700;
}

.plan_list__member span {
    font-size: 1.7rem;
    position: relative;
    bottom: 1px;
    font-weight: 500;
}

.plan_list__memberPrices {
    flex-grow: 1;
    margin-top: 5px;
    display: flex;
    justify-content: center;
    gap: 8px;
    align-items: flex-end;
}

.plan_list__memberPrices__notax {
    display: flex;
    color: #f21e2f;
    align-items: flex-end;
    line-height: 1;
}

.plan_list__memberPrices__notax__number {
    font-size: 4.9rem;
    font-family: "Oswald", sans-serif;
    display: inline-block;
    letter-spacing: -0.7px;
}

@media only screen and (max-width: 1024px) {
    .plan_list__memberPrices__notax__number {
        font-size: 3.7rem;
    }
}

@media only screen and (max-width: 428px) {
    .plan_list__memberPrices__notax__number {
        font-size: 3.9rem;
    }
}

@media only screen and (max-width: 345px) {
    .plan_list__memberPrices__notax__number {
        font-size: 3.4rem;
    }
}

.plan_list__memberPrices__notax__unit {
    font-size: 2rem;
    position: relative;
}

.plan_list__memberPrices__notax__unit span {
    position: absolute;
    font-size: 1.2rem;
    top: -14px;
    left: 0;
}

.plan_list__memberPrices__intax {
    line-height: 1;
}

.plan_list__memberPrices__intax__tax {
    font-size: 1.3rem;
    margin-bottom: 2px;
}

.plan_list__memberPrices__intax__number {
    font-size: 1.5rem;
}

.plan_list__memberPrices__intax__number span {
    font-size: 2rem;
    font-family: "Oswald", sans-serif;
}

.plan_list__normalPrice {
    text-align: center;
    font-size: 1.5rem;
    font-weight: bold;
    margin-bottom: 3px;
}

.plan_list__normalPrice .mini {
    font-size: 1.3rem;
    font-weight: normal;
}

.plan_list__normalPrice .num {
    font-size: 2rem;
    font-family: "Oswald", sans-serif;
    font-weight: normal;
}

.plan_list__click {
    text-align: center;
    background: #fcf3f3;
    color: #db514f;
    font-size: 1.3rem;
    padding: 5px 0;
}

.plan_list .direct_plan .plan_list__lead {
    background: #db514f;
}

.plan_list .direct_plan .plan_list__title {
    color: #db514f;
}

.plan_list .direct_plan .plan_list__flow > li.in {
    background: #db514f;
    border-color: #db514f;
}

.plan_list .direct_plan .plan_list__member {
    border-color: #db514f;
    color: #db514f;
}

.plan_list .direct_plan .plan_list__click {
    background: #fcf3f3;
    color: #db514f;
}

.plan_list .oneday_plan .plan_list__lead {
    background: #050c97;
}

.plan_list .oneday_plan .plan_list__title {
    color: #050c97;
}

.plan_list .oneday_plan .plan_list__flow > li.in {
    background: #050c97;
    border-color: #050c97;
}

.plan_list .oneday_plan .plan_list__member {
    border-color: #050c97;
    color: #050c97;
}

.plan_list .oneday_plan .plan_list__click {
    background: #f3f3f9;
    color: #050c97;
}

.plan_list .family_plan .plan_list__lead {
    background: #47904f;
}

.plan_list .family_plan .plan_list__title {
    color: #47904f;
}

.plan_list .family_plan .plan_list__flow > li.in {
    background: #47904f;
    border-color: #47904f;
}

.plan_list .family_plan .plan_list__member {
    border-color: #47904f;
    color: #47904f;
}

.plan_list .family_plan .plan_list__click {
    background: #f5f9f6;
    color: #47904f;
}

.sec_top_voice {
    background: url("../img/common/bg_washi.jpg") repeat;
    padding: 75px 0 60px;
}

@media screen and (max-width: 820px) {
    .sec_top_voice {
        padding: 25px 0 30px;
    }
}

@media screen and (max-width: 767px) {
    .sec_top_voice {
        padding: 25px 0;
    }
}

.sec_top_voice .note_text {
    text-align: center;
    font-size: 1.5rem;
    margin-top: 25px;
}

@media screen and (max-width: 767px) {
    .sec_top_voice .note_text {
        margin-top: 15px;
    }
}

@media screen and (max-width: 767px) {
    .swiper_voice_wrapper {
        margin-top: -25px;
    }
}

.swiper_voice_wrapper .swiper-pagination {
    position: static;
    margin: -20px auto 30px;
}

@media screen and (max-width: 767px) {
    .swiper_voice_wrapper .swiper-pagination {
        margin: -30px auto 15px;
    }
}

.swiper_voice_wrapper .swiper-pagination-bullet {
    width: 13px;
    height: 13px;
    background: none;
    opacity: 1;
    margin-left: 13px;
    border: 1px solid #614732;
}

.swiper_voice_wrapper .swiper-pagination-bullet:first-of-type {
    margin-left: 0;
}

.swiper_voice_wrapper .swiper-pagination-bullet-active {
    background: #614732;
    transform: scale(1.4);
}

.swiper_voice_list {
    overflow: hidden;
}

.voice_list {
    margin-top: 45px;
    margin-bottom: 35px;
}

.voice_list > li {
    width: 32%;
}

.voice_list a {
    display: inline-block;
    width: 100%;
    height: 100%;
    border: 5px solid #f4ecdd;
    border-radius: 18px;
    position: relative;
    overflow: hidden;
}

.voice_list__img {
    height: 100%;
    aspect-ratio: 203/183;
    margin: 0;
}

.voice_list__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.voice_list__textbox {
    position: absolute;
    background: #fff;
    width: calc(100% - 30px);
    height: 170px;
    margin: 0 auto;
    left: 0;
    right: 0;
    bottom: 15px;
    border-radius: 18px;
    padding: 12px 20px 15px;
}

.voice_list__info {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

@media only screen and (max-width: 1300px) {
    .voice_list__info {
        flex-wrap: wrap;
    }
}

.voice_list__info__cat {
    display: inline-block;
    background: #bf212e;
    padding: 4px 10px;
    min-width: 115px;
    text-align: center;
    border-radius: 30px;
    font-size: 1.4rem;
    color: #fff;
}

.voice_list__info__cat.area_kakogawa {
    background: #bf212e;
}

.voice_list__info__cat.area_takasago {
    background: #050c97;
}

.voice_list__info__cat.area_kobe {
    background: #47904f;
}

.voice_list__info__cat.area_akashi {
    background: #db514f;
}

.voice_list__info__date {
    font-size: 1.4rem;
    margin-right: 0px;
    margin-left: auto;
}

.voice_list__info__star {
    color: #f7de0f;
    margin-right: 0;
    margin-left: 0px;
    font-size: 2.1rem;
    letter-spacing: -1.2px;
     width: 100%;
}

@media only screen and (max-width: 1300px) {
    .voice_list__info__star {
        width: 100%;
        margin-left: 0;
        text-align: right;
    }
}

.voice_list__hall {
    margin-top: 10px;
    color: #614732;
    font-size: 1.5rem;
    font-weight: bold;
}

.voice_list__hall span {
    position: relative;
    display: inline-block;
}

.voice_list__hall span::after {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background: #614732;
    left: 0;
    bottom: 1px;
    position: absolute;
}

.voice_list__title {
    margin-top: 5px;
    font-size: 1.6rem;
}

.sec_top_feature__nav {
    padding: 70px 0 135px;
    background: linear-gradient(180deg, #b51f2d 0%, #b51f2d 40%, #faf9f5 40%, #faf9f5 100%);
}

@media screen and (max-width: 767px) {
    .sec_top_feature__nav {
        padding: 30px 0 75px;
        background: linear-gradient(180deg, #b51f2d 0%, #b51f2d 25%, #faf9f5 25%, #faf9f5 100%);
    }
}

.top_feature_nav {
    margin-top: 50px;
    display: flex;
    justify-content: space-between;
}

@media screen and (max-width: 1100px) {
    .top_feature_nav {
        row-gap: 100px;
        flex-wrap: wrap;
    }
}

@media screen and (max-width: 767px) {
    .top_feature_nav {
        margin-top: 45px;
        row-gap: 50px;
    }
}

.top_feature_nav > li {
    width: 32%;
    position: relative;
    transition: all 0.5s;
}

@media screen and (max-width: 1100px) {
    .top_feature_nav > li {
        width: 48%;
    }
}

@media only screen and (max-width: 590px) {
    .top_feature_nav > li {
        width: 100%;
    }
}

.top_feature_nav > li:hover {
    transform: translateY(-30px);
}

@media screen and (max-width: 767px) {
    .top_feature_nav > li:hover {
        transform: none;
    }
}

.top_feature_nav > li::before,
.top_feature_nav > li::after {
    content: "";
    display: block;
    width: 25px;
    height: 25px;
    border-right: 3px solid #bf212e;
    border-bottom: 3px solid #bf212e;
    transform: rotate(45deg);
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
}

@media screen and (max-width: 767px) {

    .top_feature_nav > li::before,
    .top_feature_nav > li::after {
        width: 15px;
        height: 15px;
    }
}

.top_feature_nav > li::before {
    bottom: -40px;
}

@media screen and (max-width: 767px) {
    .top_feature_nav > li::before {
        bottom: -15px;
    }
}

.top_feature_nav > li::after {
    bottom: -55px;
}

@media screen and (max-width: 767px) {
    .top_feature_nav > li::after {
        bottom: -25px;
    }
}

.top_feature_nav > li:nth-of-type(2) .top_feature_nav__textbox {
    padding-top: 42px;
    padding-bottom: 15px;
}

.top_feature_nav a {
    display: inline-block;
    width: 100%;
    height: 100%;
    position: relative;
}

.top_feature_nav a:hover {
    opacity: 1;
}

.top_feature_nav__num {
    width: 85px;
    height: 85px;
    border-radius: 50%;
    background: #fff;
    border: 2px dotted #614732;
    text-align: center;
    font-size: 2.2rem;
    color: #614732;
    padding-top: 23px;
    letter-spacing: 3px;
    display: block;
    position: absolute;
    left: 30px;
    top: -30px;
}

@media only screen and (max-width: 428px) {
    .top_feature_nav__num {
        width: 65px;
        height: 65px;
        font-size: 1.8rem;
        padding-top: 16px;
    }
}

@media screen and (max-width: 767px) {
    .top_feature_nav__img {
        height: 165px;
        overflow: hidden;
        border-radius: 20px;
    }

    .top_feature_nav__img img {
        width: 100%;
    }
}

.top_feature_nav__img img {
    border-radius: 20px 20px 20px 0;
}

.top_feature_nav__textbox {
    position: absolute;
    background: #faf9f5;
    padding-top: 28px;
    max-width: 310px;
    width: 100%;
    left: -1px;
    bottom: -1px;
    border-radius: 0 30px 0 0;
}

@media screen and (max-width: 767px) {
    .top_feature_nav__textbox {
        position: relative;
        max-width: 100%;
        left: 0;
        bottom: 0;
    }
}

.top_feature_nav__textbox:after,
.top_feature_nav__textbox:before {
    content: "";
    display: block;
    width: 30px;
    height: 30px;
    background: #faf9f5;
    -webkit-clip-path: url(#clip01);
    clip-path: url(#clip01);
    position: absolute;
}

@media screen and (max-width: 767px) {

    .top_feature_nav__textbox:after,
    .top_feature_nav__textbox:before {
        content: none;
    }
}

.top_feature_nav__textbox:after {
    right: -29px;
    bottom: 0;
}

.top_feature_nav__textbox:before {
    left: 0px;
    top: -29px;
}

.top_feature_nav__title {
    font-size: 2.1rem;
    line-height: 1.4;
    text-align: center;
    letter-spacing: 1.1px;
}

@media screen and (max-width: 767px) {
    .top_feature_nav__title {
        font-size: 1.8rem;
    }
}

.top_feature_nav__deco {
    position: absolute;
    top: 7px;
    left: 11px;
}

@media screen and (max-width: 767px) {
    .top_feature_nav__deco {
        left: 55px;
    }
}

@media screen and (max-width: 375px) {
    .top_feature_nav__deco {
        left: 25px;
    }
}

.sec_top_feature__01,
.sec_top_feature__02,
.sec_top_feature__03 {
    position: relative;
}

.sec_top_feature__01 .inner,
.sec_top_feature__02 .inner,
.sec_top_feature__03 .inner {
    position: static;
}

.sec_top_feature__01 .inner::before,
.sec_top_feature__02 .inner::before,
.sec_top_feature__03 .inner::before {
    content: "";
    display: block;
    width: 73px;
    height: 73px;
    border-radius: 9px;
    transform: rotate(45deg);
    background: #db514f;
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    top: -25px;
}

@media screen and (max-width: 767px) {

    .sec_top_feature__01 .inner::before,
    .sec_top_feature__02 .inner::before,
    .sec_top_feature__03 .inner::before {
        width: 56px;
        height: 56px;
    }
}

.sec_top_feature__01 {
    padding: 70px 0 100px;
}

@media screen and (max-width: 767px) {
    .sec_top_feature__01 {
        padding: 50px 0 45px;
    }
}

.top_feature_title_deco {
    display: inline-block;
    position: absolute;
    text-align: center;
    color: #fff;
    left: 0;
    right: 0;
    margin: 0 auto;
    top: -11px;
    font-size: 2.2rem;
    line-height: 1.1;
}

@media screen and (max-width: 767px) {
    .top_feature_title_deco {
        top: -14px;
        font-size: 1.8rem;
    }
}

.top_feature_title {
    font-size: 2.8rem;
    text-align: center;
}

@media screen and (max-width: 767px) {
    .top_feature_title {
        font-size: 2.3rem;
        line-height: 1.4;
    }
}

.top_feature_img {
    margin-top: 10px;
    text-align: center;
}

.top_feature_text {
    font-size: 1.5rem;
    text-align: center;
    margin-top: 20px;
    line-height: 2;
    letter-spacing: 2px;
}

@media screen and (max-width: 1100px) {
    .top_feature_text {
        width: 90%;
        margin: 20px auto 0;
    }
}

@media screen and (max-width: 767px) {
    .top_feature_text {
        width: 100%;
        text-align: left;
        margin-top: 15px;
    }

    .top_feature_text br {
        display: none;
    }
}

.sec_top_feature__02 {
    background: #faf9f5;
    padding: 70px 0 115px;
}

@media screen and (max-width: 767px) {
    .sec_top_feature__02 {
        padding: 50px 0 50px;
    }
}

.top_feature_stafflist {
    margin-top: 45px;
}

.top_feature_stafflist li img {
    width: 160px;
    height: 160px;
    -o-object-fit: cover;
    object-fit: cover;
    border-radius: 50%;
    display: block;
    margin: 0 auto;
}

@media screen and (max-width: 767px) {
    .top_feature_stafflist li img {
        max-width: 170px;
        max-height: 170px;
    }
}

.swiper_staff_wrapper {
    position: relative;
    max-width: 980px;
    margin: -20px auto 0;
}

@media screen and (max-width: 767px) {
    .swiper_staff_wrapper {
        margin-top: -40px;
    }
}

.swiper_staff_wrapper .swiper-button-prev {
    left: -60px !important;
    top: 55%;
}

@media screen and (max-width: 1100px) {
    .swiper_staff_wrapper .swiper-button-prev {
        left: -5px !important;
    }
}

.swiper_staff_wrapper .swiper-button-next {
    right: -60px !important;
}

@media screen and (max-width: 1100px) {
    .swiper_staff_wrapper .swiper-button-next {
        right: -5px !important;
    }
}

.swiper_staff_list {
    overflow: hidden;
}

.staff_name {
    margin-top: 10px;
    text-align: center;
}

.sec_top_feature__03 {
    padding: 65px 0 75px;
}

@media screen and (max-width: 767px) {
    .sec_top_feature__03 {
        padding: 50px 0 25px;
    }
}

.top_feature_support {
    margin: 40px auto 0;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    row-gap: 25px;
    max-width: 1100px;
}

@media screen and (max-width: 767px) {
    .top_feature_support {
        margin-top: 20px;
        row-gap: 10px;
    }
}

.top_feature_support > li {
    width: 23%;
    border: 1px solid #614732;
    background: #fbf8f6;
    padding: 15px 15px 8px;
    border-radius: 20px;
}

@media screen and (max-width: 767px) {
    .top_feature_support > li {
        width: 49%;
        padding: 8px 4px;
    }
}

.top_feature_support__img {
    text-align: center;
}

@media screen and (max-width: 767px) {
    .top_feature_support__img img {
        max-width: 80%;
    }
}

.top_feature_support__title {
    font-size: 1.7rem;
    text-align: center;
    margin-top: 10px;
    line-height: 1.5;
}

@media screen and (max-width: 767px) {
    .top_feature_support__title {
        font-size: 1.5rem;
    }
}

@media only screen and (max-width: 428px) {
    .top_feature_support__title br {
        display: none;
    }
}

.sec_top_faq {
    padding: 55px 0 70px;
    background: url("../img/common/bg_washi.jpg") repeat;
}

@media screen and (max-width: 767px) {
    .sec_top_faq {
        padding: 25px 0 25px;
    }
}

.sec_top_faq--pb {
    padding-bottom: 90px;
}

@media screen and (max-width: 767px) {
    .sec_top_faq--pb {
        padding-bottom: 60px;
    }
}

.title_faq {
    font-size: 2.8rem;
    font-family: "KiwiMaru", sans-serif;
    font-weight: 300;
    font-style: normal;
    margin-bottom: 30px;
}

@font-face {
    font-family: "KiwiMaru";
    src: url("../fonts/KiwiMaru-Light.ttf") format("truetype");
}

@media screen and (max-width: 767px) {
    .title_faq {
        font-size: 2.2rem;
        margin-bottom: 15px;
    }
}

.faq_list__q {
    background: #fff;
    border: 1px solid #614732;
    border-bottom: none;
}

.faq_list__q .faq_btn,
.faq_list__q .faq_btn_style {
    position: relative;
    display: inline-block;
    cursor: pointer;
    padding: 15px 65px 15px 75px;
    width: 100%;
}

.faq_list__q .title {
    position: absolute;
    left: 30px;
    top: 0px;
    color: #614732;
    font-size: 3.2rem;
    font-weight: 500;
    font-family: "Oswald", sans-serif;
}

.faq_list__q .icon {
    position: absolute;
    display: inline-block;
    right: 20px;
    top: 0px;
    padding: 16px 20px;
    cursor: pointer;
}

.faq_list__q .icon .fa-minus {
    display: none;
}

.faq_list__q .active {
    border-bottom: 1px solid #614732;
}

.faq_list__q .active .icon .fa-plus {
    display: none;
}

.faq_list__q .active .icon .fa-minus {
    display: inline-block;
}

.faq_list__q.faq_list__q_last {
    border-bottom: 1px solid #614732;
}

.faq_list__q.faq_list__q_last .active {
    border-bottom: none;
}

.faq_list__a {
    padding: 25px 65px 25px 75px;
    position: relative;
    display: none;
}

@media screen and (max-width: 767px) {
    .faq_list__a {
        padding-bottom: 0;
    }
}

.faq_list__a .title {
    position: absolute;
    left: 30px;
    top: 15px;
    color: #bf212e;
    font-size: 3.2rem;
    font-weight: 500;
    font-family: "Oswald", sans-serif;
}

.sec_top_knowledge {
    position: relative;
    padding: 50px 0 35px;
}

@media screen and (max-width: 767px) {
    .sec_top_knowledge {
        padding: 20px 0 20px;
    }
}

.sec_top_knowledge .inner {
    z-index: 2;
    max-width: 1100px;
}

.sec_top_knowledge::before {
    content: "";
    display: block;
    width: calc(100vw - 30px);
    height: 170px;
    position: absolute;
    top: 0;
    left: 0px;
    background: url("../img/common/bg_red.jpg") repeat;
}

@media screen and (max-width: 767px) {
    .sec_top_knowledge::before {
        width: calc(100vw - 18px);
    }
}

.title_knowledge {
    color: #fff;
    font-size: 2.8rem;
    font-family: "KiwiMaru", sans-serif;
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: "KiwiMaru";
    src: url("../fonts/KiwiMaru-Light.ttf") format("truetype");
}

@media screen and (max-width: 767px) {
    .title_knowledge {
        font-size: 2.1rem;
        line-height: 1.2;
    }
}

.title_knowledge .big {
    font-size: 3.4rem;
}

@media screen and (max-width: 767px) {
    .title_knowledge .big {
        font-size: 2.6rem;
    }
}

.btn_more_right {
    text-align: right;
    margin: -50px 0 25px;
}

@media screen and (max-width: 820px) {
    .btn_more_right {
        margin: 20px 0 25px;
    }
}

@media screen and (max-width: 767px) {
    .btn_more_right {
        margin-top: 10px;
    }
}

.btn_more_right a {
    display: inline-block;
    text-align: center;
    width: 100%;
    max-width: 205px;
    padding: 15px 0;
    font-size: 1.6rem;
    background: #fff;
    color: #614732;
    border: 1px solid #614732;
    position: relative;
    border-radius: 30px;
    transition: all 0.5s;
}

@media screen and (max-width: 767px) {
    .btn_more_right a {
        padding: 7px 0;
        font-size: 1.6rem;
    }
}

.btn_more_right a:hover {
    background: #614732;
    color: #fff;
    opacity: 1;
}

.btn_more_right a:hover i {
    color: #fff;
}

.btn_more_right i {
    position: absolute;
    right: 20px;
    top: 21px;
    transition: all 0.5s;
}

@media screen and (max-width: 767px) {
    .btn_more_right i {
        top: 13px;
    }
}

@media screen and (max-width: 767px) {
    .swiper_knowledge_wrapper {
        margin: 15px auto 20px;
    }
}

.swiper_knowledge_list {
    overflow: hidden;
}

.knowledge_list {
    display: flex;
}

.knowledge_list > li {
    width: 23.5%;
}

.knowledge_list a {
    display: inline-block;
    width: 100%;
    height: 100%;
}

.knowledge_list__title {
    font-size: 1.6rem;
    margin-top: 10px;
}

.swiper_banners_wrapper .swiper-button-next,
.swiper_banners_wrapper .swiper-button-prev {
    width: 32px !important;
}

.sec_top_bannerSlide {
    padding: 50px 0;
}

@media screen and (max-width: 767px) {
    .sec_top_bannerSlide {
        padding: 25px 0 35px;
    }
}

.swiper_banners_list {
    overflow: hidden;
}

.swiper_banners_list {
    max-width: 1220px;
    margin: 0 auto;
}

.slide_banners a {
    display: inline-block;
    width: 100%;
    text-align: center;
}

.slide_banners img {
    width: 100%;
}

@media screen and (max-width: 767px) {
    .slide_banners img {
        width: 87%;
    }
}

/*------area_detailページ------------------------------*/
.sec_area_mv {
    padding-bottom: 70px;
}

@media screen and (max-width: 767px) {
    .sec_area_mv {
        padding-bottom: 40px;
    }
}

@media screen and (max-width: 1100px) {
    .sec_area_mv .inner {
        padding: 0;
    }
}

@media screen and (max-width: 767px) {
    .sec_area_mv .inner .banner_list {
        padding: 0 15px;
    }
}

.area_mv {
    padding-top: 65px;
    margin-bottom: 25px;
    background: url(../img/area/area_mv.jpg) center/cover no-repeat;
}

@media screen and (max-width: 767px) {
    .area_mv {
        padding-top: 0;
    }
}

.area_mv .area_wrap {
    width: min(100% - 1.5em, 1150px);
    margin-inline: auto;
    display: flex;
    justify-content: center;
    position: relative;
}

.area_mv .area_wrap .area_mv_l {
    width: 65%;
    margin: 0 auto;
    padding: 33px 0 10px;
}

@media screen and (max-width: 1100px) {
    .area_mv .area_wrap .area_mv_l {
        width: 100%;
        padding: 22px 0 50px;
    }
}

@media screen and (max-width: 767px) {
    .area_mv .area_wrap .area_mv_l {
        padding: 12px 0 20px;
    }
}

.area_mv .area_wrap .area_mv_l .success {
    max-width: 430px;
    text-align: center;
    font-size: 2.7rem;
    border-radius: 35px;
    background: #fff;
    font-weight: bold;
    padding: 13px 10px;
    box-shadow: 6px 6px 10px 0px rgba(0, 0, 0, 0.3);
    line-height: 1.3;
}

@media screen and (max-width: 767px) {
    .area_mv .area_wrap .area_mv_l .success {
        width: 76%;
        font-size: 1.6rem;
        padding: 5px 10px;
    }
}

.area_mv .area_wrap .area_mv_l .success span {
    font-size: 3.4rem;
    color: #eb6160;
    font-family: Oswald, sans-serif;
}

@media screen and (max-width: 767px) {
    .area_mv .area_wrap .area_mv_l .success span {
        font-size: 2rem;
    }
}

.area_mv .area_wrap .area_mv_l h2 {
    font-size: 6.8rem;
    color: #bf212e;
    font-weight: bold;
    line-height: 0.8;
    padding: 35px 0 25px;
    text-shadow: 0px 0px 14px #fff;
}

@media screen and (max-width: 820px) {
    .area_mv .area_wrap .area_mv_l h2 {
        font-size: 6rem;
    }
}

@media screen and (max-width: 767px) {
    .area_mv .area_wrap .area_mv_l h2 {
        font-size: 3.2rem;
        line-height: 1;
        text-shadow: 0px 0px 18px #fff;
        padding: 15px 0 0;
    }
}

.area_mv .area_wrap .area_mv_l h2 span {
    font-size: 3.7rem;
    color: #333;
}

@media screen and (max-width: 767px) {
    .area_mv .area_wrap .area_mv_l h2 span {
        font-size: 1.8rem;
    }
}

.area_mv .area_wrap .area_mv_l h2 .mv_s-fz {
    font-size: 3rem;
    padding-top: 10px;
    display: inline-block;
}

@media screen and (max-width: 767px) {
    .area_mv .area_wrap .area_mv_l h2 .mv_s-fz span.fb {
        font-size: 2.8rem;
        padding-top: 10px;
        display: inline-block;
    }
}

.area_mv .area_wrap .area_mv_l h2 .mv_s-fz .fb_sp {
    font-size: 2.7rem;
}

@media screen and (max-width: 767px) {
    .area_mv .area_wrap .area_mv_l h2 .mv_s-fz .fb_sp {
        font-size: 2rem;
    }
}

.area_mv .area_wrap .area_mv_l .area_mv_tel {
    background: #bf212e;
    color: #fff;
    display: flex;
    justify-content: space-around;
    padding: 10px 20px;
}

@media screen and (max-width: 1100px) {
    .area_mv .area_wrap .area_mv_l .area_mv_tel {
        max-width: 720px;
    }
}

@media screen and (max-width: 820px) {
    .area_mv .area_wrap .area_mv_l .area_mv_tel {
        flex-direction: column;
        font-size: 1.4rem;
    }
}

@media screen and (max-width: 767px) {
    .area_mv .area_wrap .area_mv_l .area_mv_tel {
        display: none;
    }
}

@media screen and (max-width: 820px) {
    .area_mv .area_wrap .area_mv_l .area_mv_tel p {
        margin-right: auto;
        line-height: 1.3;
        padding-bottom: 10px;
    }
}

@media screen and (max-width: 767px) {
    .area_mv .area_wrap .area_mv_l .area_mv_tel p {
        padding-bottom: 0;
    }
}

.area_mv .area_wrap .area_mv_l .area_mv_tel .mv_tel {
    font-size: 6rem;
    color: #fff;
    font-family: Oswald, sans-serif;
    font-weight: bold;
    line-height: 1;
}

@media screen and (max-width: 820px) {
    .area_mv .area_wrap .area_mv_l .area_mv_tel .mv_tel {
        margin-right: auto;
    }
}

@media screen and (max-width: 767px) {
    .area_mv .area_wrap .area_mv_l .area_mv_tel .mv_tel {
        display: none;
    }
}

.area_mv .area_wrap .area_mv_r {
    margin-bottom: 0;
    display: flex;
}

@media screen and (max-width: 1100px) {
    .area_mv .area_wrap .area_mv_r {
        position: absolute;
        bottom: 0;
        right: 0;
    }
}

@media screen and (max-width: 820px) {
    .area_mv .area_wrap .area_mv_r {
        width: 25%;
    }
}

@media screen and (max-width: 767px) {
    .area_mv .area_wrap .area_mv_r {
        right: -20px;
        width: 28%;
    }
}

.area_mv .area_wrap .area_mv_r img {
    width: 100%;
}

.area_nav_tit {
    font-size: 2.8rem;
    color: #333;
    font-weight: bold;
    text-align: center;
    margin: 45px 0 35px;
    font-family: "KiwiMaru", sans-serif;
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: "KiwiMaru";
    src: url("../fonts/KiwiMaru-Light.ttf") format("truetype");
}

@media screen and (max-width: 767px) {
    .area_nav_tit {
        font-size: 2rem;
        margin: 20px 0 0;
    }
}

.area_nav_tit .catch {
    font-size: 5rem;
    color: #bf212e;
}

@media screen and (max-width: 767px) {
    .area_nav_tit .catch {
        font-size: 3.7rem;
        line-height: 1;
    }
}

.area_nav_tit .big {
    font-size: 3.5rem;
}

@media screen and (max-width: 767px) {
    .area_nav_tit .big {
        font-size: 3rem;
    }
}

.area_nav_tit .line {
    font-size: 3.5rem;
    background: linear-gradient(transparent 60%, #ffff00 100%);
}

@media screen and (max-width: 767px) {
    .area_nav_tit .line {
        font-size: 2.5rem;
        line-height: 1.4;
    }
}

.area_nav_list {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 45px 15px;
}

@media screen and (max-width: 820px) {
    .area_nav_list {
        padding: 0 10px;
        margin-top: 20px;
    }
}

@media screen and (max-width: 767px) {
    .area_nav_list {
        gap: 25px 5px;
    }
}

.area_nav_list > li {
    width: calc(33.3333333333% - 30px);
    background: #fff;
    box-shadow: 0px 3px 5px 0px rgba(0, 0, 0, 0.35);
    border-radius: 20px;
    padding: 15px 10px 30px;
    position: relative;
    transition: 0.3s;
}

@media screen and (min-width: 769px) {
    .area_nav_list > li:hover {
        transform: translateY(15px);
    }
}

@media screen and (max-width: 767px) {
    .area_nav_list > li {
        align-items: center;
        justify-content: center;
        display: flex;
    }
}

.area_nav_list > li::after {
    content: "";
    position: absolute;
    bottom: -13px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-right: 15px solid transparent;
    border-left: 15px solid transparent;
    border-top: 25px solid #bf212e;
    border-bottom: 0;
}

@media screen and (max-width: 767px) {
    .area_nav_list > li::after {
        bottom: -9px;
        border-right: 10px solid transparent;
        border-left: 10px solid transparent;
        border-top: 15px solid #bf212e;
    }
}

@media screen and (max-width: 767px) {
    .area_nav_list > li {
        padding: 10px 3px 13px;
        width: calc(33.3333333333% - 4px);
        margin: 0 auto;
        border-top: 2px solid #ebebeb;
    }
}

.area_nav_list__img {
    max-width: 150px;
    display: block;
    margin: 0 auto 10px;
}

@media screen and (max-width: 767px) {
    .area_nav_list__img {
        display: none;
    }
}

.area_nav_list__text {
    text-align: center;
    color: #333;
    font-size: 1.6rem;
    line-height: 1.4;
    font-family: "KiwiMaru", sans-serif;
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: "KiwiMaru";
    src: url("../fonts/KiwiMaru-Light.ttf") format("truetype");
}

@media screen and (max-width: 767px) {
    .area_nav_list__text {
        font-size: 1.2rem;
    }
}

.area_nav_list__text .big {
    font-size: 2.3rem;
    line-height: 1;
}

@media screen and (max-width: 1100px) {
    .area_nav_list__text .big {
        font-size: 2.6rem;
    }
}

@media screen and (max-width: 820px) {
    .area_nav_list__text .big {
        font-size: 2rem;
    }
}

@media screen and (max-width: 767px) {
    .area_nav_list__text .big {
        font-size: 1.5rem;
    }
}

.sec_area_staff {
    padding: 60px 0 50px;
    background: url("../img/common/bg_washi.jpg") repeat;
    position: relative;
}

@media screen and (max-width: 820px) {
    .sec_area_staff {
        padding: 30px 0;
    }

    .sec_area_staff .btn_more {
        margin-top: -20px;
    }
}

.sec_area_staff::before {
    content: "";
    width: 100%;
    height: 10px;
    display: block;
    background: url("../img/common/bg_wave_white.jpg") repeat-x;
    position: absolute;
    top: 0;
    left: 0;
}

.area_staff_title {
    text-align: center;
    font-size: 4.1rem;
    color: #614732;
    font-family: "KiwiMaru", sans-serif;
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: "KiwiMaru";
    src: url("../fonts/KiwiMaru-Light.ttf") format("truetype");
}

@media screen and (max-width: 820px) {
    .area_staff_title {
        font-size: 2.7rem;
        margin-bottom: 10px;
    }
}

.area_staff_lead {
    text-align: center;
    font-size: 2rem;
    line-height: 2.2;
    color: #614732;
}

@media screen and (max-width: 767px) {
    .area_staff_lead {
        font-size: 1.8rem;
    }
}

.sec_area_halls {
    padding: 10px 0 0px;
}

.area_halls_wrap_list > li {
    padding: 85px 0 70px;
    position: relative;
}

@media screen and (max-width: 820px) {
    .area_halls_wrap_list > li {
        padding: 30px 0;
    }
}

.area_halls_wrap_list > li:not(:first-child)::before {
    content: "";
    display: block;
    background: repeat-x url("../img/area/bg_dot_line.png");
    width: calc(100% - 100px);
    height: 3px;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
}

@media screen and (max-width: 767px) {
    .area_halls_wrap_list > li:not(:first-child)::before {
        width: calc(100% - 60px);
    }
}

.area_halls_main {
    display: flex;
    justify-content: space-between;
    margin-bottom: 20px;
    align-items: flex-start;
    flex-wrap: wrap;
}

@media screen and (max-width: 1100px) {
    .area_halls_main {
        padding: 0 20px;
    }
}

@media screen and (max-width: 767px) {
    .area_halls_main {
        margin-bottom: 25px;
    }
}

@media only screen and (max-width: 480px) {
    .area_halls_main {
        padding: 0 5px;
        margin-bottom: 20px;
    }
}

.area_halls_main__img {
    width: 35%;
    overflow: hidden;
    border-radius: 20px;
}

.area_halls_main__img img {
    width: 100%;
}

@media screen and (max-width: 820px) {
    .area_halls_main__img {
        width: 100%;
        margin-bottom: 20px;
    }
}

.area_halls_main__textbox {
    width: 63%;
}

@media screen and (max-width: 820px) {
    .area_halls_main__textbox {
        width: 100%;
    }
}

.area_halls_main__cat {
    display: inline-block;
    background: #bf212e;
    color: #fff;
    border-radius: 8px;
    padding: 9px 20px;
    margin-bottom: 10px;
    line-height: 1;
    font-size: 1.9rem;
}

@media screen and (max-width: 767px) {
    .area_halls_main__cat {
        margin-bottom: 3px;
        font-size: 1.6rem;
    }
}

.area_halls_main__title {
    font-size: 3rem;
    font-weight: bold;
    color: #bf212e;
    font-family: "KiwiMaru", sans-serif;
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: "KiwiMaru";
    src: url("../fonts/KiwiMaru-Light.ttf") format("truetype");
}

@media screen and (max-width: 767px) {
    .area_halls_main__title {
        margin-bottom: 7px;
        font-size: 2.7rem;
    }
}

.area_halls_main__detail {
    display: flex;
    flex-wrap: wrap;
    row-gap: 5px;
}

.area_halls_main__detail > dt {
    width: 150px;
    font-weight: bold;
    border-bottom: 1px solid #ddd;
    padding: 5px 0 5px 10px;
}

@media screen and (max-width: 767px) {
    .area_halls_main__detail > dt {
        width: 110px;
    }
}

.area_halls_main__detail > dd {
    width: calc(100% - 150px);
    border-bottom: 1px solid #ddd;
    padding: 5px 10px 5px 0;
}

@media screen and (max-width: 767px) {
    .area_halls_main__detail > dd {
        width: calc(100% - 110px);
    }
}

.area_halls_tag {
    display: flex;
    margin-bottom: 15px;
    gap: 10px;
    flex-wrap: wrap;
}

@media screen and (max-width: 820px) {
    .area_halls_tag {
        -moz-column-gap: 0px;
        column-gap: 0px;
        row-gap: 10px;
        flex-wrap: wrap;
        justify-content: left;
        -moz-column-gap: 2%;
        column-gap: 2%;
    }
}

@media screen and (max-width: 767px) {
    .area_halls_tag {
        justify-content: space-between;
        -moz-column-gap: 0px;
        column-gap: 0px;
        margin-bottom: 20px;
    }
}

.area_halls_tag > li {
    min-width: 180px;
    font-size: 1.7rem;
    text-align: center;
    padding: 5px;
    line-height: 1.2;
    border: 1px solid #614732;
    background: #fbf8f6;
    border-radius: 10px;
}

@media screen and (max-width: 820px) {
    .area_halls_tag > li {
        width: 32%;
        max-width: 100%;
        min-width: 0;
    }
}

@media screen and (max-width: 767px) {
    .area_halls_tag > li {
        font-size: 1.6rem;
        width: 49%;
    }
}

.area_halls_tag .icon {
    width: 22px;
    display: inline-block;
    margin-right: 5px;
}

@media screen and (max-width: 767px) {
    .area_halls_tag .icon {
        width: 18px;
    }
}

.area_halls_feature {
    background: #fffef4;
    padding: 35px 40px 25px;
    display: flex;
    justify-content: space-between;
    margin-bottom: 40px;
    align-items: flex-start;
    flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
    .area_halls_feature {
        padding: 20px;
        margin-bottom: 20px;
    }
}

@media only screen and (max-width: 480px) {
    .area_halls_feature {
        padding: 30px 15px;
    }
}

.area_halls_feature__img {
    width: 27%;
    overflow: hidden;
}

.area_halls_feature__img img {
    width: 100%;
    height: 100%;
    border-radius: 15px;
    -o-object-fit: cover;
    object-fit: cover;
}

@media screen and (max-width: 767px) {
    .area_halls_feature__img {
        width: 100%;
        margin-bottom: 25px;
    }
}

.area_halls_feature__img .halls_feature__manager {
    margin-top: 5px;
    text-align: center;
}

.area_halls_feature__textbox {
    width: 70%;
}

@media screen and (max-width: 767px) {
    .area_halls_feature__textbox {
        width: 100%;
    }
}

.area_halls_feature__title {
    font-size: 2.6rem;
    color: #3e210a;
    margin-bottom: 10px;
    font-family: "KiwiMaru", sans-serif;
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: "KiwiMaru";
    src: url("../fonts/KiwiMaru-Light.ttf") format("truetype");
}

@media only screen and (max-width: 480px) {
    .area_halls_feature__title {
        font-size: 2.2rem;
    }
}

.area_halls_feature__title .deco {
    display: inline-block;
    font-size: 3rem;
    margin-right: 15px;
    position: relative;
    padding: 0 13px;
}

@media only screen and (max-width: 480px) {
    .area_halls_feature__title .deco {
        font-size: 2.6rem;
        margin-right: 10px;
        padding: 0 10px;
    }
}

.area_halls_feature__title .deco::before,
.area_halls_feature__title .deco::after {
    content: "";
    display: block;
    width: 17px;
    height: 17px;
    border-radius: 2px;
    position: absolute;
}

@media only screen and (max-width: 480px) {

    .area_halls_feature__title .deco::before,
    .area_halls_feature__title .deco::after {
        width: 11px;
        height: 11px;
    }
}

.area_halls_feature__title .deco::before {
    border-top: 2px solid #db514f;
    border-left: 2px solid #db514f;
    top: 0;
    left: -5px;
}

@media only screen and (max-width: 480px) {
    .area_halls_feature__title .deco::before {
        left: 0;
    }
}

.area_halls_feature__title .deco::after {
    border-bottom: 2px solid #db514f;
    border-right: 2px solid #db514f;
    bottom: 3px;
    right: -5px;
}

@media only screen and (max-width: 480px) {
    .area_halls_feature__title .deco::after {
        right: 0;
    }
}

.sec_area_meeting {
    padding: 30px 0 0;
}

@media screen and (max-width: 767px) {
    .sec_area_meeting {
        padding-top: 20px;
    }
}

.sec_area_meeting .inner {
    position: relative;
    padding-top: 70px;
}

@media screen and (max-width: 767px) {
    .sec_area_meeting .inner {
        padding-top: 40px;
    }
}

.sec_area_meeting .inner::before {
    content: "";
    display: block;
    background: repeat-x url("../img/area/bg_dot_line.png");
    width: calc(100% - 100px);
    height: 3px;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
}

@media screen and (max-width: 767px) {
    .sec_area_meeting .inner::before {
        width: calc(100% - 60px);
    }
}

.area_meeting_main {
    padding: 0 50px 40px;
    background: rgba(254, 255, 226, 0.8);
    border-radius: 11px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
    margin-bottom: 25px;
}

@media screen and (max-width: 767px) {
    .area_meeting_main {
        padding: 15px 15px 20px;
    }
}

.area_meeting_main__title {
    font-size: 5rem;
    text-align: center;
    font-weight: bold;
    color: #45260d;
    position: relative;
    padding-top: 75px;
    line-height: 1.6;
    font-family: "KiwiMaru", sans-serif;
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: "KiwiMaru";
    src: url("../fonts/KiwiMaru-Light.ttf") format("truetype");
}

@media screen and (max-width: 767px) {
    .area_meeting_main__title {
        font-size: 3.2rem;
        letter-spacing: 5px;
        padding-top: 25px;
    }
}

.area_meeting_main__title .mini {
    display: block;
    font-size: 2rem;
    color: #c0212f;
    margin-bottom: -14px;
    letter-spacing: 1.5px;
}

@media screen and (max-width: 767px) {
    .area_meeting_main__title .mini {
        font-size: 1.7rem;
        line-height: 2;
    }
}

.area_meeting_main__title::before {
    content: "";
    display: block;
    background: no-repeat center/contain url("../img/area/area_meeting_main__title_deco.png");
    width: 80px;
    height: 40px;
    position: absolute;
    top: 25px;
    left: 0;
    right: 0;
    margin: 0 auto;
}

@media screen and (max-width: 767px) {
    .area_meeting_main__title::before {
        width: 50px;
        height: 18px;
        top: 5px;
    }
}

.area_meeting_main__shops {
    border: 1px dashed #707070;
    text-align: center;
    padding: 10px 0;
    color: #45260d;
    margin-bottom: 25px;
    display: flex;
    justify-content: center;
    -moz-column-gap: 15px;
    column-gap: 15px;
    flex-wrap: wrap;
    background: #fff;
}

.area_meeting_main__subtext {
    font-size: 1.8rem;
    color: #291010;
    text-align: center;
    margin-bottom: 15px;
}

.area_meeting_main__timebox {
    display: flex;
    max-width: 500px;
    border: 1px solid #c0212f;
    background: #c0212f;
    text-align: center;
    margin: 0 auto 40px;
    border-radius: 7px;
    overflow: hidden;
}

.area_meeting_main__unit {
    width: 35%;
    background: #fff;
    font-size: 2.6rem;
    font-weight: bold;
    color: #c0212f;
    padding-top: 5px;
}

@media screen and (max-width: 767px) {
    .area_meeting_main__unit {
        font-size: 1.8rem;
        padding-top: 6px;
    }
}

.area_meeting_main__time {
    width: 65%;
    font-size: 2.2rem;
    color: #fff;
}

@media screen and (max-width: 767px) {
    .area_meeting_main__time {
        font-size: 1.8rem;
    }
}

.area_meeting_main__time .num {
    font-size: 3rem;
}

@media screen and (max-width: 767px) {
    .area_meeting_main__time .num {
        font-size: 2.3rem;
    }
}

.area_meeting_main__date {
    display: flex;
    justify-content: center;
    -moz-column-gap: 35px;
    column-gap: 35px;
    margin-bottom: 40px;
    align-items: flex-end;
}

@media screen and (max-width: 820px) {
    .area_meeting_main__date {
        flex-wrap: wrap;
        gap: 5px;
    }
}

.area_meeting_main__date > li {
    font-size: 2.8rem;
    color: #45260d;
    line-height: 1.3;
    text-align: center;
    font-family: "KiwiMaru", sans-serif;
    font-weight: 300;
    font-style: normal;
    font-weight: bold;
    width: calc(25% - 4px);
}

@font-face {
    font-family: "KiwiMaru";
    src: url("../fonts/KiwiMaru-Light.ttf") format("truetype");
}

@media screen and (max-width: 820px) {
    .area_meeting_main__date > li {
        font-size: 1.5rem;
    }

    .area_meeting_main__date > li.area_meeting_main__date__title {
        font-size: 2.4rem;
        width: 100%;
    }
}

.area_meeting_main__date > li .big {
    font-size: 7rem;
    font-family: "Oswald", sans-serif;
    font-weight: 500;
}

@media screen and (max-width: 767px) {
    .area_meeting_main__date > li .big {
        font-size: 3.5rem;
    }
}

.area_meeting_main__date__title {
    position: relative;
    bottom: 10px;
}

@media screen and (max-width: 820px) {
    .area_meeting_main__date__title {
        width: 100%;
        text-align: center;
    }
}

.area_meeting_main__photo {
    display: flex;
    justify-content: space-between;
}

@media screen and (max-width: 767px) {
    .area_meeting_main__photo {
        flex-wrap: wrap;
        row-gap: 8px;
    }
}

.area_meeting_main__photo > li {
    width: 24%;
}

@media screen and (max-width: 767px) {
    .area_meeting_main__photo > li {
        width: 49%;
    }
}

.banner_list_100 > li {
    width: 100%;
    margin-bottom: 35px;
    text-align: center;
}

@media screen and (max-width: 767px) {
    .banner_list_100 > li {
        margin-bottom: 15px;
    }
}

.banner_list_100 > li:last-of-type {
    margin-bottom: 0;
}

.banner_list_100 a {
    display: inline-block;
    width: 100%;
}

.sec_area_crematory {
    padding: 90px 0 110px;
}

@media screen and (max-width: 820px) {
    .sec_area_crematory {
        padding: 40px 0;
    }
}

.area_crematory_sub {
    margin-top: 30px;
    margin-bottom: 45px;
    text-align: center;
    color: #555;
    font-size: 2rem;
}

@media screen and (max-width: 767px) {
    .area_crematory_sub {
        font-size: 1.6rem;
        margin-bottom: 25px;
    }
}

.area_crematory_flex {
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: 850px;
    margin: 0 auto 40px;
}

@media screen and (max-width: 767px) {
    .area_crematory_flex {
        flex-wrap: wrap;
    }
}

.area_crematory_flex__img {
    width: 48%;
    border-radius: 30px;
    overflow: hidden;
}

@media screen and (max-width: 767px) {
    .area_crematory_flex__img {
        width: 100%;
        margin-bottom: 30px;
    }
}

.area_crematory_flex__textbox {
    width: 51%;
    padding: 30px 20px 10px;
    border: 2px solid #c0212f;
    border-radius: 10px;
    position: relative;
}

@media screen and (max-width: 767px) {
    .area_crematory_flex__textbox {
        width: 100%;
        padding: 30px 15px 15px;
    }
}

.area_crematory_flex__title {
    font-size: 3.2rem;
    font-weight: bold;
    color: #c0212f;
    padding: 0 14px;
    position: absolute;
    top: -28px;
    left: 20px;
    font-family: "KiwiMaru", sans-serif;
    font-weight: 300;
    font-style: normal;
    background: #fff;
}

@font-face {
    font-family: "KiwiMaru";
    src: url("../fonts/KiwiMaru-Light.ttf") format("truetype");
}

@media screen and (max-width: 820px) {
    .area_crematory_flex__title {
        font-size: 2.5rem;
    }
}

@media screen and (max-width: 767px) {
    .area_crematory_flex__title {
        top: -25px;
    }
}

.area_crematory_flex__detail {
    font-size: 1.8rem;
    max-width: 480px;
    margin: 0 auto;
}

@media screen and (max-width: 767px) {
    .area_crematory_flex__detail {
        font-size: 1.7rem;
    }
}

.area_crematory_flex__detail dt {
    font-weight: bold;
    line-height: 1.3;
}

.area_crematory_flex__detail dd {
    margin-bottom: 5px;
    font-size: 1.7rem;
}

@media screen and (max-width: 767px) {
    .area_crematory_flex__detail dd {
        font-size: 1.6rem;
    }
}

.area_crematory_table_wrap + .area_crematory_flex {
    margin-top: 90px;
}

@media screen and (max-width: 767px) {
    .area_crematory_table_wrap + .area_crematory_flex {
        margin-top: 35px;
    }
}

@media only screen and (max-width: 640px) {
    .area_crematory_table_wrap {
        margin: 0 auto;
        overflow-x: scroll;
        padding-bottom: 20px;
    }
}

.area_crematory_table {
    width: 100%;
    border-spacing: 0;
    border: 1px solid #c0212f;
}

@media only screen and (max-width: 640px) {
    .area_crematory_table {
        width: 605px;
    }
}

.area_crematory_table tr > *:last-child {
    border-right: none;
}

.area_crematory_table tr:first-of-type th:nth-of-type(1) {
    width: 25%;
}

.area_crematory_table tr:first-of-type th:nth-of-type(2) {
    width: 30%;
}

.area_crematory_table tr:first-of-type th:nth-of-type(3) {
    width: 45%;
}

.area_crematory_table tr:last-of-type > * {
    border-bottom: none;
}

.area_crematory_table th,
.area_crematory_table td {
    text-align: center;
    vertical-align: middle;
    border-bottom: 1px solid #c0212f;
    border-right: 1px solid #c0212f;
    padding: 10px 0;
    font-weight: bold;
}

@media screen and (max-width: 767px) {

    .area_crematory_table th,
    .area_crematory_table td {
        padding: 10px 5px;
    }
}

.area_crematory_table th {
    background: #db514f;
    padding: 3px 0;
    font-size: 1.6rem;
    color: #fff;
    font-family: "KiwiMaru", sans-serif;
    font-weight: 300;
    font-style: normal;
    letter-spacing: 3px;
}

@font-face {
    font-family: "KiwiMaru";
    src: url("../fonts/KiwiMaru-Light.ttf") format("truetype");
}

.area_crematory_table td {
    font-size: 1.6rem;
}

@media screen and (max-width: 820px) {
    .area_crematory_table td {
        font-size: 1.5rem;
    }
}

.sec_area_faq {
    padding: 40px 0;
    background: url(../img/common/bg_washi.jpg) repeat;
}

@media screen and (max-width: 767px) {
    .sec_area_faq {
        padding: 30px 0 20px;
    }
}

@media screen and (max-width: 767px) {
    .sec_area_faq .faq_list__a {
        padding: 25px 15px 30px 75px;
    }
}

.sec_area_about {
    padding: 30px 0 100px;
}

@media screen and (max-width: 820px) {
    .sec_area_about {
        padding: 10px 0 50px;
    }
}

.sec_area_about .inner {
    position: relative;
    padding-top: 70px;
}

@media screen and (max-width: 820px) {
    .sec_area_about .inner {
        padding-top: 30px;
    }
}

.sec_area_about .inner::before {
    content: "";
    display: block;
    background: repeat-x url("../img/area/bg_dot_line.png");
    width: calc(100% - 100px);
    height: 3px;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
}

@media screen and (max-width: 767px) {
    .sec_area_about .inner::before {
        width: calc(100% - 60px);
    }
}

.about_funeral_list {
    border-bottom: 1px solid #614732;
}

.about_funeral_list__title {
    border-top: 1px solid #614732;
    background: #fbf8f6;
    font-weight: bold;
    font-size: 1.9rem;
}

@media screen and (max-width: 767px) {
    .about_funeral_list__title {
        font-size: 1.8rem;
    }
}

.about_funeral_list__title .about_funeral_btn {
    padding: 15px 65px 15px 75px;
    position: relative;
    display: inline-block;
    cursor: pointer;
    width: 100%;
}

@media screen and (max-width: 820px) {
    .about_funeral_list__title .about_funeral_btn {
        padding: 15px 65px 15px 15px;
    }
}

.about_funeral_list__title .icon {
    position: absolute;
    display: inline-block;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
    cursor: pointer;
    background: #db514f;
    display: block;
    padding: 6px 6px 6px 7px;
    line-height: 1;
    color: #fff;
    border-radius: 50%;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
}

.about_funeral_list__title .icon .fa-minus {
    display: none;
}

.about_funeral_list__title .active .icon .fa-plus {
    display: none;
}

.about_funeral_list__title .active .icon .fa-minus {
    display: inline-block;
}

.about_funeral_list__content {
    padding: 0 65px 25px 75px;
    position: relative;
    display: none;
    background: #fbf8f6;
}

@media screen and (max-width: 820px) {
    .about_funeral_list__content {
        padding: 0 15px 25px;
    }
}

/*------planページ コピー箇所------------------------------*/
.column_price_detail {
    padding-top: 50px;
}

@media screen and (max-width: 767px) {
    .column_price_detail {
        padding-top: 20px;
        padding-bottom: 0;
    }
}

.plan_wrap {
    background: url(../img/common/bg1.png);
    overflow: auto;
}

.plan_wrap .tab_plan_body {
    margin-bottom: 60px;
}

@media screen and (max-width: 820px) {
    .plan_wrap .tab_plan_body {
        margin-bottom: 30px;
    }
}

@media screen and (max-width: 767px) {
    .plan_wrap .tab_plan_body {
        margin-bottom: 10px;
    }
}

.plan_wrap .tab_plan_body .plan_detail {
    display: flex;
    margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
    .plan_wrap .tab_plan_body .plan_detail {
        flex-wrap: wrap;
        flex-direction: column-reverse;
        margin-bottom: 10px;
    }
}

.plan_wrap .tab_plan_body .plan_detail .detail_left {
    width: 50%;
}

@media screen and (max-width: 767px) {
    .plan_wrap .tab_plan_body .plan_detail .detail_left {
        width: 100%;
    }
}

.plan_wrap .tab_plan_body .plan_detail .detail_right {
    width: 50%;
    padding-left: 40px;
}

@media screen and (max-width: 767px) {
    .plan_wrap .tab_plan_body .plan_detail .detail_right {
        width: 100%;
        padding-left: 0;
        margin-bottom: 20px;
    }
}

.plan_wrap .tab_plan_body .plan_detail .detail_right img {
    width: 100%;
}

.plan_wrap .tab_plan_body .plan_detail .detail_price .plan_head {
    text-align: center;
    margin-bottom: 10px;
}

.plan_wrap .tab_plan_body .plan_detail .detail_price .plan_head .txt {
    color: #fff;
    font-weight: 500;
    width: 100%;
    border-radius: 4px;
    font-size: 1.8rem;
}

.plan_wrap .tab_plan_body .plan_detail .detail_price .plan_head .num {
    background: #fff;
    color: #444;
    border: 1px solid #ccc;
    padding: 2px 5px;
    width: 100%;
    border-radius: 4px;
}

.plan_wrap .tab_plan_body .plan_detail .detail_price .detail_lead {
    font-size: 1.8rem;
    text-align: center;
    border-radius: 35px;
    position: relative;
    background: #bf212e;
    color: #fff;
    display: block;
}

@media screen and (max-width: 767px) {
    .plan_wrap .tab_plan_body .plan_detail .detail_price .detail_lead {
        font-size: 1.6rem;
        padding: 0 8px;
    }
}

.plan_wrap .tab_plan_body .plan_detail .detail_price .detail_lead span {
    font-size: 2.2rem;
    font-weight: 700;
}

.plan_wrap .tab_plan_body .plan_detail .detail_price .price_unit {
    font-size: 2.2rem;
    margin: 0 5px;
    text-align: center;
    color: #f06664;
    border: 1px solid #f06664;
    border-radius: 5px;
    line-height: 1.6;
}

.plan_wrap .tab_plan_body .plan_detail .detail_price__ippan {
    text-align: center;
    margin-bottom: 10px;
}

.plan_wrap .tab_plan_body .plan_detail .detail_price__ippan span {
    font-family: "Oswald", sans-serif;
    font-size: 2rem;
}

.plan_wrap .tab_plan_body .plan_detail .detail_price__club_title {
    font-size: 1.8rem;
    text-align: center;
    color: #f21e2f;
    border-radius: 8px;
    border: 1px solid;
    margin-bottom: 9px;
    line-height: 1;
    padding: 6px 0;
}

.plan_wrap .tab_plan_body .plan_detail .detail_price .price_unit_box {
    justify-content: center;
    align-items: flex-end;
    width: 100%;
    margin: 0 0 20px;
    position: relative;
}

@media screen and (max-width: 767px) {
    .plan_wrap .tab_plan_body .plan_detail .detail_price .price_unit_box {
        display: block;
    }
}

.plan_wrap .tab_plan_body .plan_detail .detail_price .price_unit_box .price_unit_left {
    text-align: center;
}

@media screen and (max-width: 767px) {
    .plan_wrap .tab_plan_body .plan_detail .detail_price .price_unit_box .price_unit_right {
        margin-bottom: 10px;
        text-align: center;
    }
}

.plan_wrap .tab_plan_body .plan_detail .detail_price .price_unit_box .price_ippan_taxin {
    color: #f21e2f;
    font-weight: 500;
    font-size: 1.6rem;
    line-height: 1.2;
    font-family: "Oswald", sans-serif;
}

.plan_wrap .tab_plan_body .plan_detail .detail_price .price_unit_box .price_ippan_taxin span {
    font-size: 2.2rem;
    font-weight: 700;
}

.plan_wrap .tab_plan_body .plan_detail .detail_price .price_unit_box .price_unit_untax,
.plan_wrap .tab_plan_body .plan_detail .detail_price .price_unit_box .price_ippan_untax.direct {
    font-size: clamp(5rem, 3vw, 6.6rem);
    font-weight: 700;
    line-height: 1;
    font-family: "Oswald", sans-serif;
    color: #f21e2f;
}

@media screen and (max-width: 820px) {

    .plan_wrap .tab_plan_body .plan_detail .detail_price .price_unit_box .price_unit_untax,
    .plan_wrap .tab_plan_body .plan_detail .detail_price .price_unit_box .price_ippan_untax.direct {
        font-size: 4rem;
    }
}

@media screen and (max-width: 767px) {

    .plan_wrap .tab_plan_body .plan_detail .detail_price .price_unit_box .price_unit_untax,
    .plan_wrap .tab_plan_body .plan_detail .detail_price .price_unit_box .price_ippan_untax.direct {
        font-size: 5rem;
    }
}

.plan_wrap .tab_plan_body .plan_detail .detail_price .price_unit_box .price_unit_untax .yen,
.plan_wrap .tab_plan_body .plan_detail .detail_price .price_unit_box .price_ippan_untax.direct .yen {
    font-size: 3rem;
    position: relative;
    padding-top: 18px;
}

.plan_wrap .tab_plan_body .plan_detail .detail_price .price_unit_box .price_unit_untax .tax,
.plan_wrap .tab_plan_body .plan_detail .detail_price .price_unit_box .price_ippan_untax.direct .tax {
    position: absolute;
    width: 2.5em;
    font-size: 1.6rem;
    top: 10px;
    left: 0;
}

.plan_wrap .tab_plan_body .plan_detail .detail_price .price_unit_box .price_unit_untax {
    margin-bottom: 10px;
}

.plan_wrap .tab_plan_body .plan_detail .detail_price .price_unit_box .price_unit_taxin {
    font-size: 1.8rem;
    font-size: 500;
    text-align: right;
    line-height: 1;
    font-family: "Oswald", sans-serif;
}

.plan_wrap .tab_plan_body .plan_detail .detail_price .function {
    font-size: 1.3rem;
    text-align: right;
}

.plan_wrap .tab_plan_body .plan_detail .point_container ul {
    padding: 10px;
    background: #fafafa;
    gap: 20px;
    justify-content: center;
}

.plan_wrap .tab_plan_body .plan_detail .point_container ul .item {
    width: calc(33.3333333333% - 15px);
    line-height: 1;
    padding: 8px 0;
    border: 1px solid;
    border-radius: 5px;
    font-size: 1.6rem;
    font-weight: 400;
    background: #fff;
    text-align: center;
    color: #bf212e;
}

@media screen and (max-width: 820px) {
    .plan_wrap .tab_plan_body .plan_detail .point_container ul .item {
        font-size: 1.4rem;
        line-height: 1;
        padding: 8px 0;
        font-size: 1.4rem;
    }
}

.plan_wrap .tab_plan_body .plan_detail .point_container ul .item.not {
    background: #ccc !important;
}

.plan_wrap .tab_plan_body .plan_detail .flow_container ul {
    background: #fafafa;
    padding: 10px;
    display: flex;
    justify-content: center;
    gap: 0;
    margin-bottom: 10px;
}

.plan_wrap .tab_plan_body .plan_detail .flow_container ul .item {
    position: relative;
    padding: 5px 0px;
    margin-right: 20px;
    border-radius: 5px;
    color: #fff;
    width: 16%;
    background: #ccc;
    text-align: center;
}

@media screen and (max-width: 820px) {
    .plan_wrap .tab_plan_body .plan_detail .flow_container ul .item {
        font-size: 1.4rem;
        margin-right: 14px;
    }
}

.plan_wrap .tab_plan_body .plan_detail .flow_container ul .item::after {
    content: "";
    position: absolute;
    top: 50%;
    right: -17px;
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 10px 0 10px 10px;
    border-color: transparent transparent transparent #a4a4a4;
}

@media screen and (max-width: 820px) {
    .plan_wrap .tab_plan_body .plan_detail .flow_container ul .item::after {
        right: -10px;
        border-width: 6px 0 6px 6px;
    }
}

.plan_wrap .tab_plan_body .plan_detail .flow_container ul .item:last-child {
    margin-right: 0;
}

.plan_wrap .tab_plan_body .plan_detail .flow_container ul .item:last-child::after {
    content: none;
}

.plan_wrap .tab_plan_body .plan_detail .detail_credit {
    border: 1px solid #eee;
    padding: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}

@media screen and (max-width: 820px) {
    .plan_wrap .tab_plan_body .plan_detail .detail_credit {
        justify-content: center;
        flex-wrap: wrap;
        gap: 0;
    }
}

.plan_wrap .plan_including {
    padding-bottom: 40px;
}

@media screen and (max-width: 767px) {
    .plan_wrap .plan_including {
        padding-bottom: 20px;
    }
}

@media screen and (max-width: 767px) {
    .plan_wrap .plan_including .catch {
        padding: 0;
    }
}

.plan_wrap .plan_including .including_list {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
    .plan_wrap .plan_including .including_list {
        margin-bottom: 20px;
    }
}

.plan_wrap .plan_including .including_list .item {
    width: calc(25% - 0px);
    border: 1px solid #eee;
    position: relative;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
}

@media screen and (max-width: 767px) {
    .plan_wrap .plan_including .including_list .item {
        flex-wrap: wrap;
        width: calc(50% - 0px);
        gap: 0;
    }
}

.plan_wrap .plan_including .including_list .item .item_img {
    width: 40%;
}

@media screen and (max-width: 820px) {
    .plan_wrap .plan_including .including_list .item .item_img {
        width: 30%;
    }
}

@media screen and (max-width: 767px) {
    .plan_wrap .plan_including .including_list .item .item_img {
        width: 100%;
    }
}

.plan_wrap .plan_including .including_list .item .item_img img {
    width: 100%;
    padding: 5px;
}

@media screen and (max-width: 767px) {
    .plan_wrap .plan_including .including_list .item .item_img img {
        width: 55px;
        padding: 0;
    }
}

.plan_wrap .plan_including .including_list .item .item_txt {
    width: 40%;
    text-align: center;
    line-height: 1.4;
    position: relative;
    z-index: 2;
}

@media screen and (max-width: 820px) {
    .plan_wrap .plan_including .including_list .item .item_txt {
        width: 60%;
    }
}

@media screen and (max-width: 767px) {
    .plan_wrap .plan_including .including_list .item .item_txt {
        width: 100%;
        margin-bottom: 5px;
        line-height: 1;
    }
}

.plan_wrap .plan_including .including_list .item .item_txt span {
    display: block;
    font-size: 1.4rem;
}

.plan_wrap .plan_including .including_list .item:last-child {
    margin-right: auto;
}

.plan_wrap .plan_including.plan_after {
    padding-bottom: 0;
}

.plan_wrap .plan_including.plan_after .including_list {
    margin-bottom: 0;
    justify-content: center;
}

@media screen and (max-width: 767px) {
    .plan_wrap .plan_including.plan_after .including_list {
        justify-content: initial;
    }
}

.plan_wrap .plan_including.plan_after .including_list .item {
    width: calc(20% - 0px);
}

@media screen and (max-width: 767px) {
    .plan_wrap .plan_including.plan_after .including_list .item {
        width: calc(50% - 0px);
    }
}

.plan_wrap .plan_including .plan_function {
    padding: 20px;
    background: #eee;
    font-size: 1.5rem;
    margin-bottom: 40px;
}

@media screen and (max-width: 820px) {
    .plan_wrap .plan_including .plan_function {
        margin-bottom: 0;
    }
}

.plan_list_other {
    max-width: 1000px;
    margin: 0 auto;
}

.plan_list_other .club_bnr_box {
    text-align: center;
    margin-bottom: 20px;
}

.plan_list_other .club_bnr_box .catch {
    margin-bottom: 0;
    font-size: 1.8rem;
}

@media screen and (max-width: 767px) {
    .plan_list_other .club_bnr_box .catch {
        padding: 10px 0 5px;
    }
}

@media screen and (max-width: 767px) {
    .plan_list_other .flex {
        gap: 10px;
        flex-wrap: wrap;
    }
}

.plan_list_other .flex a {
    width: calc(50% - 15px);
    border-radius: 10px;
    display: flex;
    align-items: center;
    position: relative;
    border: 1px solid;
    font-family: "KiwiMaru", sans-serif;
    font-weight: 300;
    font-style: normal;
    font-weight: 700;
}

@font-face {
    font-family: "KiwiMaru";
    src: url("../fonts/KiwiMaru-Light.ttf") format("truetype");
}

@media screen and (max-width: 767px) {
    .plan_list_other .flex a {
        width: 100%;
    }
}

.plan_list_other .flex a.direct {
    border-color: #db514f;
    color: #db514f;
}

.plan_list_other .flex a.oneday {
    border-color: #050c97;
    color: #050c97;
}

.plan_list_other .flex a.family {
    border-color: #47904f;
    color: #47904f;
}

.plan_list_other .flex a img {
    width: 20%;
    max-width: 130px;
    border-radius: 10px 0 0 10px;
}

.plan_list_other .flex a .title {
    flex: 1;
    text-align: center;
    font-size: 1.5rem;
    line-height: 1.2;
}

.plan_list_other .flex a .title span {
    font-size: clamp(1.8rem, 3vw, 2.4rem);
}

.plan_list_other .flex a:after {
    content: "\f105";
    font-family: "Font Awesome 6 free";
    font-weight: 900;
    padding-right: 10px;
}

/*------割引額提示------------------------------*/
.column_price_attend {
    padding-bottom: 0;
}

.column_price_attend .appeal_price {
    position: relative;
    max-width: 800px;
    margin: 100px auto 0;
    text-align: center;
}

@media screen and (max-width: 820px) {
    .column_price_attend .appeal_price {
        margin-top: 30px;
    }
}

.column_price_attend .appeal_price::before {
    content: "";
    position: absolute;
    top: -10rem;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 5rem 15rem 0 15rem;
    border-color: #bf212e transparent transparent transparent;
    opacity: 0.3;
}

@media screen and (max-width: 820px) {
    .column_price_attend .appeal_price::before {
        display: none;
    }
}

.column_price_attend .appeal_price.direct::before {
    border-color: #db514f transparent transparent transparent;
}

.column_price_attend .appeal_price.oneday::before {
    border-color: #050c97 transparent transparent transparent;
}

.column_price_attend .appeal_price.family::before {
    border-color: #47904f transparent transparent transparent;
}

.column_price_attend .appeal_price .price_txt {
    font-size: clamp(2rem, 4vw, 2.4rem);
    font-weight: 500;
    text-align: center;
    padding: 5px 50px;
    border-radius: 50px;
    display: inline-block;
    background: #f4f6f8;
    margin-bottom: 15px;
    line-height: 1.4;
    font-family: "KiwiMaru", sans-serif;
    font-weight: 300;
    font-style: normal;
    font-weight: 700;
}

@font-face {
    font-family: "KiwiMaru";
    src: url("../fonts/KiwiMaru-Light.ttf") format("truetype");
}

@media screen and (max-width: 767px) {
    .column_price_attend .appeal_price .price_txt {
        padding: 10px 5px;
        border-radius: 10px;
        margin-bottom: 0;
    }
}

.column_price_attend .appeal_price .price_txt span {
    font-weight: 600;
}

.column_price_attend .appeal_price .price_txt .big {
    font-size: clamp(3rem, 4vw, 3.4rem);
}

.column_price_attend .appeal_price .price_box {
    position: relative;
    justify-content: center;
    align-items: center;
    gap: 30px;
}

@media screen and (max-width: 820px) {
    .column_price_attend .appeal_price .price_box {
        flex-wrap: wrap;
        width: 90%;
        margin-right: auto;
        margin-left: auto;
        margin-top: 2rem;
        gap: 10px;
    }
}

.column_price_attend .appeal_price .price_box .price_large {
    display: flex;
    align-items: flex-end;
    font-size: 9rem;
    color: #f21e2f;
    position: relative;
    font-family: "Oswald", sans-serif;
}

@media screen and (max-width: 820px) {
    .column_price_attend .appeal_price .price_box .price_large {
        justify-content: center;
        font-size: 6rem;
    }
}

@media only screen and (max-width: 380px) {
    .column_price_attend .appeal_price .price_box .price_large {
        font-size: 5.4rem;
    }
}

.column_price_attend .appeal_price .price_box .price_large .title {
    font-size: 2rem;
    font-weight: bold;
    width: 60px;
    line-height: 1.3;
    height: 60px;
    border-radius: 10px;
    border: 2px solid;
    margin-right: 12px;
}

@media screen and (max-width: 767px) {
    .column_price_attend .appeal_price .price_box .price_large .title {
        font-size: 1.5rem;
        width: 46px;
        height: 46px;
        margin-right: 5px;
    }
}

.column_price_attend .appeal_price .price_box .price_large .price {
    font-weight: 500;
    line-height: 100%;
}

@media screen and (max-width: 820px) {
    .column_price_attend .appeal_price .price_box .price_large .price {
        align-self: flex-start;
        white-space: nowrap;
    }
}

.column_price_attend .appeal_price .price_box .price_large .mark {
    display: flex;
    flex-direction: column;
    margin-left: 5px;
    font-weight: 700;
    position: relative;
    bottom: 5px;
}

.column_price_attend .appeal_price .price_box .price_large .mark_tax {
    font-size: 1.8rem;
    line-height: 100%;
}

@media only screen and (max-width: 380px) {
    .column_price_attend .appeal_price .price_box .price_large .mark_tax {
        font-size: 1.3rem;
    }
}

.column_price_attend .appeal_price .price_box .price_large .mark_yen {
    font-size: 3.4rem;
    line-height: 100%;
}

@media only screen and (max-width: 380px) {
    .column_price_attend .appeal_price .price_box .price_large .mark_yen {
        font-size: 2.5rem;
    }
}

.column_price_attend .appeal_price .price_box .taxin {
    width: 100%;
    font-size: 1.5rem;
    display: block;
    text-align: right;
}

.column_price_attend .appeal_price .price_box .sale_laber {
    font-size: 2rem;
    padding: 10px;
    border: 1px solid #f06664;
    border-radius: 4px;
    color: #f06664;
    text-align: center;
}

@media screen and (max-width: 820px) {
    .column_price_attend .appeal_price .price_box .sale_laber {
        margin-right: 0;
    }
}

.column_price_attend .appeal_price .price_box .general {
    text-align: center;
    font-size: 1.6rem;
    position: relative;
    font-family: "Oswald", sans-serif;
    line-height: 1.2;
}

.column_price_attend .appeal_price .price_box .general span {
    font-size: 2rem;
}

.column_price_attend .appeal_price .unit_laber {
    border-radius: 12px;
    text-align: center;
    position: relative;
    margin-top: 30px;
}

.column_price_attend .appeal_price .unit_laber p {
    padding: 10px 10px 15px;
    font-size: 2rem;
    line-height: 1.2;
    font-family: "KiwiMaru", sans-serif;
    font-weight: 300;
    font-style: normal;
    font-weight: 700;
    color: #fff;
}

@font-face {
    font-family: "KiwiMaru";
    src: url("../fonts/KiwiMaru-Light.ttf") format("truetype");
}

.column_price_attend .appeal_price .unit_laber p .red {
    color: #f06664;
    font-weight: 700;
}

.column_price_attend .appeal_price .unit_laber p .num {
    font-size: 3rem;
    font-family: "Oswald", sans-serif;
}

.column_price_attend .appeal_price .unit_laber a {
    color: #fff;
    padding: 10px;
    display: block;
    text-decoration: underline;
}

.column_price_attend .appeal_price .unit_laber:before {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-right: 25px solid transparent;
    border-left: 25px solid transparent;
    border-bottom-width: 20px;
    border-top: 0;
    position: absolute;
    top: -20px;
    right: 0;
    left: 0;
    margin: auto;
}

.column_price_attend .appeal_price.direct .price_txt .big {
    color: #db514f;
}

.column_price_attend .appeal_price.direct .unit_laber {
    border: 2px solid #db514f;
    background: #db514f;
}

.column_price_attend .appeal_price.direct .unit_laber:before {
    border-bottom-color: #db514f;
}

.column_price_attend .appeal_price.direct .unit_laber a {
    background: #db514f;
}

.column_price_attend .appeal_price.oneday .price_txt .big {
    color: #050c97;
}

.column_price_attend .appeal_price.oneday .unit_laber {
    border: 2px solid #050c97;
    background: #050c97;
}

.column_price_attend .appeal_price.oneday .unit_laber:before {
    border-bottom-color: #050c97;
}

.column_price_attend .appeal_price.oneday .unit_laber a {
    background: #050c97;
}

.column_price_attend .appeal_price.family .price_txt .big {
    color: #47904f;
}

.column_price_attend .appeal_price.family .unit_laber {
    border: 2px solid #47904f;
    background: #47904f;
}

.column_price_attend .appeal_price.family .unit_laber:before {
    border-bottom-color: #47904f;
}

.column_price_attend .appeal_price.family .unit_laber a {
    background: #47904f;
}

.ver_direct .tab_btn.show {
    background: #db514f;
}

.ver_direct .panel_area {
    border-top-color: #db514f;
}

.ver_direct .panel_area .plan_wrap .plan_detail .detail_price .detail_lead {
    background: #db514f;
}

.ver_direct .panel_area .plan_wrap .plan_detail .plan_head .txt,
.ver_direct .panel_area .plan_wrap .plan_detail .flow_container .item.in {
    background: #db514f;
}

.ver_direct .panel_area .plan_wrap .plan_detail .point_container ul .item {
    border-color: #db514f;
    color: #db514f;
}

.ver_family .tab_btn.show {
    background: #47904f;
}

.ver_family .panel_area {
    border-top-color: #47904f;
}

.ver_family .panel_area .plan_wrap .plan_detail .detail_price .detail_lead {
    background: #47904f;
}

.ver_family .panel_area .plan_wrap .plan_detail .plan_head .txt,
.ver_family .panel_area .plan_wrap .plan_detail .flow_container .item.in {
    background: #47904f;
}

.ver_family .panel_area .plan_wrap .plan_detail .point_container ul .item {
    border-color: #47904f;
    color: #47904f;
}

.ver_oneday .tab_btn.show {
    background: #050c97;
}

.ver_oneday .panel_area {
    border-top-color: #050c97;
}

.ver_oneday .panel_area .plan_wrap .plan_detail .detail_price .detail_lead {
    background: #050c97;
}

.ver_oneday .panel_area .plan_wrap .plan_detail .plan_head .txt,
.ver_oneday .panel_area .plan_wrap .plan_detail .flow_container .item.in {
    background: #050c97;
}

.ver_oneday .panel_area .plan_wrap .plan_detail .point_container ul .item {
    border-color: #050c97;
    color: #050c97;
}

.ver_direct .plan_list_other .direct {
    display: none;
}

.ver_oneday .plan_list_other .oneday {
    display: none;
}

.ver_family .plan_list_other .family {
    display: none;
}

/*------planページ　追加記述------------------------------*/
.sec_plan_detail_mv {
    padding-bottom: 30px;
}

@media screen and (max-width: 767px) {
    .sec_plan_detail_mv {
        padding-bottom: 20px;
    }
}

.sec_plan_detail_mv .inner .sec_title_eng span {
    text-transform: uppercase;
}

.plan_detail_mv {
    text-align: center;
    height: 240px;
    overflow: hidden;
}

@media screen and (max-width: 820px) {
    .plan_detail_mv {
        height: auto;
    }
}

.plan_detail_mv img {
    width: 100%;
}

.sec_title_plan {
    padding-bottom: 30px;
    font-size: clamp(2rem, 3vw, 2.6rem);
    line-height: 1.2;
    text-align: center;
    letter-spacing: 0.1em;
    color: #614732;
    font-family: "KiwiMaru", sans-serif;
    font-weight: 300;
    font-style: normal;
    font-weight: 700;
}

@font-face {
    font-family: "KiwiMaru";
    src: url("../fonts/KiwiMaru-Light.ttf") format("truetype");
}

@media screen and (max-width: 767px) {
    .sec_title_plan {
        padding-bottom: 15px;
    }
}

.sec_title_plan span {
    font-size: clamp(2.3rem, 3vw, 3.4rem);
    color: #b63965;
}

/*------葬儀事例------------------------------*/
@media screen and (max-width: 767px) {
    .column_funeral_case {
        padding-bottom: 0;
    }
}

.column_funeral_case h3.funeral_planname {
    display: flex;
    align-items: center;
    font-size: 3rem;
    margin: 50px auto 0;
    max-width: 310px;
}

.column_funeral_case h3.funeral_planname::before,
.column_funeral_case h3.funeral_planname::after {
    content: "";
    height: 1px;
    flex-grow: 1;
    background-color: #333;
}

.column_funeral_case h3.funeral_planname::before {
    margin-right: 1rem;
}

.column_funeral_case h3.funeral_planname::after {
    margin-left: 1rem;
}

@media screen and (max-width: 767px) {
    .column_funeral_case h3.funeral_planname {
        font-size: 1.8rem;
        margin: 20px auto 0;
    }
}

.column_funeral_case .wrap_blog_list {
    max-width: 1000px;
    margin: 50px auto 0;
}

@media screen and (max-width: 767px) {
    .column_funeral_case .wrap_blog_list {
        margin: 20px auto 0;
    }
}

.column_funeral_case .wrap_blog_list .funeral_list {
    margin-bottom: 90px;
}

@media screen and (max-width: 767px) {
    .column_funeral_case .wrap_blog_list .funeral_list {
        margin-bottom: 40px;
    }
}

.column_funeral_case .wrap_blog_list .funeral_flex {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    max-width: 800px;
    width: 100%;
    margin: 0 auto;
}

.column_funeral_case .wrap_blog_list .funeral_flex .funeral_l {
    width: 55%;
}

@media screen and (max-width: 767px) {
    .column_funeral_case .wrap_blog_list .funeral_flex .funeral_l {
        width: 100%;
    }
}

.column_funeral_case .wrap_blog_list .funeral_flex .funeral_l img {
    border-radius: 25px;
    max-width: 400px;
    width: 100%;
    height: 300px;
    -o-object-fit: cover;
    object-fit: cover;
}

.column_funeral_case .wrap_blog_list .funeral_flex .funeral_r {
    width: 35%;
    padding-left: 15px;
}

@media screen and (max-width: 767px) {
    .column_funeral_case .wrap_blog_list .funeral_flex .funeral_r {
        width: 100%;
        padding-left: 0;
        padding-top: 15px;
    }
}

.column_funeral_case .wrap_blog_list .funeral_flex .funeral_r li {
    display: flex;
    align-items: center;
    font-size: 1.6rem;
    margin-bottom: 15px;
}

@media screen and (max-width: 767px) {
    .column_funeral_case .wrap_blog_list .funeral_flex .funeral_r li {
        flex-direction: column;
    }
}

.column_funeral_case .wrap_blog_list .funeral_flex .funeral_r li .funeral_tag_l {
    background: #619166;
    color: #fff;
    padding: 5px 10px;
    margin-right: 10px;
    max-width: 130px;
    width: 100%;
    text-align: center;
    border-radius: 10px;
}

@media screen and (max-width: 767px) {
    .column_funeral_case .wrap_blog_list .funeral_flex .funeral_r li .funeral_tag_l {
        max-width: 100%;
        border-radius: 0;
        margin-right: 0;
    }
}

@media screen and (max-width: 767px) {
    .column_funeral_case .wrap_blog_list .funeral_flex .funeral_r li .funeral_tag_r {
        background: #eee;
        width: 100%;
        text-align: center;
        padding: 10px 5px;
    }
}

.column_funeral_case .wrap_blog_list .funeral_txt {
    width: 100%;
    margin: 30px auto 35px;
    padding: 0 15px;
}

@media screen and (max-width: 767px) {
    .column_funeral_case .wrap_blog_list .funeral_txt {
        margin: 0 auto 25px;
    }
}

/* add css 2023.11.27 プラン箇所レイアウト変更*/

.pc_none {
    display: none;
}

.sp_none {
    display: flex;
}

@media screen and (max-width: 767px) {
    .br_none {
        display: none;
    }

    .pc_none {
        display: block;
    }

    .sp_none {
        display: none;
    }

    .plan_list > li {
        width: 100%;
        margin-bottom: 10px;
    }

    .plan_list__lead {
        text-align: center;
        background: #db514f;
        color: #fff;
        font-size: 1rem;
        line-height: 1.3;
        padding: 8px;
    }

    .plan_list__flex2a {
        display: flex;
    }

    .plan_list__flex2b {
        display: flex;
        justify-content: space-between;
    }

    .plan_list__flex2a_left {
        width: 50%;
        padding: 14px 0px;
    }

    .plan_list__flex2a_right {
        width: 50%;
        padding: 8px;
    }

    .plan_list__title {
        font-size: 2.5rem;
    }

    .plan_list__flow > li {
        width: 31%;
        border: 1px solid #a09494;
        color: #a09494;
        font-size: 1.2rem;
        padding: 2px 3px;
        text-align: center;
        border-radius: 5px;
    }

    .plan_list__memberPrices {
        flex-grow: 1;
        margin-top: 5px;
        display: flex;
        flex-direction: column;
        justify-content: center;
        gap: 8px;
        align-items: flex-end;
    }


    .plan_list__flex2b_left {
        width: 45%;
        padding: 10px 0;
    }

    .plan_list__flex2b_right {
        width: 55%;
    }

    .plan_list__member {
        text-align: center;
        border: 1px solid #db514f;
        border-radius: 5px;
        padding: 5px 0;
        color: #db514f;
        line-height: 1;
        font-size: 1.5rem;
        font-weight: 700;
    }

    .plan_list__member span {
        font-size: 1rem;
        position: relative;
        bottom: 1px;
        font-weight: 500;
    }

    .plan_list__memberPrices {
        flex-grow: 1;
        margin-top: 0px;
        margin-bottom: 10px;
        display: flex;
        flex-direction: column;
        justify-content: center;
        gap: 8px;
        align-items: flex-end;
    }

    .plan_list__normalPrice {
        text-align: center;
        font-size: 0.9rem;
        font-weight: bold;
        margin-bottom: 3px;
        letter-spacing: 0.01em;
    }

    .plan_list__normalPrice .mini {
        font-size: 0.9rem;
        font-weight: normal;
    }

    .plan_list__normalPrice .num {
        font-size: 1.4rem;
        font-family: "Oswald", sans-serif;
        font-weight: bold;
    }

    .plan_list__memberPrices__intax {
        line-height: 1;
        display: flex;
        align-items: center;
    }

}

.stamp {
    position: absolute;
    top: 18%;
    left: 60%;
}

.stamp img {
    width: 50%;
}

@media screen and (max-width: 820px) {
    .stamp {
        position: absolute;
        top: 60%;
        left: 62%;
    }
    .stamp img{
        width: 58%;
    }
}


.form_note{
    margin-top: 10px;
    font-size: 1.6rem;
    color: #f06664;
}


.form_txt-center{
    text-align: center;
    margin-top: 30px;
}


/*          資料請求完了画面
------------------------------------------------*/
.complete h3 {
    font-size: 2.8rem;
    margin: 10px 0 24px;
    text-align: center;
    color: #ca524b;
  }
  .complete h3 br {
    display: none;
  }
  @media (max-width: 820px) {
    .complete h3 {
      font-size: 2.4rem;
    }
    .complete h3 br {
      display: block;
    }
  }
.wrap_form {
    margin: 20px 0;
    padding: 40px calc(2% + 24px);
    background: #fff;
    border: 1px solid #bf212e;
  }
  .wrap_form .step_text {
    display: flex;
    margin-bottom: 24px;
    border: 2px solid #bf212e;
  }
  .wrap_form .step_text > span {
    padding: 8px;
  }
  .wrap_form .step_text .step {
    font-size: 120%;
    font-weight: normal;
    margin-right: 16px;
    padding: 6px 12px;
    color: #fff;
    background: #bf212e;
  }
  @media (max-width: 820px) {
    .wrap_form {
      padding: 12px 4%;
    }
    .wrap_form .step_text {
      margin-bottom: 12px;
    }
    .wrap_form .step_text > span {
      font-size: 1.4rem;
    }
    .wrap_form .step_text .step {
      font-size: 1.4rem;
      display: flex;
      align-items: center;
      margin-right: 0;
    }
  }
  .wrap_form .center {
    text-align: center;
  }
  .wrap_form .privacy {
    margin-top: 20px;
  }
  .wrap_form .club_bn_wrap img {
    width: 100%;
  }
  .wrap_form .club_bn_wrap {
    margin: 30px 0;
  }


  

  .btn_close {
    font-size: 2rem;
    line-height: 60px;
    margin: 0 auto;
    margin-right: 15px;
    padding: 4px 10px;
    transition: 0.5s;
    text-align: center;
    letter-spacing: 0.1em;
    color: #3e9863;
    border: 1px solid #3e9863;
    background: #fff !important;
  }
  .btn_close:hover{
    text-decoration: none;
    color: #fff;
    background: #3e9863 !important;
  }
  
  .btn_close {
    width: 200px;
  }
  
  .btn_close {
    display: block;
    width: 280px;
    margin: 0 auto;
    margin-bottom: 20px;
    text-decoration: none;
  }
  

  .wrap_form .club_bn_wrap.sp{
    display: none;
  }
  @media (max-width: 820px) {
    .wrap_form .club_bn_wrap.pc{
        display: none;
      }
      .wrap_form .club_bn_wrap.sp{
        display: block;
      }
  }



/*# sourceMappingURL=style.css.map */

.top_new_note{
    max-width: 900px;
    margin: 50px auto;
    border: 3px solid #bf212e;
    padding: 20px;
    text-align: center;
    border-radius: 20px;
}
.top_new_note .txt02{
    margin: 20px;
    font-size: 3rem;
    color: #bf212e;
}

@media screen and (max-width: 767px) {
    .top_new_note{
        max-width: 90%;
        margin: 0 auto;
        padding: 10px;
        margin-bottom: 20px;
    }
    .top_new_note .txt02{
        margin: 20px 0;
        font-size: 2rem;
        color: #bf212e;
    }
}