/* Shared photograph frames: consistent cards with complete, undistorted images. */
#main :is(.region-card,.discovery-card,.catalog-result,.food-card,.drama-card,.stay-property,.island-card,.history-person,.kshop-card,.idol-card,.ski-resort-card){min-width:0;overflow-wrap:anywhere}
#main :is(.region-card,.discovery-cover,.catalog-result-image,.food-photo,.drama-photo,.stay-photo,.island-card .island-photo,.history-photo,.kshop-card .kshop-photo,.idol-card-photo,.ski-resort-card .ski-photo,.event-photo,.palace-photo) img{display:block;width:100%;height:auto!important;aspect-ratio:4/3!important;max-height:none;object-fit:contain!important;object-position:center;background:rgba(110,125,120,.07)}
#main .food-card-top{display:flex;flex-direction:column;align-items:stretch;gap:1rem}
#main .food-card-top .food-photo{width:100%;max-width:none;margin:0}
#main .food-card-top>div{min-width:0}
#main .idol-group-photo .idol-image-link{height:auto}
#main .idol-member-photo .idol-image-link{height:auto;padding:0}
#main .idol-member-photo .idol-image-link>img{width:100%;height:auto;max-height:none;aspect-ratio:3/4;object-fit:contain}
#main .stays-intro .stay-photo img,#main .drama-cover-photo img{height:auto!important;max-height:none;object-fit:contain}
#main .kshop-photo-link:hover img{transform:none}
#main .guide-preview-grid img,#main .featured-mini img{width:100%;height:auto!important;aspect-ratio:4/3;object-fit:contain}
.menu-feature-photo{margin:1.25rem 0;min-width:0}
.menu-feature-photo img{display:block;width:100%;height:auto;max-height:26rem;object-fit:contain;border-radius:6px}
.menu-feature-photo figcaption{font-size:.8125rem;line-height:1.6;margin-top:.5rem}
.menu-feature-photo figcaption a{color:inherit}
.food-cooking-links .menu-feature-photo{margin:0 0 .8rem}
.food-cooking-links .menu-feature-photo img{aspect-ratio:4/3;max-height:none}

.food-cooking-links>article{min-width:0}.food-cooking-links>article>a{display:block;color:inherit;text-decoration:none}.food-cooking-links>article small{display:block;font-size:.8125rem;margin:.5rem 0}.food-cooking-links>article :is(strong,span){display:block;margin:.5rem 0}.cooking-teaser-image{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:contain}

#main .kshop-intro .kshop-photo img{width:100%;height:auto;aspect-ratio:4/3;object-fit:contain}

#main.journal-home .journal-story-main>a>img{height:auto;max-height:28rem;object-fit:contain;background:#18251f}
