.yhcc-card{
  border:1px solid #d9d9d9;
  border-radius:var(--yhcc-card-radius,0px);
  background:#fff;
  padding:16px;
  margin:1.2em 0;
  box-shadow:none;
}
.yhcc-main{
  display:grid;
  grid-template-columns:minmax(220px,32%) minmax(0,68%);
  gap:16px;
  align-items:start;
}
.yhcc-main--noimage{grid-template-columns:1fr;}
.yhcc-image-wrap{width:100%;}
.yhcc-image-wrap img{image-rendering:auto;}
.yhcc-image-link{display:block;text-decoration:none !important;}
 .yhcc-image{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio: 16 / 10;
  object-fit:cover;
  object-position:center center;
  border-radius:var(--yhcc-image-radius,0px);
  background:#f7f7f7;
  border:1px solid #ececec;
}
.yhcc-image-credit{
  margin-top:6px;
  font-size:.72rem;
  line-height:1.4;
  color:#8a8a8a;
}
.yhcc-body{min-width:0;}
.yhcc-title{
  font-size:1.8rem;
  font-weight:700;
  line-height:1.4;
  margin:0 0 .35em;
}
.yhcc-desc{
  font-size:.98rem;
  line-height:1.8;
  color:#555;
  margin-bottom:.7em;
}
.yhcc-meta-stack{
  display:flex;
  flex-direction:column;
  gap:.35em;
}
.yhcc-meta-line{
  display:flex;
  gap:.6em;
  flex-wrap:wrap;
  align-items:baseline;
  font-size:.98rem;
  line-height:1.6;
}
.yhcc-meta-label{color:#666;}
.yhcc-meta-value{font-weight:700;color:#222;}
.yhcc-note{
  margin-top:.55em;
  font-size:.8rem;
  color:#7a7a7a;
}
.yhcc-buttons{
  display:grid;
  grid-template-columns:repeat(var(--yhcc-pc-columns,3), minmax(0,1fr));
  gap:10px;
  margin-top:16px;
}
.yhcc-button{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:46px;
  padding:10px 12px;
  border-radius:var(--yhcc-button-radius,0px);
  background:#f3f3f3;
  border:1px solid #d8d8d8;
  text-decoration:none !important;
  color:#222 !important;
  font-size:.95rem;
  line-height:1.4;
  text-align:center;
  transition:filter .15s ease, border-color .15s ease;
}
.yhcc-button:hover{filter:brightness(.97);}
.yhcc-button-icon{
  display:inline-flex;
  width:16px;
  height:16px;
  flex:0 0 16px;
}
.yhcc-button-icon svg{
  width:16px;
  height:16px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.yhcc-button-label{display:inline-block;}
.yhcc-button--rakuten{background:#00b900;border-color:#00b900;color:#fff !important;}
.yhcc-button--jalan{background:#ff6600;border-color:#ff6600;color:#fff !important;}
.yhcc-button--yahoo{background:#ff0033;border-color:#ff0033;color:#fff !important;}
.yhcc-button--jtb,
.yhcc-button--airtrip,
.yhcc-button--agoda{background:#f3f3f3;color:#222 !important;}
.yhcc-error{
  padding:10px 12px;
  border-radius:0;
  background:#fff3f3;
  color:#8a3131;
  border:1px solid #f1cccc;
  margin:1em 0;
}
@media (max-width: 767px){
  .yhcc-main{grid-template-columns:1fr;}
  .yhcc-image-wrap{max-width:none;}
  .yhcc-title{font-size:1.35rem;}
  .yhcc-buttons{grid-template-columns:repeat(var(--yhcc-sp-columns,2), minmax(0,1fr));}
  .yhcc-button{padding:10px 8px;font-size:.88rem;}
  .yhcc-button-icon{width:15px;height:15px;flex-basis:15px;}
  .yhcc-button-icon svg{width:15px;height:15px;}
}
