/* Shared Tokyo/area CTA: existing Tokyo layout, no page-specific copy. */
.site-common-contact--photo .contact_msg li a span{font-family:"TBUDGothic E","Hiragino Sans","Hiragino Kaku Gothic ProN","ヒラギノ角ゴ ProN W3","メイリオ",Meiryo,"ＭＳ Ｐゴシック","MS PGothic",sans-serif}
/* The original yellow contact bar, with staff photography in its artwork slot. */
.site-common-contact.site-common-contact--photo{display:grid;grid-template-columns:260px minmax(0,1fr) 340px;align-items:center;gap:20px;min-height:225px;padding:0 20px;margin:0;position:relative}
.site-common-contact--photo .contact_free{position:relative;top:auto;left:auto;align-self:stretch;min-height:225px;margin:0;text-align:left}
.site-common-contact--photo .contact_free>img{position:absolute;right:0;bottom:0;width:235px;max-width:none;height:235px;object-fit:contain}
.contact-photo-badge{position:absolute;top:24px;left:-5px;z-index:1;width:85px;height:85px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#303030;color:#fff;border-radius:50%;font-size:12px;font-weight:700;line-height:1.5;transform:rotate(-9deg);box-shadow:0 0 0 4px #ffe44f}
.contact-photo-badge strong{color:#ffe44f;font-size:23px;line-height:1.3}
.site-common-contact--photo .contact_us{min-width:0;margin:0}
.site-common-contact--photo .contact_us p{margin:0}
.site-common-contact--photo .contact_us p>span{display:block;font-size:16px;padding:25px 8px;line-height:1.65}
.site-common-contact--photo .contact_us p>span>b{display:inline-block;font:inherit;white-space:nowrap}
.site-common-contact--photo .tel_box{margin-top:10px}
.site-common-contact--photo .tel_box>a{font-family:Arial,sans-serif;font-size:48px;white-space:nowrap;padding-left:52px;background-size:40px;letter-spacing:0}
.site-common-contact--photo .tel_box>p{font-size:11px;margin-top:2px;letter-spacing:0}
.site-common-contact--photo .contact_msg{display:grid;grid-template-columns:1fr 1fr;width:100%;margin:0;align-items:center}
.site-common-contact--photo .contact_msg li{width:auto;padding:0;border:0}
.site-common-contact--photo .contact_msg li a{display:grid;grid-template-rows:48px 48px;align-items:center;align-content:center;justify-items:center;gap:12px;width:auto;height:130px;border-left:1px solid #c1b25f;padding:8px 10px}
.site-common-contact--photo .contact_msg li a span{font-size:14px;font-weight:700;line-height:1.7;letter-spacing:0}
.site-common-contact--photo .contact_msg li a span>b{font:inherit;display:block;white-space:nowrap}
.site-common-contact--photo .contact_msg li a picture{display:flex;align-items:center;justify-content:center;height:48px;width:100%}
.site-common-contact--photo .contact_msg li a img{margin:0;width:auto;height:40px;object-fit:contain}
.site-common-contact--photo .contact_msg li:nth-child(2) a img{margin:0;height:40px}
.site-common-contact--photo .contact_msg li:first-child a,.site-common-contact--photo .contact_msg li:last-child a{width:100%}
@media(min-width:768px) and (max-width:1100px){
 .site-common-contact.site-common-contact--photo{grid-template-columns:185px minmax(0,1fr) 230px;gap:14px;padding-inline:15px;min-height:200px}
 .site-common-contact--photo .contact_free{min-height:200px}
 .site-common-contact--photo .contact_free>img{width:190px;height:190px;right:-8px}
 .contact-photo-badge{width:69px;height:69px;font-size:10px;top:20px;left:-6px}.contact-photo-badge strong{font-size:19px}
 .site-common-contact--photo .tel_box>a{font-size:38px;padding-left:43px;background-size:33px}
 .site-common-contact--photo .contact_us p>span{font-size:14px}
 .site-common-contact--photo .tel_box>p{font-size:9px}
 .site-common-contact--photo .contact_msg li a{height:130px;padding-inline:8px}
 .site-common-contact--photo .contact_msg li a span{font-size:12px}
}
@media(min-width:768px) and (max-width:850px){
 .site-common-contact.site-common-contact--photo{grid-template-columns:155px minmax(0,1fr) 190px;gap:11px}
 .site-common-contact--photo .contact_free>img{width:165px;height:175px}
 .site-common-contact--photo .tel_box>a{font-size:32px;padding-left:36px;background-size:28px}
 .site-common-contact--photo .contact_us p>span{font-size:13px;letter-spacing:0}
}
@media(max-width:767.98px){
 .site-common-contact.site-common-contact--photo{grid-template-columns:1fr;gap:0;padding:0 20px 20px;min-height:0;margin:0}
 .site-common-contact--photo .contact_free{position:relative;min-height:178px;width:220px;max-width:100%;margin:auto}
 .site-common-contact--photo .contact_free>img{width:190px;height:190px;right:0;bottom:0}
 .contact-photo-badge{top:17px;left:-4px;width:73px;height:73px;font-size:10px}.contact-photo-badge strong{font-size:21px}
 .site-common-contact--photo .contact_us{margin-top:0}
 .site-common-contact--photo .contact_us p>span{font-size:14px;padding:25px 8px;letter-spacing:0}
 .site-common-contact--photo .tel_box{margin-top:8px}
 .site-common-contact--photo .tel_box>a{font-size:36px;padding-left:42px;background-size:33px}
 .site-common-contact--photo .tel_box>p{font-size:10px;margin-top:2px}
 .site-common-contact--photo .contact_msg{margin-top:17px;width:100%}
 .site-common-contact--photo .contact_msg li a{height:96px;border-left:0;grid-template-rows:30px 40px;gap:10px;padding:5px 8px}
 .site-common-contact--photo .contact_msg li:first-child a{border-right:1px solid #c1b25f}
 .site-common-contact--photo .contact_msg li a span{font-size:10px}
 .site-common-contact--photo .contact_msg li a picture{height:40px}
 .site-common-contact--photo .contact_msg li a img{height:32px}
 .site-common-contact--photo .contact_msg li:nth-child(2) a img{height:32px}
}
@media(max-width:359px){
 .site-common-contact.site-common-contact--photo{padding-inline:14px}
 .site-common-contact--photo .tel_box>a{font-size:30px;padding-left:35px;background-size:28px}
 .site-common-contact--photo .contact_us p>span{font-size:13px}
 .site-common-contact--photo .contact_msg li a span{font-size:9px}
}
@media(max-width:767.98px){
 .site-common-contact--photo .contact_us p>span{font-weight:700}
 .site-common-contact--photo .tel_box>p{font-size:11px;line-height:1.8;margin-top:5px}
 .site-common-contact--photo .contact_msg li a{grid-template-rows:52px 40px;height:114px;gap:8px;padding-inline:3px}
 .site-common-contact--photo .contact_msg li a span{font-size:15px;font-weight:700;line-height:1.7;text-wrap:balance}
 .site-common-contact--photo .contact_msg li a span>b{display:block}
}
