@charset "utf-8";

.header td {
    font-family:"ヒラギノ角ゴ Pro W3", Osaka, "ＭＳ Ｐゴシック", sans-serif;
}

.header ul.headermenu {
    float: right;
}

.header ul.headermenu li {
    float: left;
    width: 47px;
}

.header ul.headermenu li a {
    display: block;
    color: #000033;
    line-height: 12px;
    font-size: 9px;
    font-weight: bold;
    text-align: center;
    padding: 0;
}

.header ul.headermenu li.consider_btn a{
	position:relative;
	width:58px;
	right:-3px;
}
.header ul.headermenu li.consider_btn a img{
	position: absolute;
    width: 58px;
    left: 3px;
    z-index: 5;
}

@media screen and (max-width:330px){
	.header ul.headermenu li.consider_btn a{
		width:40px;
		right:0;
	}
	.header ul.headermenu li.consider_btn a img{
		left:0;
		width:50px;
	}
}

.header ul.headermenu li a img {
    width: 20px;
}

.header td.userName {
    text-align: right;
    font-size: 11px;
    padding: 7px 10px 0 0;
}

.header td.userName span {
    color: #E53900;
    font-weight: bold;
}

.header td.areaLogo {
    width: 145px;
    padding: 0 0 2px 3px;
}

.header td.areaLogo img {
    border: medium none;
    height: auto;
    max-width: 100%;
    vertical-align: bottom;
}

.header td.areaLogo img.areaLogo {
    width: 100px;
    vertical-align: bottom;
    margin-top: 5px;
}

.header td.userLink {
    font-size: 11px;
    padding: 0 3px 2px 5px;
    line-height: 1.6em;
}

.header {
    width: 100%;
    height: auto;
    padding-top: 2px;
    background: none repeat scroll 0 0 #ffffff;
}

.fixedHeader {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1000;
    border-bottom: 1px solid #cccccc;
}

.header div.headermenu {
    float: right;
}

i.fa-star {
    max-width: 100%;
    height: auto;
    color: #f9ca1a;
    font-size: 23px;
    line-height: 27px;
    margin-right: 5px;
}

.header p.userName {
    height: 14px;
    color: #E53900;
    font-weight: bold;
    margin: 0;
    padding: 0;
    word-break: break-all;
}

.header .headerRightLogin {
    background-color: #0096ff;
    background: linear-gradient(#0096ff, #0096ff) repeat scroll 0 0 rgba(0, 0, 0, 0);
    background: -moz-linear-gradient(center top , #0096ff, #0096ff) repeat scroll 0 0 rgba(0, 0, 0, 0);
    background: -webkit-gradient(linear, center top, center bottom, from(#0096ff), to(#0096ff)) repeat scroll 0 0 rgba(0, 0, 0, 0);
    border-radius: 5px;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    float: right;
    height: 25px;
    padding-right: 5px;
}

.header .headerRightLogin .loginLeft {
    float: left;
    margin-top: 3px;
    padding-left: 3px;
}

.header .headerRightLogin .loginLeft img {
    height: 20px;
}

.header .headerRightLogin .loginRight {
    color: #ffffff;
    float: left;
    margin: 2px 3px 0 5px;
}

.header .headerRightLogin li {
    padding-top: 2px;
    font-size: 10px;
}

/* ↓2025/11/26 */
.new-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 44px;
    padding: 4px;
    box-sizing: border-box;
    font-family: 'メイリオ', Meiryo, 'ヒラギノ角ゴシック', 'Hiragino Sans', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}

.new-header::after,
.new-header div::after {
    content: none;
}

.new-header .header-left,
.new-header .header-right {
    display: flex;
    align-items: center;
    gap: 2px;
}

.new-header .areaLogo img.areaLogo {
    width: 100px;
}

.new-header .areaLogo img.siteLogo {
    height: 32px;
}

.new-header .headermenu {
    display: flex;
    height: 40px;
}

.new-header .headermenu a {
    display: flex;
    align-items: center;
    flex-direction: column;
    gap: 3px;
    width: 47px;
    height: 40px;
}

.new-header .headermenu a img {
    width: 28px;
    height: 28px;
    object-fit: contain;
    object-position: center;
}

.new-header .headermenu a span {
    font-size: 9px;
    line-height: 9px;
    text-align: center;
    color: #555;
}
/* ↑2025/11/26 */

#shopheader {
    padding: 0;
    margin-bottom: 0;
}
#shopheader {
    padding: 10px 0px 10px;
    background: none repeat scroll 0px 0px #faf6ee;
    margin-bottom: 0px;
    box-shadow: 0px 4px 3px -3px rgba(0,0,0,0.6);
    -webkit-box-shadow: 0px 4px 3px -3px rgba(0,0,0,0.6);
    -moz-box-shadow: 0px 4px 3px -3px rgba(0,0,0,0.6);
}
#shopheader .namearea {
    padding: 0;
    background: none;
}
.shopmenu {
    margin-top: 0;
}
#shopheader .logoarea {
    padding: 0px 5px 2px 5px;
    text-align: center;
}
#shopheader .namearea .headername {
    font-size: 16px;
    color: #593200;
    font-weight: bold;
    padding-left: 10px;
}

#shopheader .namearea span {
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    padding: 3px 5px;
    display: inline-block;
    margin-right: 5px;
    font-size: 11px;
    font-weight: bold;
}
.shopmenu {
    clear: both;
    width: 100%;
    height: 46px;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0.88, #e6d0a5), color-stop(0.00, #efe2c7));
    background: -webkit-linear-gradient(top, #efe2c7 0%, #e6d0a5 88%);
    background: -moz-linear-gradient(top, #efe2c7 0%, #e6d0a5 88%);
    background: -o-linear-gradient(top, #efe2c7 0%, #e6d0a5 88%);
    background: -ms-linear-gradient(top, #efe2c7 0%, #e6d0a5 88%);
    background: linear-gradient(to bottom, #efe2c7 0%, #e6d0a5 88%);
}
.shopmenu ul {
    height: 100%;
}
.shopmenu ul li.select {
/*
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0.88, #2972eb), color-stop(0.00, #2972eb));
    background: -webkit-linear-gradient(top, #2972eb 0%, #2972eb 88%);
    background: -moz-linear-gradient(top, #2972eb 0%, #2972eb 88%);
    background: -o-linear-gradient(top, #2972eb 0%, #2972eb 88%);
    background: -ms-linear-gradient(top, #2972eb 0%, #2972eb 88%);
    background: linear-gradient(to bottom, #2972eb 0%, #2972eb 88%);
*/
    background: #462632;
}
.shopmenu ul li {
    float: left;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0.88, #e6d0a5), color-stop(0.00, #efe2c7));
    background: -webkit-linear-gradient(top, #efe2c7 0%, #e6d0a5 88%);
    background: -moz-linear-gradient(top, #efe2c7 0%, #e6d0a5 88%);
    background: -o-linear-gradient(top, #efe2c7 0%, #e6d0a5 88%);
    background: -ms-linear-gradient(top, #efe2c7 0%, #e6d0a5 88%);
    background: linear-gradient(to bottom, #efe2c7 0%, #e6d0a5 88%);
    width: 82px;
    height: 100%;
    line-height: 28px;
    font-weight: bold;
    text-align: center;
    font-size: 12px;
}
.shopmenu ul li.select a {
    color: #fff;
}
.shopmenu ul li a {
    display: block;
    padding: 9px 0;
    width: 100%;
    cursor: pointer;
    color: #462632;
}
.shopmenu ul li a span {
    display: block;
    border-left: 1px solid #462632;
}
.shopmenu ul li.select a span {
    border: none;
}
.shopmenu ul li:first-child a span {
    border: none;
}
.shopmenu ul li.select + li a span {
    border: none;
}
.popup {
    position: fixed;
    width: 84%;
    top: 100px;
    left: 50%;
    margin-left: -45%;
    padding: 20px 10px;
    border-radius: .6em;
    background-color: rgba(0,0,0,0.75);
    -moz-box-shadow: 2px 4px 4px rgba(0,0,0,0.5);
    -webkit-box-shadow: 2px 4px 4px rgba(0,0,0,0.5);
    box-shadow: 2px 4px 4px rgba(0,0,0,0.5);
    color: #fff;
    text-align: center;
    z-index: 10000;
}
.popup a {
    border: 1px solid #ccc;
    background-color: #fff;
    -moz-box-shadow: 0 -3px 0 #eee inset;
    -webkit-box-shadow: 0 -3px 0 #eee inset;
    box-shadow: 0 -3px 0 #eee inset;
    color: #333;
    font-size: 16px;
    display: block;
    margin: 5px 0;
    padding: .6em .5em .7em;
    border: none;
    border-radius: 5px;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-weight: bold;
    text-align: center;
    text-decoration: none;
    line-height: 1;
}
p.underreview_text {
    font-size: 12px;
    line-height: 16px;
    padding: 10px 0;
}
.mask {
    display: none;
    z-index: 1000;
    position: fixed;
    width: 100%;
    width: 100vw;
    height: 120%;
    height: 120vh;
    top: 0;
    left: 0;
    background-color: rgb(255, 255, 255);
    opacity: 0.92;
}
#fixedMenu {
    display: block;
}
#fixedMenu ul {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    background-color: rgba(0,0,0,0.7);
    overflow: hidden;
    padding: 1px 0 5px;
}
ul, ol {
    list-style: none outside none;
}
#fixedMenu ul li {
    float: left;
    width: 18%;
    padding: 5px 0;
}
#fixedMenu ul li a {
    display: block;
    text-align: center;
    line-height: 18px;
    font-size: 15px;
    padding: 7px 0;
    border-radius: 5px;
    font-weight: bold;
    color: #fff;
    margin: 0 3px;
}
#fixedMenu ul li.weboubo-footer-btn a {
    background-color: #fd7b78;
    box-shadow: 0 5px 0 #F36561;
}
#fixedMenu ul li.websitumon-footer-btn a {
    background-color: #fe8fa5;
    box-shadow: 0 5px 0 #F17D94;
}
#fixedMenu ul li.tel-footer-btn a {
    background-color: #67cde5;
    box-shadow: 0 5px 0 #58B7CE;
}
#fixedMenu ul li.mail-footer-btn a {
    background-color: #fe925a;
    box-shadow: 0 5px 0 #E68452;
}
#fixedMenu ul li.sns-footer-btn a {
    background-color: #32CD32;
    box-shadow: 0 5px 0 #32AE32;
}
/* ↓2021/07/15 */
#fixedMenu ul li.recruitNone a {
    position: relative;
    pointer-events: none;
}
#fixedMenu ul li.recruitNone a::before {
    content: '';
    position: absolute;
    background: rgba(0,0,0,0.5);
    box-shadow: 0 5px 0 rgba(0,0,0,0.5);
    border-radius: 4px;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 9999;
}
/* ↑2021/07/15 */
#fixedMenu ul li:first-child:nth-last-child(2), #fixedMenu ul li:first-child:nth-last-child(2) ~ li {
    width: 50%;
}
#fixedMenu ul li:first-child:nth-last-child(3), #fixedMenu ul li:first-child:nth-last-child(3) ~ li {
    width: 33.3%;
}
#fixedMenu ul li:first-child:nth-last-child(4), #fixedMenu ul li:first-child:nth-last-child(4) ~ li {
    width: 25%;
}
#fixedMenu ul li:first-child:nth-last-child(5), #fixedMenu ul li:first-child:nth-last-child(5) ~ li {
    width: 20%;
}
#fixedMenu ul li:first-child:nth-last-child(5) a, #fixedMenu ul li:first-child:nth-last-child(5) ~ li a {
    margin: 0 2px;
}
.tel-footer-close {
    position: absolute;
    top: 10px;
    right: 12px;
    background-color: #ccc;
    padding: 5px;
    border-radius: 50px;
    color: #fff;
    font-size: 16px;
}
.mail-footer-close {
    position: absolute;
    top: 10px;
    right: 12px;
    background-color: #ccc;
    padding: 5px;
    border-radius: 50px;
    color: #fff;
    font-size: 16px;
}
.detail-callcenter-popover-tel a,
.detail-callcenter-popover-mail a {
    display: inline-block;
}
#kininaru.active {
    transform: rotate(0deg);
    transition: all 0.3s ease 0.5s;
    -webkit-transform: rotate(0deg);
    -webkit-transition: all 0.3s ease 0.5s;
}
#kininaru {
    position: fixed;
    right: 0;
    bottom: 66px;
    z-index: 10;
    transform-origin: -50px 150px 0;
    transform: rotateZ(1);
    transform: rotate(90deg);
    transition: all 0.3s ease 0.2s;
    -webkit-transform-origin: -50px 150px 0;
    -webkit-transform: rotateZ(1);
    -webkit-transform: rotate(90deg);
    -webkit-transition: all 0.3s ease 0.2s;
}

.titleRightLink {
    color: #FFFFFF;
    font-size: 13px;
    height: 40px;
    text-align: center;
    background: linear-gradient(#0096ff, #0096ff);
    background: -moz-linear-gradient(top, #0096ff, #0096ff);
    background: -webkit-gradient(linear, center top, center bottom, from(#0096ff), to(#0096ff));
    /* IE用 */
    filter:progid:DXImageTransform.Microsoft.Gradient(GradientType=0, StartColorStr=#0096ff, EndColorStr=#0096ff);
    overflow: hidden;
    width: 100%;
}
.titleLeft {
    float: left;
    height: 40px;
    margin-right: -200px;
    width: 100%;
    position: relative;
}
.titleLeft .title {
    height: 40px;
    line-height: 40px;
    text-align: center;
    width: 100%;
}
.titleRight {
    display: table-cell;
    height: 40px;
    vertical-align: middle;
    width: 200px;
    padding-right: 10px;
    position: relative;
}
.titleRightLink .historyback {
    display: table-cell;
    position: relative;
}
.titleRightLink h2 {
    color: #FFFFFF;
    font-size: 13px;
}
.titleRightLink p {
    padding: 0;
    float: right;
    line-height: 15px;
    width: 110px;
}
.titleRightLink p a {
    background-color: #fff;
    border-radius: 10px;
    color: #0096ff;
    display: block;
    text-align: center;
    font-size: 13px;
    font-weight: bold;
}


/* ヘッダーh1タグ */
.headerTopTitle {
    text-align: center;
    background: #e6e6e6;
    color: #999696;
    padding: 8px;
    margin: 0;
    font-size: 11px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
/* ↓ 2023/06/01 百名店アイコン表示 */
.hyakumeiten-icon {
    position: absolute;
    top: 0px;
    z-index: 100;
    right: 8px;
    left: unset;
    animation: hyakumeiten 5s linear forwards;
    display: none;
    max-width: 160px;
    width: 20%;
}
.hyakumeiten-icon._fixed {
    position: fixed;
    top: 8px;
}
.hyakumeiten-icon._animation-start{
    display: block;
}
.hyakumeiten-icon.is-hidden {
    display: none;
}
.hyakumeiten-icon>img {
    width:100%;
    height:100%;
    object-fit: contain;
}
.hyakumeiten-icon-close{
    position: absolute;
    top: 0;
    z-index: 100;
    right: 0;
    border: 2px solid #999999;
    width: 16px;
    height: 16px;
    border-radius: 100%;
    background: #FFF;
    text-align: center;
    color: #999999;
    font-size: 16px;
    line-height: 1.1;
    cursor: pointer;
}
.hyakumeiten-icon._animation-start>.hyakumeiten-icon-close{
    display: block;
}
.hyakumeiten-icon-close:before,.hyakumeiten-icon-close:after {
    content: "";
    display: block;
    width: 1px;
    height: 10px;
    background: #999999;
    position: absolute;
    left: 50%;
    top: 50%;
}
.hyakumeiten-icon-close:before {
    transform: translate(-50%,-50%) rotate(45deg);
}
.hyakumeiten-icon-close:after {
    transform: translate(-50%,-50%) rotate(-45deg);
}
@keyframes hyakumeiten {
0%{opacity: 0; transform: scale(1.3);}
15%{opacity: 1; transform:  scale(1);}
90%{opacity: 1; transform: scale(1);}
100%{opacity: 1; transform: scale(1);}
}
.special-icons {
    clear: both;
    position: relative;
    display: flex;
    flex-wrap: wrap;
    padding: 6px 0 0;
    justify-content: center;
}
.special-icon>img {
    display: block;
    height: 20px;
}
/* ↑ 2023/06/01 百名店アイコン表示 */