.casestudies:has(.bg_ao_re-wh-cs_aore),
.casestudies:has(.bg_ao_re-wh-cs_aore_20250529),
.casestudies:has(.bg_ao_re-wh-cs_aore_20250722) {
    overflow: hidden;
}

.casestudies_20250722 {
    position: relative;
    z-index: 1;
}
.casestudies_20250722::before {
    position: absolute;
    top: 38%;
    right: -12%;
    content: "";
    width: 105%;
    height: auto;
    aspect-ratio: 1248 / 289;
    background-image: url(../images/column/personal-color/bg_aore-wh.svg);
    background-repeat: no-repeat;
    background-size: contain;
    z-index: -1;
}
.casestudies_20250722::after {
    position: absolute;
    bottom: 35%;
    left: -29%;
    content: "";
    width: 105%;
    height: auto;
    aspect-ratio: 1248 / 289;
    background-image: url(../images/column/personal-color/bg_aore-wh.svg);
    background-repeat: no-repeat;
    background-size: contain;
    z-index: -1;
}

.bg_ao_re-wh-cs {
    background: url(../images/column/personal-color/bg_ao-wh.svg) right 35% no-repeat,
    url(../images/column/personal-color/bg_re-wh.svg) left 85% no-repeat;
    background-size: 70%, 70%;
    max-width: 1440px;
    margin: 0 auto;
}
.bg_ao_re-wh-cs_02 {
    background-position-y: 26%, 67%;
}
.bg_ao_re-wh-cs_aore {
    background-position-y: 18.3%, 50.6%;
    position: relative;
}
.bg_ao_re-wh-cs_aore::before {
    position: absolute;
    bottom: 1.7%;
    right: -18%;
    content: "";
    width: 130%;
    height: auto;
    aspect-ratio: 1248 / 289;
    background-image: url(../images/column/personal-color/bg_aore-wh.svg);
    background-repeat: no-repeat;
    background-size: contain;
    z-index: -1;
}
.bg_ao_re-wh-cs_aore_20250529 {
    background-position-y: 18.3%, 47%;
    position: relative;
}
.bg_ao_re-wh-cs_aore_20250529::before {
    position: absolute;
    bottom: 13%;
    right: -18%;
    content: "";
    width: 130%;
    height: auto;
    aspect-ratio: 1248 / 289;
    background-image: url(../images/column/personal-color/bg_aore-wh.svg);
    background-repeat: no-repeat;
    background-size: contain;
    z-index: -1;
}
.bg_ao_re-wh-cs_aore_20250624 {
    background-position-y: 33%, 61%;
    position: relative;
}
.bg_ao_re-wh-cs_aore_20250624::before {
    position: absolute;
    bottom: 20%;
    left: -4%;
    content: "";
    width: 108%;
    height: auto;
    aspect-ratio: 1248 / 289;
    background-image: url(../images/column/personal-color/bg_aore-wh.svg);
    background-repeat: no-repeat;
    background-size: contain;
    z-index: -1;
}
.bg_ao_re-wh-cs_aore_20250722 {
    background: none;
    position: relative;
}
.bg_ao_re-wh-cs_aore_20250722::before {
    position: absolute;
    bottom: 11.5%;
    left: -5%;
    content: "";
    width: 110%;
    height: auto;
    aspect-ratio: 1248 / 289;
    background-image: url(../images/column/personal-color/bg_aore-wh.svg);
    background-repeat: no-repeat;
    background-size: contain;
    z-index: -1;
}
@media (min-width: 520px) {
    .bg_ao_re-wh-cs {
        background-position-y: 38%, 89%;
        background-size: 50%, 50%;
    }
    .bg_ao_re-wh-cs_02 {
        background-position-y: 22%, 70%;
    }
    .bg_ao_re-wh-cs_aore {
        background-position-y: 22%, 55%;
    }
    .bg_ao_re-wh-cs_aore::before {
        bottom: 1.2%;
        right: -14%;
        width: 120%;
    }
    .bg_ao_re-wh-cs_aore_20250529 {
        background-position-y: 22%, 52%;
    }
    .bg_ao_re-wh-cs_aore_20250529::before {
        bottom: 11%;
        right: -14%;
        width: 120%;
    }
    .bg_ao_re-wh-cs_aore_20250624 {
        background-position-y: 28%, 55%;
    }
    .bg_ao_re-wh-cs_aore_20250624::before {
        bottom: 17%;
    }
    .casestudies_20250722::before {
        top: 35%;
    }
    .bg_ao_re-wh-cs_aore_20250722::before {
        bottom: 10%;
    }
}
@media (min-width: 920px) {
    .bg_ao_re-wh-cs {
        background-position-y: 40%, 89%;
        background-size: 45%, 45%;
    }
    .bg_ao_re-wh-cs_02 {
        background-position-y: 24%, 71%;
    }
    .bg_ao_re-wh-cs_aore {
        background-position-y: 25.5%, 55.5%;
    }
    .bg_ao_re-wh-cs_aore::before {
        bottom: 1%;
        right: -9%;
        width: 97.5%;
    }
    .bg_ao_re-wh-cs_aore_20250529 {
        background-position-y: 24%, 50%;
    }
    .bg_ao_re-wh-cs_aore_20250529::before {
        bottom: 9%;
        right: -9%;
        width: 97.5%;
    }
    .bg_ao_re-wh-cs_aore_20250624 {
        background-position-y: 31%, 56.5%;
    }
    .bg_ao_re-wh-cs_aore_20250624::before {
        bottom: 14.4%;
        width: 103%;
    }
    .casestudies_20250722::before {
        top: 37%;
    }
    .bg_ao_re-wh-cs_aore_20250722::before {
        bottom: 9%;
        left: -2%;
        width: 103%;
    }
}
@media (min-width: 1200px) {
    .bg_ao_re-wh-cs {
        background-position-y: 40%, 90%;
    }
    .bg_ao_re-wh-cs_02 {
        background-position-y: 23%, 70%;
    }
    .bg_ao_re-wh-cs_aore {
        background-position-y: 25.5%,69.5%;
        background-position-x: 94%, 4%;
    }
    .bg_ao_re-wh-cs_aore_20250529 {
        background-position-y: 24%, 50%;
        background-position-x: 94%, 4%;
    }
    .bg_ao_re-wh-cs_aore_20250624 {
        background-position-y: 31%, 56.5%;
    }
    .casestudies_20250722:after,
    .casestudies_20250722:before {
        width: 1246px;
    }
    .casestudies_20250722:before {
        left: calc(50% - 450px);
        top: 38%;
    }
    .casestudies_20250722::after {
        left: calc(50% - 950px);
        bottom: 30.5%;
    }
}

.casestudies__title {
    margin-bottom: 3rem;
}

.casestudies__title-second {
    margin-bottom: 1rem;
}

.casestudies__title-third {
    font-size: 1rem;
}

.casestudies__title img,
.casestudies__title-second img {
    height: 30px;
}
@media (min-width: 520px) {
    .casestudies__title img {
        height: 40px;
    }
    .casestudies__title-second img {
        height: 35px;
    }
}

.list-number {
    width: 2rem;
    margin-right: 0.5rem;
}

.casestudies__list {
    padding-top: 2rem;
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
}
@media (min-width: 520px) {
    .casestudies__list {
        padding-top: 0;
        margin-top: 7rem;
    }
}

.casestudies__intro {
    width: 90%;
    padding: 5%;
    margin: 0 auto;
    /* position: relative; */
}
@media (min-width: 960px) {
    .casestudies__intro {
        max-width: 700px;
        padding: 50px;
    }
}

.casestudies__intro--01 { /* red */
    background-color:#d8cece;
}
.casestudies__intro--02 { /* brown */
    background-color:#cec4b6;
}
.casestudies__intro--03 { /* yellow */
    background-color:#d1d0b4;
}
.casestudies__intro--04 { /* green */
    background-color:#c9d6c9;
}
.casestudies__intro--05 { /*blue */
    background-color:#cbd4de;
}
.casestudies__intro--06 { /*purple*/
    background-color:#cec9d3;
}

.casestudies__intro--main_image {
    position: relative;
}

.guide {
    width: 80%;
    max-width: 500px;
    padding: 2rem;
    margin: 5rem auto;
    border: 1px solid #222;
}

.guide_title {
    background: url(../images/casestudies/guide_title.svg) center left no-repeat;
    background-size: 1rem;
    padding-left: 1.5rem;
    margin-bottom: 0.5rem;
}

.guide_list li {
    line-height: 1.5;
    margin-bottom: 0.5rem;
}
.guide_list li:last-of-type {
    margin-bottom: 0;
}

.arrow_s {
    position: relative;
    display: inline-block;
    padding-left: 1.3rem;
}
.arrow_s:before {
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px 0 6px 8px;
    border-color: transparent transparent transparent #222;
    position: absolute;
    top: 3px;
    left: 0;
    margin: auto;
}


.ornament {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    width: 1rem;
}
@media (min-width: 520px) {
    .ornament {
        top: -5.5rem;
        right: -4rem;
        width: 1.5rem;
    }
}
@media (min-width: 960px) {
    .ornament {
        top: -6.5rem;
        right: -6rem;
        width: 2rem;
    }
}
@media (min-width: 1200px) {
    .ornament {
        right: -6.5rem;
        width: 2.5rem;
    }
}

.casestudies__main-image {
    width: 85%;
    text-align: center;
    margin: 0 auto 1rem;
}
@media (min-width: 520px) {
    .casestudies__main-image {
        width: 100%;
        text-align: center;
    }
}

.casestudies__separate-image {
    width: 100%;
    margin: 0 auto 1rem;
}
@media (min-width: 520px) {
    .casestudies__separate-image {
        width: 90%;
        display: flex;
        justify-content: space-between;
        gap:5px;
    }
}

.detail-image {
    width: 100%;
    max-width: 500px;
    display: flex;
    align-items: center;
    margin: 0 auto 1rem;
}
.detail-image-tate {
    width: 100%;
    max-width: 400px;
    display: flex;
    align-items: center;
    margin: 0 auto 1rem;
}
.detail-image-tate.detail-image-tate--max450 {
    max-width: 450px;
}
@media (min-width: 520px) {
    .detail-image {
        width: 90%;
    }
}

.casestudies__section {
    margin: 7rem auto 3rem;
    width: 90%;
    max-width: 800px;
}
.cs-content-body {
    font-size: 0.9rem;
}
.cs-content-body a {
    color: #176c9c;
}
.cs-content-body img {
    display: block;
    margin: 1rem auto;
    max-width: min(500px, 100%);
    height: auto;
}
.cs-content-body img.portrait {
    max-width: min(400px, 100%);
}

.casestudies__detail {
    text-align: center;
    margin: 1rem auto;
    width: 85%;
}

.casestudies__detail img {
    width: 100%;
}

.casestudies__detail p {
    font-size: 0.9rem;
    text-align: left;
    margin-bottom: 0;
}

/* --------------
added on 20241226
-----------------*/
.introduced-inner-01{
    display:grid;
    grid-template-columns: 1fr;
    text-align: center;
}

.introduced-inner-02{
    display:grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 1rem;
}
.introduced-inner-03{
    display:grid;
    grid-template-columns: 1fr 1fr 1fr;
    column-gap: 1rem;
}

.introduced-inner-04{
    display:grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 1rem;
}
.introduced-inner-05{
    display:grid;
    grid-template-columns: 1fr 1fr 1fr;
    column-gap: 1rem;
}
.sp-display{
    display:none;
}

@media (max-width: 1000px){
    .introduced-inner-03,
    .introduced-inner-05{
        grid-template-columns: 1fr 1fr;
    }
}
@media (max-width: 750px){
    .introduced-inner-03{
        grid-template-columns: 1fr;
    }
}

@media (max-width: 520px){
    .introduced-inner-01,
    .introduced-inner-02,
    .introduced-inner-03,
    .introduced-inner-05{
        grid-template-columns: 1fr;
        column-gap: 0rem;
    }
    .introduced-inner-04{
        grid-template-columns: 1fr 1fr;
        column-gap: 0.8rem;
    }
    .introduced-inner-04 .sp-2-column{
        width:150px;
    }
    
    .detail-image-tate{
        width:100%;
    }
    .sp-display{
        display:block;
    }
}

.ornament.casestudies-resize {
    width: 0.7rem;
}
@media (min-width: 520px) {
    .ornament.casestudies-resize {
        width: 1rem;
        right: -3.4rem;
    }
}
@media (min-width: 960px) {
    .ornament.casestudies-resize {
        width: 1.3rem;
        right: -6rem;
    }
}
@media (min-width: 1200px) {
    .ornament.casestudies-resize {
        width: 1.6rem;
    }
}