#sit_inf_explan .yrep05-product h2,#sit_inf_explan .yrep05-product h3{text-indent:0!important}
.yrep05-hide-placeholder{display:none!important}
/* Home sections and the review board own their layout; no shared gallery floats. */
#container:has(>#main_bn)>.main{width:calc(100% - 32px);max-width:1200px;margin-left:auto;margin-right:auto}
#container>.main .sct{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:0;padding:0}
#container>.main .sct>.sct_li{width:100%!important;min-width:0;height:auto!important;float:none;clear:none;margin:0!important}
#container>.main .sct:after,#container>.main .pic_lt>ul:after{display:none}
#container>.main .pic_lt>ul{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px 20px;padding:20px 0;margin:0}
#container>.main .pic_lt>ul>li{float:none;width:auto;min-width:0;padding:0;margin:0}
#container>.main .pic_lt .gall_box{margin:0}
#container>.main .pic_lt .lt_img{aspect-ratio:1/1;margin:0 0 10px;overflow:hidden}
#container>.main .pic_lt .lt_img img{display:block;width:100%;height:100%;object-fit:cover}
/* Mobile review skin had a fixed 20px caption, which overlapped wrapped titles. */
#main_review .pic_lt>ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px;padding:10px 0;margin:0}
#main_review .pic_lt>ul:after{display:none}
#main_review .pic_lt>ul>li{float:none;clear:none;width:auto;min-width:0;margin:0;padding:0}
#main_review .pic_lt .lt_img{display:block;aspect-ratio:1/1;overflow:hidden;margin:0 0 8px}
#main_review .pic_lt .lt_img img{display:block;width:100%;height:100%;object-fit:cover}
#main_review .pic_lt .r_box{height:auto!important;min-height:1.5em;line-height:1.5;overflow-wrap:anywhere}
#main_review .pic_lt .lt_date{display:block;clear:both;margin-top:4px;line-height:1.5}
#container:has(#bo_gall a[href*="/review/"]){width:calc(100% - 32px);max-width:1200px;margin-left:auto;margin-right:auto}
#bo_gall:has(a[href*="/review/"]) #gall_ul{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px 20px;width:100%;margin:0;padding:0}
#bo_gall:has(a[href*="/review/"]) #gall_ul:after{display:none}
#bo_gall:has(a[href*="/review/"]) .gall_li{float:none;clear:none;width:auto;min-width:0;margin:0;padding:0}
#bo_gall:has(a[href*="/review/"]) .gall_img{height:auto!important;max-height:none!important;aspect-ratio:1/1}
#bo_gall:has(a[href*="/review/"]) .gall_img>a{display:block;width:100%;height:100%}
#bo_gall:has(a[href*="/review/"]) .gall_img :is(img,video){display:block;width:100%;height:100%!important;object-fit:cover}
#bo_gall:has(a[href*="/review/"]) .gall_img :is(.is_notice,.no_image){display:flex;align-items:center;justify-content:center;width:100%;height:100%;line-height:1.5!important}
@media(max-width:1200px){
 :is(body:has(#main_bn),body:has(#bo_gall a[href*="/review/"])) #hd{min-width:0}
 :is(body:has(#main_bn),body:has(#bo_gall a[href*="/review/"])) #hd_wrapper{width:100%;height:auto;display:flex;flex-wrap:wrap;gap:12px;padding:16px}
 :is(body:has(#main_bn),body:has(#bo_gall a[href*="/review/"])) #hd_gnb{float:none;display:flex;flex-wrap:wrap;width:100%;margin:0;gap:0 10px}
 :is(body:has(#main_bn),body:has(#bo_gall a[href*="/review/"])) #hd_gnb li{padding:0;font-size:13px}
 :is(body:has(#main_bn),body:has(#bo_gall a[href*="/review/"])) #hd_tnb{float:none;margin-left:auto}
 :is(body:has(#main_bn),body:has(#bo_gall a[href*="/review/"])) :is(#ft,.ft_wr,#container_title){width:100%;min-width:0;max-width:100%}
}
@media(max-width:900px){
 #container>.main .sct,#container>.main .pic_lt>ul,#bo_gall:has(a[href*="/review/"]) #gall_ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px}
}
/* A single fixed square frame for both card images, including legacy local files. */
.sct_img:has(.sct_img_01){position:relative;aspect-ratio:1/1;overflow:hidden;isolation:isolate}
.sct_img:has(.sct_img_01)>a{display:block;position:relative;width:100%;height:100%;aspect-ratio:1/1}
.sct_img:has(.sct_img_01) :is(.sct_img_01,.sct_img_02){position:absolute!important;inset:0!important;display:block!important;width:100%!important;height:100%!important;overflow:hidden;transition:opacity .16s ease!important;background:#f7f7f7;transform:none!important}
.sct_img:has(.sct_img_01) :is(.sct_img_01,.sct_img_02) :is(img,.yrep05-catalog-frame){display:block!important;position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;aspect-ratio:1/1!important;object-fit:contain!important;transform:none!important;margin:0!important}
.sct_li:has(.sct_img_01) .sct_img_01{opacity:1!important;z-index:1}
.sct_li:has(.sct_img_01) .sct_img_02{opacity:0!important;z-index:2;pointer-events:none}
.sct_li:has(.sct_img_01) .sct_txtbox{position:static!important;width:100%;padding:12px 0;overflow-wrap:anywhere}
.sct_li:has(.sct_img_01) :is(.sct_txt,.sct_basic,.sct_cost){padding:4px 10px}
/* Captions live below the square photo on every input device. */
.sct_img:has(.sct_img_01):has(>.sct_txtbox){aspect-ratio:auto;overflow:visible}
.sct_img:has(.sct_img_01):has(>.sct_txtbox)>a{height:auto;aspect-ratio:1/1}
.sct_li:has(.sct_img_01) .sct_img>.sct_txtbox{position:relative!important;inset:auto!important;box-sizing:border-box;padding:12px 0;background:#fff;color:#161616;opacity:1!important;visibility:visible!important;pointer-events:auto;transition:none;transform:none}
@media(hover:hover) and (pointer:fine){
 .sct_li:has(.sct_img_02 img[data-yrep-ready]):is(:hover,:focus-within) .sct_img_01{opacity:0!important}
 .sct_li:has(.sct_img_02 img[data-yrep-ready]):is(:hover,:focus-within) .sct_img_02{opacity:1!important}
}
body:has(#hd_wr) .sct_li:has(.sct_img_02 img):is(:hover,:focus-within) .sct_img_01{opacity:1!important}
body:has(#hd_wr) .sct_li:has(.sct_img_02 img):is(:hover,:focus-within) .sct_img_02{opacity:0!important}
@media(prefers-reduced-motion:reduce){.sct_img:has(.sct_img_01) :is(.sct_img_01,.sct_img_02){transition:none!important}}
/* Category catalog: equal image cells and natural-flow captions on every viewport. */
body:has(#sct .sct_img_01) #sct{width:calc(100% - 32px);max-width:1200px;margin-left:auto;margin-right:auto}
body:has(#sct .sct_img_01) #sct>.sct{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:0;padding:0}
body:has(#sct .sct_img_01) #sct>.sct>.sct_li{width:100%!important;min-width:0;float:none;clear:none;height:auto!important;margin:0!important}
@media(max-width:900px){body:has(#sct .sct_img_01) #sct>.sct{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}}
@media(max-width:480px){
 .sct_li:has(.sct_img_01) :is(.sct_txt,.sct_basic,.sct_cost){padding-left:4px;padding-right:4px}
 .sct_li:has(.sct_img_01) .sct_txt{font-size:14px;line-height:1.5}
 .sct_li:has(.sct_img_01) .sct_basic{font-size:12px}
}
#sit_pvi:has(#sit_pvi_slide .yrep05-filled-thumbnail){width:100%;max-width:640px;margin-left:auto;margin-right:auto}
#sit_pvi_slide:has(.yrep05-filled-thumbnail){width:100%!important;height:auto!important;aspect-ratio:1/1}
#sit_pvi_slide:has(.yrep05-filled-thumbnail) li{width:100%!important;height:100%!important}
#sit_pvi_slide:has(.yrep05-filled-thumbnail) .slide_img{display:block;width:100%;height:100%}
#sit_pvi_slide img.yrep05-filled-thumbnail{width:100%;height:auto}
body:has(#hd_wr) .sct{width:100%!important;margin:0!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:10px}
body:has(#hd_wr) .sct>.sct_li{width:100%!important;min-width:0;float:none;clear:none;margin:0!important;padding:0!important;height:auto!important}
body:has(#hd_wr) .sct .sct_img{width:100%;aspect-ratio:1/1;overflow:hidden}
body:has(#hd_wr) .sct .sct_img>a{display:block;width:100%;height:100%}
body:has(#hd_wr) .sct .sct_img>a>img{width:100%;height:100%!important;object-fit:contain}
/* PC galleries use a different slider. Keep its grid independent of mobile sizing. */
body:has(#sit_pvi_big .yrep05-filled-thumbnail) #sit_ov_wrap{width:calc(100% - 32px);max-width:1200px;margin:32px auto;display:grid;grid-template-columns:minmax(0,5fr) minmax(0,4fr);gap:32px clamp(24px,5vw,75px);align-items:start}
body:has(#sit_pvi_big .yrep05-filled-thumbnail) #sit_ov_wrap:after{display:none}
body:has(#sit_pvi_big .yrep05-filled-thumbnail) #sit_pvi{float:none;width:100%;max-width:625px;margin:0 auto;min-width:0}
body:has(#sit_pvi_big .yrep05-filled-thumbnail) #sit_ov{float:none;width:100%;margin:0;min-width:0;min-height:0}
body:has(#sit_pvi_big .yrep05-filled-thumbnail) #sit_pvi_big .bx-wrapper{width:100%;margin:0 auto}
body:has(#sit_pvi_big .yrep05-filled-thumbnail) #sit_pvi_big .bx-viewport{height:auto!important;aspect-ratio:1/1}
body:has(#sit_pvi_big .yrep05-filled-thumbnail) #sit_ov_btn{display:flex;gap:12px}
body:has(#sit_pvi_big .yrep05-filled-thumbnail) #sit_ov_btn button{flex:1;min-width:0;width:auto;margin:0}
body:has(#sit_pvi_big .yrep05-filled-thumbnail) #sit_siblings{grid-column:1/-1;display:flex;gap:12px;flex-wrap:wrap}
body:has(#sit_pvi_big .yrep05-filled-thumbnail) #sit_siblings:after{display:none}
body:has(#sit_pvi_big .yrep05-filled-thumbnail) #sit_siblings a{position:static;inset:auto;width:auto;max-width:100%;height:auto;min-height:40px;margin:0;padding:12px 16px;text-indent:0;line-height:1.6;background:#f5f5f5;overflow-wrap:anywhere}
body:has(#sit_pvi_big .yrep05-filled-thumbnail) #sit_siblings #siblings_next{margin-left:auto}
body:has(#sit_pvi_big .yrep05-filled-thumbnail) #sit_inf{width:calc(100% - 32px);max-width:1200px;margin:0 auto;padding:0}
body:has(#sit_pvi_big .yrep05-filled-thumbnail) .view_wr{width:100%;max-width:1200px;margin-left:auto;margin-right:auto}
body:has(#sit_pvi_big .yrep05-filled-thumbnail) #sit_inf img{max-width:100%;height:auto}
body:has(#sit_pvi_big .yrep05-filled-thumbnail) #wrapper_title{width:auto;max-width:100%;padding:0 16px;overflow-wrap:anywhere}
@media(max-width:1200px){
 :is(body:has(#sit_pvi_big .yrep05-filled-thumbnail),body:has(#sct .sct_img_01)) #hd{min-width:0}
 :is(body:has(#sit_pvi_big .yrep05-filled-thumbnail),body:has(#sct .sct_img_01)) #hd_wrapper{width:100%;height:auto;min-height:0;display:flex;flex-wrap:wrap;gap:12px;padding:16px}
 :is(body:has(#sit_pvi_big .yrep05-filled-thumbnail),body:has(#sct .sct_img_01)) #hd_gnb{float:none;display:flex;flex-wrap:wrap;width:100%;margin:0;gap:0 10px}
 :is(body:has(#sit_pvi_big .yrep05-filled-thumbnail),body:has(#sct .sct_img_01)) #hd_gnb li{padding:0;font-size:13px}
 :is(body:has(#sit_pvi_big .yrep05-filled-thumbnail),body:has(#sct .sct_img_01)) #hd_tnb{float:none;margin-left:auto}
 :is(body:has(#sit_pvi_big .yrep05-filled-thumbnail),body:has(#sct .sct_img_01)) :is(.container,.sct_wrap,#sct_relbuyitem,#ft,.ft_wr,#container_title){width:100%;min-width:0;max-width:100%}
 body:has(#sit_pvi_big .yrep05-filled-thumbnail) .sct{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:16px}
 body:has(#sit_pvi_big .yrep05-filled-thumbnail) .sct_li{width:100%!important;min-width:0;float:none;margin:0!important;padding:0!important}
}
@media(max-width:900px){
 body:has(#sit_pvi_big .yrep05-filled-thumbnail) #sit_ov_wrap{grid-template-columns:minmax(0,1fr);gap:24px}
 body:has(#sit_pvi_big .yrep05-filled-thumbnail) #sit_ov{max-width:625px;margin:0 auto}
 body:has(#sit_pvi_big .yrep05-filled-thumbnail) .sct{grid-template-columns:repeat(2,minmax(0,1fr))}
 body:has(#sit_pvi_big .yrep05-filled-thumbnail) #sit_title{margin-left:0;margin-right:0}
}
/* Original catalog composition: touching square photographs with permanent overlays. */
.sct:has(>.sct_li){gap:0!important;padding:0!important}
.sct>.sct_li.yrep05-overlay-card{padding:0!important;margin:0!important}
.sct_li.yrep05-overlay-card .li_wr{padding:0!important;margin:0!important}
.sct_li.yrep05-overlay-card .sct_img{position:relative!important;aspect-ratio:1/1!important;overflow:hidden!important;margin:0!important}
.sct_li.yrep05-overlay-card .sct_img>a{display:block;position:relative;width:100%;height:100%!important;aspect-ratio:1/1}
.sct_li.yrep05-overlay-card .sct_img>.sct_txtbox{position:absolute!important;inset:auto 0 0!important;z-index:4;width:100%;box-sizing:border-box;padding:24px 10px 10px!important;background:linear-gradient(transparent,rgba(255,255,255,.92) 35%);opacity:1!important;visibility:visible!important;pointer-events:none;color:#161616}
.sct_li.yrep05-overlay-card .sct_txtbox a{pointer-events:auto;color:inherit}
.sct_li.yrep05-overlay-card .sct_txtbox :is(.sct_txt,.sct_cost){margin:0!important;padding:2px 0!important;line-height:1.4;font-size:14px}
@media(max-width:480px){.sct_li.yrep05-overlay-card .sct_img>.sct_txtbox{padding:20px 6px 6px!important}.sct_li.yrep05-overlay-card .sct_txtbox :is(.sct_txt,.sct_cost){font-size:12px}}
