.starWrap {
    display: flex;
    gap: 2px
}

.starWrap svg {
    fill: #dedede;
    height: 20px;
    width: 20px
}

.starGradSVG {
    height: 0;
    pointer-events: none;
    position: fixed;
    width: 0
}

.evl0half .starWrap svg:nth-child(-n+0),
.evl1 .starWrap svg:nth-child(-n+1),
.evl2 .starWrap svg:nth-child(-n+2),
.evl3 .starWrap svg:nth-child(-n+3),
.evl4 .starWrap svg:nth-child(-n+4),
.evl5 .starWrap svg:nth-child(-n+5) {
    fill: url(#starGrad)
}

.evl0half .starWrap svg:nth-child(0)+svg {
    fill: none;
    background-image: linear-gradient(90deg, hsla(0, 0%, 87%, 0) 0, hsla(0, 0%, 87%, 0) 50%, #dedede 0, #dedede), linear-gradient(1turn, #f08200 13.04%, #f59600 96.38%);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    -webkit-mask-image: url(/shop/images/common/clip_star.svg);
    mask-image: url(/shop/images/common/clip_star.svg);
    -webkit-mask-size: contain;
    mask-size: contain
}

.evl1half .starWrap svg:nth-child(-n+1) {
    fill: url(#starGrad)
}

.evl1half .starWrap svg:first-child+svg {
    fill: none;
    background-image: linear-gradient(90deg, hsla(0, 0%, 87%, 0) 0, hsla(0, 0%, 87%, 0) 50%, #dedede 0, #dedede), linear-gradient(1turn, #f08200 13.04%, #f59600 96.38%);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    -webkit-mask-image: url(/shop/images/common/clip_star.svg);
    mask-image: url(/shop/images/common/clip_star.svg);
    -webkit-mask-size: contain;
    mask-size: contain
}

.evl2half .starWrap svg:nth-child(-n+2) {
    fill: url(#starGrad)
}

.evl2half .starWrap svg:nth-child(2)+svg {
    fill: none;
    background-image: linear-gradient(90deg, hsla(0, 0%, 87%, 0) 0, hsla(0, 0%, 87%, 0) 50%, #dedede 0, #dedede), linear-gradient(1turn, #f08200 13.04%, #f59600 96.38%);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    -webkit-mask-image: url(/shop/images/common/clip_star.svg);
    mask-image: url(/shop/images/common/clip_star.svg);
    -webkit-mask-size: contain;
    mask-size: contain
}

.evl3half .starWrap svg:nth-child(-n+3) {
    fill: url(#starGrad)
}

.evl3half .starWrap svg:nth-child(3)+svg {
    fill: none;
    background-image: linear-gradient(90deg, hsla(0, 0%, 87%, 0) 0, hsla(0, 0%, 87%, 0) 50%, #dedede 0, #dedede), linear-gradient(1turn, #f08200 13.04%, #f59600 96.38%);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    -webkit-mask-image: url(/shop/images/common/clip_star.svg);
    mask-image: url(/shop/images/common/clip_star.svg);
    -webkit-mask-size: contain;
    mask-size: contain
}

.evl4half .starWrap svg:nth-child(-n+4) {
    fill: url(#starGrad)
}

.evl4half .starWrap svg:nth-child(4)+svg {
    fill: none;
    background-image: linear-gradient(90deg, hsla(0, 0%, 87%, 0) 0, hsla(0, 0%, 87%, 0) 50%, #dedede 0, #dedede), linear-gradient(1turn, #f08200 13.04%, #f59600 96.38%);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    -webkit-mask-image: url(/shop/images/common/clip_star.svg);
    mask-image: url(/shop/images/common/clip_star.svg);
    -webkit-mask-size: contain;
    mask-size: contain
}

.fancybox-inner {
    overflow: visible !important
}

.fancybox-lock .fancybox-overlay {
    overflow: visible
}

.priceModal {
    box-sizing: content-box;
    max-height: 70vh;
    max-width: 770px;
    opacity: 0;
    overflow: auto;
    pointer-events: none;
    position: fixed;
    width: 80vw
}

.priceModal .priceSearch .btnSubmit {
    background: #87867b url(/images/common/arrow-white20.png) no-repeat 263px;
    background-size: 10px 13px;
    color: #fff;
    font-size: 16px;
    padding: 16px 0 15px;
    width: 285px
}

.priceModal .priceSearch .btnArea {
    text-align: center
}

.priceModal .priceSearch .searchArea {
    display: none
}

.priceModal .priceSearch .searchArea.is-show {
    display: block
}

.priceModal .priceSearch .searchArea .searchAreaTtl {
    font-size: 18px;
    font-weight: 600;
    line-height: 1.5
}

.priceModal .priceSearch .searchArea .searchDatas .searchDatasWrap {
    border: 1px solid #dedede;
    counter-increment: num;
    margin-top: 14px
}

.priceModal .priceSearch .searchArea .searchDatas .searchDatasTtl {
    background: #f2f2e9;
    border-bottom: 1px solid #dedede;
    font-size: 14px;
    font-weight: 700;
    padding: 11px 20px 10px
}

.priceModal .priceSearch .searchArea .searchDatas .searchDatasTtl:before {
    content: counter(num) "."
}

.priceModal .priceSearch .searchArea .searchDatas .searchDatasTtl .required {
    *zoom: 1;
    -webkit-font-smoothing: antialiased;
    background: #cf3535;
    background: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxkZWZzPjxsaW5lYXJHcmFkaWVudCBpZD0iYSIgZ3JhZGllbnRVbml0cz0ib2JqZWN0Qm91bmRpbmdCb3giIHgxPSIuNSIgeTE9IjAiIHgyPSIuNSIgeTI9IjEiPjxzdG9wIG9mZnNldD0iMCUiIHN0b3AtY29sb3I9IiNjYjI3MjciLz48c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNkMjQyNDIiLz48L2xpbmVhckdyYWRpZW50PjwvZGVmcz48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBmaWxsPSJ1cmwoI2EpIi8+PC9zdmc+");
    background: linear-gradient(#cb2727, #d24242);
    border-radius: 3px;
    color: #fff;
    display: block;
    filter: progid:DXImageTransform.Microsoft.gradient(gradientType=0, startColorstr="#FFCB2727", endColorstr="#FFD24242");
    float: right;
    font-family: 游ゴシック, Yu Gothic, YuGothic, Meiryo, メイリオ, Hiragino Kaku Gothic ProN, ヒラギノ角ゴ ProN W3, sans-serif;
    font-size: 11px;
    line-height: 20px;
    text-align: center;
    width: 44px
}

.priceModal .priceSearch .searchArea .searchDatas .searchDatasInput {
    padding: 20px
}

.priceModal .priceSearch .searchArea .selectMakerWrap {
    background: #f5f5f5
}

.priceModal .priceSearch .searchArea .selectMaker {
    background: #f5f5f5;
    display: flex;
    margin-bottom: 16px;
    padding: 4px
}

.priceModal .priceSearch .searchArea .selectMaker .selectMakerItem {
    width: auto
}

.priceModal .priceSearch .searchArea .selectMaker .selectMakerItem:not(:first-child) {
    border-left: 1px solid #dedede
}

.priceModal .priceSearch .searchArea .selectMaker .selectMakerItem {
    position: relative
}

.priceModal .priceSearch .searchArea .selectMaker .selectMakerItem input {
    opacity: 0;
    pointer-events: none;
    position: absolute
}

.priceModal .priceSearch .searchArea .selectMaker .selectMakerItem input:checked+.selectMakerBtn {
    background: #f08200;
    color: #fff
}

.priceModal .priceSearch .searchArea .selectMaker .selectMakerBtn {
    align-items: center;
    display: flex;
    font-size: 14px;
    font-weight: 700;
    justify-content: center;
    line-height: 27px;
    padding: 0 10px
}

.priceModal .priceSearch .searchArea .notesArea {
    background: #f5f5f5;
    margin-top: 14px;
    padding: 16px;
    position: relative
}

.priceModal .priceSearch .searchArea .notesArea .notesListData {
    line-height: 1.5;
    margin-left: 1em;
    text-indent: -1em
}

.priceModal .priceSearch .searchArea .notesArea .notesListData:before {
    content: "※";
    text-indent: 0
}

.priceModal .priceSearch .searchArea .notesArea .notesCheckWrap {
    align-items: center;
    display: flex;
    justify-content: center;
    margin-top: 16px
}

.priceModal .priceSearch .searchArea .notesArea .notesCheck {
    opacity: 0;
    pointer-events: none;
    position: absolute;
    width: 0
}

.priceModal .priceSearch .searchArea .notesArea .notesCheck:checked+.notesCheckLabel:after {
    opacity: 1
}

.priceModal .priceSearch .searchArea .notesArea .notesCheckLabel {
    align-items: center;
    display: flex;
    font-size: 16px;
    justify-content: center;
    margin: 0 auto;
    position: relative
}

.priceModal .priceSearch .searchArea .notesArea .notesCheckLabel:before {
    background-color: #fff;
    border: 1px solid #d0d5da;
    content: "";
    display: inline-block;
    height: 15px;
    margin-right: 15px;
    position: relative;
    top: -1px;
    width: 15px
}

.priceModal .priceSearch .searchArea .notesArea .notesCheckLabel:after {
    border-bottom: 2px solid #e60012;
    border-left: 2px solid #e60012;
    content: "";
    display: inline-block;
    height: 7px;
    left: 2px;
    opacity: 0;
    position: absolute;
    top: 4px;
    transform: rotate(-45deg);
    transition: opacity .12s;
    width: 11px
}

.priceModal .priceSearch .searchArea .btnSubmit {
    margin: 37px auto 0
}

.priceModal .priceSearch .searchArea .btnSubmit:disabled {
    opacity: .3
}

.priceModal .priceSearch .resultArea {
    display: none
}

.priceModal .priceSearch .resultArea.is-show {
    display: block
}

.priceModal .priceSearch .resultArea .resultCondition {
    background: #f2f2e9;
    padding: 24px
}

.priceModal .priceSearch .resultArea .resultCondition .condition {
    border-bottom: 1px solid #dedede;
    margin-bottom: 16px;
    padding-bottom: 16px
}

.priceModal .priceSearch .resultArea .resultCondition .conditionTtl {
    font-weight: 700
}

.priceModal .priceSearch .resultArea .resultCondition .conditionTtl:after {
    content: "："
}

.priceModal .priceSearch .resultArea .resultCondition .conditionContents {
    margin-top: 4px
}

.priceModal .priceSearch .resultArea .resultList {
    margin-top: 14px
}

.priceModal .priceSearch .resultArea .resultListItem {
    align-items: center;
    border-bottom: 1px solid #dedede;
    display: flex;
    padding: 16px 16px 16px 14px
}

.priceModal .priceSearch .resultArea .resultListItem .kind {
    align-items: center;
    display: flex;
    gap: 16px
}

.priceModal .priceSearch .resultArea .resultListItem .kind img {
    flex: none;
    width: 78px
}

.priceModal .priceSearch .resultArea .resultListItem .price {
    margin-left: auto
}

.priceModal .priceSearch .resultArea .resultListItem .price.priceNothing {
    font-weight: 600
}

.priceModal .priceSearch .resultArea .resultListItem .price .priceNum {
    font-size: 18px;
    font-weight: 600
}

.priceModal .priceSearch .resultArea .attention {
    color: #999;
    margin-top: 14px
}

.priceModal .priceSearch .resultArea .btnSubmit {
    background-image: none
}

.inputList {
    display: flex;
    flex-wrap: wrap;
    gap: 12px 20px
}

.inputListCol {
    display: flex;
    flex-direction: column;
    gap: 12px
}

.inputItem {
    display: block
}

.inputRadioLabel {
    display: block;
    font-size: 14px;
    line-height: 1.5714285714;
    padding-left: 20px;
    position: relative
}

.inputRadioLabel:before {
    border: 1px solid #dedede;
    height: 16px;
    left: 0;
    top: 1px;
    width: 16px
}

.inputRadioLabel:after,
.inputRadioLabel:before {
    border-radius: 100%;
    content: "";
    display: block;
    flex: none;
    position: absolute
}

.inputRadioLabel:after {
    background: #f08200;
    height: 10px;
    left: 4px;
    opacity: 0;
    top: 5px;
    width: 10px
}

.inputRadio {
    opacity: 0;
    pointer-events: none;
    position: absolute
}

.inputRadio:checked+.inputRadioLabel:before {
    border-color: #f08200
}

.inputRadio:checked+.inputRadioLabel:after {
    opacity: 1
}

.imgInput,
.inquiry .secInquiry .formTable .selectWrap {
    display: flex;
    gap: 10px
}

.imgInput {
    position: relative
}

.imgInput__input {
    opacity: 0;
    pointer-events: none;
    position: absolute;
    width: 0
}

.imgInput__input:nth-child(1 of .is-unselected)+.imgInput__label {
    display: flex
}

.imgInput__label {
    align-items: flex-end;
    background-color: #fff;
    background-image: url(/shop/images/surveys/icon_camera.svg);
    background-position: center calc(50% - 10px);
    background-repeat: no-repeat;
    background-size: 50px auto;
    border: 1px solid #000;
    box-sizing: border-box;
    cursor: pointer;
    display: none;
    height: 100px;
    justify-content: center;
    padding: 10px;
    width: 100px
}

.imgInput__label.is-dragover {
    background-color: #ddd
}

.imgInput__preview {
    display: flex;
    gap: 10px
}

.imgInput__value {
    height: 100px;
    position: relative;
    width: 100px
}

.imgInput__value img {
    box-shadow: 0 0 1px rgba(0, 0, 0, .5);
    height: 100px;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100px
}

.imgInput__value-cancel {
    background-color: hsla(0, 0%, 100%, .8);
    border-radius: 100%;
    box-shadow: 0 0 3px rgba(0, 0, 0, .3);
    height: 20px;
    overflow: hidden;
    position: absolute;
    right: 2px;
    top: 2px;
    white-space: nowrap;
    width: 20px
}

.reserve.shopSelect .secInquiry .stepTit {
    background-size: cover;
    height: 0;
    margin-bottom: 30px;
    margin-top: 50px;
    overflow: hidden;
    width: 100%
}

.reserve.shopSelect .anchor {
    display: flex;
    gap: 16px
}

.reserve.shopSelect .anchorItem {
    width: 100%
}

.reserve.shopSelect .anchorLink {
    background: #87867b;
    background-size: 10px 13px;
    color: #fff;
    display: block;
    font-size: 16px;
    padding: 16px 0 15px;
    position: relative;
    text-align: center;
    transition: opacity .2s;
    width: 100%
}

.reserve.shopSelect .anchorLink:before {
    background: url(/images/common/arrow-white20.png) no-repeat 50%/contain;
    content: "";
    display: block;
    height: 13px;
    position: absolute;
    right: 12px;
    top: calc(50% - 6px);
    transform: rotate(90deg);
    width: 10px
}

.reserve.shopSelect .anchorLink:hover {
    opacity: .7
}

.reserve.shopSelect .secWrap {
    display: flex;
    flex-wrap: wrap;
    gap: 60px;
    margin-bottom: 100px;
    margin-top: 60px
}

.reserve.shopSelect .secWrap .blockTit {
    margin-bottom: 25px
}

.reserve.shopSelect .searchFormWrap {
    align-items: center;
    display: flex;
    gap: 5px
}

.reserve.shopSelect .searchFormWrap input:not(.btn) {
    padding: 11px 0 11px 18px
}

.reserve.shopSelect .searchFormWrap .btn {
    background: #79786c url(/images/common/arrow-white20.png) no-repeat 53px;
    background-size: 10px 13px;
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    margin-left: 5px;
    padding: 11px 15px 11px 0;
    width: 75px
}

.reserve.shopSelect .secPref {
    position: relative;
    width: 100%;
    z-index: 4
}

.reserve.shopSelect .secZiip {
    position: relative;
    z-index: 3
}

.reserve.shopSelect .secZiip .zip01 {
    width: 75px
}

.reserve.shopSelect .secZiip .border {
    background: #d3d3cb;
    content: "";
    display: inline-block;
    height: 1px;
    margin: 0 4px;
    width: 13px
}

.reserve.shopSelect .secZiip .zip02 {
    width: 113px
}

.reserve.shopSelect .secFreeword {
    flex-grow: 1;
    position: relative;
    z-index: 2
}

.reserve.shopSelect .secFreeword input[type=text] {
    flex-grow: 1
}

.reserve.shopSelect .secNowposition {
    position: relative;
    width: 100%;
    z-index: 1
}

.reserve.shopSelect .secNowposition .btnPosition {
    background: #87867b;
    box-sizing: border-box;
    color: #fff;
    display: flex;
    float: none;
    font-size: 14px;
    font-weight: 600;
    gap: 4px;
    justify-content: center;
    padding: 10px 42px
}

.reserve.shopSelect .secNowposition .btnPosition svg {
    fill: #fff;
    height: 20px;
    width: 20px
}

.reserve.shopSelect .secNowposition .shopMapSelect {
    border: 1px solid #dedede;
    display: flex;
    height: 500px;
    height: 0;
    margin-top: 16px;
    opacity: 0;
    pointer-events: none;
    position: fixed
}

.reserve.shopSelect .secNowposition .shopMapSelect.is-show {
    height: 500px;
    opacity: 1;
    pointer-events: auto;
    position: static
}

.reserve.shopSelect .secNowposition .mapWrap {
    flex-grow: 1
}

.reserve.shopSelect .secNowposition .mapBox,
.reserve.shopSelect .secNowposition .mapBox>div {
    height: 100%
}

.reserve.shopSelect .secNowposition .mapBox .infoBlock {
    display: block
}

.reserve.shopSelect .secNowposition .infoBox>img {
    background: url(/images/shop/btn-close.png) no-repeat 0 0;
    display: block;
    height: 0;
    margin: 0 !important;
    overflow: hidden;
    padding-top: 34px;
    position: absolute !important;
    right: -13px;
    top: -9px;
    width: 34px;
    z-index: 10
}

.reserve.shopSelect .secNowposition .infoBlock {
    background: hsla(0, 0%, 100%, .98);
    border-radius: 4px;
    box-shadow: 0 0 10px 10px hsla(0, 0%, 60%, .1);
    display: none;
    font-family: Meiryo, メイリオ, Hiragino Kaku Gothic ProN, ヒラギノ角ゴ ProN W3, sans-serif;
    position: relative;
    width: 394px
}

.reserve.shopSelect .secNowposition .infoBlock:before {
    border-color: transparent #fff transparent transparent;
    border-style: solid;
    border-width: 10px 16px 10px 0;
    content: "";
    display: block;
    left: -16px;
    position: absolute;
    top: 130px
}

.reserve.shopSelect .secNowposition .infoBlock .inner {
    padding: 20px 20px 24px;
    position: relative
}

.reserve.shopSelect .secNowposition .infoBlock .inner:before {
    content: "";
    display: table
}

.reserve.shopSelect .secNowposition .infoBlock .inner:after {
    clear: both;
    content: "";
    display: table
}

.reserve.shopSelect .secNowposition .infoBlock .thumbArea {
    float: left;
    width: 130px
}

.reserve.shopSelect .secNowposition .infoBlock .thumbArea .thumb {
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover;
    height: 0;
    overflow: hidden;
    padding-top: 92px;
    width: 100%
}

.reserve.shopSelect .secNowposition .infoBlock .detailArea {
    float: right;
    width: 204px;
    word-break: break-all
}

.reserve.shopSelect .secNowposition .infoBlock .detailArea .partner {
    margin-bottom: 11px
}

.reserve.shopSelect .secNowposition .infoBlock .detailArea .partner img {
    width: 46px
}

.reserve.shopSelect .secNowposition .infoBlock .detailArea .name {
    color: #f08200;
    font-size: 20px;
    font-weight: 700;
    line-height: 1;
    margin-bottom: 3px
}

.reserve.shopSelect .secNowposition .infoBlock .detailArea .shopInfo {
    margin-bottom: 6px
}

.reserve.shopSelect .secNowposition .infoBlock .detailArea .shopInfo tr {
    border-bottom: 1px dotted #a5a5a5
}

.reserve.shopSelect .secNowposition .infoBlock .detailArea .shopInfo tr:last-child {
    border-bottom: none
}

.reserve.shopSelect .secNowposition .infoBlock .detailArea .shopInfo td,
.reserve.shopSelect .secNowposition .infoBlock .detailArea .shopInfo th {
    font-size: 12px;
    padding: 6px 0
}

.reserve.shopSelect .secNowposition .infoBlock .detailArea .shopInfo th {
    width: 33px
}

.reserve.shopSelect .secNowposition .infoBlock .detailArea .shopInfo td {
    position: relative;
    width: 170px
}

.reserve.shopSelect .secNowposition .infoBlock .detailArea .shopInfo td p {
    border-left: 1px solid #dedede;
    box-sizing: border-box;
    padding: 4px 0 2px 9px
}

.reserve.shopSelect .secNowposition .infoBlock .detailArea .productInfo {
    background: #f2f2e9;
    padding: 9px 10px 8px
}

.reserve.shopSelect .secNowposition .infoBlock .detailArea .productInfo li {
    display: inline-block
}

.reserve.shopSelect .secNowposition .infoBlock .detailArea .productInfo li+li {
    margin-left: 1px
}

.reserve.shopSelect .secNowposition .infoBlock .detailArea .productInfo li img {
    height: 27px;
    width: 27px
}

.reserve.shopSelect .secNowposition .infoBlock .detailArea .Addinfo {
    overflow: hidden
}

.reserve.shopSelect .secNowposition .infoBlock .detailArea .Addinfo li {
    border: 1px solid #dedede;
    box-sizing: border-box;
    font-size: 12px;
    font-weight: 700;
    margin-top: 6px;
    text-align: center;
    width: 99px
}

.reserve.shopSelect .secNowposition .infoBlock .detailArea .Addinfo li:nth-child(odd) {
    clear: both;
    float: left
}

.reserve.shopSelect .secNowposition .infoBlock .detailArea .Addinfo li:nth-child(2n) {
    float: right
}

.reserve.shopSelect .secNowposition .infoBlock .detailArea .Addinfo li.card span {
    background-image: url(/images/shop/ico-card.png);
    background-size: auto 14px;
    letter-spacing: -.1em;
    padding-left: 21px
}

.reserve.shopSelect .secNowposition .infoBlock .detailArea .Addinfo li.loaner span {
    background-image: url(/images/shop/ico-loaner.png);
    background-size: auto 15px;
    padding-left: 23px
}

.reserve.shopSelect .secNowposition .infoBlock .detailArea .Addinfo li.takeoff span {
    background-image: url(/images/shop/ico-takeoff.png);
    background-size: auto 15px;
    letter-spacing: -.03em;
    padding-left: 17px
}

.reserve.shopSelect .secNowposition .infoBlock .detailArea .Addinfo li.delivered span {
    background-image: url(/images/shop/ico-delivered.png);
    background-size: auto 17px;
    padding-left: 22px
}

.reserve.shopSelect .secNowposition .infoBlock .detailArea .Addinfo li span {
    background-position: 0;
    background-repeat: no-repeat;
    display: inline-block;
    padding: 7px 0 6px
}

.reserve.shopSelect .secNowposition .ctaArea {
    clear: both;
    display: flex;
    gap: 10px;
    padding-top: 20px
}

.reserve.shopSelect .secNowposition .ctaItem {
    width: 100%
}

.reserve.shopSelect .secNowposition .ctaItem .btn {
    background: #87867b url(/images/common/arrow-white20.png) no-repeat calc(100% - 12px);
    background-size: 10px 13px;
    box-sizing: border-box;
    color: #fff;
    display: block;
    float: none;
    font-size: 15px;
    font-weight: 700;
    padding: 11px 32px 11px 15px;
    position: static;
    text-align: left;
    width: 100%
}

.reserve.shopSelect .secNowposition .ctaItem .btn.btnReserve {
    background-color: #f08200
}

.reserve.shopSelect .secNowposition .mapShopList {
    flex: none;
    order: -1;
    overflow: auto;
    width: 280px
}

.reserve.shopSelect .secNowposition .mapShopListItem {
    border-right: 1px solid #dedede;
    cursor: pointer;
    padding: 24px
}

.reserve.shopSelect .secNowposition .mapShopListItem:not(:first-child) {
    border-top: 1px solid #dedede
}

.reserve.shopSelect .secNowposition .mapShopListItem.is-none {
    display: none
}

.reserve.shopSelect .secNowposition .mapShopListItem .itemName {
    color: #f08200;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.5
}

.reserve.shopSelect .secNowposition .mapShopListItem .itemInfo {
    color: #79786c;
    display: flex;
    flex-direction: column;
    font-size: 13px;
    gap: 2px;
    line-height: 1.6153846154;
    margin-top: 8px
}

.reserve.shopSelect .secNowposition .mapShopListItem .itemInfoWrap {
    display: flex;
    gap: 4px
}

.reserve.shopSelect .secNowposition .mapShopListItem .itemInfoTtl {
    flex: none;
    font-weight: 600;
    width: 28px
}

.reserve.shopSelect .secNowposition .mapShopListItem .itemInfoCon {
    font-weight: 300
}

.reserve.shopSelect .secSearch .shop__box {
    display: flex;
    max-width: none
}

.reserve.shopSelect .secSearch .shop__box[data-is-open=true] dt:after {
    transform: rotate(0deg)
}

.reserve.shopSelect .secSearch .shop__box[data-accordion=false] dt {
    color: #dedede
}

.reserve.shopSelect .secSearch .shop__box[data-accordion=false] dt:after,
.reserve.shopSelect .secSearch .shop__box[data-accordion=false] dt:before {
    background-color: #dedede
}

.reserve.shopSelect .secSearch .shop__box dd {
    flex-grow: 1
}

.reserve.shopSelect .secSearch .shop__box dd li a {
    cursor: pointer
}

.reserve.shopSelect .secSearch .shop__box dd li span {
    background-image: url(/images/shop/shop-arrow.png);
    background-position: left 6px;
    background-repeat: no-repeat;
    background-size: 5px auto;
    color: #79786c;
    display: block;
    padding-left: 10px;
    text-decoration: none
}

.reserve .pageTit {
    background-image: url(/shop/images/reserve/bg-title_pc.jpg)
}

.reserve .secInquiry .stepTit {
    background-image: url(/shop/images/reserve/txt-flow_pc.png)
}

.reserve .secInquiry .stepTit.stepShopselect {
    background-position: 0 0
}

.reserve .secInquiry .stepTit.stepDetail {
    background-position: 0 25%
}

.reserve .secInquiry .stepTit.stepCustomer {
    background-position: 0 50%
}

.reserve .secInquiry .stepTit.stepConfirm {
    background-position: 0 75%
}

.reserve .secInquiry .stepTit.stepComplete {
    background-position: 0 100%
}

.reserve .secInquiry .stepTit.maintenance {
    background-image: url(/shop/images/reserve/txt-flow-maintenance_pc.png)
}

.reserve .secInquiry .stepTit.maintenance.input {
    background-position: 0 0;
}

.reserve .secInquiry .stepTit.maintenance.confirm {
    background-position: 0 50%;
}

.reserve .secInquiry .stepTit.maintenance.complete {
    background-position: 0 100%;
}

.reserve .secInquiry .txt {
    margin-bottom: 30px
}

.reserve .secInquiry .formTable .nameWrap {
    display: flex;
    gap: 10px
}

.reserve .secInquiry .formTable .telWrap {
    align-items: center;
    display: flex;
    gap: 10px
}

.reserve .secInquiry .formTable .link {
    background-color: #f08200;
    color: #fff;
    display: inline-block;
    font-size: 1rem;
    font-weight: 600;
    margin-left: 20px;
    padding: 11px 15px
}

.reserve .secInquiry .formTable .info {
    font-size: 16px
}

.reserve .secInquiry .formTable .info__inner {
    align-items: flex-start;
    display: flex
}

.reserve .secInquiry .btnArea .btnWrap {
    display: flex;
    gap: 11px;
    justify-content: center;
    width: auto
}

.reserve .secInquiry .btnArea .btnWrap .btnReturn {
    box-sizing: border-box;
    padding-left: 20px;
    padding-right: 20px;
    width: auto
}

.reserve .secInquiry .privacy_notice {
    margin-bottom: 40px;
    margin-top: 40px;
    text-align: center
}

.reserve .reserveModal {
    opacity: 0;
    pointer-events: none;
    position: fixed;
    width: 430px
}

.reserve .reserveModal .error {
    color: #cb2929;
    display: none;
    font-size: 13px;
    text-align: center
}

.reserve .reserveModal .error.is-show {
    display: block
}

.reserve .reserveModal .btnArea {
    margin-top: 20px;
    text-align: center
}

.reserve .reserveModal .btnSubmit {
    background: #87867b url(/images/common/arrow-white20.png) no-repeat calc(100% - 10px);
    background-size: 10px 13px;
    color: #fff;
    font-size: 16px;
    padding: 16px 0 15px;
    width: 100%
}

.reserve .reserveCalendar {
    text-align: center;
    width: 100%
}

.reserve .reserveCalendar .fc-toolbar-title {
    font-size: 24px;
    font-weight: 600
}

.reserve .reserveCalendar .fc-button {
    border: none;
    border-radius: 0;
    font-size: 15px;
    font-weight: 700;
    line-height: 1;
    padding: 14px
}

.reserve .reserveCalendar .fc-button.fc-button-primary,
.reserve .reserveCalendar .fc-button.fc-button-primary:disabled {
    background-color: #87867b
}

.reserve .reserveCalendar .fc-button.fc-next-button,
.reserve .reserveCalendar .fc-button.fc-prev-button {
    background-image: url(/images/common/arrow-white20.png);
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: 10px 13px;
    overflow: hidden;
    text-indent: 50px;
    white-space: nowrap;
    width: 45px
}

.reserve .reserveCalendar .fc-button.fc-prev-button {
    transform: scaleX(-1)
}

.reserve .reserveCalendar table {
    border-color: #dedede;
    border-left: none;
    border-top: none
}

.reserve .reserveCalendar th {
    border: none
}

.reserve .reserveCalendar .fc-col-header-cell-cushion {
    color: #313131;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.6153846154
}

.reserve .reserveCalendar .fc-day:not(.fc-col-header-cell, .fc-day-other) {
    background-color: #f5f5f5;
    border-color: #dedede
}

.reserve .reserveCalendar .fc-day:not(.fc-col-header-cell, .fc-day-other, .fc-day-disabled) {
    position: relative
}

.reserve .reserveCalendar .fc-day:not(.fc-col-header-cell, .fc-day-other, .fc-day-disabled):before {
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24px 25px"><path fill="%23dedede" d="M12.0002 10.9746L4.63702 3.61145L3.22281 5.02566L10.586 12.3888L3 19.9748L4.41421 21.389L12.0002 13.803L19.5861 21.389L21.0003 19.9748L13.4144 12.3888L20.7775 5.02569L19.3633 3.61147L12.0002 10.9746Z" /></svg>');
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: contain;
    bottom: 8px;
    content: "";
    display: block;
    height: 24px;
    left: calc(50% - 12px);
    position: absolute;
    width: 24px
}

.reserve .reserveCalendar .fc-day.fc-day-other {
    border-color: #dedede
}

.reserve .reserveCalendar .fc-day.fc-day-today.fc-day-other {
    background: none
}

.reserve .reserveCalendar .fc-day.fc-day-today .fc-daygrid-day-number {
    color: #dedede
}

.reserve .reserveCalendar .fc-day.fc-day-today .fc-daygrid-day-frame {
    border: 2px solid #f08200
}

.reserve .reserveCalendar .fc-day.fc-day-future:not(.fc-day-other) .fc-event,
.reserve .reserveCalendar .fc-day.fc-day-today .fc-event {
    display: block
}

.reserve .reserveCalendar .fc-day.fc-day-past .fc-daygrid-day-number {
    color: #dedede
}

.reserve .reserveCalendar .fc-day.is-select .fc-daygrid-day-number {
    color: #fff
}

.reserve .reserveCalendar .fc-day.is-select .fc-event {
    background-color: #f08200
}

.reserve .reserveCalendar .fc-day.is-select .fc-event:before {
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 25 25"><path fill="%23ffffff" d="M12.5723 22.1666C11.1889 22.1666 9.88893 21.9041 8.67227 21.3791C7.4556 20.8541 6.39727 20.1416 5.49727 19.2416C4.59727 18.3416 3.88477 17.2833 3.35977 16.0666C2.83477 14.85 2.57227 13.55 2.57227 12.1666C2.57227 10.7833 2.83477 9.48329 3.35977 8.26663C3.88477 7.04996 4.59727 5.99163 5.49727 5.09163C6.39727 4.19163 7.4556 3.47913 8.67227 2.95413C9.88893 2.42913 11.1889 2.16663 12.5723 2.16663C13.9556 2.16663 15.2556 2.42913 16.4723 2.95413C17.6889 3.47913 18.7473 4.19163 19.6473 5.09163C20.5473 5.99163 21.2598 7.04996 21.7848 8.26663C22.3098 9.48329 22.5723 10.7833 22.5723 12.1666C22.5723 13.55 22.3098 14.85 21.7848 16.0666C21.2598 17.2833 20.5473 18.3416 19.6473 19.2416C18.7473 20.1416 17.6889 20.8541 16.4723 21.3791C15.2556 21.9041 13.9556 22.1666 12.5723 22.1666ZM12.5723 20.1666C14.8056 20.1666 16.6973 19.3916 18.2473 17.8416C19.7973 16.2916 20.5723 14.4 20.5723 12.1666C20.5723 9.93329 19.7973 8.04163 18.2473 6.49163C16.6973 4.94163 14.8056 4.16663 12.5723 4.16663C10.3389 4.16663 8.44727 4.94163 6.89727 6.49163C5.34727 8.04163 4.57227 9.93329 4.57227 12.1666C4.57227 14.4 5.34727 16.2916 6.89727 17.8416C8.44727 19.3916 10.3389 20.1666 12.5723 20.1666Z" /></svg>')
}

.reserve .reserveCalendar .fc-day.is-telOnly .fc-event:before {
    background: none;
    content: "TEL";
    font-size: 13px;
    font-weight: 600;
    height: auto;
    width: auto
}

.reserve .reserveCalendar .fc-day .fc-daygrid-day-top {
    justify-content: center
}

.reserve .reserveCalendar .fc-day .fc-daygrid-day-number {
    color: #313131;
    font-size: 13px;
    font-weight: 600;
    line-height: 1
}

.reserve .reserveCalendar .fc-day .fc-event {
    background-color: #fff;
    display: none;
    opacity: 1
}

.reserve .reserveCalendar .fc-day .fc-event:before {
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 25 25"><path fill="%23F08200" d="M12.5723 22.1666C11.1889 22.1666 9.88893 21.9041 8.67227 21.3791C7.4556 20.8541 6.39727 20.1416 5.49727 19.2416C4.59727 18.3416 3.88477 17.2833 3.35977 16.0666C2.83477 14.85 2.57227 13.55 2.57227 12.1666C2.57227 10.7833 2.83477 9.48329 3.35977 8.26663C3.88477 7.04996 4.59727 5.99163 5.49727 5.09163C6.39727 4.19163 7.4556 3.47913 8.67227 2.95413C9.88893 2.42913 11.1889 2.16663 12.5723 2.16663C13.9556 2.16663 15.2556 2.42913 16.4723 2.95413C17.6889 3.47913 18.7473 4.19163 19.6473 5.09163C20.5473 5.99163 21.2598 7.04996 21.7848 8.26663C22.3098 9.48329 22.5723 10.7833 22.5723 12.1666C22.5723 13.55 22.3098 14.85 21.7848 16.0666C21.2598 17.2833 20.5473 18.3416 19.6473 19.2416C18.7473 20.1416 17.6889 20.8541 16.4723 21.3791C15.2556 21.9041 13.9556 22.1666 12.5723 22.1666ZM12.5723 20.1666C14.8056 20.1666 16.6973 19.3916 18.2473 17.8416C19.7973 16.2916 20.5723 14.4 20.5723 12.1666C20.5723 9.93329 19.7973 8.04163 18.2473 6.49163C16.6973 4.94163 14.8056 4.16663 12.5723 4.16663C10.3389 4.16663 8.44727 4.94163 6.89727 6.49163C5.34727 8.04163 4.57227 9.93329 4.57227 12.1666C4.57227 14.4 5.34727 16.2916 6.89727 17.8416C8.44727 19.3916 10.3389 20.1666 12.5723 20.1666Z" /></svg>');
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: contain;
    bottom: 8px;
    content: "";
    display: block;
    height: 24px;
    left: calc(50% - 12px);
    position: absolute;
    width: 24px
}

.reserve .reserveCalendar .fc-day .fc-daygrid-day-events {
    margin-bottom: 0
}

.reserve .reserveTime {
    -webkit-appearance: auto;
    -moz-appearance: auto;
    appearance: auto;
    background: #fff;
    border: 1px solid #c6c6c6;
    display: block;
    height: 43px;
    line-height: 43px;
    margin: 20px auto;
    max-width: 247px;
    padding: 0 22px 0 19px;
    width: 100%
}

.reserve .reserveTime option {
    color: #666;
    padding: 8px
}

.reserve .resultModal {
    max-height: 60vh;
    max-width: 940px;
    opacity: 0;
    pointer-events: none;
    position: fixed;
    width: calc(90vw - 60px)
}

.reserve .searchResult {
    display: flex;
    flex-direction: column;
    max-height: 60vh;
    width: 100%
}

.reserve .searchResultTitle {
    font-size: 18px;
    font-weight: 600;
    line-height: 1.5
}

.reserve .searchResultTableWrap {
    flex-grow: 1;
    margin-top: 14px;
    overflow: auto
}

.reserve .searchResultTable {
    border: 1px solid #dedede;
    table-layout: fixed;
    width: 100%
}

.reserve .searchResultTable td,
.reserve .searchResultTable th {
    border: 1px solid #dedede
}

.reserve .searchResultTable thead {
    position: -webkit-sticky;
    position: sticky;
    top: 0
}

.reserve .searchResultTable thead tr {
    background-color: #f2f2e9
}

.reserve .searchResultTable thead th {
    box-sizing: border-box;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.5;
    padding: 7px 12px;
    text-align: left
}

.reserve .searchResultTable thead th:first-child {
    max-width: 200px;
    width: 21.2765957447%
}

.reserve .searchResultTable thead th:first-child:after,
.reserve .searchResultTable thead th:first-child:before {
    background-color: #dedede;
    content: "";
    display: block;
    height: 1px;
    left: 0;
    position: absolute;
    width: 100%
}

.reserve .searchResultTable thead th:first-child:before {
    top: -1px
}

.reserve .searchResultTable thead th:first-child:after {
    bottom: 0
}

.reserve .searchResultTable thead th:nth-child(2) {
    max-width: 240px;
    width: 25.5319148936%
}

.reserve .searchResultTable thead th:nth-child(3) {
    width: 135px
}

.reserve .searchResultTable thead th:nth-child(4) {
    width: 350px
}

.reserve .searchResultTable tbody tr:nth-child(2n) {
    background-color: #f5f5f5
}

.reserve .searchResultTable tbody td {
    font-size: 14px;
    font-weight: 400;
    line-height: 1.5;
    padding: 12px;
    vertical-align: center
}

.reserve .searchResultTable .btnList {
    display: flex;
    gap: 10px
}

.reserve .searchResultTable .btnArea {
    max-width: 155px;
    width: 100%
}

.reserve .searchResultTable .btn {
    background: #87867b url(/images/common/arrow-white20.png) no-repeat calc(100% - 12px);
    background-size: 10px 13px;
    box-sizing: border-box;
    color: #fff;
    display: block;
    font-size: 15px;
    font-weight: 700;
    padding: 11px 32px 11px 18px;
    text-align: center;
    width: 100%
}

.reserve .searchResultTable .btn.btnReserve {
    background-color: #f08200
}

.reserve .resultNoData {
    max-width: 344px;
    width: 100%
}

.reserve .resultNoData:before {
    background: url(/shop/images/reserve/icon_nodata.svg) no-repeat 50%/contain;
    content: "";
    display: block;
    height: 43px;
    margin: 0 auto 10px;
    width: 52px
}

.reserve .resultNoDataText {
    font-size: 15px;
    font-weight: 600;
    line-height: 1.5;
    text-align: center
}

.reserve .resultInfo {
    background: #f5f5f5;
    box-sizing: border-box;
    margin-top: 24px;
    max-width: 344px;
    padding: 16px;
    text-align: center;
    width: 100%
}

.reserve .resultInfo .btn {
    background: #87867b url(/images/common/arrow-white20.png) no-repeat calc(100% - 12px);
    background-size: 10px 13px;
    box-sizing: border-box;
    color: #fff;
    display: inline-block;
    float: none;
    font-size: 15px;
    font-weight: 700;
    margin-top: 12px;
    padding: 11px 32px 11px 15px;
    position: static;
    text-align: left;
    width: 100%
}

.reserve .resultInfo .btn.btnSearch {
    align-items: center;
    background: #f08200;
    display: inline-flex;
    gap: 8px;
    line-height: 1;
    padding: 11px 24px;
    width: auto
}

.reserve .resultInfo .btn.btnSearch:hover {
    color: #fff
}

.reserve .resultInfo .btn.btnSearch:before {
    background: url(/images/common/ico-search.png) no-repeat 50%/contain;
    content: "";
    display: inline-block;
    height: 16px;
    width: 16px
}

.reserve .resultInfoMessage {
    color: #79786c;
    font-size: 13px;
    line-height: 1.6153846154
}

.reserve .fancybox-type-iframe .fancybox-skin {
    padding: 30px !important
}

.reserve .fancybox-type-iframe .fancybox-inner {
    height: 70vh !important;
    padding-top: 0
}

.reserve .fancybox-type-inline .fancybox-inner {
    height: auto !important
}

.reserve .fancybox-type-inline .fancybox-skin:has(.reserveModal) {
    padding: 30px !important
}

.reserve .message .txt {
    margin-bottom: 0
}

.reserve .message .notyet {
    color: #cb2929;
    font-size: 24px;
    font-weight: 700
}

.reserve .message .receipt {
    align-items: center;
    background: #f2f2e9;
    display: flex;
    font-size: 32px;
    justify-content: center;
    line-height: 1;
    margin: 20px auto;
    padding: 20px;
    width: 500px
}

.reserve .message .receipt__title:after {
    content: "："
}

.reserve .privacy .privacy__title {
    font-weight: 700;
    margin-bottom: 10px
}

.reserve .privacy .partnerPolicy {
    margin-top: 40px
}

.reserve .privacy .partnerPolicy__title {
    font-weight: 700;
    margin-bottom: 10px
}

.reserve .privacy .partnerPolicy__outline {
    padding-right: 40px
}

.reserve .privacy .partnerPolicy__outline-content {
    margin-bottom: 20px
}

.reserve .privacy .partnerPolicy__list {
    margin-bottom: 0;
    padding-left: 25px;
    padding-right: 0
}

.reserve .privacy .partnerPolicy__list-item:not(:last-child) {
    margin-bottom: 1em
}

.reserve .privacy .partnerPolicy__innerList {
    list-style: none;
    margin-bottom: 0;
    padding-left: 0;
    padding-right: 0
}

.reserve .privacy .partnerPolicy__innerList-item {
    counter-increment: num;
    margin-left: 2.5em;
    text-indent: -2.5em
}

.reserve .privacy .partnerPolicy__innerList-item:not(:last-child) {
    margin-bottom: .5em
}

.reserve .privacy .partnerPolicy__innerList-item:before {
    content: "(" counter(num) ")";
    display: inline-block;
    padding-right: .5em;
    text-align: right;
    text-indent: 0;
    width: 2em
}

.reserve .consentCheck {
    padding: 0 10px
}

.fancybox-inner .priceModal,
.fancybox-inner .reserveModal,
.fancybox-inner .resultModal {
    opacity: 1;
    pointer-events: auto;
    position: static
}

.fancybox-inner .priceModal.fancybox-margin,
.fancybox-inner .reserveModal.fancybox-margin,
.fancybox-inner .resultModal.fancybox-margin {
    margin-right: 0
}

.shop .secShopDetail .secDetail .service dt {
    align-items: center;
    display: flex;
    justify-content: center;
    min-height: 45px;
    position: relative
}

.shop .secShopDetail .secDetail .service .priceCheck {
    position: absolute;
    right: 10px;
    top: 11px
}

.shop .secShopDetail .secDetail .service .priceCheckLink {
    align-items: center;
    background-color: #f08200;
    color: #fff;
    display: flex;
    font-size: 15px;
    font-weight: 700;
    gap: 2px;
    padding: 11px 15px
}

.shop .secShopDetail .secDetail .service .priceCheckLink:before {
    background-image: url(/shop/images/detail/icon_yen.svg);
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    display: block;
    height: 16px;
    width: 14px
}

.shop .secShopDetail .secReview {
    margin-top: 50px
}

.shop .secShopDetail .secReview .reviewArea {
    border: 10px solid #f2f2e9;
    padding: 14px 20px
}

.shop .secShopDetail .secReview .reviewArea .evaluationTtl {
    font-size: 18px
}

.shop .secShopDetail .secReview .reviewArea .evaluationContent {
    font-size: 34px;
    line-height: 1
}

.shop .secShopDetail .secReview .reviewArea .starWrap svg {
    height: 32px;
    width: 32px
}

.shop .secShopDetail .secReview .reviewArea .reviewDetail {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 9px
}

.shop .secShopDetail .secReview .reviewArea .reviewDetail .detailWrap {
    align-items: center;
    border-right: 1px solid #79786c;
    display: flex;
    gap: 4px;
    padding-right: 10px
}

.shop .secShopDetail .secReview .reviewArea .reviewDetailTtl {
    color: #313131;
    font-size: 14px;
    font-weight: 600;
    line-height: 1
}

.shop .secShopDetail .secReview .reviewArea .reviewDetailNum {
    color: #f08200;
    font-size: 18px;
    font-weight: 600;
    line-height: 1
}

.shop .reviewData {
    margin-bottom: 20px
}

.shop .reviewData,
.shop .reviewData .evaluation,
.shop .reviewData .toReview {
    align-items: center;
    display: flex
}

.shop .reviewData .evaluation {
    gap: 8px
}

.shop .reviewData .evaluationTtl {
    color: #313131;
    font-size: 14px;
    font-weight: 600
}

.shop .reviewData .evaluationContent {
    align-items: center;
    color: #f08200;
    display: flex;
    font-size: 18px;
    font-weight: 600;
    gap: 8px
}

.shop .followCTA {
    background: #f5f5f5;
    bottom: 0;
    box-sizing: border-box;
    left: 0;
    padding: 30px 10px;
    position: fixed;
    width: 100%
}

.shop .followCTA.is-absolute {
    position: absolute
}

.shop .followCTAWrap {
    padding-top: 117px;
    position: relative
}

.shop .ctaArea,
.shop .ctaArea .btn {
    display: flex;
    gap: 10px;
    justify-content: center
}

.shop .ctaArea .btn {
    align-items: center;
    background-image: url(/images/shop/btn-inqury-large_pc.png);
    background-size: 100% 100%;
    border: 1px solid #f08200;
    border-radius: 1000px;
    box-sizing: border-box;
    color: #fff;
    font-size: 22px;
    font-weight: 700;
    height: 100%;
    padding: 11px 113px
}

.shop .ctaArea .btn:hover {
    opacity: .7
}

.shop .ctaArea .btn img {
    filter: brightness(0) saturate(100%) invert(100%) sepia(3%) saturate(12%) hue-rotate(20deg) brightness(104%) contrast(103%);
    flex: none;
    width: 27px
}

.shop .ctaArea .btn.btnImportant {
    background: #fff;
    color: #f08200
}

.shop .ctaArea .btn.btnImportant img {
    filter: brightness(0) saturate(100%) invert(69%) sepia(89%) saturate(3821%) hue-rotate(2deg) brightness(95%) contrast(103%)
}

.shop .comment {
    border-bottom: 1px solid #dedede;
    padding-bottom: 48px;
    padding-top: 48px;
    position: relative
}

.shop .comment:nth-of-type(n+11) {
    display: none
}

.shop .comment.is-show {
    display: block
}

.shop .commentHead {
    align-items: center;
    display: flex;
    gap: 8px
}

.shop .commentNickname {
    font-size: 18px;
    font-weight: 600;
    margin-left: 4px
}

.shop .commentTime {
    color: #79786c;
    font-size: 12px;
    font-weight: 300
}

.shop .commentEvaluation {
    align-items: center;
    border-right: 1px solid #dedede;
    color: #f08200;
    display: flex;
    font-size: 20px;
    font-weight: 600;
    gap: 8px;
    line-height: 1;
    order: -1;
    padding-right: 12px
}

.shop .commentEvaluation .starWrap {
    gap: 1px
}

.shop .commentConstruction {
    background-color: #f2f2e9;
    border: 1px solid #dedede;
    display: flex;
    flex-wrap: wrap;
    margin-top: 16px
}

.shop .commentConstructionWrap {
    align-items: center;
    box-sizing: border-box;
    display: flex;
    padding: 8px 16px;
    width: 50%
}

.shop .commentConstructionTtl {
    font-size: 14px;
    font-weight: 600
}

.shop .commentConstructionTtl:after {
    content: "："
}

.shop .commentConstructionCon {
    font-weight: 300
}

.shop .commentText {
    font-size: 14px;
    font-weight: 300;
    line-height: 1.5;
    margin-top: 18px
}

.shop .commentImg {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 18px
}

.shop .commentImg img {
    height: 100px;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100px
}

.shop .commentReply {
    background-color: #f5f5f5;
    margin-top: 24px;
    padding: 16px
}

.shop .commentReplyHead {
    align-items: center;
    display: flex;
    gap: 10px
}

.shop .commentReplyTtl {
    font-size: 14px;
    font-weight: 600;
    line-height: 1.5
}

.shop .commentReplyTime {
    color: #79786c;
    font-size: 12px;
    font-weight: 300
}

.shop .commentReplyContent {
    font-size: 14px;
    font-weight: 300;
    line-height: 1.5;
    margin-top: 4px
}

.shop .commentMoreArea {
    display: none;
    margin-top: 32px;
    text-align: center
}

.shop .commentMoreArea.is-show {
    display: block
}

.shop .commentMore {
    background: #87867b;
    background-size: 10px 13px;
    color: #fff;
    font-size: 16px;
    padding: 16px 0 15px;
    position: relative;
    transition: opacity .2s;
    width: 285px
}

.shop .commentMore:before {
    background: url(/images/common/arrow-white20.png) no-repeat 50%/contain;
    content: "";
    display: block;
    height: 13px;
    position: absolute;
    right: 12px;
    top: calc(50% - 6px);
    transform: rotate(90deg);
    width: 10px
}

.shop .commentMore:hover {
    opacity: .7
}

.shop .moreReadBtn {
    align-items: center;
    color: #3a779d;
    display: flex;
    font-size: 14px;
    font-weight: 300;
    gap: 2px;
    line-height: 1.5;
    margin-top: 4px;
    width: 100px
}

.shop .moreReadBtn:hover {
    color: #f08200
}

.shop .moreReadBtn:after {
    border-color: currentcolor;
    border-style: solid solid none none;
    border-width: 2px;
    content: "";
    display: inline-block;
    height: 5px;
    position: relative;
    top: -2px;
    transform: rotate(135deg);
    width: 5px
}

.shop .moreReadBtn.is-open:after {
    top: 2px;
    transform: rotate(-45deg)
}

.shop .btnPageTitReserve a {
    background-color: #f08200;
    border: none;
    opacity: 1;
    transition: opacity .3s
}

.shop .btnArea.-card {
    display: flex;
    gap: 10px
}

.shop .btnArea.-card.-wide .btnInquiry {
    margin: 20px 0 0;
}

.shop .btnArea.-card>* {
    max-width: 310px;
    width: 100%
}

.shop .btnArea .btnReserve {
    background: #fff;
    border: 2px solid #f08200;
    background-color: #f08200;
    border-radius: 17px;
    margin: 20px auto 0;
    max-width: 310px;
    padding-top: 1px;
    transition: opacity .2s;
    width: 100%;
    box-sizing: border-box;
}

.shop .btnArea .btnReserve:hover {
    opacity: .7
}

.shop .btnArea .btnReserve a {
    border-radius: 17px;
    color: #f59833 !important;
    display: block;
    font-size: 13px;
    font-weight: 700;
    padding: 5px 0;
    text-align: center
}

.shop .btnArea .btnReserve a:hover {
    opacity: 1
}

.shop .btnArea .btnReserve a span {
    background: url(/shop/images/detail/icon_calender.png) no-repeat 0;
    background-size: contain;
    display: inline-block;
    /* filter: brightness(0) saturate(100%) invert(69%) sepia(89%) saturate(3821%) hue-rotate(2deg) brightness(95%) contrast(103%); */
    padding-left: 26px;
    color: #fff;
}

.shop .btnArea .btnReserve a span span {
    background: none;
    display: inline;
    padding: 0
}

.shop .btnArea .btnInquiry {
    background-image: unset;
    background-color: #fff;
}

.shop .btnArea .btnReserve+.btnInquiry {
    margin-top: 10px;
}

.shop .btnArea .btnInquiry a {
    border: 1px solid #f59833;
}

.shop .btnArea .btnInquiry a span {
    color: #f59833;
    filter: brightness(0) saturate(100%) invert(69%) sepia(89%) saturate(3821%) hue-rotate(2deg) brightness(95%) contrast(103%);
}

.no-touch .shop .btnPageTitReserve a:hover {
    background-color: #f08200;
    opacity: .8
}

.surveys.inquiry #header .logo a {
    pointer-events: none
}

.surveys.inquiry #footer .copyrightArea .language,
.surveys.inquiry .breadcrumbs {
    display: none
}

.surveys.inquiry .secInquiry .stepTit {
    background-image: url(/shop/images/surveys/txt-flow_pc.png)
}

.surveys.inquiry .secInquiry .lead {
    margin-bottom: 20px;
    text-align: center
}

.surveys.inquiry .formTable .vatop {
    vertical-align: top
}

.surveys.inquiry .formTable .list,
.surveys.inquiry .formTable .txt {
    margin-top: 10px
}

.surveys.inquiry .formTable .list__item {
    margin-left: 1em;
    text-indent: -1em
}

.surveys.inquiry .formTable .list__item:before {
    content: "・"
}

.surveys.inquiry .formTable .list__item:not(:first-child) {
    margin-top: 5px
}

.surveys.inquiry .inquiryNotice {
    margin-top: 10px
}

.surveys.inquiry .inquiryNotice .notice {
    margin-left: 1em;
    text-indent: -1em
}

.surveys.inquiry .inquiryNotice .notice:before {
    content: "※"
}

.surveys.inquiry .inquiryNotice .error {
    color: #cb2929
}

.surveys.inquiry .message__txt {
    padding-bottom: 46px
}

.shop .secShopDetail .secDetail .service .productInfo li.productH.vellis {
    background: #1f1f1f;
}

@media screen and (min-width:768px) {
    .priceModal .priceSearch .searchArea .selectMaker {
        flex-wrap: wrap
    }

    .priceModal .priceSearch .searchArea .selectMaker .selectMakerItem {
        min-width: calc(11.11111% - .88889px)
    }

    .priceModal .priceSearch .resultArea .resultListItem .price.priceNothing {
        font-size: 18px
    }

    .inquiry .secInquiry .formTable .selectric-wrapper:not(.selectric-month) {
        width: 300px
    }

    .reserve.shopSelect .secInquiry .stepTit {
        padding-top: 8%
    }

    .reserve.shopSelect .secNowposition .infoBlock .detailArea .shopInfo td .tel a {
        color: #313131;
        pointer-events: none
    }

    .reserve.shopSelect .secNowposition .mapShopListItem.is-current {
        background-color: #f5f5f5
    }

    .reserve.shopSelect .secSearch .shop__box dt {
        min-width: 120px
    }

    .reserve.shopSelect .secSearch .shop__box dd ul {
        gap: 5px 0
    }

    .reserve.shopSelect .secSearch .shop__box dd li {
        margin-right: 16px
    }

    .reserve .resultModal.-noData {
        width: auto
    }

    .shop .commentConstructionWrap:nth-child(odd) {
        border-right: 1px solid #dedede
    }

    .shop .commentConstructionWrap:nth-child(n+3) {
        border-top: 1px solid #dedede
    }

    .shop .btnArea.-wide {
        justify-content: center
    }

    .shop .btnArea.-wide>.btnInquiry,
    .shop .btnArea.-wide>.btnReserve {
        margin-left: 0;
        margin-right: 0
    }
}

@media screen and (max-width:959px) {
    .reserve .searchResultTable thead {
        display: none
    }

    .reserve .searchResultTable tbody,
    .reserve .searchResultTable tbody tr {
        display: block
    }

    .reserve .searchResultTable tbody tr:not(:first-child) {
        border-top: 1px solid #dedede
    }

    .reserve .searchResultTable tbody td {
        border: none;
        display: block
    }

    .reserve .searchResultTable tbody td:first-child {
        background-color: #f2f2e9;
        border-bottom: 1px solid #dedede
    }

    .reserve .searchResultTable tbody td:nth-child(2),
    .reserve .searchResultTable tbody td:nth-child(3) {
        display: flex;
        padding-bottom: 0;
        width: 100%
    }

    .reserve .searchResultTable tbody td:nth-child(2):before,
    .reserve .searchResultTable tbody td:nth-child(3):before {
        content: attr(title) "：";
        font-weight: 600;
        white-space: nowrap
    }

    .reserve .searchResultTable .btnList {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(155px, 1fr));
        margin: 0 auto;
        max-width: 320px
    }

    .reserve .searchResultTable .btnArea {
        max-width: none
    }
}

@media screen and (max-width:767px) {
    .priceModal {
        min-width: 0;
        width: 100%
    }

    .priceModal .priceSearch .btnSubmit {
        background-position: calc(100% - 22px);
        font-size: 12px;
        padding: 13px 0;
        width: 100%
    }

    .priceModal .priceSearch .searchArea .searchAreaTtl {
        font-size: 15px
    }

    .priceModal .priceSearch .searchArea .searchDatas .searchDatasTtl {
        align-items: flex-start;
        display: flex;
        font-size: 12px;
        gap: 5px;
        padding: 5px 10px
    }

    .priceModal .priceSearch .searchArea .searchDatas .searchDatasTtl .required {
        align-self: center;
        flex: none;
        float: none
    }

    .priceModal .priceSearch .searchArea .selectMakerWrap {
        box-sizing: border-box;
        margin-bottom: 16px;
        margin-left: -20px;
        padding: 4px;
        width: calc(100% + 40px)
    }

    .priceModal .priceSearch .searchArea .selectMaker {
        margin: 0;
        overflow: auto;
        padding: 0;
        position: relative
    }

    .priceModal .priceSearch .searchArea .selectMaker:before {
        background: #f5f5f5;
        content: "";
        display: block;
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%
    }

    .priceModal .priceSearch .searchArea .selectMaker .selectMakerItem {
        flex: none
    }

    .priceModal .priceSearch .searchArea .selectMaker .selectMakerBtn {
        padding: 0 14px;
        width: auto
    }

    .priceModal .priceSearch .resultArea .resultCondition {
        padding: 20px
    }

    .priceModal .priceSearch .resultArea .resultListItem {
        flex-direction: column
    }

    .priceModal .priceSearch .resultArea .resultListItem .kind {
        justify-content: space-between;
        width: 100%
    }

    .priceModal .priceSearch .resultArea .resultListItem .kind img {
        width: 60px
    }

    .inquiry .secInquiry .formTable .selectWrap {
        flex-direction: column
    }

    .inquiry .secInquiry .formTable .selectWrap select.month {
        width: 100%
    }

    .imgInput__label {
        font-size: 12px;
        padding: 5px 0
    }

    .imgInput__label,
    .imgInput__value,
    .imgInput__value img {
        height: 80px;
        width: 80px
    }

    .reserve.shopSelect .secInquiry .stepTit {
        margin-top: 20px
    }

    .reserve.shopSelect .anchor {
        flex-wrap: wrap;
        gap: 10px;
        position: relative;
        z-index: 10
    }

    .reserve.shopSelect .anchorItem {
        width: calc(50% - 5px)
    }

    .reserve.shopSelect .anchorLink {
        box-sizing: border-box;
        font-size: 14px;
        padding: 12px 20px 12px 10px;
        text-align: left;
        width: 100%
    }

    .reserve.shopSelect .secWrap {
        gap: 40px;
        margin-bottom: 50px;
        margin-top: 40px
    }

    .reserve.shopSelect .secWrap .blockTit {
        margin-bottom: 15px
    }

    .reserve.shopSelect .secPref,
    .reserve.shopSelect .secZiip {
        margin-top: -28.4866468843%;
        padding-top: 28.4866468843%
    }

    .reserve.shopSelect .secZiip {
        width: 100%
    }

    .reserve.shopSelect .secZiip .zip01 {
        flex-grow: 1
    }

    .reserve.shopSelect .secZiip .zip02 {
        flex-grow: 1.5
    }

    .reserve.shopSelect .secFreeword {
        width: 100%
    }

    .reserve.shopSelect .secFreeword,
    .reserve.shopSelect .secNowposition {
        margin-top: -28.4866468843%;
        padding-top: 28.4866468843%
    }

    .reserve.shopSelect .secNowposition .btnPosition {
        font-size: 13px;
        font-weight: 500;
        padding-bottom: 11px;
        padding-top: 11px;
        width: 100%
    }

    .reserve.shopSelect .secNowposition .shopMapSelect {
        display: block
    }

    .reserve.shopSelect .secNowposition .shopMapSelect.is-show {
        height: auto
    }

    .reserve.shopSelect .secNowposition .mapBox {
        height: 590px
    }

    .reserve.shopSelect .secNowposition .infoBlock {
        width: 207px
    }

    .reserve.shopSelect .secNowposition .infoBlock:before {
        top: 216px
    }

    .reserve.shopSelect .secNowposition .infoBlock .inner {
        padding: 10px
    }

    .reserve.shopSelect .secNowposition .infoBlock .detailArea,
    .reserve.shopSelect .secNowposition .infoBlock .thumbArea {
        float: none;
        width: auto
    }

    .reserve.shopSelect .secNowposition .infoBlock .detailArea .partner {
        margin-bottom: 5px
    }

    .reserve.shopSelect .secNowposition .infoBlock .detailArea .name {
        font-size: 13px;
        font-weight: 500;
        line-height: 1.5384615385
    }

    .reserve.shopSelect .secNowposition .infoBlock .detailArea .shopInfo td,
    .reserve.shopSelect .secNowposition .infoBlock .detailArea .shopInfo th {
        font-size: 10px
    }

    .reserve.shopSelect .secNowposition .infoBlock .detailArea .shopInfo th {
        font-weight: 500
    }

    .reserve.shopSelect .secNowposition .infoBlock .detailArea .shopInfo td p {
        font-weight: 300;
        padding: 0 4px
    }

    .reserve.shopSelect .secNowposition .infoBlock .detailArea .productInfo {
        display: flex;
        flex-wrap: wrap;
        gap: 4px;
        padding: 6px
    }

    .reserve.shopSelect .secNowposition .infoBlock .detailArea .productInfo li {
        display: block
    }

    .reserve.shopSelect .secNowposition .infoBlock .detailArea .productInfo li+li {
        margin-left: 0
    }

    .reserve.shopSelect .secNowposition .infoBlock .detailArea .productInfo li img {
        height: 20px;
        width: 20px
    }

    .reserve.shopSelect .secNowposition .infoBlock .detailArea .Addinfo {
        display: flex;
        flex-wrap: wrap;
        gap: 5px;
        margin-top: 6px;
        overflow: visible
    }

    .reserve.shopSelect .secNowposition .infoBlock .detailArea .Addinfo li {
        font-size: 10px;
        margin-top: 0;
        width: calc(50% - 2.5px)
    }

    .reserve.shopSelect .secNowposition .infoBlock .detailArea .Addinfo li:nth-child(2n),
    .reserve.shopSelect .secNowposition .infoBlock .detailArea .Addinfo li:nth-child(odd) {
        float: none
    }

    .reserve.shopSelect .secNowposition .ctaArea {
        flex-direction: column;
        gap: 5px;
        margin-top: 10px;
        padding-top: 0
    }

    .reserve.shopSelect .secNowposition .ctaItem .btn {
        font-size: 13px;
        font-weight: 500;
        padding-bottom: 13px;
        padding-top: 13px
    }

    .reserve.shopSelect .secNowposition .mapShopList {
        max-height: 386px;
        width: 100%
    }

    .reserve.shopSelect .secNowposition .mapShopListItem {
        border-right: none;
        padding: 16px
    }

    .reserve.shopSelect .secNowposition .mapShopListItem:nth-child(even of :not(.is-none)) {
        background-color: #f5f5f5
    }

    .reserve.shopSelect .secNowposition .mapShopListItem .itemName {
        font-size: 13px;
        font-weight: 500
    }

    .reserve.shopSelect .secNowposition .mapShopListItem .itemInfo {
        font-size: 10px;
        line-height: 1.4
    }

    .reserve.shopSelect .secSearch {
        border-bottom: 1px solid #dedede
    }

    .reserve.shopSelect .secSearch .shop__box {
        display: block
    }

    .reserve.shopSelect .secSearch .shop__box:not(:first-of-type) {
        margin-top: 0
    }

    .reserve.shopSelect .secSearch .shop__box[data-is-open=true] dd {
        height: auto
    }

    .reserve.shopSelect .secSearch .shop__box dt {
        border: 1px solid #dedede;
        border-bottom: none;
        font-size: 15px;
        font-weight: 500;
        margin: 0;
        padding: 12px 40px 12px 16px;
        position: relative
    }

    .reserve.shopSelect .secSearch .shop__box dt:after,
    .reserve.shopSelect .secSearch .shop__box dt:before {
        background: #313131;
        content: "";
        height: 1px;
        left: auto;
        margin-top: 0;
        position: absolute;
        right: 16px;
        top: calc(50% - .5px);
        width: 12px
    }

    .reserve.shopSelect .secSearch .shop__box dt:after {
        transform: rotate(90deg);
        transition: transform .3s ease
    }

    .reserve.shopSelect .secSearch .shop__box dd {
        height: 0;
        overflow: hidden;
        transition: height .3s ease
    }

    .reserve.shopSelect .secSearch .shop__box dd ul {
        border-left: 1px solid #dedede;
        border-right: 1px solid #dedede;
        display: block
    }

    .reserve.shopSelect .secSearch .shop__box dd li {
        border-top: 1px solid #dedede;
        margin: 0
    }

    .reserve.shopSelect .secSearch .shop__box dd li a {
        border: none;
        border-radius: 0;
        display: block
    }

    .reserve.shopSelect .secSearch .shop__box dd li a,
    .reserve.shopSelect .secSearch .shop__box dd li span {
        background-image: url(/images/common/arrow-gray10.png);
        background-position: calc(100% - 17px);
        background-size: auto;
        font-size: 15px;
        line-height: 1.5384615385;
        margin: 0;
        padding: 12px 40px 12px 16px
    }

    .reserve.shopSelect .secSearch .shop__box dd li span {
        background-color: #f5f5f5;
        border: none
    }

    .reserve.inquiry .fancybox-type-inline .fancybox-skin {
        padding: 15px !important
    }

    .reserve #wrapper {
        overflow: visible
    }

    .reserve .pageTit {
        background-image: url(/shop/images/reserve/bg-title_sp.jpg)
    }

    .reserve .secInquiry .stepTit {
        background-image: url(/shop/images/reserve/txt-flow_sp.png);
        padding-top: 28.4866468843%;
        position: -webkit-sticky;
        position: sticky;
        top: 53px;
        z-index: 15
    }

    .reserve .secInquiry .stepTit.maintenance {
        background-image: url(/shop/images/reserve/txt-flow-maintenance_sp.png);
        padding-top: 16%;
    }

    .reserve .secInquiry .formTable .link {
        display: block;
        margin-left: 0;
        margin-top: 10px;
        width: -webkit-fit-content;
        width: -moz-fit-content;
        width: fit-content
    }

    .reserve .secInquiry .formTable .info__inner {
        flex-direction: column
    }

    .reserve .secInquiry .btnArea .btnWrap {
        flex-direction: column-reverse
    }

    .reserve .secInquiry .btnArea .btnWrap .btnSubmit {
        background-position: calc(100% - 20px);
        width: 100%
    }

    .reserve .secInquiry .btnArea .btnWrap .btnReturn {
        margin-top: 0;
        width: 100%
    }

    .reserve .secInquiry .privacy_notice {
        text-align: left
    }

    .reserve .reserveModal {
        min-width: 0;
        width: 100%
    }

    .reserve .reserveModal .error {
        margin-bottom: 10px;
        margin-top: 10px
    }

    .reserve .reserveModal .btnArea {
        margin-top: 10px
    }

    .reserve .reserveModal .btnSubmit {
        background-position: calc(100% - 22px);
        font-size: 12px;
        padding: 13px 0
    }

    .reserve .reserveCalendar .fc-toolbar {
        align-items: flex-start;
        flex-direction: column
    }

    .reserve .reserveCalendar .fc-toolbar.fc-header-toolbar {
        margin-bottom: 10px
    }

    .reserve .reserveCalendar .fc-toolbar-title {
        font-size: 22px;
        font-weight: 300
    }

    .reserve .reserveCalendar .fc-button {
        font-size: 13px;
        font-weight: 500;
        padding: 15px
    }

    .reserve .reserveCalendar .fc-col-header,
    .reserve .reserveCalendar .fc-daygrid-body,
    .reserve .reserveCalendar .fc-scrollgrid-sync-table {
        width: 100% !important
    }

    .reserve .reserveCalendar .fc-col-header-cell-cushion {
        font-size: 10px;
        line-height: 1.4
    }

    .reserve .reserveCalendar .fc-day:not(.fc-col-header-cell, .fc-day-other, .fc-day-disabled):before {
        bottom: 6px;
        transform: scale(.8333333333);
        transform-origin: bottom center
    }

    .reserve .reserveCalendar .fc-day .fc-daygrid-day-number {
        font-size: 10px;
        font-weight: 500
    }

    .reserve .reserveCalendar .fc-day .fc-event:before {
        bottom: 6px;
        transform: scale(.8333333333);
        transform-origin: bottom center
    }

    .reserve .reserveCalendar .fc-day .fc-daygrid-day-events {
        min-height: 20px
    }

    .reserve .reserveTime {
        margin-bottom: 10px;
        margin-top: 10px;
        max-width: none
    }

    .reserve .resultModal {
        max-width: none;
        width: 100%
    }

    .reserve .resultInfo .btn {
        font-size: 13px;
        font-weight: 500;
        padding-bottom: 13px;
        padding-top: 13px
    }

    .reserve .fancybox-type-iframe .fancybox-skin {
        padding: 5px !important
    }

    .reserve .fancybox-type-inline .fancybox-skin:has(.reserveModal) {
        padding: 14px !important
    }

    .reserve .message .notyet {
        font-size: 20px
    }

    .reserve .message .receipt {
        font-size: 18px;
        margin-left: 20px;
        margin-right: 20px;
        width: auto
    }

    .shop .secShopDetail .secDetail .service dt {
        flex-direction: column;
        gap: 10px
    }

    .shop .secShopDetail .secDetail .service .priceCheck {
        position: static
    }

    .shop .secShopDetail .secDetail .service .priceCheckLink {
        padding: 5px 30px
    }

    .shop .secShopDetail .secReview .reviewArea .reviewData {
        align-items: flex-start;
        flex-direction: column;
        gap: 5px;
        margin: 0 auto
    }

    .shop .secShopDetail .secReview .reviewArea .evaluation {
        align-items: flex-start;
        flex-direction: column;
        gap: 0;
        margin: 0 auto
    }

    .shop .secShopDetail .secReview .reviewArea .reviewNumber {
        align-self: center
    }

    .shop .secShopDetail .secReview .reviewArea .reviewDetail {
        margin-top: 20px
    }

    .shop .followCTA {
        padding-bottom: 15px;
        padding-top: 15px
    }

    .shop .followCTAWrap {
        padding-top: 144px
    }

    .shop .ctaArea {
        flex-direction: column;
        gap: 15px
    }

    .shop .ctaArea .btn {
        font-size: 16px;
        padding-left: 10px;
        padding-right: 10px;
        width: 100%
    }

    .shop .commentHead {
        flex-wrap: wrap;
        justify-content: space-between
    }

    .shop .commentNickname {
        width: 100%
    }

    .shop .commentTime {
        order: 1
    }

    .shop .commentEvaluation {
        border-right: none;
        order: 0;
        width: -webkit-fit-content;
        width: -moz-fit-content;
        width: fit-content
    }

    .shop .commentConstruction {
        flex-direction: column
    }

    .shop .commentConstructionWrap {
        width: 100%
    }

    .shop .commentConstructionWrap:not(:last-child) {
        border-bottom: 1px solid #dedede
    }

    .shop .commentReplyHead {
        align-items: flex-start;
        flex-direction: column;
        gap: 5px
    }

    .shop .commentReplyContent {
        margin-top: 10px
    }

    .shop .commentMore {
        font-size: 12px;
        padding: 13px 0;
        width: 100%
    }

    .shop .btnPageTitReserve {
        display: block;
        margin: 0 0 0 auto;
        position: static
    }

    .shop .btnArea.-card {
        flex-direction: column
    }

    .shop .btnArea .btnReserve a span {
        background-size: auto 15px
    }

    .surveys.inquiry .secInquiry .stepTit {
        background-image: url(/shop/images/surveys/txt-flow_sp.png)
    }

    .surveys.inquiry .secInquiry .lead {
        text-align: left
    }

    .surveys.inquiry .btnArea .btnWrap {
        display: flex;
        flex-direction: column-reverse;
        gap: 10px
    }

    .surveys.inquiry .btnArea .btnWrap .btnSubmit {
        width: 100%
    }

    .surveys.inquiry .btnArea .btnWrap .btnReturn {
        margin-top: 0;
        width: 100%
    }

    .surveys.inquiry .message__txt {
        padding-bottom: 19px
    }

    .shop .btnArea.-card.-wide .btnInquiry {
        margin: auto;
    }
}

@media (hover:hover)and (pointer:fine) {

    .imgInput__label:hover,
    .imgInput__value-cancel:hover {
        background-color: #ddd
    }
}