@charset "utf-8";
main{
    background-color: #000;
}
/* common----------------------------- */
.section_title{
    width: 20%;
    margin: 2% auto;
}
.more{
    display: block;
    width: fit-content;
    margin: 3% auto;
    background-color: #FFF;
    color: #000;
    border: 1px solid #000;
    border-radius: 99px;
    transition: ease-in-out 0.3s;
    position: relative;
    padding: 1% 3% 1% 1%;
    font-weight: 700;
    font-size: 1.2em;
}
.more::after{
    position: absolute;
    content: "+";
    top: 16%;
    right: 6%;
    font-size: 1.2em;
}
.more:hover{
    color: #FFF;
    background-color: #000;
    border: 1px solid #FFF;
}
.more:hover::after{
    color: #FFF;
}
@media (max-width: 768px) {
    .section_title{
        width: 60%;
        margin: 10% auto;
    }
    .more{
        font-size: 0.8em;
        margin: 10% auto;
        padding: 3% 10% 3% 3%;
    }
    .more::after{
        top: 23%;
        right: 8%;
    }
}

/* company----------------------------- */
.member-logos{
  width: min(1200px, 85%);
  margin: 0 auto;
  padding: 40px 0 60px;
}
.member-logos__title{
  text-align: center;
  font-size: 30px;
  font-weight: 700;
  margin: 0 0 16px;
}

/* 大きい箱（角丸の背景） */
.member-logos__box{
  background: #ffffff;
  border-radius: 18px;
  padding: 22px 22px 26px;
}

/* 12枠グリッド */
.member-logos__grid{
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 18px;
}

/* ロゴが入るスロット（小さな四角） */
.member-logos__slot{
  background: #ffffff;
  border-radius: 6px;
  aspect-ratio: 16 / 7; /* 横長の枠っぽく */
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

/* ロゴ画像（枠内に収める） */
.member-logos__img{
  object-fit: contain;
  display: block;
}

/* レスポンシブ */
@media (max-width: 900px){
  .member-logos__grid{ grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 600px){
  .member-logos__grid{ grid-template-columns: repeat(2, 1fr); gap: 12px; }
  .member-logos__box{ padding: 16px; }
}

.company{
    padding: 0% 20% 5%;
    background-image: url(../img/president/common/drink_bg2.webp);
    background-position: left bottom;
    background-repeat: no-repeat;
    background-size: contain;
    background-color: #000;
}
.company .company_list .company_data{
    background-color: rgba(255, 255, 255, 0.9);
    border-radius: 24px;
    padding: 5%;
    margin: 5% 0;
}
.company .company_list .company_data .company_name{
    font-size: 1.5em;
}
.company .company_data .company_slogan{
    color: #CC484E;
    border-left: 2px solid #CC484E;
    font-size: 1.5em;
    font-weight: 700;
    padding-left: 20px;
    margin: 1% 0;
}
.company_data .company_flex{
    display: flex;
    align-items: flex-start;
    gap: 20px;
    margin: 3% 0;
}
.company_data .company_flex img{
    width: 50%;
}
.company_data .company_flex p{
    width: 50%;
}
.company_data .company_overview h3{
    border-bottom: 1px solid #000;
    font-size: 1.5em;
    padding-bottom: 2%;
    margin-bottom: 2%;
}
.company_data .company_overview h4{
    border-bottom: 1px solid #000;
    font-size: 1.5em;
    padding-bottom: 2%;
    margin-bottom: 2%;
}
.company_data .company_overview ul{
    margin: 3% 0;
}
.company_data .company_overview a{
    color: #000;
}
.company_data .company_overview a:hover{
    opacity: 0.7;
}
@media (max-width: 768px) {
    .company{
        padding: 5%;
    }
    .company .company_list .company_data{
        padding: 10% 5%;
    }
    .company .company_list .company_data .company_name{
        font-size: 1.3em;
        text-align: center;
    }
    .company .company_data .company_slogan{
        font-size: 1.15em;
        margin: 7% 0;
        padding-left: 12px;
    }
    .company_data .company_flex{
        flex-direction: column;
    }
    .company_data .company_flex img,
    .company_data .company_flex p{
        width: 100%;
    }
    .company .company_list .company_data .company_overview{
        margin: 10% 0;
    }
    .company_data .company_overview h3{
        font-size: 1.2em;
        text-align: center;
        padding-bottom: 7%;
        margin-bottom: 7%;
    }
    .company_data .company_overview h4{
        font-size: 1.2em;
        text-align: center;
        padding-bottom: 7%;
        margin-bottom: 7%;
    }
    .company_data .company_overview ul{
        margin: 7% 0;
    }
    .company_data .company_overview ul li{
        margin-top: 3%;
    }
}