/* ========================================
     cooperation
 ========================================= */
/* ======================
    pc版 
   ======================*/
.cooperation-wrapper {
    padding: 20px 9.375vw;
    margin: auto;
}

.cooperation-wrapper a{
    color: #333333;
    text-underline-offset: 3px;
    font-weight: bold;
}


.cooperation-02 h3,
.cooperation-02 p{
    font-size: min(1.23vw, 1.6rem) !important;
    line-height: 1.7;
}
.cooperation-02 h3{
    margin-bottom: 5px;
}
/* .cooperation-02 a{
    display: block;
    margin: auto;
} */
.cooperation-02 p{
    font-weight: bold;
    margin: 0 !important;
}
/* .cooperation-02 span{
    font-weight: 700;
} */

.cooperation-flex{
    display: flex;
    justify-content: left;
    flex-wrap: wrap;
}

/* 個々のクレジットについての記述 */
.cooperation-02_content{
    width: 200px;
    height: 40px;
    border: 2px solid #999999;
    border-radius: 2px;
    padding: 4px 20px;
    background-color: #FFFFFF;
    text-align: center;
    margin: 0 10px 10px 0;
    /* 中身を中央揃えにするための記述 */
    display: flex;                /* 子要素を整列できる */
    flex-direction: column;       /* 縦並び（画像→テキスト） */
    justify-content: center;      /* 上下中央揃え（縦方向） */
    align-items: center;          /* 左右中央揃え（横方向） */
}
/* 画像とセットのクレジットについての記述 */
/* 画像があるカードだけ高さを大きくする */
.cooperation-02_content.has-img{
  min-height: 100px;             /* 画像＋テキスト用 */
}
.cooperation-02_content_amb-img{
    width: auto;
    height: 50px !important;
}
.cooperation-02_amb_img{
    width: 100%;
    height: 100%;
    object-fit: contain;
}
/* 画像とセットのクレジットについての記述 ここまで*/

.cooperation-wrapper img{
    width: 100%;
    height: 100%;
    object-fit: contain;
}

/* ======================
    sp版 
   ======================*/
@media screen and (max-width:767px) {
    .cooperation-02 h3{
        font-size: 1.2rem;
    }
    .cooperation-02 p{
        font-size: 1.0rem !important;
    }

    /* 個々のクレジットについての記述 */
    .cooperation-02_content{
        width: 120px;
        height: 30px;
        padding: 4px 10px;
    }
    .cooperation-02 p{
        margin: 0 !important;
    }
    /* 画像とセットのクレジットについての記述 */
    /* 画像があるカードだけ高さを大きくする */
    .cooperation-02_content.has-img{
        min-height: 60px;             /* 画像＋テキスト用 */
    }
    .cooperation-02_content_amb-img{
        width: auto;
        height: 30px !important;
    }
    /* 画像とセットのクレジットについての記述 ここまで*/
    
}

/* ========================================
     site-map
 ========================================= */
/* ======================
    pc版 
   ======================*/
/* 全体のスタイル */
.site-map-area{
    font-family: Arial, sans-serif;
    background-color: var(--bg-color);/* 背景色 common.cssで一括管理*/
    padding: 60px 0 0;
}

/* h2 見出しのスタイル */
.site-map-area h2 {
    font-size: 2.4rem;
    text-align: left;
    margin: 40px 0px 20px 5.204%;
}

.site-map-wrapper {
    font-family: Arial, sans-serif;
    background-color: var(--bg-color);/* 背景色 common.cssで一括管理*/
    /* 背景色 */
    color: white;
    padding: 0px 5.204% 60px 5.204%;
    /* padding-left: 5.204%; */
    line-height: 1.8;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

/* div　塊ごとのスタイルのスタイル */
.site-map-container{
    width:300px;
}
.site-map-container:first-child{
    width:180px;
}

/* h3 見出しのスタイル */
.site-map-container h3 {
    font-size: 2.0rem;
    text-align: left;
    margin: 40px 0px 20px 0px;
}


/* ul全体のスタイル */
.site-map {
    list-style: none;
    border-left: solid 1px #ffffff;
    /* padding: 0; */
    /* margin: 0; */
    /* gap: 20px; */
    /* 項目間の隙間 */
}

/* ul全体のスタイル */
.site-map-list{
    list-style: none;
    text-align: left;
    margin: 0 0 10px 4%;
    color: rgb(242, 242, 242);
}
/* サブリストのスタイル */
.site-map-list ul {
    list-style: none;
    padding: 0;
    margin: 10px 0 20px 20px;
    /* display: flex;
    flex-direction: column; */
    /* gap: 10px; */
}

.site-map-list ul li {
    padding-left: 10px;
    width: 100%;
}

/* aタグのスタイル */
.site-map-container h3 a,
.site-map a{
    display: block;
    text-decoration: none;
    color: white;
    transition: color 0.3s ease;
}

.site-map-container h3 a:hover,
.site-map a:hover{
    color: #FFD700;
    /* ホバー時の色 */
}

/* ======================
    sp版 
   ======================*/
@media screen and (max-width:767px) {
    .site-map-area{
        padding: 60px 0;
    }

    .site-map-wrapper h2 {
        font-size: 1.6rem;
        margin: 0;
    }

    .site-map{
        padding-bottom: 0px;
    }

    /* h2 見出しのスタイル */
    .site-map-area h2 {
        font-size: 2.2rem;
        text-align: center;
        margin: 0;
}

.site-map-wrapper {
    font-family: Arial, sans-serif;
    background-color: var(--bg-color);/* 背景色 common.cssで一括管理*/
    color: white;
    width: 90%;
    padding: 0 0 40px;
    margin: 0 auto;
    line-height: 1.8;
    display: block;
}
.site-map-container:first-child{
    width:90%;
    margin: 0 auto;
}

    /* div　塊ごとのスタイルのスタイル */
    .site-map-container{
        width:90%;
        margin: 0 auto;
    }

    .site-map a{
        width: 300px;
        transition: color 0.3s ease;
        font-size: 1.4rem;
    }

    .site-map-container h3 {
        font-size: 1.6rem;
        text-align: left;
        margin: 40px 0px 20px 0px;
    }

    .site-map-list{
        width: 300px;
    }
}

/* ========================================
     footer
 ========================================= */
/* ======================
    pc版 
   ======================*/
footer {
    text-align: center;
    color: #FFFFFF;
    background-color: #232323;
    padding: 5px 0px 80px;
}
/* ======================
    sp版 
   ======================*/
@media screen and (max-width:767px) {
    footer {
        font-size: 1.2rem;
        height: 80px;
        padding: 5px 0px 40px;
    }
}
/* ========================================
     copyright
 ========================================= */
 .copyright{
    margin: auto;
 }