/* --- 2列バナー用：動画埋め込み型リッチバナー --- */
.video-donation-banner {
display: flex;
flex-direction: column;
justify-content: space-between;
width: 100%;
aspect-ratio: 4 / 3; 
background: linear-gradient(135deg, #f5cc00, #e0b000);
border-radius: 30px;
padding: 25px 25px 20px 25px; 
text-decoration: none !important;
box-sizing: border-box;
overflow: hidden;
position: relative;
box-shadow: 0 4px 10px rgba(0,0,0,0.05);
transition: opacity 0.3s ease;
}

.video-donation-banner:hover {
opacity: 0.85;
}

.v-banner-sub {
font-size: 18px;
color: #222222;
font-weight: bold;
text-align: center;
margin-bottom: 10px;
letter-spacing: 0.05em;
padding-top: 10px; 
}

.v-banner-main {
font-family: 'Shippori Mincho', serif;
font-size: 38px;
color: #ffffff;
font-weight: 800;
text-align: center;
line-height: 1.25;
text-shadow: 0px 3px 8px rgba(0, 0, 0, 0.6), 0px 1px 3px rgba(0, 0, 0, 0.4);
margin-top: 0;
margin-bottom: auto;
}

.v-banner-flex {
display: flex;
align-items: flex-end;
justify-content: space-between;
width: 100%;
margin-top: 15px;
}

/* 左下の動画エリア */
.v-banner-video {
width: 66%; 
aspect-ratio: 4 / 3; 
border-radius: 12px;
overflow: hidden;
box-shadow: 0 4px 12px rgba(0,0,0,0.2);
/* 動画を中央に寄せるための調整 */
margin-left: 8%; /* ここで左に余白を作り、右へ押し出す */
}

.v-banner-video video {
width: 100%;
height: 100%;
object-fit: cover; 
display: block;
}

/* 右下のテキスト＆ボタンエリア */
.v-banner-right {
width: 44%;
display: flex;
flex-direction: column;
align-items: flex-end;
justify-content: flex-end;
gap: 10px;
padding-bottom: 5px; 
}

.v-banner-company {
font-size: 14px; 
color: #111111;
font-weight: bold;
line-height: 1.4;
text-align: right;
margin: 0;
padding-right: 10px; 
}

.v-banner-btn {
width: 50px;
height: 50px;
background-color: #eb6100;
color: #ffffff;
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
font-size: 22px;
box-shadow: 0 3px 6px rgba(0,0,0,0.2);
margin-right:10px;
}

/* =========================================
   スマホ環境（SP）での表示微調整
========================================= */
@media (max-width: 768px) {
.video-donation-banner {
padding: 20px;
border-radius: 12px;
aspect-ratio: 4 / 3; 
}
.v-banner-sub {
font-size: 18px;
}
.v-banner-main {
font-size: 30px; 
margin-top: 4px;
margin-bottom: 10px;
}
.v-banner-flex {
margin-top: 10px;
}
.v-banner-video {
width: 55%;
aspect-ratio: 4 / 3;
border-radius: 8px;
margin-left: 2%; /* スマホ時も少し寄せる */
}
.v-banner-company {
font-size: 14px;
}
.v-banner-btn {
width: 32px;
height: 32px;
font-size: 14px;
padding-left: 2px;
}
}