/* -- reset module8 -- */
.edit,
.show_content,
.main_part { width: 100% !important; max-width: 100% !important; margin: auto !important; padding: 0px !important;}
.pageIndex .main_part { border:none !important; }
.path{ display:none;}
/* -- reset module8 end -- */

.edit_part {
    max-width: 100%;
    margin: auto;
    padding: 0;
}

.cai_a{
    padding: var(--pdy) var(--pdx);
}
.cai_a01{
    max-width: var(--content_width);
    margin: auto;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    row-gap: 30px;
    column-gap: clamp(15px, 3.5vw, 60px);
}
.cai_a01 > a{
    display: grid;
    border-radius: 15px;
    overflow: hidden;
    align-items: flex-end;
}
.cai_a01 > a figure{
    grid-area: 1 / 1 / -1 / -1;
    --mask_pos:50%;
    height: 100%;
}
.cai_a01 > a article{
    grid-area: 1 / 1 / -1 / -1;
    padding: calc(1vw + 20px) clamp(5%, 2vw, 50px);
    display: flex;
    justify-content: space-between;
    align-items: center;
    filter: drop-shadow(0 0 2px #000);
    -webkit-filter: drop-shadow(0 0 2px #000);
}
.cai_a01 > a article h4{
    font-size: var(--f24);
    color: #fff;
    line-height: 1.2;
    position: relative;
    z-index: 1;
}
.cai_a01 > a article::after{
    content: '';
    width: 65px;
    height: 65px;
    display: flex;
    justify-content: center;
    align-items: center;
    background: url(../edit_image/ca_icon_arrow.png) no-repeat center center / 21px var(--colorMain);
    border-radius: 50%;
    margin: 0 0 0 5px;
}
.cai_a01 > a:hover figure img{
    transform: scale(1.1);
    transition: all .4s;
}
.cai_a01 > a:hover article::after{
    animation: btn_r2r 1.5s ease-in-out forwards;
}

.cai_b{
    padding: calc(var(--pdy)*2) var(--pdx);
    background: url(../edit_image/index/ca_bg01.jpg) center center / cover;
    position: relative;
    z-index: 1;
}
.cai_b::after{
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0px;
    right: 0px;
    z-index: -1;
    background: linear-gradient(to left, #00000030 30%, #00000000 50%);
}
.cai_b > article{
    max-width: var(--content_width);
    margin: auto;
}
.cai_b > article aside{
    max-width: 600px;
    margin: 0 0 0 auto;
    filter: drop-shadow(0 0 1px #333);
    -webkit-filter: drop-shadow(0 0 1px #333);
}
.cai_b > article aside h4{
    font-size: var(--f40);
    line-height: 1.4;
    color: var(--colorText-white);
    margin: 0 0 20px;
}
.cai_b > article aside h4 s{
    display: inline-block;
    font-size: var(--f40);
    line-height: 1.4;
    color: var(--colorText-white);
}
.cai_b > article aside p{
    color: var(--colorText-white);
}

.cai_c{
    padding: var(--pdy) var(--pdx);
    display: flex;
    justify-content: center;
    align-items: center;
}
.cai_c > figure{
    align-self: stretch;
    --mask_pos: 0px;
}
.cai_c > figure img{
    min-height: 100%;
    object-fit: cover;
}
.cai_c > article{
    width: 510px;
    min-width: 351px;
    margin: 0 0 0 8%;
}
.cai_c > article h4{
    font-size: var(--f40);
    line-height: 1.2;
}
.cai_c > article h4 b{
    display: inline-block;
    font-size: var(--f40);
    line-height: 1.2;
    color: var(--colorMain);
}
.cai_c > article h5{
    font-size: var(--f24);
    margin: 5px 0 0;
}
.cai_c > article h5 s{
    display: inline-block;
    font-size: var(--f24);
}
.cai_c > article p{
    margin: calc(1vw + 20px) 0 0;
}

/* --- Media Queries --- */
@media (max-width: 1440px) {
    .cai_a01 > a article::after{width: 40px;height: 40px;}
    .cai_c > article{margin: 0 0 0 5%;}
}
@media (max-width: 1024px) {}
@media (max-width: 992px) {
    .cai_a01{grid-template-columns: 1fr 1fr;gap: 20px;}
    .cai_a01 > a figure img{aspect-ratio: 3/2;object-fit: cover;width: 100%;height: 100%;}
    .cai_a01 > a:nth-of-type(1){grid-row: 1/3;}
    .cai_c > article{min-width: 250px;}
}
@media (max-width: 768px) {
    .cai_c{flex-direction: column;}
    .cai_c > article{min-width: unset;width: 100%;margin: 40px auto 0;}

}
@media (max-width: 576px) {
    .cai_a01{grid-template-columns: 1fr;gap: 15px;}
    .cai_a01 > a:nth-of-type(1){grid-row: unset;}

}
@media (max-width: 480px) {
    .cai_b{padding: var(--pdy) var(--pdx);}
}
@media (max-width: 375px) {}
