@charset "utf-8";

/* ---------------------------------------------------- */
/* 変数 */
/* ---------------------------------------------------- */
:root {
    --co_1: #000;
    --co_2: #fff;
    --co_3: #f5f4f4;
    --co_4: #63757e;
    --co_5: #96b2c1;
    --co_6: #b1a782;
    --co_7: #ea8a8a;
    --co_8: #91a8b4;
    --co_9: #d3d3d3;
    --co_10: #b4c2c9;
    --co_11: #3e3e3e;
    --co_12: #b16e6e;
    --co_13: #e6e6e6;
    --co_14: #aaaaaa;
    --co_15: #73909f;
    --co_16: #cec6aa;
    --co_17: #d2e0e8;
    --co_18: #f2edde;
}

/* ---------------------------------------------------- */
/* web font */
/* ---------------------------------------------------- */
/* Google font */
@import url("https://fonts.googleapis.com/css2?family=Barlow:wght@400;500;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;500;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Josefin+Sans:wght@400;500;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400;500;700&display=swap");


/* ---------------------------------------------------- */
/* html body */
/* ---------------------------------------------------- */
body {
    background-color: var(--co_2);
}

/* ---------------------------------------------------- */
/* .header_1 */
/* ---------------------------------------------------- */
.header_1 {
    background-color: var(--co_2);
}

/* ---------------------------------------------------- */
/* sec_mv_wrap */
/* ---------------------------------------------------- */
.sec_mv_wrap {
    padding-top: 80px;
}
@media (max-width: 999px) {
    .sec_mv_wrap {
        padding-top: 20px;
    }
}
/* ---------------------------------------------------- */
/* sec_nav_wrap */
/* ---------------------------------------------------- */
.sec_nav_wrap {
    padding-top: 80px;
}

.sec_nav_wrap .nav_1 > ul {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin-right: -10px;
    margin-bottom: -20px;
}
.sec_nav_wrap .nav_1 > ul > li {
    margin-right: 10px;
    margin-bottom: 20px;
}
.sec_nav_wrap .nav_1 a {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 5px 10px;
    width: 200px;
    height: 40px;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
    background-color: var(--co_2);
    border: 1px solid var(--co_4);
}
.sec_nav_wrap .nav_1 .current-cat a {
    color: var(--co_2);
    background-color: var(--co_4);
}
@media (min-width: 1000px) {
    .sec_nav_wrap .nav_1 a:hover {
        opacity: 0.6;
    }
}

@media (max-width: 999px) {
    .sec_nav_wrap {
        padding-top: 40px;
    }

    .sec_nav_wrap .nav_1 > ul {
        margin-right: -5px;
        margin-bottom: -5px;
    }
    .sec_nav_wrap .nav_1 > ul > li {
        margin-right: 5px;
        margin-bottom: 5px;
        width: calc(100% / 3 - 5px);
    }
    .sec_nav_wrap .nav_1 a {
        padding: 5px 5px;
        width: auto;
        height: 30px;
        font-size: 12px;
    }
}

/* ---------------------------------------------------- */
/* sec_archive_wrap */
/* ---------------------------------------------------- */
.sec_archive_wrap {
    padding-top: 80px;
    padding-bottom: 80px;
}
.sec_archive_wrap .archive_1 > ul {
    display: flex;
    flex-wrap: wrap;
    margin-right: -70px;
    margin-bottom: -70px;
}
.sec_archive_wrap .archive_1 > ul > li {
    margin-right: 70px;
    margin-bottom: 70px;
    width: calc(100% / 2 - 70px);
}

@media (max-width: 999px) {
    .sec_archive_wrap {
        padding-top: 40px;
        padding-bottom: 40px;
    }
    .sec_archive_wrap .archive_1 > ul {
        margin-right: 0;
        margin-bottom: -40px;
    }
    .sec_archive_wrap .archive_1 > ul > li {
        margin-right: 0;
        margin-bottom: 40px;
        width: 100%;
    }
}

/* ---------------------------------------------------- */
/* sec_others_wrap */
/* ---------------------------------------------------- */
.sec_others_wrap {
    background-color: var(--co_3);
}

/* ---------------------------------------------------- */
/* sec_cv_wrap */
/* ---------------------------------------------------- */
.sec_cv_wrap {
    background-color: var(--co_3);
}

/* ---------------------------------------------------- */
/* sec_bnr_wrap */
/* ---------------------------------------------------- */
.sec_bnr_wrap {
    background-color: var(--co_3);
}


/* ---------------------------------------------------- */
/* cs_ff */
/* ---------------------------------------------------- */
.cs_ff_en_1 {
    font-family: "Barlow", "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
}
.cs_ff_en_2 {
    font-family: "Playfair Display", "Noto Serif JP", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}
.cs_ff_en_3 {
    font-family: "Josefin Sans", "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
}

.cs_ff_go_1 {
    font-family: "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
}

.cs_ff_mi_1 {
    font-family: "Noto Serif JP", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}

/* ---------------------------------------------------- */
/* cs_fc */
/* ---------------------------------------------------- */
.cs_fc_9,
.cs_fc_9 a,
a.cs_fc_9 {
    color: var(--co_9);
}

/* ---------------------------------------------------- */
/* cs_ti */
/* ---------------------------------------------------- */
.cs_ti_1 {
    display: inline-block;
    text-indent: -0.5em;
}

/* ---------------------------------------------------- */
/* cs_fd */
/* ---------------------------------------------------- */
.cs_fd_b {
    font-weight: 700;
}

.cs_fd_sb {
    font-weight: 500;
}

.cs_fd_ul {
    text-decoration: underline;
}

/* ---------------------------------------------------- */
/* cf */
/* ---------------------------------------------------- */
.cf:after {
    content: ".";
    display: block;
    height: 0;
    font-size: 0;
    clear: both;
    visibility: hidden;
}

.cf {
    display: block;
}

/* ---------------------------------------------------- */
/* a */
/* ---------------------------------------------------- */
.cs_link_1 {
    text-decoration: underline;
    opacity: 1 !important;
}

.cs_hide {
    opacity: 0.4;
    pointer-events: none;
}

.cs_event_none {
    pointer-events: none;
}

@media (min-width: 1000px) {
    .cs_event_none_pc {
        pointer-events: none;
    }
}

@media (max-width: 999px) {
    .cs_event_none_sp {
        pointer-events: none;
    }
}

/* ---------------------------------------------------- */
/* cs_ta */
/* ---------------------------------------------------- */
.cs_ta_l {
    text-align: left !important;
}

.cs_ta_r {
    text-align: right !important;
}

.cs_ta_c {
    text-align: center !important;
}

/* ---------------------------------------------------- */
/* cs_e */
/* ---------------------------------------------------- */
.cs_e_zm {
    overflow: hidden;
}

.cs_e_zm > span {
    transform-origin: center;
    transform: scale(1.005);
    transition: 0.5s ease-in-out;
}

@media (min-width: 1000px) {
    .cs_e_op {
        transition: opacity 0.3s ease-in-out;
    }

    .cs_e_op:hover,
    a:hover .cs_e_op {
        opacity: 0.6;
    }

    .cs_e_gr,
    .cs_e_bn,
    .cs_e_in {
        transition: filter 0.3s ease-in-out;
    }

    .cs_e_gr:hover,
    a:hover .cs_e_gr {
        filter: grayscale(100%);
    }

    .cs_e_bn:hover,
    a:hover .cs_e_bn {
        filter: brightness(70%);
    }

    .cs_e_in:hover,
    a:hover .cs_e_in {
        filter: invert(100%);
    }

    a:hover .cs_e_zm > span {
        transform: scale(1.1);
        /* filter: brightness(70%); */
    }
}

/* ---------------------------------------------------- */
/* cs_link_img */
/* ---------------------------------------------------- */
.cs_link_img {
    display: block;
}

/* ---------------------------------------------------- */
/* cs_bg_img_1 */
/* ---------------------------------------------------- */
.cs_bg_img_1 > span {
    display: block;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

/* ---------------------------------------------------- */
/* pc/sp */
/* ---------------------------------------------------- */
@media (min-width: 1000px) {
    .cs_none_pc {
        display: none !important;
    }
}

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

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

/* ---------------------------------------------------- */
/* cs_br_none */
/* ---------------------------------------------------- */
@media (min-width: 1000px) {
    .cs_br_none_pc br {
        display: none;
    }
}

@media (max-width: 999px) {
    .cs_br_none_sp br {
        display: none;
    }
}

/* ---------------------------------------------------- */
/* cs_sec */
/* ---------------------------------------------------- */
.cs_sec_wrap {
    position: relative;
    overflow: hidden;
}

.cs_sec_wrap .sec_inner {
    margin-left: auto;
    margin-right: auto;
    position: relative;
}

@media (min-width: 1000px) {
    .cs_sec_wrap .sec_inner {
        width: 1100px;
    }

    .cs_sec_wrap .sec_inner.w1_pc {
        width: 100%;
    }
    .cs_sec_wrap .sec_inner.w2_pc {
        width: 940px;
    }
}

@media (max-width: 999px) {
    .cs_sec_wrap .sec_inner {
        width: calc(100% - 40px);
    }
    .cs_sec_wrap .sec_inner.w1_sp {
        width: 100%;
    }
}
/* ---------------------------------------------------- */
/* cs_ul */
/* ---------------------------------------------------- */
.cs_ul_1 {
    list-style: disc;
    padding-left: 1.5em;
    line-height: 1.8;
}

.cs_ul_2 {
    list-style: square;
    padding-left: 1.5em;
    line-height: 1.8;
}

.cs_ul_3 {
    list-style: lower-alpha;
    padding-left: 1.5em;
    line-height: 1.8;
}

.cs_ul_4 {
    list-style: decimal;
    padding-left: 1.5em;
    line-height: 1.8;
}

.cs_ul_5 {
    list-style: "※";
    padding-left: 1.5em;
    line-height: 1.8;
}
/* ---------------------------------------------------- */
/* cs_msgblank_1 */
/* ---------------------------------------------------- */
.cs_msgblank_1 {
    padding: 200px 0;
    font-weight: 700;
    text-align: center;
}
@media (max-width: 999px) {
    .cs_msgblank_1 {
        padding: 150px 0;
    }
}
/* ---------------------------------------------------- */
/* cs_desc */
/* ---------------------------------------------------- */
.cs_desc_1 {
    text-align: justify;
    line-height: 1.8;
}

.cs_desc_1 > * + * {
    margin-top: 1.5em;
}

@media (max-width: 999px) {
    .cs_desc_1 > * + * {
        margin-top: 1.5em;
    }
}

/* ---------------------------------------------------- */
/* cs_ttl_1 */
/* ---------------------------------------------------- */
.cs_ttl_1 {
    line-height: 1.2;
    text-align: center;
}
.cs_ttl_1 .en {
    display: block;
    margin-bottom: 5px;
    font-size: 56px;
}
.cs_ttl_1 .ja {
    display: block;
    font-weight: 700;
}
@media (max-width: 999px) {
    .cs_ttl_1 .en {
        font-size: 32px;
    }
    .cs_ttl_1 .ja {
        font-size: 14px;
    }
}
/* ---------------------------------------------------- */
/* cs_ttl_2 */
/* ---------------------------------------------------- */
.cs_ttl_2 {
    line-height: 1.2;
    text-align: center;
}
.cs_ttl_2 .en {
    display: block;
    margin-bottom: 5px;
    font-size: 86px;
}
.cs_ttl_2 .ja {
    display: block;
    font-size: 20px;
    font-weight: 700;
}
@media (max-width: 999px) {
    .cs_ttl_2 .en {
        font-size: 48px;
    }
    .cs_ttl_2 .ja {
        font-size: 14px;
    }
}
/* ---------------------------------------------------- */
/* cs_ttl_3 */
/* ---------------------------------------------------- */
.cs_ttl_3 {
    line-height: 1.2;
    text-align: center;
}
.cs_ttl_3 .en {
    display: block;
    margin-bottom: 10px;
    font-size: 36px;
}
.cs_ttl_3 .ja {
    display: block;
    font-size: 14px;
    font-weight: 700;
}
@media (max-width: 999px) {
    .cs_ttl_3 .en {
        font-size: 32px;
    }
}
/* ---------------------------------------------------- */
/* cs_ttl_4 */
/* ---------------------------------------------------- */
.cs_ttl_4 {
    line-height: 1.2;
    text-align: center;
}
.cs_ttl_4 .en {
    display: block;
    margin-bottom: 5px;
    font-size: 42px;
}
.cs_ttl_4 .ja {
    display: block;
    font-size: 16px;
    font-weight: 700;
}
@media (max-width: 999px) {
    .cs_ttl_4 .en {
        font-size: 38px;
    }
    .cs_ttl_4.si_1 .en {
        font-size: 26px;
    }
    .cs_ttl_4 .ja {
        font-size: 14px;
    }
}
/* ---------------------------------------------------- */
/* cs_btn_1 */
/* ---------------------------------------------------- */
.cs_btn_1 {
    position: relative;
    display: block;
    padding-bottom: 10px;
    min-width: 300px;
    max-width: max-content;
    font-size: 23px;
    font-weight: 500;
    line-height: 1.2;
    border-bottom: 2px solid var(--co_9);
    transition: 0.3s ease-in-out;
}
.cs_btn_1::before {
    content: "";
    position: absolute;
    right: 0;
    bottom: -2px;
    display: block;
    width: 40px;
    height: 2px;
    background-color: var(--co_4);
    transition: 0.3s ease-in-out;
}
.cs_btn_1 i {
    position: absolute;
    right: 0;
    top: 5px;
    display: block;
    width: 24px;
    height: 24px;
    border: 1px solid var(--co_4);
    border-radius: 100%;
    transition: 0.3s ease-in-out;
}
.cs_btn_1 i::before {
    content: "";
    width: 10px;
    height: 1px;
    background-color: var(--co_4);
    position: absolute;
    top: 50%;
    right: 7px;
    transform: translateY(-50%);
    transition: 0.3s ease-in-out;
}
.cs_btn_1 i::after {
    content: "";
    width: 8px;
    height: 8px;
    border-top: 1px solid var(--co_4);
    border-right: 1px solid var(--co_4);
    position: absolute;
    right: 7px;
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
    transition: 0.3s ease-in-out;
}
@media (min-width: 1000px) {
    a:hover .cs_btn_1::before,
    .cs_btn_1:hover::before {
        width: 100%;
    }
}
@media (max-width: 999px) {
    .cs_btn_1 {
        min-width: 180px;
        font-size: 15px;
    }
    .cs_btn_1 i {
        top: -3px;
    }
}
/* co */
.cs_btn_1.co_1 {
    color: var(--co_4);
}
.cs_btn_1.co_1::before {
    background-color: var(--co_4);
}
.cs_btn_1.co_1 i {
    border-color: var(--co_4);
}
.cs_btn_1.co_1 i::before {
    background-color: var(--co_4);
}
.cs_btn_1.co_1 i::after {
    border-color: var(--co_4);
}

.cs_btn_1.co_2 {
    color: var(--co_2);
}
.cs_btn_1.co_2::before {
    background-color: var(--co_2);
}
.cs_btn_1.co_2 i {
    border-color: var(--co_2);
}
.cs_btn_1.co_2 i::before {
    background-color: var(--co_2);
}
.cs_btn_1.co_2 i::after {
    border-color: var(--co_2);
}

@media (min-width: 1000px) {
    a:hover .cs_btn_1.co_1,
    .cs_btn_1.co_1:hover {
        color: var(--co_7);
    }
    a:hover .cs_btn_1.co_1::before,
    .cs_btn_1.co_1:hover::before {
        background-color: var(--co_7);
    }
    a:hover .cs_btn_1.co_1 i,
    .cs_btn_1.co_1:hover i {
        background-color: var(--co_7);
        border-color: var(--co_7);
    }
    a:hover .cs_btn_1.co_1 i::before,
    .cs_btn_1.co_1:hover i::before {
        background-color: var(--co_2);
    }
    a:hover .cs_btn_1.co_1 i::after,
    .cs_btn_1.co_1:hover i::after {
        border-color: var(--co_2);
    }

    a:hover .cs_btn_1.co_2,
    .cs_btn_1.co_2:hover {
        color: var(--co_7);
    }
    a:hover .cs_btn_1.co_2::before,
    .cs_btn_1.co_2:hover::before {
        background-color: var(--co_7);
    }
    a:hover .cs_btn_1.co_2 i,
    .cs_btn_1.co_2:hover i {
        border-color: var(--co_7);
        background-color: var(--co_7);
    }
}
/* si */
.cs_btn_1.si_2 {
    min-width: 180px;
    font-size: 15px;
}
.cs_btn_1.si_2::before {
    content: "";
    position: absolute;
    right: 0;
    bottom: -2px;
    display: block;
    width: 40px;
    height: 2px;
    background-color: var(--co_4);
}
.cs_btn_1.si_2 i {
    right: 0;
    top: 1px;
    width: 21px;
    height: 21px;
}
.cs_btn_1.si_2 i::before {
    width: 8px;
    right: 6px;
}
.cs_btn_1.si_2 i::after {
    width: 6px;
    height: 6px;
    right: 6px;
}

/* ---------------------------------------------------- */
/* cs_btn_2 */
/* ---------------------------------------------------- */
.cs_btn_2 {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    min-width: 300px;
    max-width: max-content;
    height: 60px;
    font-weight: 700;
    background-color: var(--co_2);
    border: 1px solid var(--co_4);
    border-radius: 30px;
    overflow: hidden;
    transition: 0.3s ease-in-out;
}

.cs_btn_2::before {
    content: "";
    position: absolute;
    left: -50px;
    top: 0;
    width: 0;
    height: 100%;
    background-color: var(--co_8);
    transform: skewX(45deg);
    transition: width 0.5s;
}
.cs_btn_2 span {
    position: relative;
}
.cs_btn_2 i {
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
    display: block;
    width: 24px;
    height: 24px;
    border: 1px solid var(--co_4);
    border-radius: 100%;
    transition: 0.3s ease-in-out;
    overflow: hidden;
}
.cs_btn_2 i::before {
    content: "";
    width: 10px;
    height: 1px;
    background-color: var(--co_4);
    position: absolute;
    top: 50%;
    right: 7px;
    transform: translateY(-50%);
    transition: 0.3s ease-in-out;
}
.cs_btn_2 i::after {
    content: "";
    width: 8px;
    height: 8px;
    border-top: 1px solid var(--co_4);
    border-right: 1px solid var(--co_4);
    position: absolute;
    right: 7px;
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
    transition: 0.3s ease-in-out;
}
/* co */
.cs_btn_2.co_1 {
    color: var(--co_4);
    background-color: var(--co_2);
    border-color: var(--co_4);
}
.cs_btn_2.co_1 i {
    border-color: var(--co_4);
}
.cs_btn_2.co_1 i::before {
    background-color: var(--co_4);
}
.cs_btn_2.co_1 i::after {
    border-color: var(--co_4);
}
.cs_btn_2.co_2 {
    color: var(--co_2);
    background-color: var(--co_4);
    border-color: var(--co_4);
}
.cs_btn_2.co_2 i {
    border-color: var(--co_2);
}
.cs_btn_2.co_2 i::before {
    background-color: var(--co_2);
}
.cs_btn_2.co_2 i::after {
    border-color: var(--co_2);
}
.cs_btn_2.co_3 {
    color: var(--co_4);
    background-color: var(--co_2);
    border-color: var(--co_2);
}
.cs_btn_2.co_3 i {
    border-color: var(--co_4);
}
.cs_btn_2.co_3 i::before {
    background-color: var(--co_4);
}
.cs_btn_2.co_3 i::after {
    border-color: var(--co_4);
}
@media (min-width: 1000px) {
    .cs_btn_2:hover {
        color: var(--co_2);
        border: 1px solid var(--co_8);
    }

    .cs_btn_2:hover::before {
        width: 250%;
    }
    .cs_btn_2:hover i {
        border-color: var(--co_2);
    }
    .cs_btn_2:hover i::before {
        background-color: var(--co_2);
    }
    .cs_btn_2:hover i::after {
        border-color: var(--co_2);
    }
}
@media (max-width: 999px) {
    .cs_btn_2 {
        max-width: 300px;
        height: 60px;
    }
}
/* ---------------------------------------------------- */
/* cs_btn_2 */
/* ---------------------------------------------------- */
.cs_btn_3 {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    min-width: 330px;
    max-width: max-content;
    height: 65px;
    font-size: 18px;
    font-weight: 700;
    background-color: var(--co_2);
    /* border: 1px solid var(--co_2); */
    overflow: hidden;
    transition: 0.3s ease-in-out;
}

.cs_btn_3::before {
    content: "";
    position: absolute;
    left: -50px;
    top: 0;
    width: 0;
    height: 100%;
    background-color: #b16e6e;
    transform: skewX(45deg);
    transition: width 0.5s;
}
.cs_btn_3 span {
    position: relative;
}
.cs_btn_3 i {
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
    display: block;
    width: 24px;
    height: 24px;
    border: 1px solid var(--co_4);
    border-radius: 100%;
    transition: 0.3s ease-in-out;
    overflow: hidden;
}
.cs_btn_3 i::before {
    content: "";
    width: 10px;
    height: 1px;
    background-color: var(--co_4);
    position: absolute;
    top: 50%;
    right: 7px;
    transform: translateY(-50%);
    transition: 0.3s ease-in-out;
}
.cs_btn_3 i::after {
    content: "";
    width: 8px;
    height: 8px;
    border-top: 1px solid var(--co_4);
    border-right: 1px solid var(--co_4);
    position: absolute;
    right: 7px;
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
    transition: 0.3s ease-in-out;
}

@media (min-width: 1000px) {
    .cs_btn_3:hover {
        color: var(--co_2);
        /* border: 1px solid var(--co_8); */
    }

    .cs_btn_3:hover::before {
        width: 250%;
    }
    .cs_btn_3:hover i {
        border-color: var(--co_2);
    }
    .cs_btn_3:hover i::before {
        background-color: var(--co_2);
    }
    .cs_btn_3:hover i::after {
        border-color: var(--co_2);
    }
}
@media (max-width: 999px) {
    .cs_btn_3 {
        max-width: 90%;
        height: 60px;
        font-size: 16px;
    }
}
/* ---------------------------------------------------- */
/* cs_btn_4 */
/* ---------------------------------------------------- */
.cs_btn_4 {
    position: relative;
    display: block;
    padding-bottom: 10px;
    min-width: 260px;
    padding-right: 30px;
    max-width: max-content;
    font-weight: 500;
    line-height: 1.2;
    border-bottom: 1px solid var(--co_4);
    transition: 0.3s ease-in-out;
}

.cs_btn_4 i {
    position: absolute;
    right: 0;
    top: -2px;
    display: block;
    width: 24px;
    height: 24px;
    border: 1px solid var(--co_4);
    border-radius: 100%;
    transition: 0.3s ease-in-out;
}
.cs_btn_4 i::before {
    content: "";
    width: 10px;
    height: 1px;
    background-color: var(--co_4);
    position: absolute;
    top: 50%;
    right: 7px;
    transform: translateY(-50%);
    transition: 0.3s ease-in-out;
}
.cs_btn_4 i::after {
    content: "";
    width: 8px;
    height: 8px;
    border-top: 1px solid var(--co_4);
    border-right: 1px solid var(--co_4);
    position: absolute;
    right: 7px;
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
    transition: 0.3s ease-in-out;
}
@media (min-width: 1000px) {
    a:hover .cs_btn_4::before,
    .cs_btn_4:hover::before {
        width: 100%;
    }
}
@media (max-width: 999px) {
    .cs_btn_4 {
        min-width: 180px;
        font-size: 15px;
    }
    .cs_btn_4 i {
        top: -3px;
    }
}
/* co */
.cs_btn_4.co_1 {
    color: var(--co_4);
}
.cs_btn_4.co_1::before {
    background-color: var(--co_4);
}
.cs_btn_4.co_1 i {
    border-color: var(--co_4);
}
.cs_btn_4.co_1 i::before {
    background-color: var(--co_4);
}
.cs_btn_4.co_1 i::after {
    border-color: var(--co_4);
}

.cs_btn_4.co_2 {
    color: var(--co_2);
}
.cs_btn_4.co_2::before {
    background-color: var(--co_2);
}
.cs_btn_4.co_2 i {
    border-color: var(--co_2);
}
.cs_btn_4.co_2 i::before {
    background-color: var(--co_2);
}
.cs_btn_4.co_2 i::after {
    border-color: var(--co_2);
}
@media (min-width: 1000px) {
    a:hover .cs_btn_4.co_1 i,
    .cs_btn_4.co_1:hover i {
        background-color: var(--co_4);
    }
    a:hover .cs_btn_4.co_1 i::before,
    .cs_btn_4.co_1:hover i::before {
        background-color: var(--co_2);
    }
    a:hover .cs_btn_4.co_1 i::after,
    .cs_btn_4.co_1:hover i::after {
        border-color: var(--co_2);
    }
    a:hover .cs_btn_4.co_2,
    .cs_btn_4.co_2:hover {
        color: var(--co_7);
    }
    a:hover .cs_btn_4.co_2::before,
    .cs_btn_4.co_2:hover::before {
        background-color: var(--co_7);
    }
    a:hover .cs_btn_4.co_2 i,
    .cs_btn_4.co_2:hover i {
        border-color: var(--co_7);
        background-color: var(--co_7);
    }
}
/* si */
.cs_btn_4.si_2 {
    min-width: 180px;
    font-size: 15px;
}
.cs_btn_4.si_2::before {
    content: "";
    position: absolute;
    right: 0;
    bottom: -2px;
    display: block;
    width: 40px;
    height: 2px;
    background-color: var(--co_4);
}
.cs_btn_4.si_2 i {
    right: 0;
    top: 1px;
    width: 21px;
    height: 21px;
}
.cs_btn_4.si_2 i::before {
    width: 8px;
    right: 6px;
}
.cs_btn_4.si_2 i::after {
    width: 6px;
    height: 6px;
    right: 6px;
}
/* ic */
.cs_btn_4.ic_2 i {
    transform: rotate(90deg);
}

/* ---------------------------------------------------- */
/* cs_btn_5 */
/* ---------------------------------------------------- */
.cs_btn_5 {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    min-width: 370px;
    max-width: max-content;
    height: 60px;
    padding: 0 10px;
    font-weight: 700;
    text-align: center;
    background-color: var(--co_2);
    border: 1px solid var(--co_4);
    overflow: hidden;
    transition: 0.3s ease-in-out;
}

.cs_btn_5::before {
    content: "";
    position: absolute;
    left: -50px;
    top: 0;
    width: 0;
    height: 100%;
    background-color: var(--co_8);
    transform: skewX(45deg);
    transition: width 0.5s;
}
.cs_btn_5 span {
    position: relative;
    width: 100%;
}
.cs_btn_5 i {
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    display: block;
    width: 24px;
    height: 24px;
    /* border: 1px solid var(--co_4); */
    border-radius: 100%;
    transition: 0.3s ease-in-out;
    overflow: hidden;
}
.cs_btn_5 i::before {
    content: "";
    width: 10px;
    height: 2px;
    background-color: var(--co_4);
    position: absolute;
    top: 50%;
    right: 7px;
    transform: translateY(-50%);
    transition: 0.3s ease-in-out;
}
.cs_btn_5 i::after {
    content: "";
    width: 8px;
    height: 8px;
    border-top: 2px solid var(--co_4);
    border-right: 2px solid var(--co_4);
    position: absolute;
    right: 7px;
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
    transition: 0.3s ease-in-out;
}
/* co */
.cs_btn_5.co_1 {
    color: var(--co_4);
    background-color: var(--co_2);
    border-color: var(--co_4);
}
.cs_btn_5.co_1 i {
    border-color: var(--co_4);
}
.cs_btn_5.co_1 i::before {
    background-color: var(--co_4);
}
.cs_btn_5.co_1 i::after {
    border-color: var(--co_4);
}
.cs_btn_5.co_2 {
    color: var(--co_2);
    background-color: var(--co_4);
    border-color: var(--co_4);
}
.cs_btn_5.co_2 i {
    border-color: var(--co_2);
}
.cs_btn_5.co_2 i::before {
    background-color: var(--co_2);
}
.cs_btn_5.co_2 i::after {
    border-color: var(--co_2);
}
.cs_btn_5.co_3 {
    color: var(--co_2);
    background-color: var(--co_7);
    border-color: var(--co_7);
}
.cs_btn_5.co_3 i {
    border-color: var(--co_2);
}
.cs_btn_5.co_3 i::before {
    background-color: var(--co_2);
}
.cs_btn_5.co_3 i::after {
    border-color: var(--co_2);
}
/* si */
.cs_btn_5.si_2 {
    min-width: 300px;
    height: 50px;
    font-size: 16px;
    text-align: left;
}
.cs_btn_5.si_3 {
    min-width: 400px;
    height: 70px;
}
/* ic */
.cs_btn_5.ic_3 i {
    right: auto;
    left: 10px;
    transform: translateY(-50%) scaleX(-1);
}

@media (min-width: 1000px) {
    .cs_btn_5:hover {
        color: var(--co_2);
        border-color: var(--co_8);
    }

    .cs_btn_5:hover::before {
        width: 250%;
    }
    .cs_btn_5:hover i {
        border-color: var(--co_2);
    }
    .cs_btn_5:hover i::before {
        background-color: var(--co_2);
    }
    .cs_btn_5:hover i::after {
        border-color: var(--co_2);
    }
    .cs_btn_5.co_3:hover {
        color: var(--co_2);
        border-color: var(--co_12);
    }
    .cs_btn_5.co_3::before {
        background-color: var(--co_12);
    }
}
@media (max-width: 999px) {
    .cs_btn_5 {
        min-width: auto !important;
        max-width: 90% !important;
        height: 60px;
    }
}
/* ---------------------------------------------------- */
/* cs_btn_9 */
/* ---------------------------------------------------- */
.cs_btn_9 {
    position: relative;
    display: block;
    width: 640px;
    padding: 20px 10px;
    color: var(--co_2);
    text-align: center;
    line-height: 1.2;
    background-color: var(--co_16);
    border-radius: 10px;
    transition: 0.3s ease-in-out;
}
.cs_btn_9 > span:nth-of-type(1) {
    display: block;
    margin-bottom: 10px;
    font-size: 15px;
}
.cs_btn_9 > span:nth-of-type(2) {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 10px;
    font-size: 52px;
    font-weight: 700;
}
.cs_btn_9 > span:nth-of-type(2)::before {
    content: "";
    display: block;
    margin-right: 10px;
    width: 40px;
    height: 40px;
    background-image: url(../img/ico/tel_1.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}
.cs_btn_9 > span:nth-of-type(3) {
    display: block;
    font-size: 14px;
}
@media (max-width: 999px) {
    .cs_btn_9 {
        padding: 20px 10px;
        width: auto;
    }
    .cs_btn_9 > span:nth-of-type(1) {
        font-size: 15px;
    }
    .cs_btn_9 > span:nth-of-type(2) {
        font-size: 34px;
    }
    .cs_btn_9 > span:nth-of-type(2)::before {
        margin-right: 5px;
        width: 30px;
        height: 30px;
    }
    .cs_btn_9 > span:nth-of-type(3) {
        font-size: 14px;
    }
}
/* ---------------------------------------------------- */
/* sec_layout_wrap */
/* ---------------------------------------------------- */
.cs_layout_1 > * + * {
    margin-top: 40px;
}

.cs_layout_1 * + .list_img {
    margin-top: 60px;
}

.cs_layout_1 .ttl_1 {
    font-size: 25px;
    font-weight: 700;
}
.cs_layout_1 .desc_1 {
    line-height: 2;
}
.cs_layout_1 .desc_2 {
    font-size: 14px;
}

.cs_layout_1 .list_1 > ul {
    display: flex;
    flex-wrap: wrap;
    margin-right: -30px;
    margin-bottom: -60px;
}

.cs_layout_1 .list_1 > ul > li {
    margin-right: 30px;
    margin-bottom: 60px;
    width: calc(100% - 30px);
}

.cs_layout_1 .list_1.col_2 > ul > li {
    width: calc(100% / 2 - 30px);
}
.cs_layout_1 .list_1 .img {
    width: 100%;
}

.cs_layout_1 .list_1.ratio_1 .img > span {
    padding-top: 100%;
}
.cs_layout_1 .list_1.ratio_2 .img > span {
    padding-top: 65%;
}
.cs_layout_1 .list_1.ratio_3 .img > span {
    padding-top: 150%;
}

.cs_layout_1 .list_1 .caption_1 {
    margin-top: 10px;
    font-size: 15px;
}
.cs_layout_1 .list_1.col_3 > ul > li {
    width: calc(100% / 2 - 30px);
}

.cs_layout_1 .list_1.col_3 > ul > li:nth-child(1) > .img > span {
    padding-top: 150%;
}
.cs_layout_1 .list_1.col_3 > ul > li:nth-child(2) > .img > span {
    padding-top: 73%;
}
.cs_layout_1 .list_1.col_3 > ul > li:nth-child(2) > .img + .img {
    margin-top: 18px;
}

@media (max-width: 999px) {
    .cs_layout_1 > * + * {
        margin-top: 20px;
    }

    .cs_layout_1 * + .list_img {
        margin-top: 40px;
    }

    .cs_layout_1 .ttl_1 {
        font-size: 18px;
    }
    .cs_layout_1 .desc_2 {
        font-size: 12px;
    }

    .cs_layout_1 .list_1 > ul {
        margin-right: 0;
        margin-bottom: -20px;
    }

    .cs_layout_1 .list_1 > ul > li {
        margin-right: 0;
        margin-bottom: 20px;
        width: 100%;
    }

    .cs_layout_1 .list_1.col_2 > ul > li {
        width: 100%;
    }

    .cs_layout_1 .list_1 .caption_1 {
        margin-top: 5px;
        font-size: 13px;
    }

    .cs_layout_1 .list_1.col_3 > ul > li {
        width: 100%;
    }
}

/* ---------------------------------------------------- */
/* cs_slick_1 */
/* ---------------------------------------------------- */
.cs_slick_1 .slick-next,
.cs_slick_1 .slick-prev {
    position: absolute;
    display: block;
    width: 60px;
    height: 240px;
    border: none;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    padding: 0;
    outline: 0;
    z-index: 10;
    cursor: pointer;
    transition: 0.3s ease-in-out;
}

.cs_slick_1 .slick-prev {
    transform: scaleX(-1);
}

.cs_slick_1 .slick-next::before,
.cs_slick_1 .slick-prev::before {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    height: 25%;
    background-color: var(--co_4);
    border-radius: 100%;
    transition: 0.3s ease-in-out;
}
.cs_slick_1 .slick-next::after,
.cs_slick_1 .slick-prev::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 50%;
    height: 50%;
    background-image: url(../img/ico/arrow_2.svg);
    background-size: 50% auto;
    background-repeat: no-repeat;
    background-position: center;
}

.cs_slick_1 .slick-dots {
    position: relative;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    width: 100%;
    padding: 0;
    margin: 0;
    margin-top: 50px;
    list-style: none;
    text-align: center;
}

.cs_slick_1 .slick-dots li {
    position: relative;
    display: block;
    width: 30px;
    height: 30px;
    margin: 0 5px;
    padding: 0;
    cursor: pointer;
}

.cs_slick_1 .slick-dots button {
    position: relative;
    font-size: 0;
    line-height: 0;
    display: block;
    padding: 0;
    width: 100%;
    height: 100%;
    cursor: pointer;
    color: transparent;
    border: 0;
    /* outline: none; */
    background: transparent;
    transition: 0.3s ease-in-out;
}

.cs_slick_1 .slick-dots button:hover,
.cs_slick_1 .slick-dots button:focus {
    /* outline: none; */
}

.cs_slick_1 .slick-dots button:hover:before,
.cs_slick_1 .slick-dots button:focus:before {
    opacity: 1;
}

.cs_slick_1 .slick-dots button::before {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    display: block;
    width: 10px;
    height: 10px;
    background-color: var(--co_4);
    border-radius: 50%;
    transition: 0.3s ease-in-out;
}

.cs_slick_1 .slick-dots .slick-active button::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    display: block;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    border: 1px solid var(--co_4);
}
@media (min-width: 1000px) {
    .cs_slick_1 .slick-dots button:hover::before {
        opacity: 0.6;
    }
    .cs_slick_1 .slick-next:hover,
    .cs_slick_1 .slick-prev:hover {
        filter: brightness(1.2);
    }
}
@media (max-width: 999px) {
    .cs_slick_1 .slick-next,
    .cs_slick_1 .slick-prev {
        width: 35px;
        height: 140px;
    }

    .cs_slick_1 .slick-dots {
        margin-top: 25px;
    }
    .cs_slick_1 .slick-dots li {
        width: 26px;
        height: 26px;
    }
    .cs_slick_1 .slick-dots button::before {
        width: 6px;
        height: 6px;
    }
}

/* ---------------------------------------------------- */
/* cs_nav_1 */
/* ---------------------------------------------------- */
.cs_nav_1 > ul {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin-right: -30px;
    margin-bottom: -20px;
}
.cs_nav_1 > ul > li {
    position: relative;
    margin-right: 30px;
    margin-bottom: 20px;
    padding-right: 30px;
}

/* .cs_nav_1 > ul > li::after {
    content: "";
    position: absolute;
    right: 0;
    top: -5px;
    display: block;
    width: 2px;
    height: 30px;
    background-color: var(--co_4);
    transform: rotate(45deg);
} */

.cs_nav_1 > ul > li:last-child {
    padding-right: 0;
}
.cs_nav_1 > ul > li:last-child::after {
    display: none;
}
.cs_nav_1 a {
    display: block;
    padding-bottom: 10px;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
}

.cs_nav_1 .current-cat a {
    border-bottom: 2px solid var(--co_4);
}

@media (min-width: 1000px) {
    .cs_nav_1 a:hover {
        opacity: 0.6;
    }
}

@media (max-width: 999px) {
    .cs_nav_1 > ul {
        justify-content: flex-start;
        margin-right: -10px;
        margin-bottom: -10px;
    }
    .cs_nav_1 > ul > li {
        margin-right: 10px;
        margin-bottom: 10px;
        padding-right: 0;
        width: calc(100% / 2 - 10px);
    }

    .cs_nav_1 > ul > li::after {
        display: none;
    }

    .cs_nav_1 a {
        display: block;
        padding-bottom: 0;
        padding: 10px 5px;
        font-size: 12px;
        font-weight: 400;
        background-color: #f0f0f0;
    }
    .cs_nav_1 .current-cat a {
        color: var(--co_2);
        background-color: var(--co_16);
        border: none;
    }
}
/* ---------------------------------------------------- */
/* cs_nav_2 */
/* ---------------------------------------------------- */
* + .cs_nav_2 {
    margin-top: 30px;
}
.cs_nav_2 > ul {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin-right: -20px;
    margin-bottom: -20px;
}
.cs_nav_2 > ul {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin-right: -20px;
    margin-bottom: -20px;
}
.cs_nav_2 > ul > li {
    position: relative;
    margin-right: 20px;
    margin-bottom: 20px;
}

.cs_nav_2 .btn_all {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 210px;
    height: 40px;
    color: var(--co_2);
    font-weight: 700;
    background-color: var(--co_4);
}
.cs_nav_2 .btn_month {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 210px;
    height: 40px;
    font-weight: 700;
    background-color: var(--co_2);
    border: 1px solid var(--co_4);
}
.cs_nav_2 .btn_month i {
    position: absolute;
    right: 2px;
    top: 50%;
    transform: translateY(-50%) rotate(90deg);
    width: 24px;
    height: 24px;
    z-index: 3;
    transition: 0.3s ease-in-out;
}
.cs_nav_2 .btn_month.is_show i {
    transform: translateY(-50%) rotate(-90deg);
}
.cs_nav_2 .btn_month i::before {
    content: "";
    width: 10px;
    height: 1px;
    background-color: var(--co_4);
    position: absolute;
    top: 50%;
    right: 7px;
    transform: translateY(-50%);
    transition: 0.3s ease-in-out;
}
.cs_nav_2 .btn_month i::after {
    content: "";
    width: 8px;
    height: 8px;
    border-top: 1px solid var(--co_4);
    border-right: 1px solid var(--co_4);
    position: absolute;
    right: 7px;
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
    transition: 0.3s ease-in-out;
}
.cs_nav_2 .btn_month select {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    cursor: pointer;
}
.cs_nav_2 .toggle_wrap {
    display: none;
    position: absolute;
    left: 0;
    bottom: 1px;
    transform: translateY(100%);
    padding: 20px;
    width: 100%;
    background-color: var(--co_2);
    border: 1px solid var(--co_4);
    z-index: 2;
}
.cs_nav_2 .toggle_wrap > ul {
    display: flex;
    flex-wrap: wrap;
    margin-right: -10px;
    margin-bottom: -10px;
}
.cs_nav_2 .toggle_wrap > ul > li {
    margin-right: 10px;
    margin-bottom: 10px;
    width: calc(100% / 2 - 10px);
}
.cs_nav_2 .toggle_wrap a {
    display: block;
    font-size: 15px;
}

@media (min-width: 1000px) {
    .cs_nav_2 a:hover {
        opacity: 0.6;
    }
}
@media (max-width: 999px) {
    .cs_nav_2 > ul {
        flex-wrap: wrap;
        margin-right: 0;
        margin-bottom: -10px;
    }
    .cs_nav_2 > ul > li {
        margin-right: 0;
        margin-bottom: 10px;
        width: 100%;
    }
    .cs_nav_2 .btn_all {
        width: auto;
        height: 40px;
    }
    .cs_nav_2 .btn_month {
        width: auto;
        height: 40px;
    }
}
/* ---------------------------------------------------- */
/* cs_nav_3 */
/* ---------------------------------------------------- */
.cs_nav_3 {
    margin: 70px 0;
}
.cs_nav_3 > ul {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin-right: -20px;
    margin-bottom: -20px;
}
.cs_nav_3 > ul {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin-right: -20px;
    margin-bottom: -20px;
}
.cs_nav_3 > ul > li {
    position: relative;
    margin-right: 20px;
    margin-bottom: 20px;
}

.cs_nav_3 .btn_toggle {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 210px;
    height: 40px;
    font-weight: 700;
    background-color: var(--co_2);
    border: 1px solid var(--co_4);
}
.cs_nav_3 .btn_cat {
    color: var(--co_2);
    background-color: var(--co_4);
}
.cs_nav_3 .btn_toggle i {
    position: absolute;
    right: 2px;
    top: 50%;
    transform: translateY(-50%) rotate(90deg);
    width: 24px;
    height: 24px;
    z-index: 3;
    transition: 0.3s ease-in-out;
}
.cs_nav_3 .btn_toggle.is_show i {
    transform: translateY(-50%) rotate(-90deg);
}
.cs_nav_3 .btn_toggle i::before {
    content: "";
    width: 10px;
    height: 1px;
    background-color: var(--co_4);
    position: absolute;
    top: 50%;
    right: 7px;
    transform: translateY(-50%);
    transition: 0.3s ease-in-out;
}
.cs_nav_3 .btn_toggle i::after {
    content: "";
    width: 8px;
    height: 8px;
    border-top: 1px solid var(--co_4);
    border-right: 1px solid var(--co_4);
    position: absolute;
    right: 7px;
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
    transition: 0.3s ease-in-out;
}
.cs_nav_3 .btn_toggle select {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    cursor: pointer;
}
.cs_nav_3 .btn_cat i::before {
    background-color: var(--co_2);
}
.cs_nav_3 .btn_cat i::after {
    border-color: var(--co_2);
}
.cs_nav_3 .toggle_wrap {
    display: none;
    position: absolute;
    left: 0;
    bottom: 1px;
    transform: translateY(100%);
    padding: 20px;
    width: 100%;
    background-color: var(--co_2);
    border: 1px solid var(--co_4);
    z-index: 5;
}
.cs_nav_3 .toggle_wrap > ul {
    display: flex;
    flex-wrap: wrap;
    margin-right: -10px;
    margin-bottom: -10px;
}
.cs_nav_3 .toggle_wrap > ul > li {
    margin-right: 10px;
    margin-bottom: 10px;
    width: calc(100% / 2 - 10px);
}
.cs_nav_3 .toggle_wrap a {
    display: block;
    font-size: 15px;
}
@media (min-width: 1000px) {
    .cs_nav_3 a:hover {
        opacity: 0.6;
    }
}
@media (max-width: 999px) {
    .cs_nav_3 {
        margin: 40px 0;
    }
    .cs_nav_3 > ul {
        flex-wrap: wrap;
        margin-right: 0;
        margin-bottom: -10px;
    }
    .cs_nav_3 > ul > li {
        margin-right: 0;
        margin-bottom: 10px;
        width: 100%;
    }

    .cs_nav_3 .btn_toggle {
        width: auto;
        height: 40px;
    }
}
/* ---------------------------------------------------- */
/* cs_nav_4 */
/* ---------------------------------------------------- */
.cs_nav_4 ul {
    display: flex;
    flex-wrap: wrap;
    margin-right: -10px;
    margin-bottom: -20px;
}
.cs_nav_4 > ul > li {
    margin-right: 10px;
    margin-bottom: 20px;
}
.cs_nav_4 a {
    display: block;
    padding: 5px 10px;
    line-height: 1.2;
    text-align: center;
    background-color: #f0f0f0;
}
.cs_nav_4 .current-cat a {
    color: var(--co_2);
    background-color: var(--co_16);
}

.cs_nav_4 a::before {
    content: "#";
}
@media (min-width: 1000px) {
    .cs_nav_4 a:hover {
        opacity: 0.6;
    }
}
@media (max-width: 999px) {
    .cs_nav_4 > ul {
        margin-right: -10px;
        margin-bottom: -10px;
    }
    .cs_nav_4 > ul > li {
        margin-right: 10px;
        margin-bottom: 10px;
        width: calc(100% / 3 - 10px);
    }
    .cs_nav_4 a {
        padding: 5px 5px;
        font-size: 11px;
    }
}

/* ---------------------------------------------------- */
/* cs_archive_item_1 */
/* ---------------------------------------------------- */

#recommend .flex_frame {
    align-items: end;
    justify-content: center;
    gap: 50px;
}
.cs_archive_item_1 {
    position: relative;
    padding-top: 25px;
    padding-bottom: 70px;
    height: 100%;
}
.cs_archive_item_1 .new::before {
    content: "NEW!";
    position: absolute;
    left: 0;
    top: 5px;
    font-family: "Josefin Sans", "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
    color: var(--co_7);
    font-size: 18px;
    font-weight: 700;
    line-height: 1;
    font-style: normal;
}
.cs_archive_item_1 .url::after {
    content: "特設サイト";
    position: absolute;
    left: 0;
    top: -4px;
    font-size: 15px;
    padding: 7px 10px;
    background-color: var(--co_7);
    color: #fff;
    font-weight: 700;
    line-height: 1;
    font-style: normal;
}
.cs_archive_item_1 .url.new::after {
    left: 60px;
}
.cs_archive_item_1 .ico_mh {
    position: absolute;
    right: -10px;
    top: 0;
    width: 110px;
    height: 72px;
    background-image: url(../../property/img/ico_1.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    z-index: 2;
}
.cs_archive_item_1 .ico_pd {
    position: absolute;
    right: 10px;
    bottom: 10px;
    width: 80px;
    height: 60px;
    background-image: url(../../property/img/ico_2.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    z-index: 2;
}
.cs_archive_item_1 a {
    position: relative;
    display: block;
    width: 100%;
}
.cs_archive_item_1 .img {
    margin-bottom: 15px;
}
.cs_archive_item_1 .img > span {
    padding-top: 68%;
    background-image: url(../img/thumb/blank_1.svg);
}

.cs_archive_item_1 .tax {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    margin-bottom: 10px;
    width: 100%;
}

.cs_archive_item_1 .tax > span {
    padding: 5px;
    width: 100%;
    font-size: 13px;
    font-weight: 700;
    line-height: 1;
    text-align: center;
    background-color: var(--co_2);
    border: 1px solid var(--co_4);
}
.cs_archive_item_1 .tax .cat {
    color: var(--co_2);
}
.cs_archive_item_1 .tax > span:nth-of-type(2) {
    width: 50%;
}

.cs_archive_item_1 .tax > span:nth-of-type(3) {
    width: 50%;
    border-left: none;
}

.cs_archive_item_1 .ttl {
    display: flex;
    align-content: flex-start;
    flex-wrap: wrap;
    padding-bottom: 10px;
    margin-bottom: 10px;
    min-height: 3.5em;
    font-size: 18px;
    font-weight: 700;
    border-bottom: 1px solid var(--co_10);
}

.cs_archive_item_1 .ttl > span {
    width: 100%;
    font-size: 13px;
}

.cs_archive_item_1 .data {
    font-size: 13px;
    width: 100%;
    height: 120px;
    margin-bottom: 10px;
}

.sml .cs_archive_item_1 .data {
    height: 95px;
}

#recommend .cs_archive_item_1 .data {
    min-height: 120px;
    height: auto;
}
.cs_archive_item_1 .data > ul > li {
    display: flex;
}
.cs_archive_item_1 .data > ul > li + li {
    margin-top: 5px;
}
.cs_archive_item_1 .data > ul > li > span:nth-of-type(1) {
    flex: initial;
    width: auto;
    white-space: nowrap;
}
.cs_archive_item_1 .data > ul > li > span:nth-of-type(1)::after {
    content: "／";
}

.cs_archive_item_1 .data .price {
    font-size: 18px;
    font-weight: 700;
    line-height: 1;
}
.cs_archive_item_1 .btn_wrap {
    display: flex;
    width: 100%;
}

.cs_archive_item_1 .btn_wrap .btn {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0 15px;
    width: 50%;
    height: 45px;
    color: var(--co_2);
    font-size: 13px;
    font-weight: 700;
    background-color: var(--co_7);
    overflow: hidden;
}
.cs_archive_item_1 .btn_wrap .btn i {
    position: absolute;
    right: 2px;
    top: 50%;
    transform: translateY(-50%);
    width: 24px;
    height: 24px;
    z-index: 3;
}
.cs_archive_item_1 .btn_wrap .btn span {
    position: relative;
    z-index: 3;
}
.cs_archive_item_1 .btn_wrap .btn::before {
    content: "";
    position: absolute;
    left: -50px;
    top: 0;
    width: 0;
    height: 100%;
    background-color: var(--co_1);
    z-index: -1;
    transform: skewX(45deg);
    transition: width 0.5s;
    opacity: 0.2;
    z-index: 2;
}
.cs_archive_item_1 .btn_wrap .btn i::before {
    content: "";
    width: 10px;
    height: 1px;
    background-color: var(--co_2);
    position: absolute;
    top: 50%;
    right: 7px;
    transform: translateY(-50%);
    transition: 0.3s ease-in-out;
}
.cs_archive_item_1 .btn_wrap .btn i::after {
    content: "";
    width: 8px;
    height: 8px;
    border-top: 1px solid var(--co_2);
    border-right: 1px solid var(--co_2);
    position: absolute;
    right: 7px;
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
    transition: 0.3s ease-in-out;
}
.cs_archive_item_1.cat_kodate .cat {
    background-color: var(--co_8);
    border-color: var(--co_8);
}
.cs_archive_item_1.cat_tochi .cat {
    background-color: var(--co_6);
    border-color: var(--co_6);
}
.cs_archive_item_1.cat_kodate .btn_wrap .btn_single {
    background-color: var(--co_8);
}
.cs_archive_item_1.cat_tochi .btn_wrap .btn_single {
    background-color: var(--co_6);
}
@media (min-width: 1000px) {
    .cs_archive_item_1 .btn_wrap .btn:hover {
        border-color: var(--co_8);
    }
    .cs_archive_item_1 .btn_wrap .btn_contact:hover {
        border-color: var(--co_12);
    }
    .cs_archive_item_1 .btn_wrap .btn:hover::before {
        width: 250%;
    }
}
@media (max-width: 999px) {

    #recommend .flex_frame {
        gap: 0;
        margin-bottom: 15px;
    }
    .cs_archive_item_1 {
        padding-bottom: 0;
    }

    .cs_archive_item_1 .ico_mh {
        right: 5px;
        top: 0;
        height: 56px;
        background-image: url(../../property/img/ico_1_sp.svg);
        z-index: 2;
    }
    .cs_archive_item_1 a {
        display: block;
    }
    .cs_archive_item_1 .img {
        margin-bottom: 10px;
    }

    .cs_archive_item_1 .ttl {
        justify-content: flex-start;
        padding-bottom: 10px;
        margin-bottom: 10px;
        min-height: auto;
        font-size: 18px;
    }

    .cs_archive_item_1 .data {
        min-height: auto;
    }

    #recommend .cs_archive_item_1 .data {
        min-height: auto;
    }

    .cs_archive_item_1 .btn_wrap {
        position: static;
        margin-top: 10px;
    }

    .cs_archive_item_1 .btn_wrap .btn {
        width: 80%;
        justify-content: flex-start;
        height: 40px;
        font-size: 11px;
    }

    .cs_archive_item_1 .btn_wrap .btn + .btn {
        margin-left: 10px;
    }
}
/* ---------------------------------------------------- */
/* cs_archive_item_2 */
/* ---------------------------------------------------- */
.cs_archive_item_2 {
    position: relative;
}
.cs_archive_item_2 > div {
    height: 100%;
}
.cs_archive_item_2 .ico_mh {
    position: absolute;
    right: 10px;
    width: 110px;
    height: 72px;
    background-image: url(../../property/img/ico_1.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    transform: translateY(10px);
    z-index: 2;
}
.cs_archive_item_2 .ico_pd {
    position: absolute;
    right: 0;
    display: block;
    width: 110px;
    height: 80px;
    background-image: url(../../property/img/ico_2.svg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    transform: translateY(-70px);
    z-index: 2;
}

.cs_archive_item_2 a {
    position: relative;
    display: block;
    padding-bottom: 50px;
    height: 100%;
}

.cs_archive_item_2 .img {
    margin-bottom: 20px;
}
.cs_archive_item_2 .img > span {
    padding-top: 68%;
    background-image: url(../img/thumb/blank_1.svg);
}

.cs_archive_item_2 .tax {
    display: flex;
    align-items: center;
    margin-bottom: 10px;
}

.cs_archive_item_2 .tax > span {
    padding: 5px 20px;
    min-width: 140px;
    font-weight: 700;
    line-height: 1;
    white-space: nowrap;
    text-align: center;
    background-color: var(--co_2);
    border: 1px solid var(--co_4);
}

.cs_archive_item_2 .tax .cat {
    color: var(--co_2) !important;
}
.cs_archive_item_2 .tax > span:nth-of-type(3) {
    border-left: none;
}

.cs_archive_item_2 .ttl {
    display: flex;
    flex-wrap: wrap;
    align-content: flex-start;
    margin-bottom: 5px;
    min-height: 3em;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.4;
    transition: 0.3s ease-in-out;
}
.cs_archive_item_2 .ttl > span {
    display: block;
    width: 100%;
    font-size: 16px;
}

.cs_archive_item_2 .btn {
    position: absolute;
    left: 0;
    bottom: 1px;
}

.cs_archive_item_2 .data {
    position: relative;
    font-size: 13px;
}
.cs_archive_item_2 .data > ul {
    display: flex;
    flex-wrap: wrap;
    margin-right: -15px;
    margin-bottom: -5px;
}
.cs_archive_item_2 .data > ul > li {
    display: flex;
    margin-right: 15px;
    margin-bottom: 5px;
}
.cs_archive_item_2 .data > ul > li.l1 {
    width: 100%;
}
.cs_archive_item_2 .data > ul > li > span:nth-of-type(1) {
    flex: initial;
    width: auto;
}
.cs_archive_item_2 .data > ul > li > span:nth-of-type(1)::after {
    content: "／";
}

.cs_archive_item_2 .desc {
    padding-top: 15px;
    margin-top: 15px;
    font-size: 14px;
    overflow: hidden;
    display: -webkit-box;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    border-top: 1px solid var(--co_10);
}
.cs_archive_item_2 .cat_kodate .tax > span {
    color: var(--co_8);
    border-color: var(--co_8);
}
.cs_archive_item_2 .cat_kodate .cat {
    background-color: var(--co_8);
}

.cs_archive_item_2 .cat_tochi .tax > span {
    color: var(--co_6);
    border-color: var(--co_6);
}
.cs_archive_item_2 .cat_tochi .cat {
    background-color: var(--co_6);
}
@media (min-width: 1000px) {
    .cs_archive_item_2 a:hover .ttl {
        color: var(--co_5);
    }
}
@media (max-width: 999px) {
    .cs_archive_item_2 a {
        position: relative;
        display: block;
        padding-bottom: 50px;
    }
    .cs_archive_item_2 .ico_mh {
        right: 10px;
        width: 100px;
        height: 54px;
        background-image: url(../../property/img/ico_1_sp.svg);
        transform: translateY(10px);
    }
    .cs_archive_item_2 .ico_pd {
        width: 60px;
        height: 45px;
        transform: translateY(-45px);
    }

    .cs_archive_item_2 .img {
        margin-bottom: 20px;
    }
    .cs_archive_item_2 .img > span {
        padding-top: 68%;
        background-image: url(../img/thumb/blank_1.svg);
    }

    .cs_archive_item_2 .tax > span {
        padding: 5px 10px;
        min-width: 100px;
        font-size: 12px;
    }
    .cs_archive_item_2 .ttl {
        font-size: 18px;
    }
    .cs_archive_item_2 .ttl > span {
        font-size: 14px;
    }
    .cs_archive_item_2 .btn {
        position: absolute;
        left: 0;
        bottom: 0;
    }

    .cs_archive_item_2 .desc {
        padding-top: 10px;
        margin-top: 10px;
        font-size: 13px;
        -webkit-line-clamp: 3;
    }
}

/* ---------------------------------------------------- */
/* cs_archive_item_3 */
/* ---------------------------------------------------- */
.cs_archive_item_3 {
    position: relative;
    padding-bottom: 80px;
    height: 100%;
}

.cs_archive_item_3 a {
    display: block;
}
.cs_archive_item_3 .img {
    margin-bottom: 15px;
}
.cs_archive_item_3 .img > span {
    padding-top: 71%;
    background-image: url(../img/thumb/blank_1.svg);
}

.cs_archive_item_3 .ttl {
    display: flex;
    align-content: flex-start;
    flex-wrap: wrap;
    margin-bottom: 10px;
    min-height: 2.5em;
    font-size: 24px;
    line-height: 1.4;
    font-weight: 700;
}
.cs_archive_item_3 .ttl > span {
    width: 100%;
    font-size: 16px;
}
.cs_archive_item_3 .tax {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    margin: 0 auto 20px;
    /* max-width: 350px; */
}
.cs_archive_item_3 .tax > span {
    padding: 5px 10px;
    width: calc(100% / 2 - 1px);
    color: var(--co_4);
    font-size: 15px;
    font-weight: 700;
    line-height: 1;
    text-align: center;
    background-color: var(--co_2);
}
.cs_archive_item_3 .tax .cat {
    width: 100%;
    color: var(--co_2) !important;
    background-color: rgba(255, 255, 255, 0.4);
}
.cs_archive_item_3 .tax > span:nth-of-type(3) {
    margin-left: 1px;
}

.cs_archive_item_3 .data {
    position: relative;
    /* margin: 0 40px; */
}
.cs_archive_item_3 .data > ul::before {
    content: "";
    position: absolute;
    left: 80px;
    top: 0;
    width: 1px;
    height: 100%;
    background-color: var(--co_2);
}

.cs_archive_item_3 .data:not(.is_show) > ul + ul {
    margin-top: 5px;
    height: 0;
    opacity: 0;
    transition: 0.3s ease-in-out;
    overflow: hidden;
}
.cs_archive_item_3 .data > ul > li {
    display: flex;
}
.cs_archive_item_3 .data > ul > li + li {
    margin-top: 5px;
}
.cs_archive_item_3 .data > ul > li > span:nth-of-type(1) {
    flex: none;
    width: 100px;
    white-space: nowrap;
}

.cs_archive_item_3 .data .price {
    font-size: 18px;
    font-weight: 700;
    line-height: 1;
}
.cs_archive_item_3 .btn_toggle {
    margin: 20px auto 0;
    border-color: var(--co_2);
}
.cs_archive_item_3 .btn_toggle > span::after {
    content: "をさらに表示する";
}

.cs_archive_item_3 .btn_toggle.is_show > span::after {
    content: "を閉じる";
}

.cs_archive_item_3 .btn_toggle.is_show i {
    transform: rotate(-90deg);
}
.cs_archive_item_3 .btn_wrap {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    padding: 0 10px;
    display: flex;
    justify-content: center;
}

.cs_archive_item_3 .btn_wrap .btn {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 auto;
    width: calc(100% / 2 - 10px);
    height: 45px;
    color: var(--co_2);
    font-size: 13px;
    font-weight: 700;
    border: 1px solid var(--co_2);
    overflow: hidden;
}
.cs_archive_item_3 .btn_wrap .btn::before {
    content: "";
    position: absolute;
    left: -50px;
    top: 0;
    width: 0;
    height: 100%;
    background-color: var(--co_8);
    z-index: -1;
    transform: skewX(45deg);
    transition: width 0.5s;
    z-index: 2;
}
.cs_archive_item_3 .btn_wrap .btn_contact::before {
    background-color: var(--co_12);
}
.cs_archive_item_3 .btn_wrap .btn + .btn {
    margin-left: 20px;
}
.cs_archive_item_3 .btn_wrap .btn span {
    position: relative;
    z-index: 2;
}
.cs_archive_item_3 .btn_wrap .btn i {
    position: absolute;
    right: 2px;
    top: 50%;
    transform: translateY(-50%);
    width: 24px;
    height: 24px;
    z-index: 2;
}
.cs_archive_item_3 .btn_wrap .btn i::before {
    content: "";
    width: 10px;
    height: 1px;
    background-color: var(--co_2);
    position: absolute;
    top: 50%;
    right: 7px;
    transform: translateY(-50%);
    transition: 0.3s ease-in-out;
}
.cs_archive_item_3 .btn_wrap .btn i::after {
    content: "";
    width: 8px;
    height: 8px;
    border-top: 1px solid var(--co_2);
    border-right: 1px solid var(--co_2);
    position: absolute;
    right: 7px;
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
    transition: 0.3s ease-in-out;
}

.cs_archive_item_3 .btn_wrap .btn_contact {
    background-color: var(--co_7);
    border-color: var(--co_7);
}
.cs_archive_item_3 .cat_kodate .tax > span {
    color: var(--co_8);
}
.cs_archive_item_3 .cat_tochi .tax > span {
    color: var(--co_6);
}
@media (min-width: 1000px) {
    .cs_archive_item_3 .btn_wrap .btn:hover {
        border-color: var(--co_8);
    }
    .cs_archive_item_3 .btn_wrap .btn_contact:hover {
        border-color: var(--co_12);
    }
    .cs_archive_item_3 .btn_wrap .btn:hover::before {
        width: 250%;
    }
}
@media (max-width: 999px) {
    .cs_archive_item_3 {
        padding-bottom: 120px;
    }

    .cs_archive_item_3 .img {
        margin-bottom: 10px;
    }
    .cs_archive_item_3 .ttl {
        margin-bottom: 10px;
        min-height: 2.5em;
        font-size: 18px;
    }
    .cs_archive_item_3 .ttl > span {
        font-size: 14px;
    }
    .cs_archive_item_3 .tax {
        margin: 0 auto 20px;
        max-width: none;
    }
    .cs_archive_item_3 .tax > span {
        font-size: 14px;
    }
    .cs_archive_item_3 .data {
        margin: 0;
        font-size: 13px;
    }
    .cs_archive_item_3 .data > ul::before {
        display: none;
    }
    .cs_archive_item_3 .data > ul > li {
        display: flex;
    }
    .cs_archive_item_3 .data > ul > li + li {
        margin-top: 5px;
    }
    .cs_archive_item_3 .data > ul > li > span:nth-of-type(1) {
        flex: initial;
        width: auto;
    }
    .cs_archive_item_3 .data > ul > li > span:nth-of-type(1)::after {
        content: "／";
    }
    .cs_archive_item_3 .data .price {
        font-size: 16px;
    }
    .cs_archive_item_3 .btn_toggle {
        margin-top: 10px;
    }
    .cs_archive_item_3 .btn_wrap {
        display: block;
    }

    .cs_archive_item_3 .btn_wrap .btn {
        width: auto;
        height: 45px;
    }
    .cs_archive_item_3 .btn_wrap .btn + .btn {
        margin-left: 0;
        margin-top: 10px;
    }
}

/* ---------------------------------------------------- */
/* cs_archive_item_4 */
/* ---------------------------------------------------- */
.cs_archive_item_4 {
    position: relative;
    height: 100%;
}
.cs_archive_item_4 a {
    display: block;
}
.cs_archive_item_4 .img {
    margin-bottom: 15px;
}
.cs_archive_item_4 .img > span {
    padding-top: 71%;
    background-image: url(../img/thumb/blank_1.svg);
}

.cs_archive_item_4 .brand {
    font-size: 12px;
    text-align: center;
    font-weight: 700;
}
.cs_archive_item_4 .ttl {
    display: flex;
    justify-content: center;
    align-items: center;
    padding-left: 34px;
    font-size: 15px;
    font-weight: 700;
    text-align: center;
}
.cs_archive_item_4 .ttl i {
    position: relative;
    display: block;
    margin-left: 10px;
    width: 24px;
    height: 24px;
    border: 1px solid var(--co_4);
    border-radius: 100%;
    transition: 0.3s ease-in-out;
}
.cs_archive_item_4 .ttl i::before {
    content: "";
    width: 10px;
    height: 1px;
    background-color: var(--co_4);
    position: absolute;
    top: 50%;
    right: 7px;
    transform: translateY(-50%);
    transition: 0.3s ease-in-out;
}
.cs_archive_item_4 .ttl i::after {
    content: "";
    width: 8px;
    height: 8px;
    border-top: 1px solid var(--co_4);
    border-right: 1px solid var(--co_4);
    position: absolute;
    right: 7px;
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
    transition: 0.3s ease-in-out;
}
@media (min-width: 1000px) {
    .cs_archive_item_4 a:hover .ttl i {
        background-color: var(--co_4);
    }
    .cs_archive_item_4 a:hover .ttl i::before {
        background-color: var(--co_2);
    }
    .cs_archive_item_4 a:hover .ttl i::after {
        border-color: var(--co_2);
    }
}

@media (max-width: 999px) {
}

/* ---------------------------------------------------- */
/* cs_archive_item_5 */
/* ---------------------------------------------------- */
.cs_archive_item_5 {
    position: relative;
    height: 100%;
}
.cs_archive_item_5 > div {
}
.cs_archive_item_5 a {
    display: block;
    padding-bottom: 50px;
}

.cs_archive_item_5 .img {
    margin-bottom: 20px;
}
.cs_archive_item_5 .img > span {
    padding-top: 100%;
    background-image: url(../img/thumb/blank_1.svg);
}
.cs_archive_item_5 .cat {
    margin-bottom: 10px;
    padding: 5px;
    align-items: center;
    color: var(--co_2);
    text-align: center;
}
.cs_archive_item_5 .cat_kodate .cat {
    background-color: var(--co_8);
}
.cs_archive_item_5 .cat_tochi .cat {
    background-color: var(--co_6);
}
.cs_archive_item_5 .ttl {
    margin-bottom: 10px;
    font-size: 20px;
    font-weight: 700;
}
.cs_archive_item_5 .data {
    font-size: 15px;
    line-height: 1.2;
}
.cs_archive_item_5 .data > ul {
    display: flex;
}
.cs_archive_item_5 .data > ul > li + li {
    padding-left: 10px;
    margin-left: 10px;
    border-left: 1px solid var(--co_4);
}
.cs_archive_item_5 .tag {
    margin-top: 20px;
    font-size: 11px;
}
.cs_archive_item_5 .tag > span {
    padding-right: 5px;
    margin-right: 5px;
    border-right: 1px solid var(--co_4);
}
.cs_archive_item_5 .tag > span:last-of-type {
    padding-right: 0;
    margin-right: 0;
    border-right: none;
}
.cs_archive_item_5 .tag > span::before {
    content: "#";
}
.cs_archive_item_5 .btn {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
}

@media (max-width: 999px) {
    .cs_archive_item_5 a {
        padding-bottom: 0;
    }
    .cs_archive_item_5 .img {
        margin-bottom: 10px;
    }

    .cs_archive_item_5 .cat {
        margin-bottom: 10px;
    }
    .cs_archive_item_5 .ttl {
        margin-bottom: 10px;
        font-size: 18px;
    }
    .cs_archive_item_5 .data {
        font-size: 15px;
        line-height: 1.2;
    }
    .cs_archive_item_5 .tag {
        margin-top: 10px;
    }
    .cs_archive_item_5 .btn {
        position: relative;
        left: auto;
        bottom: auto;
        margin-top: 20px;
    }
}

/* ---------------------------------------------------- */
/* cs_archive_item_6 */
/* ---------------------------------------------------- */
.cs_archive_item_6 {
    position: relative;
    padding-bottom: 60px;
    height: 100%;
}

.cs_archive_item_6 a {
    position: relative;
    display: block;
}
.cs_archive_item_6 .img {
    position: relative;
    margin-bottom: 15px;
}
.cs_archive_item_6 .stts_s2 .img::after {
    content: "開催終了しました";
    position: absolute;
    left: 0;
    top: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    color: var(--co_2);
    font-size: 18px;
    background-color: rgba(0, 0, 0, 0.7);
}
.cs_archive_item_6 .img > span {
    padding-top: 70.7%;
    background-image: url(../img/thumb/blank_1.svg);
}
.cs_archive_item_6 .tax {
    display: flex;
    align-items: center;
    margin-bottom: 10px;
}
.cs_archive_item_6 .cat {
    display: block;
    margin-right: 20px;
    padding: 10px 5px;
    width: 120px;
    text-align: center;
    color: var(--co_2);
    font-size: 15px;
    font-weight: 700;
    line-height: 1;
    background-color: var(--co_4);
}
.cs_archive_item_6 .date {
    font-size: 15px;
    line-height: 1.2;
}
.cs_archive_item_6 .ttl {
    display: flex;
    align-items: center;
    padding-bottom: 10px;
    margin-bottom: 10px;
    min-height: 3em;
    font-size: 20px;
    font-weight: 700;
    border-bottom: 1px solid var(--co_10);
}

.cs_archive_item_6 .data > ul > li {
    display: flex;
}
.cs_archive_item_6 .data > ul > li > span:nth-of-type(1) {
    display: flex;
    align-items: center;
}
.cs_archive_item_6 .data > ul > li > span:nth-of-type(1)::before {
    content: "";
    display: block;
    width: 20px;
    height: 20px;
    background-image: url(../../common/img/ico/area_1.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}
.cs_archive_item_6 .data > ul > li > span:nth-of-type(1)::after {
    content: "：";
}

.cs_archive_item_6 .btn_wrap {
    position: absolute;
    left: 0;
    bottom: 0;
    display: flex;
    justify-content: space-between;
    width: 100%;
}

.cs_archive_item_6 .btn_wrap .btn {
    position: relative;
    display: flex;
    align-items: center;
    padding: 0 15px;
    width: calc(100% / 2 - 5px);
    height: 45px;
    color: var(--co_2);
    font-size: 13px;
    font-weight: 700;
    overflow: hidden;
}
.cs_archive_item_6 .btn_wrap .btn_single {
    background-color: var(--co_7);
}
.cs_archive_item_6 .btn_wrap .btn_contact {
    background-color: var(--co_8);
}

.cs_archive_item_6 .stts_s2 .btn_wrap .btn_contact {
    opacity: 0.2;
    pointer-events: none;
}
.cs_archive_item_6 .btn_wrap .btn i {
    position: absolute;
    right: 2px;
    top: 50%;
    transform: translateY(-50%);
    width: 24px;
    height: 24px;
    z-index: 3;
}
.cs_archive_item_6 .stts_s2 .btn_wrap .btn_contact i {
    display: none;
}
.cs_archive_item_6 .btn_wrap .btn span {
    position: relative;
    z-index: 3;
}
.cs_archive_item_6 .btn_wrap .btn::before {
    content: "";
    position: absolute;
    left: -50px;
    top: 0;
    width: 0;
    height: 100%;
    background-color: var(--co_1);
    z-index: -1;
    transform: skewX(45deg);
    transition: width 0.5s;
    opacity: 0.2;
    z-index: 2;
}
.cs_archive_item_6 .btn_wrap .btn i::before {
    content: "";
    width: 10px;
    height: 1px;
    background-color: var(--co_2);
    position: absolute;
    top: 50%;
    right: 7px;
    transform: translateY(-50%);
    transition: 0.3s ease-in-out;
}
.cs_archive_item_6 .btn_wrap .btn i::after {
    content: "";
    width: 8px;
    height: 8px;
    border-top: 1px solid var(--co_2);
    border-right: 1px solid var(--co_2);
    position: absolute;
    right: 7px;
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
    transition: 0.3s ease-in-out;
}
@media (min-width: 1000px) {
    .cs_archive_item_6 .btn_wrap .btn:hover {
        border-color: var(--co_8);
    }
    .cs_archive_item_6 .btn_wrap .btn_contact:hover {
        border-color: var(--co_12);
    }
    .cs_archive_item_6 .btn_wrap .btn:hover::before {
        width: 250%;
    }
}
@media (max-width: 999px) {
    .cs_archive_item_6 {
        padding-bottom: 0;
        height: auto;
    }

    .cs_archive_item_6 .img {
        position: relative;
        margin-bottom: 10px;
    }

    .cs_archive_item_6 .tax {
    }

    .cs_archive_item_6 .cat {
        margin-right: 10px;
        width: 120px;
        font-size: 13px;
    }
    .cs_archive_item_6 .date {
        font-size: 12px;
    }
    .cs_archive_item_6 .ttl {
        display: block;
        padding-bottom: 10px;
        margin-bottom: 10px;
        min-height: auto;
        font-size: 18px;
    }

    .cs_archive_item_6 .btn_wrap {
        position: static;
        margin-top: 20px;
    }

    .cs_archive_item_6 .btn_wrap .btn {
        height: 45px;
        font-size: 12px;
    }
}
/* ---------------------------------------------------- */
/* cs_archive_item_7 */
/* ---------------------------------------------------- */
.cs_archive_item_7 {
    position: relative;
}
.cs_archive_item_7 a {
    display: flex;
}
.archive_1 > ul > li:nth-child(odd) .cs_archive_item_7 a {
    background-color: #fdfbf4;
}
.archive_1 > ul > li:nth-child(even) .cs_archive_item_7 a {
    background-color: #f5f4f4;
}

.cs_archive_item_7 a > .clm_wrap:nth-of-type(1) {
    flex: none;
    width: 590px;
}
.cs_archive_item_7 a > .clm_wrap:nth-of-type(2) {
    position: relative;
    flex: auto;
    width: auto;
    padding: 40px 40px 80px;
}
.sec_archive_wrap .archive_1 > ul > li:nth-child(even) a > .clm_wrap:nth-of-type(2) {
    order: -1;
}

.cs_archive_item_7 .img > span {
    padding-top: 62%;
    background-image: url(../img/thumb/blank_1.svg);
}
.cs_archive_item_7 .tax {
    display: flex;
    align-items: center;
    margin-bottom: 10px;
}
.cs_archive_item_7 .cat {
    margin-right: 10px;
    padding: 5px;
    width: 220px;
    align-items: center;
    color: var(--co_2);
    font-size: 15px;
    text-align: center;
}
.cs_archive_item_7 .cat_kodate .cat {
    background-color: var(--co_8);
}
.cs_archive_item_7 .cat_tochi .cat {
    background-color: var(--co_6);
}
.cs_archive_item_7 .ttl {
    font-size: 20px;
    font-weight: 700;
}
.cs_archive_item_7 .data {
    font-size: 15px;
    font-weight: 700;
    line-height: 1.2;
}
.cs_archive_item_7 .data > ul {
    display: flex;
}
.cs_archive_item_7 .data > ul > li + li {
    padding-left: 10px;
    margin-left: 10px;
    border-left: 1px solid var(--co_4);
}
.cs_archive_item_7 .desc {
    margin-top: 10px;
    padding-top: 10px;
    border-top: 1px solid var(--co_10);
    font-size: 15px;
}

.cs_archive_item_7 .btn {
    position: absolute;
    left: 40px;
    bottom: 40px;
}

@media (max-width: 999px) {
    .cs_archive_item_7 {
        position: relative;
    }
    .cs_archive_item_7 a {
        display: block;
    }

    .cs_archive_item_7 a > .clm_wrap:nth-of-type(1) {
        width: auto;
    }
    .cs_archive_item_7 a > .clm_wrap:nth-of-type(2) {
        padding: 10px 15px;
    }

    .cs_archive_item_7 .tax {
        display: block;
        margin-bottom: 10px;
    }
    .cs_archive_item_7 .cat {
        margin-bottom: 10px;
        margin-right: 0;
        width: auto;
        font-size: 13px;
    }

    .cs_archive_item_7 .ttl {
        font-size: 18px;
        text-align: center;
    }
    .cs_archive_item_7 .data {
        margin-top: 10px;
        font-size: 13px;
    }
    .cs_archive_item_7 .data > ul {
        justify-content: center;
    }
    .cs_archive_item_7 .desc {
        font-size: 13px;
    }

    .cs_archive_item_7 .btn {
        position: relative;
        left: auto;
        bottom: auto;
        margin-top: 20px;
        margin-left: auto;
        margin-right: 0;
    }
}
/* ---------------------------------------------------- */
/* cs_archive_item_8 */
/* ---------------------------------------------------- */
.cs_archive_item_8 {
    padding-bottom: 40px;
    border-bottom: 2px solid var(--co_4);
}
.cs_archive_item_8 a {
    position: relative;
    display: block;
    padding-right: 50px;
}

.cs_archive_item_8 .t_s99 {
    pointer-events: none;
}
.cs_archive_item_8 .ttl {
    font-size: 18px;
    font-weight: 700;
    transition: 0.3s ease-in-out;
}
.cs_archive_item_8 .tax {
    display: flex;
    align-items: center;
    margin-bottom: 15px;
}
.cs_archive_item_8 .cat {
    display: block;
    margin-right: 10px;
    padding: 5px 20px;
    text-align: center;
    color: var(--co_2);
    font-size: 15px;
    font-weight: 700;
    line-height: 1;
    background-color: var(--co_16);
}
.cs_archive_item_8 .date {
    font-size: 13px;
}
.cs_archive_item_8 .arrow {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    display: block;
    width: 24px;
    height: 24px;
    border: 1px solid var(--co_4);
    border-radius: 100%;
}
.cs_archive_item_8 .t_s2 .arrow,
.cs_archive_item_8 .t_s3 .arrow,
.cs_archive_item_8 .t_s99 .arrow {
    display: none;
}
.cs_archive_item_8 .arrow::before {
    content: "";
    width: 10px;
    height: 1px;
    background-color: var(--co_4);
    position: absolute;
    top: 50%;
    right: 7px;
    transform: translateY(-50%);
    transition: 0.3s ease-in-out;
}
.cs_archive_item_8 .arrow::after {
    content: "";
    width: 8px;
    height: 8px;
    border-top: 1px solid var(--co_4);
    border-right: 1px solid var(--co_4);
    position: absolute;
    right: 7px;
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
    transition: 0.3s ease-in-out;
}

.cs_archive_item_8 .ico {
    display: none;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    display: block;
    width: 24px;
    height: 24px;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}
.cs_archive_item_8 .t_s2 .ico {
    display: block;
    background-image: url(../../common/img/ico/blank_1.svg);
}
.cs_archive_item_8 .t_s3 .ico {
    display: block;
    background-image: url(../../common/img/ico/pdf_1.svg);
}
@media (min-width: 1000px) {
    .cs_archive_item_8 a:hover .ttl {
        color: var(--co_5);
    }
}
@media (max-width: 999px) {
    .cs_archive_item_8 {
        padding-bottom: 20px;
    }

    .cs_archive_item_8 .ttl {
        font-size: 16px;
    }

    .cs_archive_item_8 .cat {
        font-size: 12px;
    }
    .cs_archive_item_8 .date {
        font-size: 12px;
    }
}

/* ---------------------------------------------------- */
/* cs_archive_item_9 */
/* ---------------------------------------------------- */
.cs_archive_item_9 a {
    position: relative;
    display: block;
}
.cs_archive_item_9 .img {
    margin-bottom: 10px;
}
.cs_archive_item_9 .img > span {
    padding-top: 100%;
    background-image: url(../img/thumb/blank_1.svg);
}
.cs_archive_item_9 .ttl {
    margin-bottom: 10px;
    font-size: 18px;
    font-weight: 700;
    overflow: hidden;
    display: -webkit-box;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
}
.cs_archive_item_9 .tax {
    display: flex;
    align-items: center;
}
.cs_archive_item_9 .cat {
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    margin-right: 10px;
    padding: 5px 20px;
    text-align: center;
    color: var(--co_2);
    font-size: 15px;
    font-weight: 700;
    line-height: 1;
    background-color: var(--co_6);
}
.cs_archive_item_9 .date {
    font-size: 13px;
}

.cs_archive_item_9 .desc {
    padding-top: 10px;
    margin-bottom: 10px;
    font-size: 13px;
    border-top: 1px solid var(--co_10);
}
.cs_archive_item_9 .desc p {
    overflow: hidden;
    display: -webkit-box;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.cs_archive_item_9 .has_staff .txt_wrap {
    padding-right: 100px;
    min-height: 100px;
}
.cs_archive_item_9 .has_staff .txt_wrap::before {
    content: "";
    position: absolute;
    right: 0;
    margin-top: 10px;
    width: 100px;
    height: 100px;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}

.cs_archive_item_9 .staff_s1 .txt_wrap::before {
    background-image: url(../img/ico/staff_s1.svg);
}
.cs_archive_item_9 .staff_s2 .txt_wrap::before {
    background-image: url(../img/ico/staff_s2.svg);
}
.cs_archive_item_9 .staff_s3 .txt_wrap::before {
    background-image: url(../img/ico/staff_s3.svg);
}

@media (max-width: 999px) {
    .cs_archive_item_9 .img {
        margin-bottom: 0;
        width: 45%;
    }
    .cs_archive_item_9 .ttl {
        font-size: 16px;
        overflow: visible;
        text-overflow: initial;
        -webkit-line-clamp: initial;
    }
    .cs_archive_item_9 .tax {
        margin-bottom: 10px;
    }
    .cs_archive_item_9 .cat {
        position: static;
        font-size: 12px;
    }
    .cs_archive_item_9 .date {
        font-size: 12px;
    }
    .cs_archive_item_9 .clms_wrap {
        display: flex;
    }
    .cs_archive_item_9 .desc {
        flex: none;
        padding-top: 0;
        margin-bottom: 0;
        margin-left: 10px;
        width: 55%;
        border: 0;
    }
    .cs_archive_item_9 .desc p {
        -webkit-line-clamp: 7;
    }
    .cs_archive_item_9 .has_staff .desc {
        padding-bottom: 60px;
    }
    .cs_archive_item_9 .has_staff .desc p {
        -webkit-line-clamp: 4;
    }
    .cs_archive_item_9 .has_staff .txt_wrap {
        padding-right: 0;
        min-height: auto;
    }
    .cs_archive_item_9 .has_staff .txt_wrap::before {
        content: "";
        position: absolute;
        right: 0;
        bottom: 0;
        margin-top: 10px;
        width: 55px;
        height: 55px;
    }
    .cs_archive_item_9 .staff_s1 .txt_wrap::before {
        background-image: url(../img/ico/staff_s1_sp.svg);
    }
    .cs_archive_item_9 .staff_s2 .txt_wrap::before {
        background-image: url(../img/ico/staff_s2_sp.svg);
    }
    .cs_archive_item_9 .staff_s3 .txt_wrap::before {
        background-image: url(../img/ico/staff_s3_sp.svg);
    }
}

/* ---------------------------------------------------- */
/* cs_archive_item_10 */
/* ---------------------------------------------------- */
.cs_archive_item_10 a {
    position: relative;
    display: block;
}
.cs_archive_item_10 .img {
    margin-bottom: 15px;
}
.cs_archive_item_10 .img > span {
    padding-top: 70.7%;
    background-image: url(../img/thumb/blank_1.svg);
}
.cs_archive_item_10 .ttl {
    font-size: 16px;
    font-weight: 700;
}
.cs_archive_item_10 .tax {
    margin-bottom: 10px;
    display: flex;
    align-items: center;
}
.cs_archive_item_10 .new .tax::before {
    content: "NEW";
    display: block;
    margin-right: 10px;
    padding: 5px 20px;
    text-align: center;
    color: var(--co_2);
    font-size: 15px;
    font-weight: 700;
    line-height: 1;
    background-color: var(--co_6);
}
.cs_archive_item_10 .cat {
    display: block;
    margin-right: 10px;
    padding: 5px 20px;
    text-align: center;
    color: var(--co_2);
    font-size: 15px;
    font-weight: 700;
    line-height: 1;
    background-color: var(--co_7);
}
.cs_archive_item_10 .date {
    font-size: 13px;
}

@media (max-width: 999px) {
    .cs_archive_item_10 .img {
        margin-bottom: 10px;
    }
    .cs_archive_item_10 .ttl {
        font-size: 16px;
        overflow: visible;
        text-overflow: initial;
        -webkit-line-clamp: initial;
    }
    .cs_archive_item_10 .tax {
        margin-bottom: 5px;
    }
    .cs_archive_item_10 .cat {
        font-size: 12px;
    }
    .cs_archive_item_10 .date {
        font-size: 12px;
    }
}

/* ---------------------------------------------------- */
/* cs_archive_item_11 */
/* ---------------------------------------------------- */
.cs_archive_item_11 {
    padding: 20px 0;
    border-bottom: 1px solid var(--co_9);
}
.cs_archive_item_11 a {
    position: relative;
    display: block;
    padding-right: 50px;
}

.cs_archive_item_11 .t_s99 {
    pointer-events: none;
}
.cs_archive_item_11 .ttl {
    font-size: 15px;
    font-weight: 700;
    transition: 0.3s ease-in-out;
}
.cs_archive_item_11 .tax {
    display: flex;
    align-items: center;
    margin-bottom: 15px;
}
.cs_archive_item_11 .cat {
    display: block;
    margin-right: 10px;
    padding: 5px 20px;
    text-align: center;
    color: var(--co_2);
    font-size: 15px;
    font-weight: 700;
    line-height: 1;
    background-color: var(--co_4);
}
.cs_archive_item_11 .date {
    font-size: 13px;
}
.cs_archive_item_11 .arrow {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    display: block;
    width: 24px;
    height: 24px;
    border: 1px solid var(--co_4);
    border-radius: 100%;
}
.cs_archive_item_11 .t_s2 .arrow,
.cs_archive_item_11 .t_s3 .arrow,
.cs_archive_item_11 .t_s99 .arrow {
    display: none;
}
.cs_archive_item_11 .arrow::before {
    content: "";
    width: 10px;
    height: 1px;
    background-color: var(--co_4);
    position: absolute;
    top: 50%;
    right: 7px;
    transform: translateY(-50%);
    transition: 0.3s ease-in-out;
}
.cs_archive_item_11 .arrow::after {
    content: "";
    width: 8px;
    height: 8px;
    border-top: 1px solid var(--co_4);
    border-right: 1px solid var(--co_4);
    position: absolute;
    right: 7px;
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
    transition: 0.3s ease-in-out;
}

.cs_archive_item_11 .ico {
    display: none;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    display: block;
    width: 20px;
    height: 20px;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}
.cs_archive_item_11 .t_s2 .ico {
    display: block;
    background-image: url(../../common/img/ico/blank_2.svg);
}
.cs_archive_item_11 .t_s3 .ico {
    display: block;
    background-image: url(../../common/img/ico/pdf_1.svg);
}
@media (min-width: 1000px) {
    .cs_archive_item_11 a:hover .ttl {
        color: var(--co_5);
    }
}
@media (max-width: 999px) {
    .cs_archive_item_11 {
        padding-bottom: 20px;
    }

    .cs_archive_item_11 .ttl {
        font-size: 16px;
    }

    .cs_archive_item_11 .cat {
        font-size: 12px;
    }
    .cs_archive_item_11 .date {
        font-size: 12px;
    }
}

/* ---------------------------------------------------- */
/* cs_archive_item_12 */
/* ---------------------------------------------------- */
.cs_archive_item_12 {
    padding: 20px 0;
    border-bottom: 1px solid var(--co_9);
}
.cs_archive_item_12 a {
    position: relative;
    display: block;
    padding-right: 50px;
}

.cs_archive_item_12 .t_s99 {
    pointer-events: none;
}
.cs_archive_item_12 .ttl {
    font-size: 15px;
    font-weight: 700;
    transition: 0.3s ease-in-out;
}
.cs_archive_item_12 .tax {
    display: flex;
    align-items: center;
    margin-bottom: 15px;
}
.cs_archive_item_12 .cat {
    flex: none;
    display: block;
    margin-right: 10px;
    padding: 5px 20px;
    width: max-content;
    text-align: center;
    color: var(--co_2);
    font-size: 15px;
    font-weight: 700;
    line-height: 1;
    background-color: var(--co_4);
}
.cs_archive_item_12 .date {
    font-size: 13px;
}
.cs_archive_item_12 .arrow {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    display: block;
    width: 24px;
    height: 24px;
    border: 1px solid var(--co_4);
    border-radius: 100%;
}

.cs_archive_item_12 .arrow::before {
    content: "";
    width: 10px;
    height: 1px;
    background-color: var(--co_4);
    position: absolute;
    top: 50%;
    right: 7px;
    transform: translateY(-50%);
    transition: 0.3s ease-in-out;
}
.cs_archive_item_12 .arrow::after {
    content: "";
    width: 8px;
    height: 8px;
    border-top: 1px solid var(--co_4);
    border-right: 1px solid var(--co_4);
    position: absolute;
    right: 7px;
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
    transition: 0.3s ease-in-out;
}

.cs_archive_item_12 .data {
    display: none;
}

.cs_archive_item_12 .btn_wrap {
    display: none;
}

@media (min-width: 1000px) {
    .cs_archive_item_12:hover .ttl {
        color: var(--co_5);
    }
}
@media (max-width: 999px) {
    .cs_archive_item_12 {
        padding-bottom: 20px;
    }

    .cs_archive_item_12 .ttl {
        font-size: 16px;
    }

    .cs_archive_item_12 .cat {
        font-size: 12px;
    }
    .cs_archive_item_12 .date {
        font-size: 12px;
    }
}
/* ---------------------------------------------------- */
/* cs_archive_item_13 */
/* ---------------------------------------------------- */
.cs_archive_item_13 a {
    position: relative;
    display: block;
}
.cs_archive_item_13 .img {
    margin-bottom: 10px;
}
.cs_archive_item_13 .img > span {
    padding-top: 100%;
    background-image: url(../img/thumb/blank_1.svg);
}
.cs_archive_item_13 .ttl {
    margin-bottom: 10px;
    font-size: 18px;
    font-weight: 700;
}
.cs_archive_item_13 .date {
    margin-bottom: 15px;
    color: var(--co_8);
    font-size: 13px;
    line-height: 1;
}
.cs_archive_item_13 .cat {
    margin-top: 10px;
    color: var(--co_8);
    font-size: 13px;
}
.cs_archive_item_13 .cat::before {
    content: "#";
}

.cs_archive_item_13 .has_staff .txt_wrap {
    padding-right: 100px;
    min-height: 100px;
}
.cs_archive_item_13 .has_staff .txt_wrap::before {
    content: "";
    position: absolute;
    right: 0;
    width: 100px;
    height: 100px;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}

.cs_archive_item_13 .staff_s1 .txt_wrap::before {
    background-image: url(../img/ico/staff_s1.svg);
}
.cs_archive_item_13 .staff_s2 .txt_wrap::before {
    background-image: url(../img/ico/staff_s2.svg);
}
.cs_archive_item_13 .staff_s3 .txt_wrap::before {
    background-image: url(../img/ico/staff_s3.svg);
}

@media (max-width: 999px) {
    .cs_archive_item_13 .has_staff .txt_wrap {
        padding-right: 80px;
        min-height: 80px;
    }
    .cs_archive_item_13 .has_staff .txt_wrap::before {
        width: 80px;
        height: 80px;
    }
}

/* ---------------------------------------------------- */
/* cs_archive_item_14 */
/* ---------------------------------------------------- */
.cs_archive_item_14 a {
    position: relative;
    display: block;
}
.cs_archive_item_14 .img {
    margin-bottom: 10px;
}
.cs_archive_item_14 .img > span {
    padding-top: 100%;
    background-image: url(../img/thumb/blank_1.svg);
}
.cs_archive_item_14 .ttl {
    margin-bottom: 10px;
    font-size: 18px;
    font-weight: 700;
}
.cs_archive_item_14 .tax,
.cs_archive_item_14 .data,
.cs_archive_item_14 .desc,
.cs_archive_item_14 .btn {
    display: none;
}

@media (max-width: 999px) {
}
/* ---------------------------------------------------- */
/* cs_btn_wrap_1 */
/* ---------------------------------------------------- */
.cs_btn_wrap_1 {
    display: flex;
    justify-content: center;
    align-items: flex-end;
    margin-bottom: 50px;
}

* + .cs_btn_wrap_1 {
    margin-top: 50px;
}

.cs_btn_wrap_1 .btn_2 {
    display: block;
    width: 372px;
}
.cs_btn_wrap_1 .btn_3 {
    display: block;
    margin-left: 30px;
    width: 385px;
}
@media (max-width: 999px) {
    .cs_btn_wrap_1 {
        display: block;
        margin-bottom: 30px;
    }
    * + .cs_btn_wrap_1 {
        margin-top: 30px;
    }

    .cs_btn_wrap_1 .btn_2 {
        width: auto;
    }
    .cs_btn_wrap_1 .btn_3 {
        margin-top: 0;
        margin-left: 0;
        width: calc(100% + 10px);
    }
}
/* ---------------------------------------------------- */
/* cs_pagination_archive_1 */
/* ---------------------------------------------------- */
.cs_pagination_archive_1 .pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 80px;
}

.cs_pagination_archive_1 .pagination .page-numbers {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 10px;
    width: 54px;
    height: 54px;
    font-family: "Josefin Sans", "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
    line-height: 1;
    text-align: center;
    text-decoration: none;
    border: 1px solid var(--co_4);
    border-radius: 100%;
}
.cs_pagination_archive_1 .pagination .current {
    color: var(--co_2);
    background-color: var(--co_4);
}
.cs_pagination_archive_1 .pagination .dots,
.cs_pagination_archive_1 .pagination .dots:hover {
    color: var(--co_4) !important;
    background-color: transparent !important;
    border: none;
}

.cs_pagination_archive_1 .pagination .prev,
.cs_pagination_archive_1 .pagination .next {
    border: none;
}

.cs_pagination_archive_1 .pagination .prev::before,
.cs_pagination_archive_1 .pagination .next::before {
    content: "";
    width: 14px;
    height: 1px;
    background-color: var(--co_4);
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
    transition: 0.3s ease-in-out;
    /* content: "NEXT"; */
}

.cs_pagination_archive_1 .pagination .prev::after,
.cs_pagination_archive_1 .pagination .next:after {
    content: "";
    width: 12px;
    height: 12px;
    border-top: 1px solid var(--co_4);
    border-right: 1px solid var(--co_4);
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
    transition: 0.3s ease-in-out;
}

.cs_pagination_archive_1 .pagination .prev {
    transform: scale(-1, -1);
}

@media (min-width: 1000px) {
    .cs_pagination_archive_1 .pagination .page-numbers:hover {
        color: var(--co_2);
        background-color: var(--co_4);
    }
    .cs_pagination_archive_1 .pagination .prev:hover::before,
    .cs_pagination_archive_1 .pagination .next:hover::before {
        background-color: var(--co_2);
    }
    .cs_pagination_archive_1 .pagination .prev:hover::after,
    .cs_pagination_archive_1 .pagination .next:hover::after {
        border-color: var(--co_2);
    }
}
@media (max-width: 999px) {
    .cs_pagination_archive_1 .pagination {
        margin-top: 50px;
    }

    .cs_pagination_archive_1 .pagination .page-numbers {
        padding-top: 2px;
        margin: 0 5px;
        width: 34px;
        height: 34px;
    }
}
/* ---------------------------------------------------- */
/* cs_pagination_single_1 */
/* ---------------------------------------------------- */
.cs_pagination_single_1 {
    display: flex;
    justify-content: space-between;
    margin-top: 100px;
    padding-top: 20px;
    border-top: 1px solid var(--co_4);
}

.cs_pagination_single_1 a {
    position: relative;
    display: block;
    padding: 0 30px;
    font-size: 18px;
    font-weight: 700;
}
.cs_pagination_single_1 .back {
    display: none;
}

.cs_pagination_single_1 a i {
    position: absolute;
    top: 50%;
    transform: translateY(-50%) rotate(0deg);
    width: 24px;
    height: 24px;
    z-index: 3;
    transition: 0.3s ease-in-out;
}

.cs_pagination_single_1 a i::before {
    content: "";
    width: 10px;
    height: 1px;
    background-color: var(--co_4);
    position: absolute;
    top: 50%;
    right: 7px;
    transform: translateY(-50%);
    transition: 0.3s ease-in-out;
}
.cs_pagination_single_1 a i::after {
    content: "";
    width: 8px;
    height: 8px;
    border-top: 1px solid var(--co_4);
    border-right: 1px solid var(--co_4);
    position: absolute;
    right: 7px;
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
    transition: 0.3s ease-in-out;
}

.cs_pagination_single_1 .prev i {
    left: 0;
    transform: translateY(-50%) rotate(-180deg);
}

.cs_pagination_single_1 .next i {
    right: 0;
    transform: translateY(-50%) rotate(0deg);
}
@media (max-width: 999px) {
    .cs_pagination_single_1 {
        margin-top: 50px;
        padding-top: 20px;
    }
    .cs_pagination_single_1 a {
        font-size: 15px;
    }
}
@media (min-width: 1000px) {
    .cs_pagination_single_1 a:hover {
        opacity: 0.6;
    }
}

/* ---------------------------------------------------- */
/* cs_sec_special_wrap_1 */
/* ---------------------------------------------------- */
.cs_sec_special_wrap_1 {
    padding-top: 100px;
    padding-bottom: 100px;
    margin-bottom: 50px;
    color: var(--co_2);
    background-color: var(--co_6);
}
.cs_sec_special_wrap_1 .ttl_1 {
    margin-bottom: 80px;
}
.cs_sec_special_wrap_1 .deco {
    position: absolute;
    right: 0;
    top: 175px;
    width: 570px;
    background-color: var(--co_2);
    opacity: 0.2;
    transform: rotate(-8deg);
}
.cs_sec_special_wrap_1 .deco > span {
    display: block;
    padding-top: 71%;
}
.cs_sec_special_wrap_1 .archive_1 {
    position: relative;
}

.cs_sec_special_wrap_1 .archive_1 .swiper-wrapper {
    flex-wrap: wrap;
}

.cs_sec_special_wrap_1 .archive_1 .item a {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    color: var(--co_2);
}

.cs_sec_special_wrap_1 .archive_1 .item a > .clm_wrap:nth-of-type(1) {
    position: relative;
    flex: none;
    margin-left: 90px;
    width: 570px;
    order: 2;
}

.cs_sec_special_wrap_1 .archive_1 .item a > .clm_wrap:nth-of-type(2) {
    transition: 0.6s ease-in-out;
    opacity: 0;
}
.cs_sec_special_wrap_1 .archive_1 .slick-current .item a > .clm_wrap:nth-of-type(2),
.cs_sec_special_wrap_1 .archive_1 .slick-current .item a > .clm_wrap:nth-of-type(2) {
    width: auto;
    transition: 0.6s ease-in-out;
    opacity: 1;
}

.cs_sec_special_wrap_1 .archive_1 .item .img {
    width: 100%;
    overflow: hidden;
}

.cs_sec_special_wrap_1 .archive_1 .item .img > span {
    width: 100%;
    padding-top: 70.7%;
    background-image: url(../img/thumb/blank_1.svg);
    transform: translateX(10%);
    transition: 0s;
}

.cs_sec_special_wrap_1 .archive_1 .slick-current .item .img span {
    transform: translateX(0);
    transition: transform 0.5s ease-in;
}

.cs_sec_special_wrap_1 .archive_1 .slick-arrow {
    display: none !important;
}

.cs_sec_special_wrap_1 .archive_1 .slick-current {
    z-index: 999 !important;
}
.cs_sec_special_wrap_1 .archive_1 .slick-slide {
    opacity: 1 !important;
}

.cs_sec_special_wrap_1 .swiper-fade .swiper-slide {
    pointer-events: all !important;
}
.cs_sec_special_wrap_1 .archive_1 .bef_action {
    z-index: 1000 !important;
}
.cs_sec_special_wrap_1 .archive_1 .bef_action .item .img span {
    width: 0;
    transform: translateX(0);
    transition: transform 0.5s ease-in, width 0.5s ease-in;
}

.cs_sec_special_wrap_1 .archive_1 .item .cat {
    margin-bottom: 30px;
    padding: 10px;
    min-width: 260px;
    max-width: max-content;
    color: var(--co_7);
    font-size: 20px;
    font-weight: 700;
    line-height: 1;
    text-align: center;
    background-color: var(--co_2);
    border-radius: 30px;
}

.cs_sec_special_wrap_1 .archive_1 .item .ttl {
    margin-bottom: 30px;
    font-size: 36px;
    font-weight: 700;
    line-height: 1.6;
    padding-bottom: 4px;
    transition: 0.3s ease-in-out;
}

.cs_sec_special_wrap_1 .archive_1 .item .desc {
    line-height: 2;
}
.cs_sec_special_wrap_1 .archive_1 .item .btn {
    margin-top: 40px;
}

.cs_sec_special_wrap_1 .swiper-pagination {
    right: 0;
    bottom: 0;
    width: 100%;
    z-index: 100;
}
.cs_sec_special_wrap_1 .swiper-pagination-bullet {
    position: relative;
    margin: 0 20px !important;
    width: 10px;
    height: 10px;
    background-color: var(--co_2);
    opacity: 1;
}

.cs_sec_special_wrap_1 .swiper-pagination-bullet-active::before {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 28px;
    height: 28px;
    border: 1px solid var(--co_2);
    border-radius: 100%;
}

.cs_sec_special_wrap_1 .swiper-button-next,
.cs_sec_special_wrap_1 .swiper-button-prev {
    position: absolute;
    display: block;
    width: 60px;
    height: 240px;
    border: none;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    padding: 0;
    outline: 0;
    z-index: 10;
    cursor: pointer;
    transition: 0.3s ease-in-out;
}

.cs_sec_special_wrap_1 .swiper-button-next {
    right: -70px;
    top: 100px;
}
.cs_sec_special_wrap_1 .swiper-button-prev {
    left: calc(50% - 90px);
    top: 100px;
    transform: scaleX(-1);
}

.cs_sec_special_wrap_1 .swiper-button-next::before,
.cs_sec_special_wrap_1 .swiper-button-prev::before {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    height: 25%;
    background-color: #837a58;
    border: 1px solid var(--co_2);
    border-radius: 100%;
    transition: 0.3s ease-in-out;
}
.cs_sec_special_wrap_1 .swiper-button-next::after,
.cs_sec_special_wrap_1 .swiper-button-prev::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 50%;
    height: 50%;
    background-image: url(../img/ico/arrow_2.svg);
    background-size: 50% auto;
    background-repeat: no-repeat;
    background-position: center;
}

.cs_sec_special_wrap_1 .btn_1 {
    margin: 80px auto 0;
}

.cs_sec_special_wrap_1 .archive_1 .slick-dots {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 10px;
    width: 570px;
    padding: 0;
    margin: 20px 0 0 auto;
    list-style: none;
    text-align: center;
}

.cs_sec_special_wrap_1 .archive_1 .slick-dots li {
    position: relative;
    display: block;
    width: 30px;
    height: 30px;
    padding: 0;
    cursor: pointer;
}

.cs_sec_special_wrap_1 .archive_1 .slick-dots li button {
    position: relative;
    font-size: 0;
    line-height: 0;
    display: block;
    padding: 0;
    width: 100%;
    height: 100%;
    cursor: pointer;
    color: transparent;
    border: 0;
    background: transparent;
    transition: 0.3s ease-in-out;
}

.cs_sec_special_wrap_1 .archive_1 .slick-dots li button::before,
.cs_sec_special_wrap_1 .archive_1 .slick-dots li button::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    display: block;
    border-radius: 50%;
}

.cs_sec_special_wrap_1 .archive_1 .slick-dots li button::before {
    width: 10px;
    height: 10px;
    background-color: var(--co_2);
    transition: 0.3s ease-in-out;
}

.cs_sec_special_wrap_1 .archive_1 .slick-dots li button::after {
    display: none;
    width: 100%;
    height: 100%;
    border: 1px solid var(--co_2);
}

.cs_sec_special_wrap_1 .archive_1 .slick-dots .slick-active button::after {
    display: block;
}

@keyframes special_1 {
    0% {
        clip-path: polygon(0 0, 0% 0, 0% 100%, 0 100%);
    }

    100% {
        clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
    }
}
@media (min-width: 1000px) {
    /* .cs_sec_special_wrap_1 .archive_1 .item :hover .ttl {
        color: var(--co_7);
    } */
    .cs_sec_special_wrap_1 .archive_1 .item :hover .ttl > span:nth-of-type(1) {
        opacity: 1;
    }
}
@media (max-width: 999px) {
    .cs_sec_special_wrap_1 {
        padding-top: 50px;
        padding-bottom: 50px;
        margin-bottom: 0;
    }
    .cs_sec_special_wrap_1 .ttl_1 {
        margin-bottom: 30px;
    }
    .cs_sec_special_wrap_1 .deco {
        content: "";
        position: absolute;
        right: 50%;
        top: 89px;
        transform: translateX(50%) rotate(-8deg);
        width: 90%;
    }

    .cs_sec_special_wrap_1 .archive_1 .slick-track {
        display: flex;
    }

    .cs_sec_special_wrap_1 .archive_1 .slick-slide {
        height: auto;
    }

    .cs_sec_special_wrap_1 .archive_1 .slick-slide > div,
    .cs_sec_special_wrap_1 .swiper-fade .swiper-slide .item {
        height: 100%;
    }

    .cs_sec_special_wrap_1 .archive_1 .item a {
        display: block;
        height: 100%;
        position: relative;
    }
    .cs_sec_special_wrap_1 .archive_1 .item a > .clm_wrap {
        width: 100%;
    }
    .cs_sec_special_wrap_1 .archive_1 .item a > .clm_wrap:nth-of-type(1) {
        margin: 0 auto 30px;
        width: 90%;
    }

    .cs_sec_special_wrap_1 .archive_1 .item a > .clm_wrap:nth-of-type(2) {
        padding-bottom: 20px;
    }

    .cs_sec_special_wrap_1 .archive_1 .item .cat {
        display: none;
        margin-bottom: 10px;
        min-width: 160px;
        font-size: 16px;
    }
    .cs_sec_special_wrap_1 .archive_1 .item .ttl {
        margin-bottom: 10px;
        font-size: 22px;
    }

    .cs_sec_special_wrap_1 .archive_1 .item .btn {
        display: none;
        margin-top: 0;
        position: absolute;
        left: 0;
        bottom: 0;
        z-index: 1;
    }
    .cs_sec_special_wrap_1 .swiper-button-prev,
    .cs_sec_special_wrap_1 .swiper-button-next {
        width: 35px;
        height: 140px;
    }
    .cs_sec_special_wrap_1 .swiper-button-prev {
        left: -10px;
        top: 65px;
    }
    .cs_sec_special_wrap_1 .swiper-button-next {
        right: -10px;
        top: 65px;
    }

    .cs_sec_special_wrap_1 .swiper-pagination {
        bottom: -50px;
    }

    .cs_sec_special_wrap_1 .btn_1 {
        margin: 40px auto 0;
    }

    .cs_sec_special_wrap_1 .archive_1 .slick-dots {
        width: 100%;
        margin: 0px 0 0;
    }

    .cs_sec_special_wrap_1 .archive_1 .slick-dots li {
        width: 26px;
        height: 26px;
    }

    .cs_sec_special_wrap_1 .archive_1 .slick-dots li button::before {
        width: 6px;
        height: 6px;
    }
}
/* ---------------------------------------------------- */
/* cs_sec_cv_wrap_1 */
/* ---------------------------------------------------- */
.cs_sec_cv_wrap_1 {
    padding-top: 100px;
}

.cs_sec_cv_wrap_1 .nav_1 > ul {
    display: flex;
}
.cs_sec_cv_wrap_1 .nav_1 > ul > li {
    position: relative;
    flex: auto;
    width: 100%;
}
.cs_sec_cv_wrap_1 .nav_1 > ul > li + li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    display: block;
    width: 1px;
    height: calc(100% - 60px);
    background-color: var(--co_2);
}
.cs_sec_cv_wrap_1 .nav_1 a {
    display: flex;
    justify-content: center;
    padding-top: 45px;
    height: 260px;
    color: var(--co_2);
    background-color: var(--co_6);
}
.cs_sec_cv_wrap_1 .nav_1 .ico {
    position: relative;
    display: block;
    margin: 0 auto 20px;
    width: 45px;
    height: 45px;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}
.cs_sec_cv_wrap_1 .nav_1 .ttl {
    display: flex;
    justify-content: center;
    align-items: center;
    padding-left: 10px;
    margin-bottom: 10px;
    line-height: 1.4;
    font-weight: 700;
    text-align: center;
}
.cs_sec_cv_wrap_1 .nav_1 .num {
    font-size: 32px;
    line-height: 1;
    font-weight: 700;
    text-align: center;
}

.cs_sec_cv_wrap_1 .nav_1 .time {
    margin-top: 10px;
    font-size: 13px;
    text-align: center;
}
.cs_sec_cv_wrap_1 .nav_1 .desc {
    font-size: 14px;
    text-align: center;
}

.cs_sec_cv_wrap_1 .nav_1 .ttl i {
    position: relative;
    display: block;
    margin-left: 20px;
    width: 20px;
    height: 20px;
}
.cs_sec_cv_wrap_1 .nav_1 .ttl i::before {
    content: "";
    width: 20px;
    height: 2px;
    background-color: var(--co_2);
    position: absolute;
    top: 50%;
    right: -1px;
    transform: translateY(-50%);
    transition: 0.3s ease-in-out;
}
.cs_sec_cv_wrap_1 .nav_1 .ttl i::after {
    content: "";
    width: 16px;
    height: 16px;
    border-top: 2px solid var(--co_2);
    border-right: 2px solid var(--co_2);
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
    transition: 0.3s ease-in-out;
}

@media (min-width: 1000px) {
    .cs_sec_cv_wrap_1 .nav_1 a:hover {
        background-color: var(--co_7);
    }
    .cs_sec_cv_wrap_1 .nav_1 > ul > li:nth-child(1) .arrow {
        opacity: 0;
    }
}
@media (max-width: 999px) {
    .cs_sec_cv_wrap_1 {
        padding-top: 50px;
    }

    .cs_sec_cv_wrap_1 .nav_1 > ul {
        display: block;
    }
    .cs_sec_cv_wrap_1 .nav_1 > ul > li + li::before {
        content: "";
        position: absolute;
        left: 50%;
        top: 0;
        transform: translateX(-50%);
        width: calc(100% - 40px);
        height: 1px;
        background-color: var(--co_2);
    }
    .cs_sec_cv_wrap_1 .nav_1 a {
        display: flex;
        justify-content: center;
        align-items: center;
        padding: 20px 10px;
        height: auto;
    }
    .cs_sec_cv_wrap_1 .nav_1 a > div {
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .cs_sec_cv_wrap_1 .nav_1 .ico {
        margin: 0;
        margin-right: 20px;
        width: 30px;
        height: 30px;
    }
    .cs_sec_cv_wrap_1 .nav_1 .ttl {
        display: block;
        margin-bottom: 5px;
        font-size: 18px;
        text-align: left;
    }
    .cs_sec_cv_wrap_1 .nav_1 .ttl i {
        position: absolute;
        right: 30px;
        bottom: 30px;
        margin-left: 0;
    }
    .cs_sec_cv_wrap_1 .nav_1 .num {
        font-size: 32px;
        line-height: 1;
        font-weight: 700;
        text-align: center;
    }
    .cs_sec_cv_wrap_1 .nav_1 .time {
        font-size: 11px;
    }
    .cs_sec_cv_wrap_1 .nav_1 .desc {
        font-size: 13px;
        text-align: left;
    }

    .cs_sec_cv_wrap_1 .nav_1 .arrow {
        display: none;
    }
}
/* ---------------------------------------------------- */
/* cs_sec_bnr_wrap_1 */
/* ---------------------------------------------------- */
.cs_sec_bnr_wrap_1 {
    padding-top: 100px;
    padding-bottom: 100px;
}
.cs_sec_bnr_wrap_1 .list_1 {
    margin: 0 auto;
    width: 732px;
}
.cs_sec_bnr_wrap_1 .list_1 > ul > li + li {
    margin-top: 25px;
}
.cs_sec_bnr_wrap_1 .list_2 > ul {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin-right: -25px;
    margin-bottom: -25px;
}
.cs_sec_bnr_wrap_1 .list_2 > ul > li {
    margin-right: 25px;
    margin-bottom: 25px;
    width: calc(100% / 3 - 25px);
}

.cs_sec_bnr_wrap_1 .list_2 .img > span {
    padding-top: 72%;
}
.cs_sec_bnr_wrap_1 .list_1 + .list_2 {
    margin-top: 60px;
}
@media (max-width: 999px) {
    .cs_sec_bnr_wrap_1 {
        padding-top: 50px;
        padding-bottom: 50px;
    }
    .cs_sec_bnr_wrap_1 .list_1 {
        margin: 0 auto;
        width: auto;
    }
    .cs_sec_bnr_wrap_1 .list_1 > ul > li + li {
        margin-top: 25px;
    }
    .cs_sec_bnr_wrap_1 .list_2 > ul {
        margin-right: 0;
        margin-bottom: -20px;
    }
    .cs_sec_bnr_wrap_1 .list_2 > ul > li {
        margin-right: 0;
        margin-bottom: 20px;
        width: 100%;
    }
    .cs_sec_bnr_wrap_1 .list_1 + .list_2 {
        margin-top: 30px;
    }
}
/* ---------------------------------------------------- */
/* cs_sec_others_wrap_1_1 */
/* ---------------------------------------------------- */
.cs_sec_others_wrap_1 {
    padding-top: 80px;
}
.cs_sec_others_wrap_1 .ttl_1 {
    margin-bottom: 50px;
}

.cs_sec_others_wrap_1 .list_1 > ul {
    display: flex;
    margin-right: -10px;
}

.cs_sec_others_wrap_1 .list_1 > ul > li {
    margin-right: 10px;
    width: calc(100% / 4 - 10px);
}
.cs_sec_others_wrap_1 .list_1 a {
    position: relative;
    display: block;
    color: var(--co_2);
    background-position: center;
    background-size: cover;
}
.cs_sec_others_wrap_1 .list_1 .img {
    background-color: var(--co_1);
}
.cs_sec_others_wrap_1 .list_1 .img > span {
    padding-top: 100%;
    opacity: 0.5;
}
.cs_sec_others_wrap_1 .list_1 a > div {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
    z-index: 3;
    transition: 0.3s ease-in-out;
}
.cs_sec_others_wrap_1 .list_1 .ttl {
    width: 100%;
    line-height: 1.2;
    text-align: center;
}

.cs_sec_others_wrap_1 .list_1 .ttl .ja {
    display: block;
    margin-bottom: 5px;
    font-size: 24px;
    font-weight: 500;
}
.cs_sec_others_wrap_1 .list_1 .ttl .en {
    display: block;
}

.cs_sec_others_wrap_1 .list_1 .arrow {
    position: relative;
    display: block;
    margin: 20px auto 0;
    width: 24px;
    height: 24px;
    border: 1px solid var(--co_2);
    border-radius: 100%;
}
.cs_sec_others_wrap_1 .list_1 .arrow::before {
    content: "";
    width: 10px;
    height: 1px;
    background-color: var(--co_2);
    position: absolute;
    top: 50%;
    right: 7px;
    transform: translateY(-50%);
    transition: 0.3s ease-in-out;
}
.cs_sec_others_wrap_1 .list_1 .arrow::after {
    content: "";
    width: 8px;
    height: 8px;
    border-top: 1px solid var(--co_2);
    border-right: 1px solid var(--co_2);
    position: absolute;
    right: 7px;
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
    transition: 0.3s ease-in-out;
}
@media (max-width: 999px) {
    .cs_sec_others_wrap_1 {
        padding-top: 40px;
    }
    .cs_sec_others_wrap_1 .ttl_1 {
        margin-bottom: 40px;
    }

    .cs_sec_others_wrap_1 .list_1 > ul {
        flex-wrap: wrap;
        margin-right: 0;
        margin-bottom: -5px;
    }

    .cs_sec_others_wrap_1 .list_1 > ul > li {
        margin-right: 0;
        margin-bottom: 5px;
        width: 100%;
    }

    .cs_sec_others_wrap_1 .list_1 .img > span {
        padding-top: 42%;
    }

    .cs_sec_others_wrap_1 .list_1 .ttl .ja {
        font-size: 24px;
    }

    .cs_sec_others_wrap_1 .list_1 .arrow {
        position: absolute;
        right: 20px;
        top: 50%;
        transform: translateY(-50%);
        margin: 0;
    }
}
/* ---------------------------------------------------- */
/* wow_none */
/* ---------------------------------------------------- */
@media (min-width: 1000px) {
    .wow_none_pc {
        animation: none;
        transform: none;
        transition: unset;
        visibility: visible;
        opacity: 1;
    }
}

@media (max-width: 999px) {
    .wow_none_sp {
        animation: none;
        transform: none;
        transition: unset;
        visibility: visible;
        opacity: 1;
    }
}

/* ---------------------------------------------------- */
/* wow_continue_1 */
/* ---------------------------------------------------- */
.wow_continue_1 > * {
    transform: translateY(50%);
    opacity: 0;
    animation-name: wow_continue_1;
    animation-duration: 1s;
    animation-timing-function: ease-out;
    animation-iteration-count: 1;
    animation-fill-mode: forwards;
    animation-play-state: paused;
}

.wow_continue_1.animated > * {
    animation-play-state: running !important;
}

.wow_continue_1.animated > *:nth-child(1),
.wow_continue_1.animated > *:nth-of-type(1) {
    animation-delay: 0s;
}

.wow_continue_1.animated > *:nth-child(2),
.wow_continue_1.animated > *:nth-of-type(2) {
    animation-delay: 0.2s;
}

.wow_continue_1.animated > *:nth-child(3),
.wow_continue_1.animated > *:nth-of-type(3) {
    animation-delay: 0.4s;
}

.wow_continue_1.animated > *:nth-child(4),
.wow_continue_1.animated > *:nth-of-type(4) {
    animation-delay: 0.6s;
}

.wow_continue_1.animated > *:nth-child(5),
.wow_continue_1.animated > *:nth-of-type(5) {
    animation-delay: 0.8s;
}

.wow_continue_1.animated > *:nth-child(6),
.wow_continue_1.animated > *:nth-of-type(6) {
    animation-delay: 1s;
}

.wow_continue_1.animated > *:nth-child(7),
.wow_continue_1.animated > *:nth-of-type(7) {
    animation-delay: 1.2s;
}

.wow_continue_1.animated > *:nth-child(8),
.wow_continue_1.animated > *:nth-of-type(8) {
    animation-delay: 1.4s;
}

.wow_continue_1.animated > *:nth-child(9),
.wow_continue_1.animated > *:nth-of-type(9) {
    animation-delay: 1.6s;
}

.wow_continue_1.animated > *:nth-child(10),
.wow_continue_1.animated > *:nth-of-type(10) {
    animation-delay: 1.8s;
}

.wow_continue_1.animated > *:nth-child(11),
.wow_continue_1.animated > *:nth-of-type(11) {
    animation-delay: 2s;
}

.wow_continue_1.animated > *:nth-child(12),
.wow_continue_1.animated > *:nth-of-type(12) {
    animation-delay: 2.2s;
}

.wow_continue_1.animated > *:nth-child(13),
.wow_continue_1.animated > *:nth-of-type(13) {
    animation-delay: 2.4s;
}

.wow_continue_1.animated > *:nth-child(14),
.wow_continue_1.animated > *:nth-of-type(14) {
    animation-delay: 2.6s;
}

.wow_continue_1.animated > *:nth-child(15),
.wow_continue_1.animated > *:nth-of-type(15) {
    animation-delay: 2.8s;
}

.wow_continue_1.animated > *:nth-child(16),
.wow_continue_1.animated > *:nth-of-type(16) {
    animation-delay: 3s;
}

.wow_continue_1.animated > *:nth-child(17),
.wow_continue_1.animated > *:nth-of-type(17) {
    animation-delay: 3.2s;
}

.wow_continue_1.animated > *:nth-child(18),
.wow_continue_1.animated > *:nth-of-type(18) {
    animation-delay: 3.4s;
}

.wow_continue_1.animated > *:nth-child(19),
.wow_continue_1.animated > *:nth-of-type(19) {
    animation-delay: 3.6s;
}

.wow_continue_1.animated > *:nth-child(20),
.wow_continue_1.animated > *:nth-of-type(20) {
    animation-delay: 3.8s;
}

.wow_continue_1.animated > *:nth-child(21),
.wow_continue_1.animated > *:nth-of-type(21) {
    animation-delay: 4s;
}

.wow_continue_1.animated > *:nth-child(22),
.wow_continue_1.animated > *:nth-of-type(22) {
    animation-delay: 4.2s;
}

.wow_continue_1.animated > *:nth-child(23),
.wow_continue_1.animated > *:nth-of-type(23) {
    animation-delay: 4.4s;
}

.wow_continue_1.animated > *:nth-child(24),
.wow_continue_1.animated > *:nth-of-type(24) {
    animation-delay: 4.6s;
}

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

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

/* ---------------------------------------------------- */
/* wow_continue_2 */
/* ---------------------------------------------------- */
.wow_continue_2 > * {
    transform: translateX(50px);
    opacity: 0;
    animation-name: wow_continue_2;
    animation-duration: 1s;
    animation-timing-function: ease-out;
    animation-iteration-count: 1;
    animation-fill-mode: forwards;
    animation-play-state: paused;
}

.wow_continue_2.animated > * {
    animation-play-state: running !important;
}

.wow_continue_2.animated > *:nth-child(1),
.wow_continue_2.animated > *:nth-of-type(1) {
    animation-delay: 0s;
}

.wow_continue_2.animated > *:nth-child(2),
.wow_continue_2.animated > *:nth-of-type(2) {
    animation-delay: 0.2s;
}

.wow_continue_2.animated > *:nth-child(3),
.wow_continue_2.animated > *:nth-of-type(3) {
    animation-delay: 0.4s;
}

.wow_continue_2.animated > *:nth-child(4),
.wow_continue_2.animated > *:nth-of-type(4) {
    animation-delay: 0.6s;
}

.wow_continue_2.animated > *:nth-child(5),
.wow_continue_2.animated > *:nth-of-type(5) {
    animation-delay: 0.8s;
}

.wow_continue_2.animated > *:nth-child(6),
.wow_continue_2.animated > *:nth-of-type(6) {
    animation-delay: 1s;
}

@keyframes wow_continue_2 {
    0% {
        opacity: 0;
        transform: translateX(50px);
    }

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

/* ---------------------------------------------------- */
/* animate.css */
/* ---------------------------------------------------- */
@-webkit-keyframes fadeInUp {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(0, 50px, 0);
        transform: translate3d(0, 50px, 0);
    }

    to {
        opacity: 1;
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
}

@keyframes fadeInUp {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(0, 50px, 0);
        transform: translate3d(0, 50px, 0);
    }

    to {
        opacity: 1;
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
}

@-webkit-keyframes fadeInDown {
    from {
        opacity: 0;
        -webkit-transform: translate3d(0, -50px, 0);
        transform: translate3d(0, -50px, 0);
    }

    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

@keyframes fadeInDown {
    from {
        opacity: 0;
        -webkit-transform: translate3d(0, -50px, 0);
        transform: translate3d(0, -50px, 0);
    }

    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

@-webkit-keyframes fadeInRight {
    from {
        opacity: 0;
        -webkit-transform: translate3d(50px, 0, 0);
        transform: translate3d(50px, 0, 0);
    }

    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

@keyframes fadeInRight {
    from {
        opacity: 0;
        -webkit-transform: translate3d(50px, 0, 0);
        transform: translate3d(50px, 0, 0);
    }

    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

@-webkit-keyframes fadeInLeft {
    from {
        opacity: 0;
        -webkit-transform: translate3d(-30px, 0, 0);
        transform: translate3d(-30px, 0, 0);
    }

    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

@keyframes fadeInLeft {
    from {
        opacity: 0;
        -webkit-transform: translate3d(-30px, 0, 0);
        transform: translate3d(-30px, 0, 0);
    }

    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}
@keyframes fadeInBlur {
    from {
        opacity: 0;
        filter: blur(10px);
    }

    to {
        opacity: 1;
        filter: blur(0);
    }
}
.animate__fadeInBlur {
    -webkit-animation-name: fadeInBlur;
    animation-name: fadeInBlur;
}

/* ---------------------------------------------------- */
/* cs_wysiwyg */
/* ---------------------------------------------------- */
.cs_wysiwyg:after {
    content: ".";
    display: block;
    height: 0;
    font-size: 0;
    clear: both;
    visibility: hidden;
}

.cs_wysiwyg {
    display: block;
}

.cs_wysiwyg > * + * {
    margin-top: 1.5em;
}

/* ---------------------------------------------------- */
/* p */
/* ---------------------------------------------------- */
.cs_wysiwyg p {
    text-align: justify;
    line-height: 1.8;
}

.cs_wysiwyg p + p {
    margin-top: 1.5em;
}

/* ---------------------------------------------------- */
/* a */
/* ---------------------------------------------------- */
.cs_wysiwyg a {
    color: var(--co_4);
}
/* ---------------------------------------------------- */
/* img */
/* ---------------------------------------------------- */
.cs_wysiwyg img {
    display: inline-block;
    width: auto;
    max-width: 100% !important;
    height: auto !important;
    vertical-align: bottom;
}

/* ---------------------------------------------------- */
/* h */
/* ---------------------------------------------------- */
.wp-block-heading {
    line-height: 1.4;
    font-weight: 700;
}

.wp-block-heading + * {
    margin-top: 1em;
}

* + .wp-block-heading {
    margin-top: 3em;
}

h1.wp-block-heading {
    font-size: 26px;
}

h2.wp-block-heading {
    font-size: 24px;
}

h3.wp-block-heading {
    font-size: 22px;
}

h4.wp-block-heading {
    font-size: 20px;
}

h5.wp-block-heading {
    font-size: 18px;
}

h6.wp-block-heading {
    font-size: 16px;
}

@media (max-width: 999px) {
    h1.wp-block-heading {
        font-size: 21px;
    }

    h2.wp-block-heading {
        font-size: 20px;
    }

    h3.wp-block-heading {
        font-size: 19px;
    }

    h4.wp-block-heading {
        font-size: 18px;
    }

    h5.wp-block-heading {
        font-size: 17px;
    }

    h6.wp-block-heading {
        font-size: 16px;
    }
}

/* ---------------------------------------------------- */
/* img */
/* ---------------------------------------------------- */
.cs_wysiwyg img {
    width: auto;
    max-width: 100% !important;
    height: auto !important;
}

.cs_wysiwyg img.alignright {
    margin: 0 0 0 15px;
    display: inline;
    float: right;
}

.cs_wysiwyg img.alignleft {
    margin: 0 10px 0 0;
    display: inline;
    float: left;
}

.cs_wysiwyg img.aligncenter {
    display: block;
    margin: 0 auto;
}

.cs_wysiwyg img.alignnone {
    margin: 0 10px 0 0;
}

.cs_wysiwyg img.size-thumbnail {
    display: inline-block;
    margin: 0 4% 0 0;
    width: 48%;
}

.cs_wysiwyg img.size-thumbnail + .size-thumbnail {
    margin: 0 0 0 0;
}

.wp-caption {
    max-width: 100% !important;
}

.wp-element-caption {
    font-size: 11px;
}

/* ---------------------------------------------------- */
/* yt */
/* ---------------------------------------------------- */
.cs_yt_1 {
    position: relative;
    padding-top: 56.25%;
    width: 100%;
}

.cs_yt_1 iframe,
.cs_yt_1 object,
.cs_yt_1 embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
}

/* ---------------------------------------------------- */
/* cs_table */
/* ---------------------------------------------------- */
.wp-block-table table {
    width: 100%;
    border-top: 1px solid var(--co_10);
}
.wp-block-table thead {
    border: none;
}
.wp-block-table table tr {
    border-bottom: 1px solid var(--co_10);
}

.wp-block-table table th,
.wp-block-table table td {
    padding: 10px 10px;
    vertical-align: top;
    border: none;
    border-right: 1px solid var(--co_10);
}
.wp-block-table table th {
    font-weight: 700;
}

.wp-block-table table tr > th:last-of-type,
.wp-block-table table tr > td:last-of-type {
    border: none;
}
.wp-block-table .wp-element-caption {
    margin-top: 0.5em;
    font-size: 12px;
}

@media (max-width: 999px) {
    .wp-block-table {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
    .wp-block-table table {
        white-space: nowrap;
    }
}

/* ---------------------------------------------------- */
/* UL */
/* ---------------------------------------------------- */
.cs_wysiwyg ul,
.cs_ul_1 {
    padding: 0;
    list-style: none;
}

.cs_wysiwyg ul li,
.cs_ul_1 li {
    position: relative;
    padding-left: 30px;
}

.cs_wysiwyg ul li + li,
.cs_ul_1 li + li {
    margin-top: 0.2em;
}

.cs_wysiwyg ul li:before,
.cs_ul_1 li:before {
    content: "";
    position: absolute;
    left: 2px;
    top: 8px;
    display: block;
    width: 8px;
    height: 8px;
    background-color: var(--co_4);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    border-radius: 100%;
}

/* ---------------------------------------------------- */
/* OL */
/* ---------------------------------------------------- */
.cs_wysiwyg ol,
.cs_ol_1 {
    padding: 0;
    list-style: none;
    counter-reset: ol_li;
}

.cs_wysiwyg ol li,
.cs_ol_1 li {
    position: relative;
    padding-left: 30px;
}

.cs_wysiwyg ol li + li,
.cs_ol_1 li + li {
    margin-top: 0.2em;
}

.cs_wysiwyg ol li:before,
.cs_ol_1 li:before {
    counter-increment: ol_li;
    content: counter(ol_li) ".";
    position: absolute;
    left: 0;
    top: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 24px;
    height: 24px;
}

/* ---------------------------------------------------- */
/* block */
/* ---------------------------------------------------- */
.wp-block-group {
    padding: 40px;
    background-color: var(--co_7);
}

.wp-block-group .wp-block-heading + * {
    margin-top: 2em;
}

.wp-block-group__inner-container > * + * {
    margin-top: 1.5em;
}

@media (max-width: 999px) {
    .wp-block-group {
        padding: 40px 20px;
    }
}
@media (max-width: 999px) {
.grecaptcha-badge{
	    bottom: 60px!important;
	z-index: 49!important;
}}

